Data used
- Frames from the user's camera, processed in the browser.
Project case study
Manipulating a WebGL 3D object with hand gestures read from the camera, in the browser.

Manipulating a 3D object usually needs a mouse, touch or a physical controller.
Gestures need clear rules so they do not trigger actions by mistake.
The project connects computer vision and WebGL in the browser, with a keyboard alternative.
Full case details, collapsed for optional reading.
3D Hands manipulates a WebGL 3D object with hand gestures read from the camera, without touching the device.
MediaPipe Hands tracks up to two hands; rules classify 7 gestures, and hold gestures only fire after 800 ms.
Each gesture moves, zooms, rotates, resets or changes the shape and colour of the Three.js object, and the same commands exist on the keyboard.
This description matches the 6 Jun 2026 production build; a newer version with fixes has not been published yet.
Static JavaScript site with Three.js and MediaPipe Hands loaded from a CDN and a Canvas 2D overlay; desktop version in Python with OpenCV and MediaPipe.
Technical architecture
Manipulating a WebGL 3D object with hand gestures read from the camera, in the browser.
Developed by Matheus Siqueira - https://www.matheusdev.tech
Studio that picks Canvas visual effects from hand gestures, with MediaPipe and processing in the browser.
View full case