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

MRUKSystem Class

Extends SystemBase
Modifiers: final
System responsible for managing Mixed Reality Utility Kit (MRUK) operations within the spatial scene.
The MRUKSystem handles core MRUK functionality including scene ticking and entity cleanup for MRUK-related components. It extends SystemBase and integrates with the spatial SDK system architecture to provide seamless mixed reality scene management.
Key responsibilities:
  • Ticks the MR scene and global context on each execution cycle
  • Cleans up entity-to-material mappings when entities are deleted
  • Maintains synchronization between the spatial scene and MRUK native layer

Signature

class MRUKSystem : SystemBase

Constructors

MRUKSystem ()
Signature
constructor()
Returns
MRUKSystem

Properties

executeCount : Long
[Get]
The number of times this system's SystemBase.execute method has been called by the system manager. Incremented automatically before each execution cycle. Useful for performance monitoring.
Signature
var executeCount: Long
systemManager : SystemManager
[Get][Set]
The SystemManager that this system is registered with. Provides access to other systems and the scene. Initialized during system registration.
Signature
lateinit var systemManager: SystemManager

Methods

associateSystemManager ( systemManager )
Associates this system with a SystemManager. Called during registration. Throws RuntimeException if the system is already associated — each system instance can only belong to one manager.
Signature
fun associateSystemManager(systemManager: SystemManager)
Parameters
systemManager: SystemManager  The system manager that will own and execute this system.
delete ( entity )
Handles cleanup when an entity is deleted from the scene.
Removes any associated scene material mappings for the deleted entity from the AnchorProceduralMesh cache to prevent memory leaks and stale references.
Signature
open override fun delete(entity: Entity)
Parameters
entity: Entity  The entity being deleted from the scene.
destroy ()
Called during system shutdown to release all resources held by this system. Override to dispose of native handles, close streams, and clear any global state accumulated during the session.
Signature
open fun destroy()
equals ( other )
Checks if this system is equal to another object. Two systems are considered equal if they are the same instance or share the same Kotlin class, regardless of configuration state.
Signature
open operator override fun equals(other: Any?): Boolean
Parameters
other: Any?  The object to compare with.
Returns
Boolean  True if the other object is the same system instance or the same system class.
execute ()
Executes the MRUK system update cycle.
This method is called each frame to tick the MR scene and update the global MRUK context, ensuring synchronization between the spatial scene and the native MRUK layer.
Signature
open override fun execute()
getDependencies ()
Returns the execution ordering dependencies for this system. Override to declare which other systems must run before or after this one using SystemDependencies.
Signature
open fun getDependencies(): SystemDependencies?
Returns
SystemDependencies?  The dependency configuration, or null if this system has no ordering constraints.
getScene ()
Returns the Scene that this system operates within. Delegates to the associated SystemManager to retrieve the active scene instance.
Signature
fun getScene(): Scene
Returns
Scene  The scene containing the entities and rendering state for this system.
hashCode ()
Returns the hash code of this system, based on its Kotlin class identity. Consistent with the SystemBase.equals implementation — systems of the same class produce the same hash code.
Signature
open override fun hashCode(): Int
Returns
Int  The hash code derived from this system's Kotlin class.