Click or drag to resize

Controller Class

Encapsulates controller functionality. This is an abstract class with two concrete implementations: Local and Remote.
Inheritance Hierarchy
SystemObject
  UnityEngine.Object
    UnityEngine.Component
      UnityEngine.Behaviour
        UnityEngine.MonoBehaviour
          ImmerseSDKLoggingBehaviour
            ImmerseSDK.ControllersController
              ImmerseSDK.ControllersControllerLocal
              ImmerseSDK.ControllersControllerRemote

Namespace:  ImmerseSDK.Controllers
Assembly:  ImmerseSDK.App (in ImmerseSDK.App.dll) Version: 3.9.0.0 (3.9.0.0)
Syntax
C#
public abstract class Controller : LoggingBehaviour

The Controller type exposes the following members.

Constructors
  NameDescription
Protected methodController
Initializes a new instance of the Controller class
Top
Properties
  NameDescription
Public propertyAttachPoint
This controller's attach point
Public propertyCanEngage
Indicates if this controller can engage an object
Public propertyEngagingObject
Get's the current engagable object this controller is engaged with (can be null if not engaged)
Public propertyID
Identifies the hand that this controller belongs to
Public propertyIsEngaged
Indicates whether this controller is currently engaging an object
Public propertyIsInDialogMode
Indicates whether this controller is currently handling dialog input
Protected propertyIsInitialised
True if initialisation has been done
Public propertyOwner
User that owns this controller
Public propertyRealControllerModels
Controls the real controller models
Public propertyState
Gets his controller's current state
Top
Methods
  NameDescription
Protected methodAwake
Unity component method
Protected methodConvertToRightHand
Converts the model from left to right hand
Public methodForceShowHands
Provides the same functionality as Controller.ShowHands, but allows the isVisible parameter to determine the hand's visibility if the hand is engaged at the time when the method is called.
Public methodGetAvatar
Returns the Avatar of this controller
Public methodGetMenuDotTrigger
Public methodGetOrientation
Get the target orientation of the controller
Public methodGetOtherHand
Gets the other hand
Public methodIsLocal
Returns true if this is a local controller
Public methodIsOtherHandIsPointing
Returns true if the other controller is in the pointing state, otherwise false
Public methodIsPointing
Returns true if the controller is in the pointing state, otherwise false
Protected methodOnDisable
Unity component method
Protected methodOnDrawGizmos
Unity Editor-only method
Protected methodOnEnable
Unity component method
Protected methodSetAvatar
Assigns an avatar to this controller
Public methodSetEngagingObject
Sets the engaging object for this controller
Protected methodSetupRealControllerModels
Initialises the hardware specific controller models
Protected methodShowHandGeometry
Shows or hides hand geometry only. Note that this does not update the internal visibility state, so if anything happens that will cause an update, then that will determine the visibility.
Public methodShowHands
Changes the visibility of the avatar hand model associated with this controller. Note that when calling this method, the isVisible parameter will be stored locally and is only used to determine the hand's visibility whenever it is not engaged with an object. When the hand is engaged, it will always be hidden regardless of the value passed in.
Protected methodShowRealControllerGeometry
Shows or hides hand geometry only. Note that this does not update the internal visibility state, so if anything happens that will cause an update, then that will determine the visibility.
Public methodShowRealControllers
Changes the visibility of the real controller models.
Protected methodStart
Unity component method
Public methodUpdate
Unity component method
Protected methodUpdateHandVisibility
Updates visibility of the hand geometry
Top
Fields
  NameDescription
Protected field_renderer
Public fieldStatic memberEngageDistance
Default distance to look for engagable objects
Public fieldInteractionSource
Gets the interaction source of this controller
Public fieldInteractionTarget
Gets the interaction target of this controller
Top
Extension Methods
  NameDescription
Public Extension MethodGetCopyOf
Copies all properties of a component from source to target. Uses reflection to set properties.
(Defined by ComponentExtensions.)
Public Extension MethodWaitForT
Waits for a singleton on a coroutine
(Defined by SingletonManager.)
Top
See Also