Short, technical notes from the lab — the kind of things that usually
only live in git commit messages and paper footnotes. Written for
engineers and students who build interactive simulations.
·~5 min read
Why haptic rendering needs a 1 kHz update loop
The eye forgives a dropped frame; the hand does not. The visual
loop of a VR simulator runs at 90 Hz, but haptic force feedback
has to be recomputed at roughly 1 kHz. If forces arrive too
slowly, the feedback becomes unstable: the haptic device starts to
vibrate or "buzz", and the virtual surface feels soft and
mushy instead of hard.
This separation of rates shaped our material cutting model: a fast
haptic thread computes collision and force for the tool tip, while
the actual removal of virtual tissue happens in a coarser
simulation step. The geometry handed to the haptic thread is
updated asynchronously, which keeps the 1 kHz budget intact. The
trick is keeping the two representations consistent enough that
the user never notices the lag between what they cut and what they
feel.
A real tooth is not a solid object, and a simulator that treats it
as one feels wrong the moment the drill enters the dentin. We
model every tooth with three tissue layers — enamel, dentin, and
pulp — each with its own hardness. The drill must cut continuously
through these layers and the user must feel the material change,
otherwise the haptic sensation collapses into "drilling through
cheese".
The second lesson from the dental simulator is that depth
perception is a combination of stereopsis and hand alignment.
With true stereoscopic 3D in the headset and the physical hand
aligned with the virtual tool, students made fewer errors — and
those skills transferred to real phantom heads. In the
randomized controlled trial with 83 dental students, simulator
training significantly improved real-world clinical skills.
Hip reaming is the hard case for haptic rendering: forces up to
137 N, extremely stiff contacts, and two hands in the loop. Most
collision detection structures for haptics are built for light
touch — they fail here, because a single stiff contact can send
the force computation into oscillation.
The solution developed in the HIPS project is a data structure
based on sphere packings: the bone volume is decomposed into
overlapping spheres that are trivial to query for penetration. The
structure stays stable under extreme stiffness, which is why the
simulator could be validated with real surgeon tools mounted on a
KUKA LBR iiwa robot — and why over a dozen surgeons confirmed the
realism of the haptic sensation.
A simulator can look perfect in a demo and still fail in the
clinic. That is why every major result from my projects was
validated with domain experts: over a dozen surgeons evaluated the
haptic sensation of HIPS and nearly all of them recommended it
for training students and residents; two independent expert
dentists scored the drilling outcomes of the 40 trained students
in the dental study.
The pattern that works for us: build the physics first, then
validate the perception with experts, then measure learning
transfer with a controlled study. In that order — each step
catches errors the previous one cannot see.