2026Hand Tracking on Meta Quest 3

VR Pottery Studio: Hand Tracking

A hand-tracked VR pottery studio where you shape digital clay with your bare hands, then paint it, fire it in a kiln and keep it on the rack. Thumbs, fingers and palms work the clay as they would at a real wheel, at a slow and unhurried pace.

Funded by Arts Council England

Hand TrackingVirtual RealityUnityMeta Quest 3GPU PaintingInteraction Design
Warmly lit virtual pottery studio with a wheel at the centre, an arched niche of pots and a night city through the windows

See It in the Headset

The whole journey: throw, paint, fire and rack
A tour of the studio environment

Funded by Arts Council England

This research and development phase, from July to October 2026, was funded through National Lottery Project Grants. It explored how digital clay can behave, how bare hands can work it, and how a virtual space can support slow, attentive making.

Experience Workflow

01

Throw

Start the wheel and shape a wet lump of clay with your bare hands.

02

Paint

The pot bisques automatically. Pinch a brush from the tray and paint or stamp the surface.

03

Fire

The pot floats across the room into the kiln, and the glaze comes out deep and glossy.

04

Keep

Choose to keep or discard the finished pot, and kept pots go onto the studio rack.

Hand Tracking Gestures

There are no controllers. The same hand positions a potter uses at a real wheel shape the clay directly, each with its own rules.

Open the cavity

Two thumbs pressing at the centre open the clay. Depth and width follow the thumbs, and hovering does nothing.

Shape the outside

Fingers and palm push the outer wall. The clay thickens first, then grows taller, and never gets shorter.

Shape the inside

Thumbs mirror the outside push ring for ring. The wall gets wider and thinner, then shorter, and a thumb on the lip flares the rim.

Raise the pot

Narrowing the body moves clay upward with its volume conserved, so wider always means shorter and narrower means taller.

Palm press

A palm over the top presses the pot down, low enough for a bowl or a plate, and works while the thumbs are opening it.

A tracked hand holding a brush in a pen grip, painting a red line on a green glazed pot

Pinch to paint

A real pinch lifts a brush off the tray in a pen grip. Opening the fingers sends it back to its slot.

The Studio Environment

Pottery wheel on a timber deck with a night city and lanterns beyond the glass
The wheel, looking out over the night city
Glowing arched niche with shelves of patterned bowls and vases
The lit pottery niche
Floor cushions beneath string lights beside framed paintings and a window onto the city
The lounge corner and pottery rack
Wooden barrel kiln beside a patterned vase and woven wall hanging
The kiln corner
Glaze tray with colour wheel, motif stamps, a stamp tool and three brushes
A tracked hand placing a finished green glazed pot on the wooden rack

Technical Breakdown

Hand Tracking Input

  • Built on Unity XR Hands 1.5 through OpenXR, using the tracked hand joints directly with no controllers.
  • Every hand point is validated each frame: the hand must be reported as tracked, and joints that jump faster than a plausible hand speed are rejected, so a tracking snap never reaches the clay.
  • Thumbs, fingers and palms have separate roles, and each gesture has its own interactor so gestures do not bleed into each other.
  • A still hand is judged on a jitter-filtered position, so tracking noise does not cancel smoothing.
  • Losing tracking counts as letting go, so a brush returns to its slot instead of freezing in mid-air.

Clay Shape Solver

  • The pot is a live lathe profile deformed by a volume-conserving solver: clay is never created or lost.
  • Measured in play mode: a palm press from 224 mm to 134 mm held the volume to within 0.07%.
  • Physical limits keep shapes believable. The minimum radius eases from 30% of the start at the base to 12% at the lip, so the body cannot be pinched into a rod.
  • Nothing changes after the hand stops: height and rim only update on a frame where a hand is actually pushing.
  • Opening reflows the shape, holding the wall at a comfortable 8 mm so earlier waists and shoulders merge into one curve.

Touch & Clay Feel

  • A wet look that darkens where the hand touches and dries back over time, in a matte terracotta with no yellow sheen.
  • A fingertip leaves throwing rings at an 8 mm pitch, up to 0.6 mm deep. A full hand or a still hand smooths them away.
  • With no controller haptics, touch is carried by a hand glow on contact, tiny droplets, and wheel and contact sounds.
  • Shaping is gated on the wheel: the clay only deforms while it turns and during the Sculpt stage.

GPU Painting

  • The pot's own mesh is drawn into its UV atlas on the GPU, so every fragment knows the point of clay it belongs to. There is no CPU readback.
  • 1024 x 512 render texture layers hold slip, glaze, wax and firing state. Each stroke keeps its own colour per texel.
  • Distance is measured in the pot's cylindrical frame, so strokes cross the seam cleanly, a floor dab stays round, and a still brush on a turning wheel lays an even band.
  • At the bisque the atlas is frozen by arc length and floor rings are added, so the inside floor and underside can be painted.
  • Measured in the editor on a 53,248-triangle bowl: 0.145 ms for a live stroke and 0.055 ms for the composite.

Brushes & Pinch Interaction

  • Three brushes rest on a tray and are picked up by a real pinch, thumb tip to index tip, with separate close and open distances so the grip does not flicker.
  • A pen grip anchors the handle at the pinch point and runs it back over the web of the thumb. The handle lags slightly and the bristles splay under pressure.
  • A one euro filter steadies the brush tip without lag: about 15 Hz cutoff on a still hand and 51 Hz at 0.3 m/s.
  • The tray holds an HSV colour wheel, size and value bars, sponge, wax resist and motif stamps. The brush tip or a fingertip works as the pointer.

Glaze & Firing

  • Raw glaze reads chalky and pale, and a fresh stroke looks wet for about a second before the bisque drinks it in.
  • Fired glaze deepens and turns glossy, breaking thin over edges and pooling darker in hollows, using a thickness curve baked from the profile's curvature.
  • Gloss is capped well below mirror to avoid specular flicker in the headset.
  • An animated kiln carries the pot off the wheel, fires it with a glowing peephole and seam, and returns it exactly centred.

Testing & Quality

  • A written rule book of clay and paint behaviour, with headset test cases for every rule.
  • An automated regression runner drives the hand joints through more than 20 rule scenarios on the real interactors in play mode.
  • Whole-pot goals prove a plate, a ramen bowl and a vase can all be thrown from start to finish.
  • Changes were made one rule at a time and tested before the next, then reviewed in peer feedback sessions in October 2026.

Guided Onboarding

  • A step-by-step tutorial with ghost hands and short video cards, designed for people with no VR or digital-making experience.
  • A hold-to-open palm menu holds the Sculpt, Paint and Fire stages and the wheel controls.
  • Teleport points move the potter around the studio.
  • A warm studio environment with licensed music supports a slow, unhurried pace.

My Role

Independently designed and developed the project in Unity using C#, across research, hand tracking, the clay solver, GPU painting and glazing, the kiln and rack, the guided tutorial, the studio environment, testing and peer feedback sessions.

Tools & Technologies

Unity 6
C#
Meta Quest 3
XR Hands
OpenXR
XR Interaction Toolkit
URP
Custom Shaders
Render Textures
Blender

"VR as a space for reflection and attention rather than speed or spectacle."

Next project

VR Pottery Studio

A calming VR pottery experience built in Unity for Meta Quest, where users shape, paint, and fire clay using immersive controller interaction and responsive haptic feedback. Designed to encourage creative flow and therapeutic immersion through slow, mindful interaction.

View project

Interested in working together?

I'm open to Unity/VR roles and freelance projects, from research prototypes to interactive experiences.