API reference
API reference
Select your platform
No SDKs available
No versions available

Interactable Class

Extends MonoBehaviour
Interactable provides a base template for any kind of interactable object.
An Interactable can have Hover and HandleSelected Interactor(s) acting on it. Concrete Interactables can define whether they have a One-to-One or One-to-Many relationship with their associated concrete Interactors.

Protected Fields

_started : bool
Signature
bool Oculus.Interaction.Interactable< TInteractor, TInteractable >._started

Properties

Data : object
[Get]
Signature
object Oculus.Interaction.Interactable< TInteractor, TInteractable >.Data
Interactors : IEnumerableHashSet< TInteractor >
[Get]
Signature
IEnumerableHashSet<TInteractor> Oculus.Interaction.Interactable< TInteractor, TInteractable >.Interactors
InteractorViews : IEnumerable< IInteractorView >
[Get]
Signature
IEnumerable<IInteractorView> Oculus.Interaction.Interactable< TInteractor, TInteractable >.InteractorViews
MaxInteractors : int
[Get][Set]
Signature
int Oculus.Interaction.Interactable< TInteractor, TInteractable >.MaxInteractors
MaxSelectingInteractors : int
[Get][Set]
Signature
int Oculus.Interaction.Interactable< TInteractor, TInteractable >.MaxSelectingInteractors
Registry : InteractableRegistry< TInteractor, TInteractable >
[Get]
Signature
InteractableRegistry<TInteractor, TInteractable> Oculus.Interaction.Interactable< TInteractor, TInteractable >.Registry
SelectingInteractors : IEnumerableHashSet< TInteractor >
[Get]
Signature
IEnumerableHashSet<TInteractor> Oculus.Interaction.Interactable< TInteractor, TInteractable >.SelectingInteractors
SelectingInteractorViews : IEnumerable< IInteractorView >
[Get]
Signature
IEnumerable<IInteractorView> Oculus.Interaction.Interactable< TInteractor, TInteractable >.SelectingInteractorViews
State : InteractableState
[Get]
Signature
InteractableState Oculus.Interaction.Interactable< TInteractor, TInteractable >.State
WhenInteractorAdded : MAction< TInteractor >
[Get]
Signature
MAction<TInteractor> Oculus.Interaction.Interactable< TInteractor, TInteractable >.WhenInteractorAdded
WhenInteractorRemoved : MAction< TInteractor >
[Get]
Signature
MAction<TInteractor> Oculus.Interaction.Interactable< TInteractor, TInteractable >.WhenInteractorRemoved
WhenSelectingInteractorAdded : MAction< TInteractor >
[Get]
Signature
MAction<TInteractor> Oculus.Interaction.Interactable< TInteractor, TInteractable >.WhenSelectingInteractorAdded
WhenSelectingInteractorRemoved : MAction< TInteractor >
[Get]
Signature
MAction<TInteractor> Oculus.Interaction.Interactable< TInteractor, TInteractable >.WhenSelectingInteractorRemoved

Events

WhenInteractorViewAdded : Action< IInteractorView >
Signature
Action<IInteractorView> Oculus.Interaction.Interactable< TInteractor, TInteractable >.WhenInteractorViewAdded
WhenInteractorViewRemoved : Action< IInteractorView >
Signature
Action<IInteractorView> Oculus.Interaction.Interactable< TInteractor, TInteractable >.WhenInteractorViewRemoved
WhenSelectingInteractorViewAdded : Action< IInteractorView >
Signature
Action<IInteractorView> Oculus.Interaction.Interactable< TInteractor, TInteractable >.WhenSelectingInteractorViewAdded
WhenSelectingInteractorViewRemoved : Action< IInteractorView >
Signature
Action<IInteractorView> Oculus.Interaction.Interactable< TInteractor, TInteractable >.WhenSelectingInteractorViewRemoved
WhenStateChanged : Action< InteractableStateChangeArgs >
Signature
Action<InteractableStateChangeArgs> Oculus.Interaction.Interactable< TInteractor, TInteractable >.WhenStateChanged

Protected Methods

Awake ()
Signature
virtual void Oculus.Interaction.Interactable< TInteractor, TInteractable >.Awake()
Returns
void
InteractorAdded ( interactor )
Signature
virtual void Oculus.Interaction.Interactable< TInteractor, TInteractable >.InteractorAdded(TInteractor interactor)
Parameters
interactor: TInteractor
Returns
void
InteractorRemoved ( interactor )
Signature
virtual void Oculus.Interaction.Interactable< TInteractor, TInteractable >.InteractorRemoved(TInteractor interactor)
Parameters
interactor: TInteractor
Returns
void
OnDisable ()
Signature
virtual void Oculus.Interaction.Interactable< TInteractor, TInteractable >.OnDisable()
Returns
void
OnEnable ()
Signature
virtual void Oculus.Interaction.Interactable< TInteractor, TInteractable >.OnEnable()
Returns
void
SelectingInteractorAdded ( interactor )
Signature
virtual void Oculus.Interaction.Interactable< TInteractor, TInteractable >.SelectingInteractorAdded(TInteractor interactor)
Parameters
interactor: TInteractor
Returns
void
SelectingInteractorRemoved ( interactor )
Signature
virtual void Oculus.Interaction.Interactable< TInteractor, TInteractable >.SelectingInteractorRemoved(TInteractor interactor)
Parameters
interactor: TInteractor
Returns
void
SetRegistry ( registry )
Signature
virtual void Oculus.Interaction.Interactable< TInteractor, TInteractable >.SetRegistry(InteractableRegistry< TInteractor, TInteractable > registry)
Parameters
registry: InteractableRegistry< TInteractor, TInteractable >
Returns
void
Start ()
Signature
virtual void Oculus.Interaction.Interactable< TInteractor, TInteractable >.Start()
Returns
void

Methods

AddInteractor ( interactor )
Adds an interactor to the interactable.
Signature
void Oculus.Interaction.Interactable< TInteractor, TInteractable >.AddInteractor(TInteractor interactor)
Parameters
interactor: TInteractor
Returns
void
AddSelectingInteractor ( interactor )
Adds a selecting interactor to the interactable.
Signature
void Oculus.Interaction.Interactable< TInteractor, TInteractable >.AddSelectingInteractor(TInteractor interactor)
Parameters
interactor: TInteractor
Returns
void
CanBeSelectedBy ( interactor )
Determines if the interactable can be interacted on by the given interactor.
Signature
bool Oculus.Interaction.Interactable< TInteractor, TInteractable >.CanBeSelectedBy(TInteractor interactor)
Parameters
interactor: TInteractor  The interactor that intends to interact with the interactable.
Returns
bool  True if the interactor can interact with the interactable, false otherwise.
Disable ()
Signature
void Oculus.Interaction.Interactable< TInteractor, TInteractable >.Disable()
Returns
void
Enable ()
Signature
void Oculus.Interaction.Interactable< TInteractor, TInteractable >.Enable()
Returns
void
HasInteractor ( interactor )
Determines if the interactable is being hovered by the given interactor.
Signature
bool Oculus.Interaction.Interactable< TInteractor, TInteractable >.HasInteractor(TInteractor interactor)
Parameters
interactor: TInteractor  The interactor to check for hovering.
Returns
bool  True if the interactor is hovering the interactable, false otherwise.
HasSelectingInteractor ( interactor )
Determines if the interactable is being selected by the given interactor.
Signature
bool Oculus.Interaction.Interactable< TInteractor, TInteractable >.HasSelectingInteractor(TInteractor interactor)
Parameters
interactor: TInteractor  The interactor to check for selecting.
Returns
bool  True if the interactor is selecting the interactable, false otherwise.
InjectOptionalData ( data )
Sets data for this interactable on a dynamically instantiated GameObject.
Signature
void Oculus.Interaction.Interactable< TInteractor, TInteractable >.InjectOptionalData(object data)
Parameters
data: object
Returns
void
InjectOptionalInteractorFilters ( interactorFilters )
Sets interactor filters for this interactable on a dynamically instantiated GameObject.
Signature
void Oculus.Interaction.Interactable< TInteractor, TInteractable >.InjectOptionalInteractorFilters(List< IGameObjectFilter > interactorFilters)
Parameters
interactorFilters: List< IGameObjectFilter >
Returns
void
RemoveInteractor ( interactor )
Removes an interactor from the interactable.
Signature
void Oculus.Interaction.Interactable< TInteractor, TInteractable >.RemoveInteractor(TInteractor interactor)
Parameters
interactor: TInteractor
Returns
void
RemoveInteractorByIdentifier ( id )
Uses an interactor's unique ID to remove it from this interactable.
Signature
void Oculus.Interaction.Interactable< TInteractor, TInteractable >.RemoveInteractorByIdentifier(int id)
Parameters
id: int  The ID of the interactor to remove.
Returns
void
RemoveSelectingInteractor ( interactor )
Removes a selecting interactor from the interactable.
Signature
void Oculus.Interaction.Interactable< TInteractor, TInteractable >.RemoveSelectingInteractor(TInteractor interactor)
Parameters
interactor: TInteractor
Returns
void