Safely flush async effects when testing, simulating a legacy root.
Adds a global after-render callback which is called each frame.
Adds a global render callback which is called each frame.
Adds a global callback which is called when rendering stops.
Advances the frameloop and runs render effects, useful for when manually rendering via frameloop="never".
A DOM canvas which accepts threejs elements as children.
Default R3F event manager for web
Returns instance root state
Invalidates the view, requesting a frame to be rendered. Will globally invalidate unless passed a root's state.
Executes a callback before render in a shared frame loop. Can order effects with render priority or manually render with a positive priority.
Returns a node graph of an object with named nodes & materials.
Exposes an object's Instance.
Synchronously loads and caches assets with a three loader.
Removes a loaded asset from cache.
Preloads an asset into cache as a side-effect.
Returns the R3F Canvas' Zustand store. Useful for transient updates.
Accesses R3F's internal state, containing renderer, canvas, scene, etc.