Class XRAngleGazeEvaluator
Evaluates the angle between the Gaze Transform's forward direction and the vector to the target Interactable. The target Interactable with the smallest angle will receive the highest normalized score.
Implements
Inherited Members
Namespace: UnityEngine.XR.Interaction.Toolkit.Filtering
Assembly: Unity.XR.Interaction.Toolkit.dll
Syntax
[Serializable]
public class XRAngleGazeEvaluator : XRTargetEvaluator, IDisposable
Properties
gazeTransform
The Transform whose forward direction is used to evaluate the target Interactable angle. If none is specified, during OnEnable this property is initialized with the XROrigin Camera.
Declaration
public Transform gazeTransform { get; set; }
Property Value
Type | Description |
---|---|
Transform |
maxAngle
The maximum value an angle can be evaluated as before the Interactor receives a normalized score of 0. Think of it as a field-of-view angle.
Declaration
public float maxAngle { get; set; }
Property Value
Type | Description |
---|---|
float |
Methods
CalculateNormalizedScore(IXRInteractor, IXRInteractable)
Calculates and returns a normalized value that represents the intention to select the given target Interactable.
The highest score of 1
represents the intention to select the given target and the lowest score of 0
the intention to not select it, any value in between is valid.
Declaration
protected override float CalculateNormalizedScore(IXRInteractor interactor, IXRInteractable target)
Parameters
Type | Name | Description |
---|---|---|
IXRInteractor | interactor | The Interactor whose Interactable targets (candidates) are being evaluated. |
IXRInteractable | target | The target Interactable to evaluate the normalized score. |
Returns
Type | Description |
---|---|
float | Returns the normalized interaction score of the given target.
|
Overrides
Remarks
The returned normalized score is evaluated by the weight curve (in GetWeightedScore(IXRInteractor, IXRInteractable)) and then
(in Process(IXRInteractor, List<IXRInteractable>, List<IXRInteractable>)) it's multiplied by the other evaluator weighted score in the same filter
to get the target final score.
You cannot disable, remove, or dispose evaluators from the filter in this method.
You also cannot unlink Interactors from the filter in this method.
See Also
OnEnable()
Unity calls this automatically when the evaluator becomes enabled and active.
Declaration
protected override void OnEnable()
Overrides
See Also
Reset()
(Editor Only) Unity calls this automatically when adding the evaluator to the Filter Target the first time. This function is only called in the Unity editor. Reset is most commonly used to give good default values in the Inspector.
Declaration
public override void Reset()