THREE.JS / WEBXR / CONTROLLER SCULPTING

Sculpt with a ray.

The pinned XR sculpt example couples a seven-tool Sculptor to two tracked controllers: select starts a fixed-rate stroke, squeeze toggles negative sculpting, and a brush cursor follows each controller ray.

Initializing—

Preparing the editable icosahedron, controller rays, and brush cursors…

backend
—
vertices
—
tool
—
negative
—
controllers
—
cursor / hit
—
strokes
0
XR
—
sample avg / p95
—
state
—

Derived from the pinned webxr_xr_sculpt source. This route preserves WebGLRenderer, XRButton, XRControllerModelFactory, two controller/grip slots, Sculptor tool/negative/stroke seams, fixed-rate stamping, cursor picking, session-end recovery, reset, sampling, and teardown. The installed Three.js package predates the official Sculptor addon, so the local compatibility seam, native headset/session/pose behavior, exact page/pixels, device/backend matrices, broad stress, and whole-example fidelity remain separate.