SALSA LipSync Logo

RandomEyes3D Inspector Properties


  • Skinned Mesh Renderer: The skinned mesh renderer attached to your 3D model. This is where Unity places your BlendShapes. If you attach RandomEyes3D to the part of your character that contains the skinned mesh renderer, RandomEyes3D will find it and link it automatically.

 

  • Use Custom Shapes Only: Useful when using Autodesk Character Generator or Mixamo Fuse Character Creator models, this feature disables all eye control and uses the RandomEyes3D component as a Custom Shape BlendShape driver only.

 

  • Eye Shape Indexes (These are the BlendShapes for your characters corresponding look directions)
    • Auto-link Shapes: Click this and RandomEyes3D will attempt to automatically link to the corresponding shapes (LookUp, LookDown, LookLeft, LookRight, Blink {case insensitive}).
    • LookUp Index: Select your look up BlendShape in your characters skinned mesh renderer.
    • LookDown Index: Select your look down BlendShape in your characters skinned mesh renderer.
    • LookLeft Index: Select your look left BlendShape in your characters skinned mesh renderer.
    • LookRight Index: Select your look right BlendShape in your characters skinned mesh renderer.
    • Blink Index: Select your blink BlendShape in your characters skinned mesh renderer.

 

  • Target Tracking (Eye tracking with adjustable sensitivity, and target affinity (acts like attention span))
    • Eye Position: The automatically created [RandomEyes3D Gizmo] gets linked here so [RandomEyes3d] knows where the center point of your characters eyes are.
    • Look Target: Link a GameObject here and the eyes will follow it.
    • Look Sensitivity: Distant targets don't require much eye movement, use this to exaggerate the movement.
    • Remove Look Target Button: Removes the look target in the inspector
    • Target Affinity: When enabled, The [Affinity Percentage] slider is used to determine the percentage of time the eyes spend tracking the target versus looking around randomly. This adds realism since most people don't stare indefinitely at a subject.
    • Affinity Percentage: A value of of zero will never look at the look target. A value of one will always look at the look target.
    • Track Behind: Check to eye track even when the look target is behind the character. When not checked, and the look target is behind the character, the eye movement switches to random until the look target is in front of the character again.
    • Invert Tracking: Eyes must face the Z+ axis before adding the RandomEyes3D component, this option inverts the eye tracking calculations to compensate if the RandomEyes3D component was added with the characters eyes facing Z-.

 

  • Eye Properties
    • Current Look Position: The currently assigned look position. This is an Enum field that contains the options: Up Right, Up, Up Left, Right, Forward, Left, Down Right, Down, Down Left and Blink.
    • Range of Motion: Use this to control how far you want the eyes to drift from the center position.
    • Blend Speed: Set this to adjust how long it takes the eyes to move from one position to another.

 

  • Blink Duration: Set this to adjust the blink duration.
  • Blink Speed: Set this to adjust the blink speed.
  • Open Max/Close Max: Set the maximum eye open and maximum eye close amounts.

 

  • Random Eyes: Check this to enable random eye movement.
  • Max Random Interval: Random eye movement is always random. However, you can adjust the max value, which means the eyes will move at a random interval no more than this value.

 

  • Random Blink: Check this to enable blinking.
  • Max Blink Interval: Random blinking is always random. However, you can adjust the max value, which means blinking will occur at a random interval no more than this value.

 

  • Custom Shapes (Link BlendShapes from a SkinnedMeshRenderer for control through our API)
    • Auto-link Exclude Eye Shapes: Check this to attempt the auto-exclusion of eye shapes from the Custom Shapes Auto-link.
    • Auto-link Exclude Mouth Shapes: Link a Salsa3D component to attempt the auto-exclusion of eye shapes from the Custom Shapes Auto-link.
    • Auto-link Shapes: Auto-link all Blendshapes from this SkinnedMeshRenderer.
    • Add Custom Shape: Add another Custom Shape slot.

 

  • Current Custom Shape: The currently selected custom shape. This is dynamically populated with the custom shape names you specify. Setting this to a custom shape deactivates all other custom shapes that are not using the [Override] feature.

 

  • Random Custom Shapes: Check this if you want to enable random custom shapes.
  • Max Random Internal: Maximum interval between custom shapes.
  • Random Blend Speed: Blend speed is a random value between min and max.
  • Random Range Of Motion: Range of motion is a random value between min and max.
  • Random Duration: Duration active is a random value between min and max.

 

  • Shapes (Link individual BlendShapes from a SkinnedMeshRenderer so they can be managed by the RandomEyes API)
    • Del: Delete this custom shape from the Custom Shapes list. Hover your cursor over this button to see the shapeIndex.This index can be used as a parameter when calling any of the custom shape public functions.
    • Shape: (shapeIndex) Select a BlendShape you wish to link to this custom shape slot.
    • Name: (shapeName) A friendly string name for this shape. Uses the selected shape name by default. This name can be used as a parameter when calling any of the custom shape public functions.
    • Override: (overrideOn) Set this to true to activate this custom shape regardless of the status of other custom shapes or the [Current Custom Shape] selector.
    • !Rand: (notRandom) Exclude this shape from the random shape selection function.
    • On: (isOn) Reports [T] for True when this custom shape reaches its current max range of motion. Reports [F] for False when this custom shape reaches its zero position. The fully activated and fully deactivated states are also when the RandomEyes_OnCustomShapeChanged event is fired.
    • Blend: (blendSpeed) The individual blendSpeed for this custom shape.
    • Range: (rangeOfMotion) The individual rangeOfMotion for this custom shape.

  • Groups (Combine multiple Shapes to create complex facial expressions (smile, frown, etc) that can be managed by the RandomEyes API)
    • ​[+]: Add a new group.
    • [R]: Resets blendshape values to zero for all non-previewed groups.
    • Del: Delete the selected group.
    • Add: Add a new Shape to the selected group
    • Reset: Disable preview for this group and reset it's shapes to zero.
    • Preview: Enable design time live editor preview as you assemble complex facial expressions.
    • Hide: Collapses the group down to a single visible row for a tidy inspector.
    • Group Shapes
      • Del: Delete the selected Shape from this group.
      • Blend: Set the blend speed for this shape (e.g. how quickly it reaches it's full range of motion).
      • Range: The range of motion allowed for the selected Shape.

 

  • Broadcast Custom Shape Events (If you need a script to be notified when a custom shape has changed)
    • Broadcast: Check this box to broadcast the [RandomEyes_OnCustomShapeChanged] event to one or more game objects.

(Only visible when Broadcast is enabled)

  • Broadcast Receivers Count: The number of game objects you wish to receive the [RandomEyes_OnCustomShapeChanged] event.
  • Broadcast Receivers: Link your game object [RandomEyes_OnCustomShapeChanged] event receivers here.
  • Propagate To Children: Check this to propogate the [RandomEyes_OnCustomShapeChanged] event to all child objects of the selected Braodcast Receivers.

 

RandomEyes Eye-Movement Unity Asset Logo