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

Fix GPUParticles Inherit Velocity breaking with physics movement #93837

Conversation

Calinou
Copy link
Member

@Calinou Calinou commented Jul 1, 2024

GPUParticles' Inherit Velocity property used to act strangely if the physics tick rate was lower than the rendered FPS, as velocity was tracked in the process and not in the physics process. This means that on certain rendered frames, the velocity was effectively 0 since there was no movement since the last rendered frame.

Testing project: Updated.Inherit.Velocity.MRP.zip

Preview

120 FPS, 60 TPS

This is where the issue is fixed.

Before

particle_velocity_120fps_60tps.mp4

After

particle_velocity_120fps_60tps_physics.mp4

60 FPS, 60 TPS

Same as before, no changes in behavior.

Before

particle_velocity_60fps_60tps.mp4

After

particle_velocity_60fps_60tps_physics.mp4

120 FPS, 120 TPS

Same as before, no changes in behavior.

Before

particle_velocity_120fps_120tps.mp4

After

particle_velocity_120fps_120tps_physics.mp4

GPUParticles' Inherit Velocity property used to act strangely
if the physics tick rate was lower than the rendered FPS, as velocity
was tracked in the process and not in the physics process. This
means that on certain rendered frames, the velocity was effectively
0 since there was no movement since the last rendered frame.
@QbieShay QbieShay added the cherrypick:4.3 Considered for cherry-picking into a future 4.3.x release label Aug 6, 2024
@clayjohn
Copy link
Member

This seems moderately risky to me. So I think we should aim to cherrypick for 4.3.2

@akien-mga akien-mga merged commit f3ba14b into godotengine:master Aug 16, 2024
18 checks passed
@akien-mga
Copy link
Member

Thanks!

@Calinou Calinou deleted the gpuparticles-fix-inherit-velocity-physics branch September 24, 2024 14:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug cherrypick:4.3 Considered for cherry-picking into a future 4.3.x release topic:particles topic:physics
Projects
None yet
Development

Successfully merging this pull request may close these issues.

GPUParticles3D Emitter Velocity scales with FPS above 60 when movement is done in physics_process
4 participants