Private
_debugPrivate
colliderPrivate
eventStatic
getPrivate
interactablesPrivate
interactablePrivate
interactionPrivate
interactorsPrivate
logPrivate
shouldPrivate
defineRemoves an Interactable from the interaction manager's registry.
The Interactable to deregister.
Removes an InteractionPlane from the interaction manager's registry.
The InteractionPlane to deregister.
Removes an Interactor from the interaction manager's registry, so that it will no longer be considered when determining which interactors are interacting with interactables.
The Interactor to deregister.
Private
disableDispatches an event in 3 phases:
The eventArgs.origin is not included in the propagation path and the dispatch starts at eventArgs.origin child.
The event arguments to dispatch.
Private
findFinds all colliders in the descendants of an SceneObject with the following rules:
the SceneObject for which to look for colliders
the current array of colliders
whether the sceneObject is the root of the search
an array of ColliderComponent
Private
findLooks for colliders in the descendants of the param Interactable if not collider is found, one is created.
the interactable for which to find or create the collider
an array of ColliderComponent
Returns an Interactable by the collider attached to it. This is an optimization to reduce expensive getComponent calls.
The ColliderComponent to filter interactables by.
The interactable that matches the collider.
Returns the interactable of the passed SceneObject.
The SceneObject to filter interactables by.
The interactable that matches the scene object.
Deprecated
use getInteractablesThatTarget(targetingMode) instead.
the targeting mode that the interactable(s) are configured to
Returns all interactables that are set to the passed targeting mode.
TargetingMode to filter interactables by
an array of interactables that match the targeting mode
Returns all interactors of matching interactor type
The InteractorInputType to filter interactors by.
An array of interactors that match the input type.
Returns all interactors that are currently targeting
An array of interactors that are targeting.
Private
processPrivate
processPrivate
processAdds an Interactable to the interaction manager's registry. This registry helps speed up calculations when raycasting objects in the scene.
The Interactable to register.
Adds an InteractionPlane to the interaction manager's registry, so it can be used to determine which {interactors} are interacting with interaction planes.
The InteractionPlane to register.
Adds an Interactor to the interaction manager's registry, so it can be used to determine which {interactors} are interacting with interactables.
The Interactor to register.
Private
updateIterates through all the interactors, determine which interactables are being interacted with, and send events to them
Private
update
Manages interactions between Interactor and Interactable, and decides if events need to be transmitted to Interactable