Motion's animate() can drive Three.js animations:
Object3Dtransforms:x,y,z,rotateX,rotateY,rotateZ,scaleetc- Material properties, including via CSS colour strings
Vector2,Vector3andVector4axesShaderMaterialuniforms- TSL
uniform()nodes
Because this is the same animate() that animates the DOM, Three.js objects, shader uniforms etc can be animated within sequences and stagger alongside HTML and SVG elements.
It works with OrbitCamera, enabling the creation of direct control with a smooth crossfade back to constant orbit, without the heavy feeling of Three's in-built damping.
It also works with the new TSL APIs.


