Namespace SpatialSys.UnitySDK

Core/Components

AvatarAnimationClipType

Defines all the animation clips that are part of the avatar animation controller

SpatialAttachmentAvatarAnimSettings
SpatialAvatar
SpatialAvatarAnimOverrides
SpatialAvatarAnimation
SpatialAvatarAttachment
SpatialAvatarAttachment.AttachmentAnimatorType
SpatialAvatarAttachment.Category
SpatialAvatarAttachment.Slot
SpatialAvatarAttachment.SlotMask
SpatialAvatarAttachmentSlotMaskExtensions
SpatialAvatarDefaultAnimSetType
SpatialAvatarTeleporter
SpatialCameraPassthrough
SpatialClimbable
SpatialEmptyFrame
SpatialEntrancePoint
SpatialEnvironmentSettingsOverrides
SpatialInteractable
SpatialMovementMaterialSurface
SpatialNetworkObject

This component enables a GameObject to be synchronized across the network. A network object handles synchronizing the transform, rigidbody, and custom variables defined through visual scripting or NetworkVariables within SpatialNetworkBehaviour.

Network objects can be either embedded in a scene or instantiated from a prefab.

To spawn a network object for all clients, use SpatialBridge.spaceContentService.Spawn. Note that GameObject.Instantiate will only create a network object for the local client.

To despawn a network object you can simply Object.Destroy the GameObject, or use SpatialBridge.spaceContentService.DestroySpaceObject. This will despawn the object for all clients.

SpatialNetworkVariables
SpatialNetworkVariables.Data
SpatialPointOfInterest
SpatialPrefabObject
SpatialProjectorSurface
SpatialQuest
SpatialQuest.Reward
SpatialQuest.Task
SpatialRenderPipelineSettingsOverrides
SpatialSeatHotspot
SpatialSyncedAnimator
SpatialSyncedObject
SpatialThumbnailCamera
SpatialTriggerEvent
SpatialVirtualCamera

Services

SpatialBridge

The main interface that provides access to Spatial services. This acts like a bridge between user code and Spatial core functionality.

void Start()
{
SpatialBridge.coreGUIService.DisplayToastMessage("Hello World");
}
void Start()
{
SpatialBridge.coreGUIService.DisplayToastMessage("Hello World");
}

Services/Actor Service

ActorCustomPropertiesChangedEventArgs

Arguments for the onCustomPropertiesChanged event.

ActorJoinedEventArgs

Arguments for the onActorJoined event.

ActorLeftEventArgs

Arguments for the onActorLeft event.

ActorProfilePictureRequest

The result of a request to get an actor's profile picture.

AvatarRespawnEventArgs
EquipAttachmentRequest
IActor

An actor in the space. This represents a user who has joined the server instance.

IActorService

Service for interacting with actors and users in the space.

IAvatar
ILocalActor

The local actor (user on the current machine).

IReadOnlyAvatar

Services/Ad Service

AdRequest

Operation to request an ad to show up

IAdService

Service to handle ads integration

SpatialAdType

Type of ad to show.

Services/Audio Service

IAudioService

Service for playing audio.

Services/Badge Service

IBadgeService

Service to handle badges

Services/Camera Service

ICameraService

This service provides access to all camera related functionality: Main camera state, player camera settings, camera shake, and target overrides.

SpatialCameraMode
SpatialCameraRotationMode

The method of rotation for the actor camera with respect to player inputs. How should the camera be controlled?

XRCameraMode

The camera's point of view for a player in an XR headset

Services/Core GUI Service

CoreGUIUtility
ICoreGUIService

Service for handling all UI related functionality.

ICoreGUIShopService

Interface for world-shop specific functionality. This only controls the world shop GUI, not the universal shop GUI.

SpatialCoreGUIState
SpatialCoreGUIType
SpatialCoreGUITypeFlags
SpatialMobileControlsGUITypeFlags
SpatialSystemGUIType

Services/Event Service

IEventService

This service provides alternative methods to subscribe to events, since the Creator Toolkit prohibits direct access events outside of the SpatialSDK namespace.

Services/Graphics Service

IGraphicsService

This service provides access to all render pipeline asset related functionality: Lighting, shadows, quality, etc.

Services/Input Service

IAvatarInputActionsListener

Interface for listening to avatar input capture events. Only events overridden with StartAvatarInputCapture will be triggered.

IInputActionsListener

Interface for listening to input capture events.

IInputService

Service for handling all input related functionality.

IVehicleInputActionsListener

Interface for listening to vehicle input capture events. Only events overridden with StartVehicleInputCapture will be triggered.

InputCaptureType
InputPhase

Phase of the input event.

VehicleInputFlags

Services/Inventory Service

Services/Logging Service

ILoggingService

This currently simply logs errors to the console, but in the future we may provide a service that logs to a remote server which can be viewed by the developer.

Services/Networking Service

INetworkingRemoteEventsService

This interface allows sending and receiving custom network messages.

Supported event argument types: byte, bool, short, int, long, float, double, string, Vector2, Vector3, Quaternion, Color, Color32, Vector4, DateTime

INetworkingService

This service provides access to all the networking functionality in Spatial: connectivity, server management, matchmaking, remove events (RPCs/Messaging), etc.

NetworkingRemoteEventArgs

Arguments for the onEvent callback in INetworkingRemoteEventsService

ServerConnectionStatus

The connection status to the current server

Services/Quest Service

IQuest

Basic interface Quest component

IQuestService

Service for managing Quests on the space.

IQuestTask

Interface that represents a task for a ISpatialQuest.

IReward

Interface that represents a reward for a ISpatialQuest.

QuestStatus

The status of the quest.

QuestTaskType

The type of task.

RewardType

The type of reward.

Services/Space Content Service

DestroySpaceObjectRequest
IPrefabObject

A prefab object interface that allows for read and write access to the object. Setting values on the object requires the local client to have ownership of the object.

IReadOnlyPrefabObject

The data-model for a prefab objects as it exists on the server. Prefab object's are a component of SpaceObjects.

IReadOnlySpaceObject

The data-model for an object as it exists on the server. Space objects can be created, destroyed, and modified by actors in the space.

IReadOnlySpaceObjectComponent

A component of a space object.

ISpaceContentService

Service for interacting with a space's synchronized content.

ISpaceObject

A space object interface that allows for read and write access to the object. Setting values on the object requires the local client to have ownership of the object.

ISpaceObjectComponent

A component of a space object.

SpaceObjectOwnerChangedEventArgs

Arguments for the ISpaceObject.onOwnerChanged event.

SpaceObjectOwnershipTransferRequest
SpaceObjectType

An enum used to describe what type of visual component a space object has.

SpaceObjectVariablesChangedEventArgs

Arguments for the ISpaceObject.onVariablesChanged event.

SpawnAvatarRequest
SpawnNetworkObjectRequest
SpawnPrefabObjectRequest
SpawnSpaceObjectRequest

Services/Space Service

ISpaceService

Service for interacting with the current space.

Services/User World Data Store Service

DataStoreDumpVariablesRequest

Request to dump all variables in the data store as a JSON string.

DataStoreGetVariableRequest

Request to get a variable from the data store.

DataStoreHasAnyVariableRequest

Request to check if the data store has any variables.

DataStoreHasVariableRequest

Request to check if a variable exists in the data store.

DataStoreOperationRequest

Operation to be performed on the data store.

DataStoreResponseCode

Response code for data store operations.

IUserWorldDataStoreService

This service provides access to the Users datastore for the current world. Spaces that belong to the same world share the same user world datastore.

Services/VFX Service

FloatingTextAnimStyle
IVFXService

Handles Visual Effects on the spatial platform

Classes

APINotAuthorizedException
AttachmentAnimationClips
AttachmentAvatarAnimConfig
ClampAttribute
DocumentationCategoryAttribute

This attribute is used for marking documentation categories for the SDK.

MinMaxAttribute
NetworkVariable<T>

To be used in conjunction with SpatialNetworkBehaviour. This allows you to define a variable that will be synchronized across the network.

ReadOnlyAttribute
SpatialAsyncOperation

Base class for all Spatial's async operations. This class is yieldable and can be used in coroutines.

SpatialAsyncOperationExtensions

Extension methods for SpatialAsyncOperation.

SpatialNetworkBehaviour

This component allows you to define custom behaviour for a network object. It must always be accompanied by a SpatialNetworkObject component on the same GameObject or on one of its parents.

ToggleWithEnum
VisualScriptingUtility

A utility class that assists with communicating between Visual Scripting and C#.

Interfaces

IOwnershipChanged

To be used in conjunction with SpatialNetworkBehaviour. Called right after Spawned and when the ownership of the network object changes.

IVariablesChanged