A fully procedural animation system for a multi-legged creature in Unreal Engine — each leg independently solves for realistic ground contact using inverse kinematics, adapting in real time to any terrain.
This project was built out of personal interest to deeply understand animation programming — specifically how to make creatures move in a way that feels physically believable without relying on pre-authored animation clips. The result is a spider that walks entirely through real-time computation, with no keyframed animations involved.
The system is implemented in Unreal Engine using Blueprints, and uses inverse kinematics (IK) as its core technique — a method where you define where a limb should end up, and the system works backward to figure out how each joint must rotate to get there.
Multi-Legged Inverse KinematicsEach of the spider's legs independently uses IK to target a ground position — the system casts a ray downward from an ideal foot position, finds the ground, and solves the joint chain to place the foot there naturally using vectors and smooth interpolation curves.
Terrain-Adaptive Foot PlacementEngineered the system to work correctly on varied terrain — slopes, steps, and uneven ground — ensuring feet make proper contact without clipping through surfaces or floating above them. This required per-leg ground detection and careful normal alignment.
Pelvis Speed-Driven Gait ControlIntegrated the spider's pelvis (body) velocity as an input to dynamically scale how frequently legs step and how far they reach. Faster movement produces quicker, longer strides; slow movement produces careful, deliberate steps — making locomotion feel alive and responsive.
Smooth Step InterpolationEach leg step uses smooth curve interpolation so foot movement arcs naturally off the ground rather than snapping — preventing the rigid, mechanical look common in naive IK implementations.