Fix GPUParticles Inherit Velocity breaking with physics movement #93837
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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