Concepts
Core concepts
Section titled “Core concepts”A character document has version: 1, a name, a renderer name, optional
controls and poster, and renderer-specific data. The shared schema validates
that envelope. The selected adapter validates its own data. A source is either a
document URL or { local: "key" } for a character installed by the host.
createSprite creates a stable host service. The host supplies local
characters, renderer loaders, and asset policy. A player selects one source and
receives activity, expression, appearance, and render-style updates without
replacing its host element. The React Sprite owns one player and disposes it
when it unmounts. The imperative player exposes set, pause, subscribe, and
asynchronous dispose.
renderStyle applies one of the built-in SVG filters: plain, pencil,
manga, riso, halftone, blueprint, crt, or watercolor. Each player
owns its filter instance. Animated styles pause when the player is paused, is
offscreen, the page is hidden, or reduced motion is requested.
Remote documents and nested assets pass through one reader. The host sets
allowed origins, the maximum bytes per response, total bytes per selection, and
request count. Local characters need no remote asset policy. Video uses the
configured video renderer and reads clip assets through that same path.