Almost any 3D property can be animated on the f0 timeline. “Expose” a property to turn it into a sidebar field and a timeline channel, then keyframe or scroll-drive it — including imported model animation clips.
Where: 3D editor → ⚡ Expose on a property — Expose a property, then animate it on the timeline
Key ideas
- Expose: Promote a transform, material channel, shader uniform, light, camera, render setting, instancer param, post-FX param, or progress to an f0 field (
field:<id>). - Model clips: Play a GLB’s animation clips and expose playback as a 0..1 field to scrub/keyframe.
- Drive it: Once exposed, animate it with keyframes or scroll like any other element property.
Steps
- Click ⚡ Expose on the property you want to animate.
- It appears as a field and a timeline channel.
- Keyframe it or attach a scroll interaction.
- For models, expose the animation clip’s playback.
- Choose the camera framing, inspect existing keys, apply a named move with duration and amount, and scrub before rendering. Use the detailed cinematic guide for preset names, rail behavior, and backdrop boundaries.
Cinematic camera and motion workflow
Camera Lens presets and Focal length express the existing field of view in millimetres. The motion library writes real editable cinematic keyframes relative to the camera or object’s current pose. Guide paths support camera rails without adding a visible swept tube. The image backdrop is a modeling aid that stays out of cinematic playback and delivered output.
- Inspect animation before changing existing motion. keyframe_scene and apply_motion_preset replace the channels they touch by default; choose merge only deliberately.
- Camera presets require cameraId; object presets require nodeId. These are internal scene IDs, not the Flowgen node ID or HTML element ID.
- For MCP, open the node editor, select the Scene3D host element, and enumerate document tools. The selected or sole scene is pinned by the bridge; a caller cannot redirect the operation with an id argument.
- inspect_scene reads current scene values and animation without writing; animate_scene_field controls exposed fields via scroll, mouse, hover, or load instead of cinematic time.