Table of Contents

Coherence.Toolkit

Classes

AssetDatabaseProvider
AuthorityManager

Handles authority-related operations on the client.

CoherenceBehaviour

Base class to Unity components implemented by coherence.

CoherenceBridge

Component used to establish and maintain a connection with the replication server.

CoherenceBridgeStore

Registry of CoherenceBridge instances.

CoherenceClientConnection

This class is a base of a connection entity, used to mark client presence and to send messages between clients.

CoherenceClientConnectionManager

Eases access to client connections. Used by CoherenceBridge and CoherenceSceneManager.

CoherenceInput

This component can be added to a GameObject with CoherenceSync to be able to define which inputs it accepts.

This feature can be used to improve game feel and to prevent cheating by replaying inputs on a simulator or another client. See the coherence docs (section "Input prediction and rollback") for more information.

CoherenceInputDebugger
CoherenceInputManager
CoherenceInputSimulation

CoherenceInputSimulation<TState> helps building a deterministic simulation by taking care of most complexities related to keeping a simulation state, handling predictions, rolling back state, resimulating state, etc..

CoherenceLiveQuery

The live query is a component that filters what entities are replicated to the client based on their position in the world.

Use it by moving its transform to the center of interest and adjusting the radius to a suitable value. Using a small query is a great optimization if the world / room contains a lot of entities.

If set, the CoherenceBridgeResolver<T> event is used to decide which CoherenceBridge to use (in case there are multiple.)

CoherenceNode

Component to synchronize hierarchy changes between two entities on the same hierarchy.

CoherenceObjectPool
CoherenceQuery
CoherenceScene
CoherenceSceneData
CoherenceSceneLoader
CoherenceSceneLoaderConfig
CoherenceSceneManager
CoherenceSync

Represents an entity on the network.

CoherenceSyncBaked
CoherenceSyncConfig
CoherenceSyncConfigRegistry

Holds references to CoherenceSyncConfigs. Network entities known to coherence are registered as part of it.

CoherenceSyncExtensions
CoherenceSyncInstantiator
CoherenceTagAttribute
CoherenceTagQuery

The tag query is a component that filters what entities are replicated to the client based on user-defined tags (strings.)

This query does not take position of entities into account, use CoherenceLiveQuery for that.

CommandAttribute

Automatically add this method to the list of synced bindings in CoherenceSync. This makes the method available as a target for SendCommand.

Methods without this attribute can still be marked as viable targets for SendCommand by selecting them manually in the bindings configuration window.

ComponentAction
ComponentActionAttribute
ConnectionEventHandler
DefaultInstantiator
DescriptorProviderAttribute
DirectReferenceProvider
DisplayNameAttribute
EntitiesManager

Handles network entity state, and links network entities to Unity objects.

ExcludeFromDropdownAttribute
FixedUpdateInput
FloatingOriginManager
GenericNetworkCommandArgs
InputBuffer
InterpolationPickerAttribute
NetworkEntityState

Holds the state of a network entity.

NetworkPool
NonBindableAttribute

Attribute to skip types from being considered bindable.

ObjectPickerAttribute
ObjectProviderAttribute
ObservableAuthorityType

Holds an AuthorityType value, and notifies when it changes. Used by NetworkEntityState.

Observable
OnApplicationQuitSender

Triggers a Coherence.Toolkit.CoherenceSyncConfigRegistry.CleanUp on OnApplicationQuit.

OnValueSyncedAttribute

Specifies a method to be called when the value of a synced field/property changes. This method will be called only for instances whose HasStateAuthority evaluates to false. CoherenceSync.isSimulated).

PrefabSyncGroup
ReadOnlyAttribute
ResourcesProvider
SceneUtils
ScriptExecutionOrder

Holds constants for the script execution order.

SerializableType
SimulationStateStore
SyncAttribute

Automatically add this member variable or property to the list of synced bindings in CoherenceSync.

Variables and properties without this attribute can still be synced by selecting them manually in the bindings configuration window.

UniqueObjectReplacement

Contains the CoherenceSync instance used while resolving uniqueness.

UniquenessManager

Handles resolution of entity uniqueness.

UnityQuaternionConverter
UnityVector3Converter

Structs

ActiveSceneScope
DebugInput
FloatingOriginShiftArgs
UnsyncedNetworkEntity

Interfaces

IClientConnectionManager
ICoherenceBridge
ICoherenceInput
ICoherenceSync
ICoherenceSyncUpdater
IConnectedEntityDriver
IEntitiesManager
IHashable
IInputBuffer
IInputBufferDebug
INetworkObjectInstantiator
INetworkObjectProvider

Enums

Event
AuthorityTransferType

How this entity should respond to requests for authority (via RequestAuthority(AuthorityType)).

FloatingOriginMode
InterpolationLoop

At what point in the Unity update loop should interpolation happen.

LifetimeType

What should happen to this entity when the client with state authority over it disconnects or abandons it.

OrphanedBehavior

Whether this entity should be auto-adopted on disconnects.

RigidbodyMode

Behaviour when updating this entity, when there's a Rigidbody.

SimulationType

How and where this entity is simulated.

UniqueObjectReplacementStrategy
UniquenessType

Should this entity enforce that only a single instance with the same unique ID can exist at the same time.

UnsyncedNetworkEntityPriority
OnDestroyBehaviour

Specifies options for what should happen to the CoherenceSync component of a networked entity when the entity is destroyed.

SchemaType

Delegates

ClientConnectionPrefabProvider
CoherenceBridgeResolver

Given a component on a CoherenceSync, resolve a specific CoherenceBridge.

ConnectedEntityChangeHandler

The delegate type of ConnectedEntityChangeOverride.

ConnectedEntitySentHandler

The delegate type of ConnectedEntityChangeOverride.

OnAuthorityRequestedHandler

The delegate type of OnAuthorityRequested.

PauseHandler
StaleInputHandler