The 3D twin of a vector rig.

A scene document carries groups, parameters and bindings the same way a drawing does, and the vocabulary the two share lives in one place. What differs is the set of paths a binding may name.

A path belongs either to an object, which the binding then names, or to the document.

Object paths

Path Takes Note
transform.position.x number Also .y and .z. Metres.
transform.rotation.x number Also .y and .z. Degrees, in XYZ order.
transform.scale.x number Also .y and .z. A factor, not a size.
transform.scale number All three axes at once.
visible boolean Whether the viewport draws it.
modifiers[<id>].<param> its own Any parameter the modifier’s schema declares, by its own name.
mesh.vertices[<index>].x number Also .y and .z. One vertex, by index.
shapeKeys[<name>].value number How much of a shape key is mixed in, and only for a key that exists.
light.color color
light.power number Watts.
light.radius light.spotAngle light.spotBlend light.spotBlur number
camera.focalLength number Millimetres on the sensor the camera declares.
camera.orthoScale number Only used by an orthographic camera.
curve.extrude curve.bevelDepth curve.bevelResolution curve.resolution number Metres, except the resolutions, which are counts.
text.text text A control can drive the words themselves.
text.size text.extrude text.bevelDepth number

Document paths

Path Takes
materials[<id>].baseColor .emission color
materials[<id>].metallic .roughness .emissionStrength .alpha .transmission number
materials[<id>].nodes[<nodeId>].<setting> number
world.color color
world.strength number
cursor.position.x number

A modifier hands over its own bounds

When a modifier parameter is exposed, the control does not have to be told what range it accepts: the modifier’s own schema declares it, so the slider cannot leave the range the modifier will take. That is the difference between a control on a scene and a slider wired to a number.

One viewport across both modes

A single WebGL context survives the switch between Edit and Tune. React unmounts the old tree before mounting the new one, so the viewport is kept by document id with a short grace period instead of being rebuilt, so toggling modes does not cost a scene reload.

Selection is remembered in memory, not in storage, so it survives the same switch without outliving the tab.