Click or drag to resize

EngageableObject Methods

The EngageableObject type exposes the following members.

Methods
  NameDescription
Protected methodAwake
Public methodEngage
Engage After this is called a Ghost message is broadcast
Protected methodFixedUpdate
Unity Component Method
Protected methodForeachReaction
Iterate over all the reactions
Protected methodGetAngularVelocityOfController
Calculates the average angular velocity of all the engaging controllers
Protected methodGetAverageDirectionOfMovementForPositionUpdate
Default direction is from interaction point to controller
Protected methodGetAverageVectorFromInteractionPointToControllers
Calculates the distance from the interaction point (using the transform's position as default) to the average position of all the engaging controllers using world coordinates
Protected methodGetAverageVelocityOfControllers
Calculates the average velocity of all the engaging controllers using world coordinates
Protected methodGetDirectionOfMovementForPositionUpdate
Default direction is from interaction point to controller
Public methodGetPayload
Gets the message payload for this object
Protected methodGetTargetWorldPositionForController
Returns the target position for this object based on the current engaging controller and interaction point
Protected methodGetVectorFromGrabPointToController
Vector from where the object was grabbed (tracked on object) to the same relative interaction point (tracked on controlelr)
Protected methodGetVectorFromRigidBodyToGrabPoint
Calculates the distance from the interaction point (using the transform's position as default) to the average position of all the engaging controllers using world coordinates
Protected methodGetVelocityOfController
Calculates the average velocity of all the engaging controllers using world coordinates
Public methodInitialise
Initialise this pickup with the secified settings
Public methodIsEngagedBy
Checks if the object is engaged by a specific controller
Protected methodIsMovementVelocityValid
Checks whether the vector passed in is valid - checks for Nan, and that it's magnitude is greater than Mathf.Epsilon
Protected methodLateUpdate
Unity Component Method
Public methodMask
Masks the specified vector by only allowing the axis specified
Protected methodMoveTowardControllerPosition
Moves the object towards the average position of all the engaged controllers using physics in VR (in WebGL we will just set the position). Note: world coordinates are used when doing calculations.
Protected methodMoveTowardControllerRotation
Rotates the object towards the average rotation of all the engaged controllers using physics in VR (in WebGL we will just set the position)
Public methodMoveTowards
Moves this object by applying the velocity
Protected methodOnDisengage
Called when an object engagement ends (before network message is sent). Note: Only the local user will receive this.
Protected methodOnDrawGizmos
Unity Component Method
Protected methodOnEngage
Called when an object engagement starts (before network message is sent). Note: Only the local user will receive this.
Protected methodOnReceiveDeleteEngage
Called when a delete message is received
Protected methodOnReceiveDisengage
Called when an object engagement ends (when network message is received). Note: All users (local and remote) will receive this.
Protected methodOnReceiveEngage
Called when an object engagement starts (when network message is received). Note: All users (local and remote) will receive this.
Protected methodReactAfterEngagementChanged
Called after an engagement starts/ends. Will execute all the valid reactions for this action.
Public methodRequirementsMet
Returns true if interaction is allowed, and interaction requirements are met.
Protected methodRestrictMovement
Override this to restrict movement direction in some way. Default behavior is to return the direction unmodified.
Protected methodRestrictPosition
Override this to restrict an object's position in some way. Default behavior is to return the target position unmodified.
Protected methodRotateTowardsControllerPositionPhysical
Rotates the object towards the average rotation of all the engaged controllers using physics. This rotation is also masked so only the world axis specified is used.
Protected methodRotateUsingControllerAngularVelocity
Rotates the object using the average angular velocity of all the engaged controllers using physics. This rotation is also masked so only the local axis specified is used.
Protected methodSendEngageMessage
Sends the network message
Protected methodSetInteractionTargets
Sets the interaction target on the controller
Protected methodSetUpOutline
Protected methodShortVibrateController(Avatar, Hands, EngageableObjectVibrateTypes)
Used to trigger a small vibration for the user
Protected methodShortVibrateController(Avatar, Controller, EngageableObjectVibrateTypes)
Used to trigger a small vibration for the user
Protected methodShouldAddDefaultThrowForce
Returns true if the default throw force should be added (only valid for local disengagements that has authority)
Public methodShowHighlight
Shows/Hides a highlight around the object
Protected methodToggleDrag
We reduce drag for smoother interaction. This method toggles it on or off
Public methodTriggerScreenControlInteract
Public methodTriggerShortControlerVibration
Trigger a short vibration on the current engaged object
Protected methodUpdate
Unity Component Method
Protected methodUpdateDisplayForEngagement
Called when this object's engagement state changes. Override to implement any visual feedback required.
Top
Extension Methods
  NameDescription
Public Extension MethodDisengage
Disengage an engageable object
(Defined by EngagingExtensions.)
Public Extension MethodEngage
Engage an engageable object. This will be a local/remote engagement based on it's type (EngageableObject)
(Defined by EngagingExtensions.)
Public Extension MethodGetCopyOf
Copies all properties of a component from source to target. Uses reflection to set properties.
(Defined by ComponentExtensions.)
Public Extension MethodIsAvailable
Checks whether the target is available for interaction
(Defined by EngagingExtensions.)
Public Extension MethodWaitForT
Waits for a singleton on a coroutine
(Defined by SingletonManager.)
Top
See Also