Smoothing Before IK Shrinks Bones by Half: A Blender Stress Test Explains Why
andrew_n_carr · x · 2026-09-13
The author built a motion-cleanup stress test in Blender exposing an easily-missed engineering pitfall: smoothing and IK don't commute.
- The demo: Two arms with identical 85cm bones and identical hand paths—one smooths joint positions after solving IK (bone shrinks to 46.8cm), the other smooths the target then solves IK (stays 85cm). Measuring only hand-target error, both versions pass.
- The math: A bone is a fixed-length vector between joints; averaging vectors pointing in different directions shortens it—‖b̄‖ = L·cos(θ/2) for 50/50, so 90° of direction change leaves 71% and 120° leaves 50%. The filter doesn't know lengths must stay constant.
- The fix: Exponentially smooth the hand target (α = 1−exp(−ln2·Δt/τ), τ=0.18s here), then run IK with original bone lengths so constraints are satisfied.
- Caveats: This covers smoothing Cartesian joint positions; filtering rotations is a different operation.
More from Embodied
- Walden Robotics CTO: general-purpose robot manipulation is having its 'GPT moment' — adnothing · 2026-10-30
- Gym-Anything Team Stopped at 25 Simulations Due to Resource Limits, Seeks Collaborators — wellecks · 2026-10-30
- Gym-Anything Adds Audit Agents That Try to Break Simulations With Legal Robot Actions — wellecks · 2026-10-30
- NVIDIA researcher: train robot policies with privileged sim info, improving Pi 0.5 — wellecks · 2026-10-30
- Leveraging Simulator Privileged Information: Three Methods to Improve Robot Models — wellecks · 2026-10-30
- CMU Auto-Builds 25 Robot Simulations with Agents; Frontier Model Solves 0 of 25 Test Tasks — wellecks · 2026-10-30