|TargetPoint|{{RootFieldType|RawOutput`1|[[Type:Float3|Float3]]}}|TypeAdv0=true| The average point The eyes are trying to look at currently. Simulated or controlled.
|TargetPoint|{{RootFieldType|RawOutput`1|[[Type:Float3|Float3]]}}|TypeAdv0=true| The average point The eyes are trying to look at currently. Simulated or controlled.
Line 32:
Line 31:
|RightEyeSqueeze|{{RootFieldType|RawOutput`1|[[Type:Float|Float]]}}|TypeAdv13=true| A 0-1 value of how scrunched the upper and lower lids are on the right eye. Simulated or controlled.
|RightEyeSqueeze|{{RootFieldType|RawOutput`1|[[Type:Float|Float]]}}|TypeAdv13=true| A 0-1 value of how scrunched the upper and lower lids are on the right eye. Simulated or controlled.
|CombinedEyeSqueeze|{{RootFieldType|RawOutput`1|[[Type:Float|Float]]}}|TypeAdv14=true| An average of the squinting of both eyes. Simulated or controlled.
|CombinedEyeSqueeze|{{RootFieldType|RawOutput`1|[[Type:Float|Float]]}}|TypeAdv14=true| An average of the squinting of both eyes. Simulated or controlled.
|LeftEyeFrown|{{RootFieldType|RawOutput`1|[[Type:Float|Float]]}}|TypeAdv15=true| The amount that the left eye is frowning according to the eye tracker if it exists.
|RightEyeFrown|{{RootFieldType|RawOutput`1|[[Type:Float|Float]]}}|TypeAdv16=true| The amount that the right eye is frowning according to the eye tracker if it exists.
|CombinedEyeFrown|{{RootFieldType|RawOutput`1|[[Type:Float|Float]]}}|TypeAdv17=true| The average amount of both eyes frowning according to the eye tracker if it exists.
|CombinedEyeOuterBrowVertical|{{RootFieldType|RawOutput`1|[[Type:Float|Float]]}}|TypeAdv23=true| Eye tracking average outer brow vertical value.
|EyeDataSource|IEyeDataSourceComponent| Eye tracking data
|EyeDataSource|IEyeDataSourceComponent| Eye tracking data
|SimulatingUser|User| Determines the user simulating the eye manager
|SimulatingUser|User| Determines the user simulating the eye manager
Line 54:
Line 53:
|SaccadeSpeed|Float| Speed the eyes move during saccades (does not affect eye tracking)
|SaccadeSpeed|Float| Speed the eyes move during saccades (does not affect eye tracking)
|LookTargetRoot|Slot| Slot that the eyes should look at
|LookTargetRoot|Slot| Slot that the eyes should look at
|LookTargetLocalPoint|Float3|
|LookTargetLocalPoint|Float3| The point that the eyes are looking at in local space.
|LeftEyeTargetOffset|Float3|
|LeftEyeTargetOffset|Float3| The point that the left eye is looking at in global space.
|RightEyeTargetOffset|Float3|
|RightEyeTargetOffset|Float3| The point that the right eye is looking at in global space.
|LookTargetOffset|Float3|
|LookTargetOffset|Float3| The point between the points both eyes are looking at in global space.
|MinRandomSaccadeInterval|Float| Minimum time in seconds between random saccades
|MinRandomSaccadeInterval|Float| Minimum time in seconds between random saccades
|MaxRandomSaccadeInterval|Float| Maximum time in seconds between random saccades
|MaxRandomSaccadeInterval|Float| Maximum time in seconds between random saccades
Line 71:
Line 70:
|HandAcceptAngle|Float| Maximum acceptance angle for hands
|HandAcceptAngle|Float| Maximum acceptance angle for hands
|HandBreakAngle|Float| Maximum angle before breaking eye contact with hands
|HandBreakAngle|Float| Maximum angle before breaking eye contact with hands
|DistanceCompensationExp|Float|
|DistanceCompensationExp|Float| At higher values, objects further away become easier to be within angle accept. Equation is <nowiki>[(ObjectAngleToEyeBall) * (Object Distance)^</nowiki><code>DistanceCompensationExp</code><nowiki> == new (ObjectAngleToEyeBall)]</nowiki>
|LeftEyeCloseOverride|Float| Overrides the left eyelid when open
|LeftEyeCloseOverride|Float| Overrides the left eyelid when open
|RightEyeCloseOverride|Float| Overrides the right eyelid when open
|RightEyeCloseOverride|Float| Overrides the right eyelid when open
Line 78:
Line 77:
|BlinkMinSpeed|Float| Minimum Speed for blinks
|BlinkMinSpeed|Float| Minimum Speed for blinks
|BlinkMaxSpeed|Float| Maximum Speed for blinks
|BlinkMaxSpeed|Float| Maximum Speed for blinks
|BlinkSpeedSpread|Float|
|BlinkSpeedSpread|Float| How much to scale the randomness of blink speed. Basically to make more extreme values more common.
|MinPupilSize|Float| Minimum pupil size
|MinPupilSize|Float| Minimum pupil size
|MaxPupilSize|Float| Maximum pupil size
|MaxPupilSize|Float| Maximum pupil size
|PupilSizeNoiseSpeed|Float| How fast the random pupil noise will move
|PupilSizeNoiseSpeed|Float| How fast the random pupil noise will move
|PupilSizeNoiseOffset|Float|
|PupilSizeNoiseOffset|Float| How much extra random noise the right eye pupil size will have vs the left one.
|EyeTrackingPupilSizeSmoothSpeed|Float| Smooth speed for tracked pupil dilation
|EyeTrackingPupilSizeSmoothSpeed|Float| Smooth speed for tracked pupil dilation
|MiniExpressionProbability|Float| chance for a miniexpression to occur
|MiniExpressionProbability|Float| chance for a miniexpression to occur
Line 90:
Line 89:
== MiniExpression ==
== MiniExpression ==
{{stub}}
{{Table TypeFields
|Weight|Float| The likelihood of this mini expression of being picked.
|Direction|Float3| The direction to look for this eye expression.
|MinDuration|Float| The minimum amount of seconds this mini expression should last.
|MaxDuration|Float| The maximum amount of seconds this mini expression should last.
The Eye Manager Component is a component that is used for configuring the Eyes of an avatar, Both supporting simulated eye-movement, and real eye tracking using a headset with built in eye tracking sensors such as the HTC Vive pro eye.
This component is automatically set up by default when setting up an avatar with detectable eyes and blink shape keys.
The point The left eye specifically is looking at. Simulated or controlled. This can be different from TargetPoint if LeftEyeTargetOffset has a non zero value.
The point The right eye specifically is looking at. Simulated or controlled. This can be different from TargetPoint if RightEyeTargetOffset has a non zero value.
At higher values, objects further away become easier to be within angle accept. Equation is [(ObjectAngleToEyeBall) * (Object Distance)^DistanceCompensationExp == new (ObjectAngleToEyeBall)]