From b8ae3f2e9e69d9d457723521e022fac01ca2c09b Mon Sep 17 00:00:00 2001 From: Hawk Lee Date: Mon, 26 Jan 2026 01:47:03 +0800 Subject: [PATCH] fix(Ditto): ultra-smooth warp decay (0.98) and pressure (0.002) to prevent sliding --- libs/Ditto/core/atomic_components/audio2motion.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/libs/Ditto/core/atomic_components/audio2motion.py b/libs/Ditto/core/atomic_components/audio2motion.py index b1c24dd..e9e2486 100644 --- a/libs/Ditto/core/atomic_components/audio2motion.py +++ b/libs/Ditto/core/atomic_components/audio2motion.py @@ -376,7 +376,7 @@ class Audio2Motion: for f in range(pred_kp_seq.shape[1]): diff = target_pressure - self.persistent_pressure - move = np.clip(diff, -0.01, 0.01) + move = np.clip(diff, -0.002, 0.002) self.persistent_pressure += move # Apply pressure strictly to Position + Pose (0:201) @@ -418,7 +418,7 @@ class Audio2Motion: # [v1.9.221] CONDITIONAL DECAY if not getattr(self, "is_talking_state", False): # Only decay during IDLE (silence) to return character to anchor - self.warp_decay *= 0.94 + self.warp_decay *= 0.98 else: # During SPEECH, keep alignment 100% static to prevent 'sliding' pass # warp_decay stays at 1.0 (or current value)