ONE CHARACTER. A FULL RANGE OF FEELINGS.
A little more
expressive.
The same Zoe you know.
13 emotions + 9 speaking tones.
Every expression is a set of numbers.
NEUTRAL
Neutral
LIVE VECTOR
CONVERSATION PERFORMANCE
Ready to rehearseREST
Text rehearsal uses approximate letter-based mouth shapes. Browser voice timing varies; provider-timed visemes can be connected through the included SDK API. Audio starts only when you click Speak aloud.
TRY A MODEL OUTPUT
Label-based mapping. Meaning and context can require a different listener response.
THE COMPLETE SET
Every side of Zoe.
READY FOR YOUR SDK
Mount once.
Change the feeling.
One local renderer. Shared geometry. Interruptible transitions. Use the same parameters in your application.
const avatar = createAvatar(element);
avatar.setEmotion('happy-strong', {
intensity: 0.85,
durationMs: 180
});
// Or connect your emotion model:
avatar.setDetectedEmotion('fear', {
mode: 'listener'
});