Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

GPUParticles3D broken on float=64 builds #67545

Closed
crynux opened this issue Oct 17, 2022 · 3 comments · Fixed by #68425
Closed

GPUParticles3D broken on float=64 builds #67545

crynux opened this issue Oct 17, 2022 · 3 comments · Fixed by #68425

Comments

@crynux
Copy link

crynux commented Oct 17, 2022

Godot version

9afc833

System information

VoidLinux Kernel 5.19.13_1, Radeon RX 5500/5500M, Vulkan

Issue description

GPUParticle3D doesn't seem to work properly when Godot is built with float=64. I noticed it when I opened my project (which had properly working Particles before trying a float=64 build), and they were rendering strangely.

I then tried to create a particle in a new project ... to be sure it wasn't something I've done, and they don't work there either. If you open the same project, or do the same particle creation in a non-float=64 build (custom or an official build); it works fine.

I'd put a screenshot; but on the float=64 build there's nothing to show, as the particle just doesn't render.

Steps to reproduce

Create a GPUParticles3D node, add a ParticleProcessMaterial and a cube mesh as Draw Pass 1; or just open the uploaded project.

Minimal reproduction project

testing.zip

@clayjohn clayjohn added the bug label Oct 17, 2022
@clayjohn
Copy link
Member

clayjohn commented Oct 17, 2022

I suspected that this was a regression from #66178, however, after reverting and rebuilding this issue was still present. Will have to git bisect to figure out when this broke

Edit: I tested as far back as 6d992ab and the issue still existed there. This is going to take quite a bit of investigation

@Qubrick
Copy link

Qubrick commented Nov 3, 2022

Not sure if this related. I got this error from add GPUPartitions3D node to the scene on editor using Godot 4 Beta 4 (e675154) with double precision (float=64) run on Windows 11.

ERROR: Condition "err" is true. Returning: ERR_CANT_CREATE
   at: VulkanContext::swap_buffers (drivers\vulkan\vulkan_context.cpp:2266)

ERROR: Vulkan: Did not create swapchain successfully.
   at: (drivers\vulkan\vulkan_context.cpp:2189)

And yes, the editor is completely broken after this. (No longer response to input + some UI window turn to white) The terminal continue spam this message.

Update: I test with 6d992ab and got the same error. I try to go back as much as possible.

List of commit that has been test
e675154
6d992ab
1a9fc25
e4f0fc5 (Alpha 6)
31a7ddb (Alpha 1)

All got the same error and same broken. Maybe, it's a bug with float=64 since the beginning? Just no one test it yet.

@clayjohn
Copy link
Member

clayjohn commented Nov 8, 2022

Most likely broken by #51580 which adds real_t into many GPU uniforms

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

4 participants