A 3D Face Motion Capture application built with React, Three.js, and MediaPipe.
preview.mp4
- 3D Scene: Renders a GLB avatar (
face-mocap.glb) in a 3D environment. - Component Decomposition: Separates avatar parts (
body,eye_left,eye_right) for individual control. - Eye Tracking: Implements smooth, cursor-based eye tracking using
MathUtils.lerp.
- Runtime: Bun
- Framework: React + Vite + TypeScript
- 3D Engine: Three.js + React Three Fiber (
@react-three/fiber) - Helpers:
@react-three/drei - Computer Vision: MediaPipe Tasks Vision (Face Landmarker)
-
Install dependencies:
bun install
-
Run development server:
bun dev
-
Build for production:
bun run build
- Orbit Controls: Left click to rotate, Right click to pan, Scroll to zoom.
- Eye Tracking: Move cursor to have the avatar eyes follow.