class IsdkSystem(val externalControllerInputHandler: ExternalControllerInputHandler) : SystemBase
IsdkSystem
(
externalControllerInputHandler
)
|
Signature
constructor(externalControllerInputHandler: ExternalControllerInputHandler) Parameters externalControllerInputHandler: ExternalControllerInputHandler
The system responsible for handling locomotion.
Returns IsdkSystem |
externalControllerInputHandler
: ExternalControllerInputHandler
[Get] |
The system responsible for handling locomotion.
Signature
val externalControllerInputHandler: ExternalControllerInputHandler |
systemManager
: SystemManager
[Get][Set] |
The system manager that this system is associated with.
Signature
lateinit var systemManager: SystemManager |
associateSystemManager
(
systemManager
)
|
Associates this system with a system manager, used in the Spatial SDK.
Signature
fun associateSystemManager(systemManager: SystemManager) Parameters |
clearInteractableObservers
(
entity
)
|
Removes all observers for a specific entity, effectively stopping all pointer event notifications for that entity.
Signature
fun clearInteractableObservers(entity: Entity) Parameters |
delete
(
entity
)
|
System should do any housekeeping based on SystemBase.delete being removed from the scene
Signature
open fun delete(entity: Entity) Parameters entity: Entity |
destroy
()
|
System should clean up any and all resources for shutdown
Signature
open override fun destroy() |
enableDebugTools
(
enable
)
|
Toggles visibility of debug geometry rendering by ISDK, which shows internal state of interactions. Debug visuals have significant performance cost, so this should only be enabled when debugging.
Signature
fun enableDebugTools(enable: Boolean) Parameters enable: Boolean
True to enable debug tools, false to disable
|
equals
(
other
)
|
Checks if this system is equal to another object.
Signature
open operator override fun equals(other: Any?): Boolean Parameters other: Any?
The object to compare with.
Returns Boolean
True if this system is equal to the other object, false otherwise.
|
execute
()
|
System should perform all the operations based on relevant entities.
Signature
open override fun execute() |
getDependencies
()
|
Returns the dependencies of this system.
Signature
open override fun getDependencies(): SystemDependencies? |
getHandForPointerEvent
(
pointerEvent
)
|
Signature
fun getHandForPointerEvent(pointerEvent: PointerEvent): Hand? Parameters pointerEvent: PointerEventReturns Hand? |
getInteractionEventSourceBehavior
(
pointerEvent
)
|
Signature
fun getInteractionEventSourceBehavior(pointerEvent: PointerEvent): InteractionEventSourceBehavior? Parameters pointerEvent: PointerEvent |
getScene
()
|
Returns the scene that this system is associated with.
Signature
fun getScene(): Scene |
hashCode
()
|
Returns the hash code of this system.
Signature
open override fun hashCode(): Int Returns Int
The hash code of this system.
|
notifyObservers
(
event
)
|
Signature
fun notifyObservers(event: PointerEvent) Parameters event: PointerEvent |
registerInteractableObserver
(
entity
, observer
)
|
Registers an observer to receive pointer events for a specific interactable entity. The observer will be called whenever a pointer event occurs on the specified entity.
Signature
fun registerInteractableObserver(entity: Entity, observer: (PointerEvent) -> Unit): IsdkSystem.InteractableObserverHandle Parameters observer: Function1
The callback function to invoke when pointer events occur on the entity
Returns IsdkSystem.InteractableObserverHandle
A handle that can be used to unregister this specific observer
|
registerObserver
(
observer
)
|
Signature
fun registerObserver(observer: (PointerEvent) -> Unit) Parameters observer: Function1 |
unregisterInteractableObserver
(
handle
)
|
Unregisters a specific observer using its handle.
Signature
fun unregisterInteractableObserver(handle: IsdkSystem.InteractableObserverHandle) Parameters handle: IsdkSystem.InteractableObserverHandle
The handle returned from registerInteractableObserver
|
data class InteractableObserverHandle(val id: Long, val entityId: Long)
InteractableObserverHandle
(
id
, entityId
)
|
Signature
constructor(id: Long, entityId: Long) Parameters id: LongentityId: LongReturns IsdkSystem.InteractableObserverHandle |
entityId
: Long
[Get] |
Signature
val entityId: Long |
id
: Long
[Get] |
Signature
val id: Long |