Events
Player Events
Section titled “Player Events”| Event | Description |
|---|---|
OnPlayerJoined(remotePlayer) (Args: Player) | Called when a remote Player joins the instance. |
OnPlayerLeft(remotePlayer) (Args: Player) | Called when a remote Player leaves the instance. |
Avatar Events
Section titled “Avatar Events”| Event | Description |
|---|---|
OnLocalPlayerAvatarLoaded(avatar, localPlayer) (Args: Avatar, Player) | Called when a local player’s Avatar Loads. |
OnLocalPlayerAvatarClear(avatar, localPlayer) (Args: Avatar, Player) | Called when a local player’s Avatar Clears. |
OnRemotePlayerAvatarLoaded(avatar, remotePlayer) (Args: Avatar, Player) | Called when a remote player’s Avatar Loads. |
OnRemotePlayerAvatarClear(avatar, remotePlayer) (Args: Avatar, Player) | Called when a remote player’s Avatar Clears. |
Instances Events
Section titled “Instances Events”| Event | Description |
|---|---|
OnInstanceConnected() | Called you connect to an online instance. |
OnInstanceDisconnected() | Called you disconnect from an online instance. |
OnInstanceConnectionLost() | Called you lost connection to an online instance. |
OnInstanceConnectionRecovered() | Called you recover connection to the online instance. |
Spawnable Events
Section titled “Spawnable Events”| Event | Description |
|---|---|
OnSpawnableCreated(spawnable, spawner) (Args: Spawnable, Player) | Called when a spawnable is spawned. |
OnSpawnableDestroyed(spawnable, spawner) (Args: Spawnable, Player) | Called when a spawnable is deleted. |
VR Mode Switch Events
Section titled “VR Mode Switch Events”| Event | Description |
|---|---|
OnPreVRModeSwitch(switchingToXR : bool) | Called the frame before initializing XR loaders. The switch can still fail. |
OnPostVRModeSwitch(switchingToXR: bool) | Called the frame after initializing XR loaders. This means the switch was successful. |
OnFailedVRModeSwitch(switchingToXR: bool) | Called the frame after the switch failed. This means the switch has failed. |
Most of Unity’s MonoBehaviour events are forwarded to your Lua script. You can define these functions in your script to handle these events.
General Events
Section titled “General Events”| Event | Description |
|---|---|
Awake() | Called when an enabled script instance is being loaded. |
Start() | Called on the frame when a script is enabled before any Update methods are called the first time. |
Update() | Called every frame if enabled. |
FixedUpdate() | Called for physics calculations. |
LateUpdate() | Called every frame if enabled. |
OnEnable() | Called when the object becomes enabled and active. |
OnDisable() | Called when the script becomes disabled. |
OnDestroy() | Called when the script is destroyed. |
Special Execution Order Events
Section titled “Special Execution Order Events”| Event | Description |
|---|---|
OnPostFixedUpdate() | Same as FixedUpdate(), but runs after all other FixedUpdate() Unity Events on the execution order. |
OnPostUpdate() | Same as OnPostUpdate(), but runs after all other OnPostUpdate() Unity Events on the execution order. |
OnPostLateUpdate() | Same as OnPostLateUpdate(), but runs after all other OnPostLateUpdate() Unity Events on the execution order. |
Collision Events
Section titled “Collision Events”| Event | Description |
|---|---|
OnCollisionEnter(collision) | Called when this collider/rigidbody starts touching another rigidbody/collider. |
OnCollisionStay(collision) | Called once per frame for every collider or rigidbody touching another collider or rigidbody. |
OnCollisionExit(collision) | Called when this collider/rigidbody stops touching another rigidbody/collider. |
OnCollisionEnter2D(collision) | Called when an incoming collider makes contact with this object’s collider (2D physics only). |
OnCollisionStay2D(collision) | Called each frame where a collider on another object is touching this object’s collider (2D physics only). |
OnCollisionExit2D(collision) | Called when a collider on another object stops touching this object’s collider (2D physics only). |
Trigger Events
Section titled “Trigger Events”| Event | Description |
|---|---|
OnTriggerEnter(other) | Called when a GameObject collides with another GameObject. |
OnTriggerStay(other) | Called once per physics update for every collider other that is touching the trigger. |
OnTriggerExit(other) | Called when the collider other stops touching the trigger. |
OnTriggerEnter2D(collision) | Called when another object enters a trigger collider attached to this object (2D physics only). |
OnTriggerStay2D(collision) | Called each frame where another object is within a trigger collider attached to this object (2D physics only). |
OnTriggerExit2D(collision) | Called when another object leaves a trigger collider attached to this object (2D physics only). |
Mouse Events
Section titled “Mouse Events”| Event | Description |
|---|---|
OnMouseDown() | Called when the user presses the mouse button while over the Collider. |
OnMouseDrag() | Called when the user clicks on a Collider and is still holding down the mouse. |
OnMouseEnter() | Called when the mouse enters the Collider. |
OnMouseExit() | Called when the mouse is no longer over the Collider. |
OnMouseOver() | Called every frame while the mouse is over the Collider. |
OnMouseUp() | Called when the user releases the mouse button. |
OnMouseUpAsButton() | Called when the mouse is released over the same Collider as it was pressed. |
Application Events
Section titled “Application Events”| Event | Description |
|---|---|
OnApplicationQuit() | Called before the application quits. |
OnApplicationPause(pause) | Called when the application pauses or resumes on losing or regaining focus. |
OnApplicationFocus(focus) | Called when the player gets or loses focus. |
Animator Events
Section titled “Animator Events”| Event | Description |
|---|---|
OnAnimatorMove() | Called on an Animator move. |
OnAnimatorIK(layerIndex) | Called for setting up animation IK (inverse kinematics). |
Particle Events
Section titled “Particle Events”| Event | Description |
|---|---|
OnParticleCollision(other) | Called when a particle hits a Collider. |
OnParticleSystemStopped() | Called when all particles in the system have died, and no new particles will be born. |
OnParticleTrigger() | Called when any particles in a Particle System meet the conditions in the trigger module. |
OnParticleUpdateJobScheduled() | Called when a Particle System’s built-in update job has been scheduled. |
Transform Events
Section titled “Transform Events”| Event | Description |
|---|---|
OnTransformParentChanged() | Called when a direct or indirect parent of the transform changes. |
OnTransformChildrenChanged() | Called when the list of children of the transform changes. |
OnBeforeTransformParentChanged() | Called before the transform’s parent changes. |
Rendering Events
Section titled “Rendering Events”| Event | Description |
|---|---|
OnBecameVisible() | Called when the renderer becomes visible by any camera. |
OnBecameInvisible() | Called when the renderer is no longer visible by any camera. |
OnWillRenderObject() | Called for each camera if the object is visible and not a UI element. |
OnRenderObject() | Called after the camera has rendered the scene. |
OnPreCull() | Called before a camera culls the scene. |
OnPreRender() | Called before a camera renders the scene. |
OnPostRender() | Called after a camera has finished rendering the scene. |
OnRenderImage(source, destination) | Called after a camera has finished rendering, allows modifying the Camera’s final image. |
Canvas Events
Section titled “Canvas Events”| Event | Description |
|---|---|
OnCanvasGroupChanged() | Called when the CanvasGroup changes. |
OnRectTransformRemoved() | Called when the RectTransform is removed. |
OnRectTransformDimensionsChange() | Called when the dimensions of the RectTransform change. |
Joint Events
Section titled “Joint Events”| Event | Description |
|---|---|
OnJointBreak(breakForce) | Called when a joint attached to the same game object breaks. |
OnJointBreak2D(joint) | Called when a Joint2D attached to the same game object breaks. |