Class XRInputDeviceFloatValueReader
A ScriptableObject that provides a float value from a device from the XR input subsystem as defined by its characteristics and feature usage string. Intended to be used with an XRInputValueReader as its object reference or as part of an XRInputDeviceButtonReader.
Inheritance
Inherited Members
Namespace: UnityEngine.XR.Interaction.Toolkit.Inputs.Readers
Assembly: Unity.XR.Interaction.Toolkit.dll
Syntax
[HelpURL("https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@3.0/api/UnityEngine.XR.Interaction.Toolkit.Inputs.Readers.XRInputDeviceFloatValueReader.html")]
[CreateAssetMenu(fileName = "XRInputDeviceFloatValueReader", menuName = "XR/Input Value Reader/float")]
public class XRInputDeviceFloatValueReader : XRInputDeviceValueReader<float>, IXRInputValueReader<float>, IXRInputValueReader
Methods
ReadValue()
Read the current value from the input source.
Declaration
public override float ReadValue()
Returns
Type | Description |
---|---|
float | Returns the current value from the input source. May return |
Overrides
TryReadValue(out float)
Try to read the current value from the input source.
Declaration
public override bool TryReadValue(out float value)
Parameters
Type | Name | Description |
---|---|---|
float | value | When this method returns, contains the current value from the input source. May return |
Returns
Type | Description |
---|---|
bool | Returns true if the current value was able to be read (and for actions, also if in progress). |
Overrides
Remarks
You can use the return value of this method instead of only using ReadValue() in order to avoid doing
any work when the input action is not in progress, such as when the control is not actuated.
This can be useful for performance reasons.
If an input processor on an input action returns a different value from the default float
when the input action is not in progress, the outvalue
returned by
this method may not be default(TValue)
as is typically the case for Try
- methods. If you need
to support processors that return a different value from the default when the control is not actuated,
you should use ReadValue() instead of using the return value of this method to skip input handling.