diff options
author | Yuri Sizov <yuris@humnom.net> | 2023-12-19 13:01:05 +0100 |
---|---|---|
committer | Yuri Sizov <yuris@humnom.net> | 2023-12-19 13:01:05 +0100 |
commit | 5d9dce43bb65e207c377eb93083595a9f9df337c (patch) | |
tree | 8d70c6a8b84b89b314462c04df4e9e02e3aff98c | |
parent | 8a9aa30348b9dc1582732f4a8401fc959ea0ecbe (diff) | |
parent | 76377230ac3bd28aebaff9ce8486618c63819090 (diff) | |
download | redot-engine-5d9dce43bb65e207c377eb93083595a9f9df337c.tar.gz |
Merge pull request #84575 from rsburke4/fix-cpu-tangent-force
Fix `CPUParticles2D` tangential force does not match `GPUParticles2D`
-rw-r--r-- | scene/2d/cpu_particles_2d.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/scene/2d/cpu_particles_2d.cpp b/scene/2d/cpu_particles_2d.cpp index 1c193f991e..e04e6d7dce 100644 --- a/scene/2d/cpu_particles_2d.cpp +++ b/scene/2d/cpu_particles_2d.cpp @@ -881,7 +881,7 @@ void CPUParticles2D::_particles_process(double p_delta) { force += diff.length() > 0.0 ? diff.normalized() * (tex_radial_accel)*Math::lerp(parameters_min[PARAM_RADIAL_ACCEL], parameters_max[PARAM_RADIAL_ACCEL], rand_from_seed(alt_seed)) : Vector2(); //apply tangential acceleration; Vector2 yx = Vector2(diff.y, diff.x); - force += yx.length() > 0.0 ? yx.normalized() * (tex_tangential_accel * Math::lerp(parameters_min[PARAM_TANGENTIAL_ACCEL], parameters_max[PARAM_TANGENTIAL_ACCEL], rand_from_seed(alt_seed))) : Vector2(); + force += yx.length() > 0.0 ? (yx * Vector2(-1.0, 1.0)).normalized() * (tex_tangential_accel * Math::lerp(parameters_min[PARAM_TANGENTIAL_ACCEL], parameters_max[PARAM_TANGENTIAL_ACCEL], rand_from_seed(alt_seed))) : Vector2(); //apply attractor forces p.velocity += force * local_delta; //orbit velocity |