For the complete documentation index, see llms.txt. This page is also available as Markdown.

Vision

Find guides for adding real-time scene vision to Convai characters in Unity, including frame sources, publish policies, scripting, and troubleshooting.

Vision gives Convai characters the ability to see what is happening inside your Unity scene. A frame source captures images from a Unity camera, physical webcam, or Meta Quest passthrough feed, and the SDK streams them to Convai over WebRTC alongside the audio conversation.

Platform support

Platform
Supported frame sources
Notes

PC / Mac / Console

CameraVisionFrameSource, WebcamVisionFrameSource

Full RenderTexture pipeline; max 30 fps

Android / iOS

CameraVisionFrameSource, WebcamVisionFrameSource

Webcam source requests camera permission at startup

WebGL

(Canvas, automatic)

canvas.captureStream() path — no frame source component needed; frame rate capped at 15 fps; HTTPS required

Meta Quest 3 / 3S

QuestVisionFrameSource

Requires Meta XR SDK and horizonos.permission.HEADSET_CAMERA

Vision requires ConvaiRoomManager.Connection Type set to Video. If it is set to Audio, ConvaiVisionPublisher remains idle regardless of how other components are configured.

Dynamic vision context

Dynamic vision context lets Convai continuously sample the published video track into a rolling frame buffer and attach the freshest frames to a character's turns, instead of reacting to every frame as it arrives. It shares its respond-mode vocabulary with dynamic context: ConvaiRespondMode values Silent, Auto, and MustRespond decide whether new input speaks, whether the model decides, or whether it stays silent. See Dynamic context scripting API for the full ConvaiRespondMode reference.

Next steps

Start with Vision quick start to get a working stream from a scene camera, then use Vision frame sources to select the right capture method for your platform. For pipeline details, see How vision works.

Last updated

Was this helpful?