Skip to content
/a/ FaceCue Performance Studio

Integrations

What FaceCue connects to, how each integration is detected, and which ones are experimental.

FaceCue adds no packages to your project. It works with a few that you may already have, switches each one on by itself when it finds it, and leaves the rest of its code out when it does not, so a project without them still compiles. Nothing on this page is required.

Where They Are

Integrations live in the FaceCue Hub, Tools ▸ FaceCue ▸ FaceCue Hub, under Integrations. The section starts folded, so open it to see the rows.

Each row shows whether the package is in the project and whether the integration is on, and hovering it says what it adds. Its dropdown has three settings:

  • Auto, the default, turns the integration on when the package is found and off when it is not.
  • Force On keeps it on whatever is detected.
  • Force Off keeps it off even when the package is there.

The choice is saved with the project.

Two Menu Items for When Something Changes

Tools ▸ FaceCue ▸ Integrations ▸ Refresh looks again. FaceCue checks once when the editor starts, so a package you install while the editor is open is picked up here, or at the next start.

Tools ▸ FaceCue ▸ Integrations ▸ Reset Defines is the way back. Forcing an integration on for a package the project does not have stops FaceCue compiling, and the Hub warns you before it lets you. If that has happened, this item clears the settings the integrations write into your project, so FaceCue compiles again with every integration off, and anything genuinely installed switches back on by itself. It keeps working when the rest of FaceCue will not compile, for exactly that reason.

Once the Hub is back, set the row you forced back to Auto. The Hub still remembers Force On, and the next time the editor starts it would apply it again.

The Integrations

Integration Turns on by itself What it adds
Timeline Yes The FaceCue tracks and the Director Watcher
Meta OVRLipSync Yes, and it ships with FaceCue Live Viseme, and the baker's Universal recognizer
Addressables Yes Loading cue files by address instead of through the registry
Universal Render Pipeline Yes Depth of field in the demo scene
UniVRM (VRM 1.0) Yes The full FaceCue VRM Bridge on VRM 1.0 characters
UniVRM (VRM 0.x) Yes The FaceCue VRM Bridge on VRM 0.x characters
CC/iC Unity Tools Yes The FaceCue Character Creator Bridge on a CC5 HD character's Bone Driver
Dialogue System (Experimental) No Conversation state from Pixel Crushers' Dialogue System

Timeline

The Phoneme Cues, Emotion and Gaze tracks, and the Director Watcher, which drives each character's face from a voice line on an ordinary Timeline audio track. Covered in full in Timeline.

Meta OVRLipSync

Meta's free lip sync library, which FaceCue ships inside the package, so this one is on in every project without anything installed. It powers two things:

  • Live Viseme, the speech mode that reads visemes from audio as it plays, such as a microphone or voice chat. See Speech.
  • Universal (Crude) in the baker, which reads mouth shapes straight from the audio with no transcript or language, the route that covers any language at all. See Recognizers.

It has builds for 64-bit Windows, Intel Macs, Android and iOS, and none for Linux or WebGL, so Live Viseme is unavailable there, and on an Apple silicon Mac outside Rosetta, and a character moves on down its Fallback Chain. See What Runs Where.

Addressables

Cue files load by address when a line plays, as an alternative to the Cue Registry. The baker's Add To gains an Addressables entry, and the registry warns about a cue that is in both. Why the registry is usually the better choice is set out in Addressables Instead.

Universal Render Pipeline

This one only reaches the demo scene, where the camera drives a depth of field effect. FaceCue itself does not need URP and runs the same on Built-in, URP and HDRP. See Render Pipelines & Scripting Backends.

UniVRM

Two rows, one for each of UniVRM's packages, VRM 1.0 and VRM 0.x. Each lets the FaceCue VRM Bridge work with that version's own runtime, as VRM Characters below describes.

CC/iC Unity Tools

Reallusion's own Unity tools for Character Creator and iClone characters. The row turns on when their runtime is in the project, which it is whenever a character has been imported with them. It lets the FaceCue Character Creator Bridge run a CC5 HD character's Bone Driver in step with FaceCue, as Character Creator Characters below describes.

Experimental

This one stays off under Auto, even when the package is there. Set it to Force On to use it.

Dialogue System

Lets a character know from Pixel Crushers' Dialogue System when it is being spoken to and when it is waiting on a reply. It adds one component, Dialogue System State Source (Example), under Add Component ▸ FaceCue ▸ Integrations.

It ships as a worked example rather than a finished integration, so treat it as a starting point for your own project. How the character uses conversation state, and how to feed it from any other dialogue system, is on Dialogue State. A plain example source for that, Simple Dialogue State Source (Example), is always available.

Character Creator Characters

A Character Creator character imported with Reallusion's tools can bring scripts of its own, which run beside FaceCue every frame. The FaceCue Character Creator Bridge keeps them in step with the character FaceCue draws, and drives the pupils on the characters that size them through the eye material. It changes nothing on the character as saved.

The bridge goes on the character's model root, the object at the top of the imported character. The OneClick wizard adds it, as Character Creator Bridge, to a character that needs it. On a character set up another way, the brain's Conflict Assessment offers Add FaceCue Character Creator Bridge.

Bone Driver

A CC5 HD character carries a Bone Driver, from Reallusion's tools. Every frame it adds the corrective shapes that keep the face looking right where expressions combine, and carries the face's expression onto the brows, the tear line and the shadow around the eyes. On the later Apply At settings it would do that from the face as it was a frame earlier, so those parts would trail the face.

While the game runs, the bridge runs the Bone Driver after FaceCue has written the character, so all of it follows the face as it is drawn. The eyes and the head are left to FaceCue. This needs the CC/iC Unity Tools integration, and nothing changes on the Bone Driver as saved.

Material Pupil

Character Creator's Standard and Traditional characters have no pupil blendshape, so their pupils are sized through the eye material instead. The bridge's Material Pupil setting does that:

  • Auto, the default, sizes the pupils through the eye material wherever no blendshape already sizes them. On Extended and HD characters, whose pupils are blendshapes, it stays out of the way.
  • Off leaves the pupils at the size the material sets.

A character set up before the bridge may carry the older Character Creator Pupil Material component instead. It keeps working, and the bridge leaves the pupils to it while it is there.

Reallusion's Other Scripts

The wrinkle maps and cloth that Reallusion's tools add need nothing from you. The wrinkles follow the face at their own steady pace, and the cloth moves with the character as usual.

VRM Characters

A VRoid or other VRM character brings UniVRM's own runtime, which runs beside FaceCue every frame. The FaceCue VRM Bridge keeps it out of FaceCue's way while the game runs, and changes nothing on the character as saved. The OneClick wizard adds it, as VRM Bridge, when it sets up a VRoid character.

VRM 1.0

A VRM 1.0 character's runtime, the VRM Instance, sets the character's expressions and turns its eyes by itself, even while nothing drives them. Left as it is, it can erase the mouth's vowels and the blinks FaceCue drives, make them flicker on a character far from the camera, and pull the eyes slightly off FaceCue's look.

The bridge goes on the object that carries the VRM Instance. On a character set up another way, the brain's Conflict Assessment offers Add FaceCue VRM Bridge.

VRM's Own Update

The bridge's one setting, VRM's Own Update, decides how it keeps the VRM Instance out of FaceCue's way while the game runs:

  • Auto, the default, picks Spring Bones Only while the UniVRM (VRM 1.0) integration is on, and Before FaceCue when it is off.
  • Before FaceCue keeps VRM's whole update and runs it ahead of FaceCue's, so VRM's constraints and VRM animation playback keep working.
  • Spring Bones Only switches VRM's own update off and runs only its spring bones, after FaceCue has posed the character. FaceCue alone drives the face and the eyes, and the hair and clothes swing with the head FaceCue turns, but VRM's constraints and VRM animation playback stop. It needs the UniVRM (VRM 1.0) integration.

When to Use Before FaceCue

Pick it for a character that depends on VRM's constraints or VRM animation playback. It keeps the vowels and the blinks, but on a character far from the camera, or with Display Smoothing set to Off, the mouth and the blinks can flicker. Setting that character's Display Smoothing to On keeps them steady, at the cost of smoothing it on every frame. See Display Smoothing.

VRM 0.x

A VRM 0.x character's runtime leaves the face FaceCue drives alone, but its spring bones move the hair and clothes before FaceCue turns the head, so they never swing with it. With the UniVRM (VRM 0.x) integration on, the bridge runs those spring bones after FaceCue instead, and touches nothing else. It goes on the model's root object. Spring bones you have set to update in FixedUpdate or by hand are left as they are.

Character Tools Are Families

Character Creator, Daz, MetaHuman, Ready Player Me, Microsoft Rocketbox, Synty Sidekicks and VRoid are not integrations. FaceCue needs nothing installed from them. It recognises a character each one exports and sets it up in one pass. See The Families. Where a tool's own Unity package does install something that runs beside FaceCue, as UniVRM and Reallusion's tools do, the rows above cover it.