Class XRController
Interprets feature values on a tracked input controller device from the XR input subsystem into XR Interaction states, such as Select. Additionally, it applies the current Pose value of a tracked device to the transform of the GameObject.
Inherited Members
Namespace: UnityEngine.XR.Interaction.Toolkit
Syntax
public class XRController : XRBaseController
Remarks
It is recommended to use ActionBasedController instead of this behavior. This behavior does not need as much initial setup as compared to ActionBasedController, however input processing is less customizable and the XR Device Simulator cannot be used to drive this behavior.
Properties
activateUsage
The input to use for detecting activation.
Declaration
public InputHelpers.Button activateUsage { get; set; }
Property Value
Type | Description |
---|---|
InputHelpers.Button |
axisToPressThreshold
The amount an axis needs to be pressed to trigger an interaction event.
Declaration
public float axisToPressThreshold { get; set; }
Property Value
Type | Description |
---|---|
Single |
controllerNode
The
Declaration
public XRNode controllerNode { get; set; }
Property Value
Type | Description |
---|---|
XRNode |
inputDevice
(Read Only) The
Declaration
public InputDevice inputDevice { get; }
Property Value
Type | Description |
---|---|
InputDevice |
moveObjectIn
The input that will be used to translate the anchor away from the interactor.
Declaration
public InputHelpers.Button moveObjectIn { get; set; }
Property Value
Type | Description |
---|---|
InputHelpers.Button |
moveObjectOut
The input that will be used to translate the anchor towards the interactor.
Declaration
public InputHelpers.Button moveObjectOut { get; set; }
Property Value
Type | Description |
---|---|
InputHelpers.Button |
rotateObjectLeft
The input to use to rotate an anchor to the Left.
Declaration
public InputHelpers.Button rotateObjectLeft { get; set; }
Property Value
Type | Description |
---|---|
InputHelpers.Button |
rotateObjectRight
The input to use to rotate an anchor to the Right.
Declaration
public InputHelpers.Button rotateObjectRight { get; set; }
Property Value
Type | Description |
---|---|
InputHelpers.Button |
selectUsage
The input to use for detecting a select.
Declaration
public InputHelpers.Button selectUsage { get; set; }
Property Value
Type | Description |
---|---|
InputHelpers.Button |
uiPressUsage
The input to use for detecting a UI press.
Declaration
public InputHelpers.Button uiPressUsage { get; set; }
Property Value
Type | Description |
---|---|
InputHelpers.Button |
Methods
IsPressed(InputHelpers.Button)
Evaluates whether the button is considered pressed.
Declaration
protected virtual bool IsPressed(InputHelpers.Button button)
Parameters
Type | Name | Description |
---|---|---|
InputHelpers.Button | button | The button to check. |
Returns
Type | Description |
---|---|
Boolean | Returns true when the button is considered pressed. Otherwise, returns false. |
SendHapticImpulse(Single, Single)
Play a haptic impulse on the controller if one is available.
Declaration
public override bool SendHapticImpulse(float amplitude, float duration)
Parameters
Type | Name | Description |
---|---|---|
Single | amplitude | Amplitude (from 0.0 to 1.0) to play impulse at. |
Single | duration | Duration (in seconds) to play haptic impulse. |
Returns
Type | Description |
---|---|
Boolean |
Overrides
UpdateInput(XRControllerState)
Updates the XR Interaction states in the given controller state based on the current inputs of the controller device.
Declaration
protected override void UpdateInput(XRControllerState controllerState)
Parameters
Type | Name | Description |
---|---|---|
XRControllerState | controllerState | The state of the controller. |
Overrides
UpdateTrackingInput(XRControllerState)
Updates the pose values in the given controller state based on the current tracking input of the controller device.
Declaration
protected override void UpdateTrackingInput(XRControllerState controllerState)
Parameters
Type | Name | Description |
---|---|---|
XRControllerState | controllerState | The state of the controller. |