VRTK_HeadsetControllerAware
Overview
Determines whether the HMD is in line of sight to the controllers or if the headset is directly looking at one of the controllers.
Script Usage:
- Place the
VRTK_HeadsetControllerAware
script on any active scene GameObject.
Inspector Parameters
- Track Left Controller: If this is checked then the left controller will be checked if items obscure it's path from the headset.
- Track Right Controller: If this is checked then the right controller will be checked if items obscure it's path from the headset.
- Controller Glance Radius: The radius of the accepted distance from the controller origin point to determine if the controller is being looked at.
- Custom Right Controller Origin: A custom transform to provide the world space position of the right controller.
- Custom Left Controller Origin: A custom transform to provide the world space position of the left controller.
- Custom Raycast: A custom raycaster to use when raycasting to find controllers.
Class Events
ControllerObscured
- Emitted when the controller is obscured by another object.ControllerUnobscured
- Emitted when the controller is no longer obscured by an object.ControllerGlanceEnter
- Emitted when the controller is seen by the headset view.ControllerGlanceExit
- Emitted when the controller is no longer seen by the headset view.
Unity Events
Adding the VRTK_HeadsetControllerAware_UnityEvents
component to VRTK_HeadsetControllerAware
object allows access to UnityEvents
that will react identically to the Class Events.
- All C# delegate events are mapped to a Unity Event with the
On
prefix. e.g.MyEvent
->OnMyEvent
.
Event Payload
RaycastHit raycastHit
- The Raycast Hit struct of item that is obscuring the path to the controller.VRTK_ControllerReference controllerReference
- The reference to the controller that is being or has been obscured or being or has been glanced.
Class Methods
LeftControllerObscured/0
public virtual bool LeftControllerObscured()
- Parameters
- none
- Returns
bool
- Returnstrue
if the path between the headset and the controller is obscured.
The LeftControllerObscured method returns the state of if the left controller is being obscured from the path of the headset.
RightControllerObscured/0
public virtual bool RightControllerObscured()
- Parameters
- none
- Returns
bool
- Returnstrue
if the path between the headset and the controller is obscured.
The RightControllerObscured method returns the state of if the right controller is being obscured from the path of the headset.
LeftControllerGlanced/0
public virtual bool LeftControllerGlanced()
- Parameters
- none
- Returns
bool
- Returnstrue
if the headset can currently see the controller within the given radius threshold.
the LeftControllerGlanced method returns the state of if the headset is currently looking at the left controller or not.
RightControllerGlanced/0
public virtual bool RightControllerGlanced()
- Parameters
- none
- Returns
bool
- Returnstrue
if the headset can currently see the controller within the given radius threshold.
the RightControllerGlanced method returns the state of if the headset is currently looking at the right controller or not.
Example
VRTK/Examples/029_Controller_Tooltips
displays tooltips that have been added to the controllers and are only visible when the controller is being looked at.
Updated less than a minute ago