An interactive project that brings a 3D GLB character to life using Three.js for rendering and MediaPipe Pose for real-time body tracking. Your webcam movements are mapped onto the 3D character, allowing it to mimic human gestures and poses seamlessly.
- 🎭 GLB Character Rendering: Load and display 3D character models in
.glbformat with realistic lighting and animations. - 🧍 Pose Recognition: Track 33 body landmarks in real time using MediaPipe Pose.
- 🔗 Skeleton Mapping: Map MediaPipe joints to the 3D character’s bones.
- 🎥 Webcam Integration: Real-time control of character movements through your webcam.
- ⚡ Smooth Animation: Frame-by-frame updates with interpolation for fluid motion.
- Three.js → WebGL-based 3D rendering engine.
- MediaPipe Pose → Machine learning model for real-time human pose detection.
- JavaScript (ES6) → Core project logic.
- GLTFLoader (from Three.js) → Load
.glbcharacter assets.
git clone https://github.com/rihemar/3D_Character_Animation_Using_MediaPipe
cd .\3D_Character_Animation_Using_MediaPipe\python websock.pynpx serve .Navigate to:
http://localhost:3000
- Ensure you allow camera permissions in your browser.
- A GLB model with a humanoid skeleton (rigged) works best.
- Performance may vary depending on your device and browser.
This project is licensed under the MIT License.