summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorYuri Sizov <yuris@humnom.net>2023-12-19 13:01:05 +0100
committerYuri Sizov <yuris@humnom.net>2023-12-19 13:01:05 +0100
commit5d9dce43bb65e207c377eb93083595a9f9df337c (patch)
tree8d70c6a8b84b89b314462c04df4e9e02e3aff98c
parent8a9aa30348b9dc1582732f4a8401fc959ea0ecbe (diff)
parent76377230ac3bd28aebaff9ce8486618c63819090 (diff)
downloadredot-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.cpp2
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