Photon Fusion 2.0.0

Classes | Enumerations | Functions
Fusion Namespace Reference

Classes

struct  _128
 A FixedStorage that can hold up to 128 words. More...
 
struct  _16
 A FixedStorage that can hold up to 16 words. More...
 
struct  _2
 A FixedStorage that can hold up to 2 words. More...
 
struct  _256
 A FixedStorage that can hold up to 256 words. More...
 
struct  _32
 A FixedStorage that can hold up to 32 words. More...
 
struct  _4
 A FixedStorage that can hold up to 4 words. More...
 
struct  _512
 A FixedStorage that can hold up to 512 words. More...
 
struct  _64
 A FixedStorage that can hold up to 64 words. More...
 
struct  _8
 A FixedStorage that can hold up to 8 words. More...
 
struct  Allocator
 Memory Allocator. More...
 
struct  Angle
 A Networked fusion type for degrees. This can be used with the NetworkedAttribute, in RPCs, or in NetworkInput structs. More...
 
class  AssetObject
 Base class for all Fusion assets. More...
 
class  AuthorityMasks
 Provides constants and methods for managing authority masks. More...
 
class  Behaviour
 Alternative base class to Unity's MonoBehaviour. This allows for components that work both in Unity, as well as the Photon relays. More...
 
class  CapacityAttribute
 Capacity Attribute. More...
 
class  DefaultForPropertyAttribute
 Default For Property Attribute. More...
 
class  DisplayAsEnumAttribute
 Casts an enum or int value in the inspector to specific enum type for rendering of its popup list. Supplying a method name rather than a type allows a property with the type Type to be used to dynamically get the enum type. More...
 
class  DoIfAttributeBase
 Editor attribute for selective editor rendering. Condition member can be a property, field or method (with a return value). More...
 
class  DrawIfAttribute
 Editor attribute for selectively drawing/hiding fields. Condition member can be a property, field or method (with a return value). More...
 
struct  DynamicHeap
 A dynamic heap for allocating and tracking unmanaged objects. More...
 
class  DynamicHeapInstance
 Dynamic heap instance. More...
 
class  FieldsMask
 Base class for FieldsMask<T>. More...
 
class  FixedArray
 A fixed size array that can be used in structs. More...
 
class  FixedBufferPropertyAttribute
 Fixed Buffer Property Attribute. More...
 
class  FixedStorage
 Provides utility methods for fixed storage types. More...
 
struct  FloatCompressed
 Represents a compressed float value for network transmission. More...
 
class  FloatUtils
 Provides utility methods for compressing and decompressing float values. More...
 
class  HeapConfiguration
 Memory Heap Settings. More...
 
class  Hitbox
 Represents a single lag-compensated collider. Multiple component instances can be added anywhere in the hierarchy of a NetworkObject which includes a HitboxRoot. More...
 
class  HitboxManager
 Entry point for lag compensated Hitbox queries, which maintains a history buffer, and provides lag compensated raycast and overlap methods. Singleton instance is accessible through the property Runner.LagCompensation. More...
 
class  HitboxRoot
 Root Hitbox group container. Manages registering/unregistering hitboxes with the group, and defines the broadphase geometry for the group. More...
 
class  HostMigrationConfig
 Project configuration settings specific to how the Host Migration behaves. More...
 
class  HostMigrationToken
 Transitory Holder with all necessary information to restart the Fusion Runner after the Host Migration has completed. More...
 
interface  IAfterAllTicks
 Interface for AfterAllTicks callback. Called after the re-simulation loop (when applicable), and also after the forward simulation loop. Implement this interface on SimulationBehaviour and NetworkBehaviour classes. More...
 
interface  IAfterClientPredictionReset
 Callback interface for AfterClientPredictionReset. Called at the very start of the resimulation loop (on clients with prediction enabled), immediately after state is set to the latest server snapshot. Implement this interface on SimulationBehaviour and NetworkBehaviour classes. More...
 
interface  IAfterHostMigration
 Used to mark NetworkBehaviors that need to be react after a Host Migration process. More...
 
interface  IAfterRender
 Interface for AfterRender callback. Called after the render loop. More...
 
interface  IAfterSpawned
 Interface for AfterSpawned callback. Called after the object is spawned. More...
 
interface  IAfterTick
 Interface for AfterTick callback. Called after each tick simulation completes. Implement this interface on SimulationBehaviour and NetworkBehaviour classes. More...
 
interface  IAfterUpdate
 Interface for the AfterUpdate callback, which is called at the end of each Fusion Update segment. Implement this interface on SimulationBehaviour and NetworkBehaviour classes. More...
 
interface  IAsyncOperation
 Defines an asynchronous operation. More...
 
interface  IBeforeAllTicks
 Interface for BeforeAllTicks callback. Called before the re-simulation loop (when applicable), and also before the forward simulation loop. Implement this interface on SimulationBehaviour and NetworkBehaviour classes. More...
 
interface  IBeforeClientPredictionReset
 Callback interface for BeforeClientPredictionReset. Called at the very start of the re-simulation loop (on clients with prediction enabled), before state is set to the latest server snapshot. Implement this interface on SimulationBehaviour and NetworkBehaviour classes. More...
 
interface  IBeforeCopyPreviousState
 Interface for BeforeCopyPreviousState callback. Called before the copy of the previous state. More...
 
interface  IBeforeHitboxRegistration
 Interface for BeforeHitboxRegistration callback. Implement this interface on SimulationBehaviour and NetworkBehaviour classes. More...
 
interface  IBeforeSimulation
 Interface for BeforeSimulation callback. Called before both the re-simulation (when applicable) and forward simulation loops. Implement this interface on SimulationBehaviour and NetworkBehaviour classes. More...
 
interface  IBeforeTick
 Interface for BeforeTick callback. Called before each tick is simulated. Implement this interface on SimulationBehaviour and NetworkBehaviour classes. More...
 
interface  IBeforeUpdate
 Interface for the BeforeUpdate callback, which is called at the beginning of each Fusion Update segment. Implement this interface on SimulationBehaviour and NetworkBehaviour classes. More...
 
interface  ICoroutine
 Defines a coroutine. More...
 
interface  IDespawned
 Interface for Despawned callback. Called when a NetworkBehaviour is despawned. More...
 
interface  IElementReaderWriter
 Defines the interface for reading and writing elements in a byte array. More...
 
interface  IFixedStorage
 Interface for fixed storage types. More...
 
interface  IInputAuthorityGained
 Interface for handling the event when the input authority is gained. More...
 
interface  IInputAuthorityLost
 Interface for handling the event when the input authority is lost. More...
 
interface  IInterestEnter
 Interface for handling the event when a player enters the area of interest. More...
 
interface  IInterestExit
 Interface for handling the event when a player exits the area of interest. More...
 
interface  ILocalPrefabCreated
 Interface for handling the event when a local prefab is created. More...
 
interface  INetworkArray
 Defines the interface for a networked array. More...
 
interface  INetworkAssetSource
 Interface for a network asset source. More...
 
interface  INetworkDictionary
 Defines the interface for a networked dictionary. More...
 
interface  INetworkInput
 Flag interface for custom NetworkInput structs. More...
 
interface  INetworkLinkedList
 Defines the interface for a networked linked list. More...
 
interface  INetworkObjectInitializer
 Interface for initializing network objects. More...
 
interface  INetworkObjectProvider
 Interface which defines the handlers for NetworkRunner Spawn() and Despawn() actions. Passing an instance of this interface to NetworkRunner.StartGame(StartGameArgs) as the StartGameArgs.ObjectProvider argument value will assign that instance as the handler for runner Spawn() and Despawn() actions. By default (if StartGameArgs.ObjectProvider == null) actions will use Instantiate(), and Despawn() actions will use Destroy(). More...
 
interface  INetworkPrefabSource
 Interface for a network prefab source. More...
 
interface  INetworkRunnerCallbacks
 Interface for NetworkRunner callbacks. Register a class/struct instance which implements this interface with NetworkRunner.AddCallbacks(INetworkRunnerCallbacks[]). More...
 
interface  INetworkRunnerUpdater
 Interface which defines the handlers for NetworkRunner Updates. An implementation is responsible for calling NetworkRunner.UpdateInternal(double) and NetworkRunner.RenderInternal periodically. More...
 
interface  INetworkSceneManager
 Interface for a NetworkRunner scene manager. A scene manager is responsible for loading and unloading scenes. More...
 
interface  INetworkStruct
 Base interface for all Fusion Network Structs. More...
 
interface  INetworkTRSPTeleport
 Implement this interface on a NetworkTRSP implementation to indicate it can be teleported. More...
 
class  InterpolatedErrorCorrectionSettings
 A set of parameters that tune the interpolated correction of prediction error on transform data. More...
 
interface  IPlayerJoined
 Interface for handling the event when a player joins the game. More...
 
interface  IPlayerLeft
 Interface for handling the event when a player leaves the game. More...
 
interface  IRemotePrefabCreated
 Interface for handling the event when a remote prefab is created. More...
 
interface  ISceneLoadDone
 Interface for handling the event when a scene load operation is completed. More...
 
interface  ISceneLoadStart
 Interface for handling the event when a scene load operation is started. More...
 
interface  ISimulationEnter
 Interface for SimulationEnter callback. Called when the NetworkObject joins AreaOfInterest. Implement this interface on SimulationBehaviour and NetworkBehaviour classes. More...
 
interface  ISimulationExit
 Interface for the SimulationExit callback. Called when the NetworkObject leaves AreaOfInterest. Implement this interface on SimulationBehaviour and NetworkBehaviour classes. More...
 
interface  ISpawned
 Interface for handling the event when an object is spawned. More...
 
interface  IStateAuthorityChanged
 Interface for handling the event when the state authority changes. More...
 
struct  LagCompensatedHit
 Defines a lag compensated query hit result. More...
 
class  LagCompensationSettings
 Settings for lag compensation history. More...
 
class  LobbyInfo
 Holds information about a Lobby. More...
 
class  LogSimpleUnity
 Log Simple Unity. More...
 
class  NestedComponentUtilities
 Tools to replace GetComponent variants that respects nested objects. These are used to find components of a NetworkedObjects without also finding components that belong to parent or child NetworkedObjects. More...
 
struct  NetworkArray
 Fusion type for networking arrays. Maximum capacity is fixed, and is set with the CapacityAttribute.

More...
 
class  NetworkArrayExtensions
 Provides extension methods for the NetworkArray class. More...
 
struct  NetworkArrayReadOnly
 Provides a read-only view of a network array. More...
 
class  NetworkAssemblyIgnoreAttribute
 Network Assembly Ignore Attribute. More...
 
class  NetworkAssemblyWeavedAttribute
 Network Assembly Weaved Attribute. More...
 
class  NetworkBehaviour
 Base class for Fusion network components, which are associated with a NetworkObject. More...
 
struct  NetworkBehaviourBuffer
 Provides low level accesss to data buffers that can be read using a NetworkBehaviour.Reader. More...
 
struct  NetworkBehaviourBufferInterpolator
 The NetworkBehaviourBufferInterpolator struct is used to interpolate between two NetworkBehaviourBuffer instances. This is a read-only, ref struct, meaning it cannot be boxed and it can only be used on the stack. More...
 
struct  NetworkBehaviourId
 Represents the unique identifier for a NetworkBehaviour instance. More...
 
class  NetworkBehaviourUtils
 This static class provides utility methods for working with NetworkBehaviour objects. More...
 
class  NetworkBehaviourWeavedAttribute
 Network Behaviour Weaved Attribute. More...
 
struct  NetworkBool
 Represents a boolean value that can be networked. More...
 
struct  NetworkButtons
 Represents a set of buttons that can be networked. More...
 
class  NetworkConfiguration
 Main network configuration class. More...
 
class  NetworkDelegates
 Network Runner Callbacks Delegates. More...
 
class  NetworkDeserializeMethodAttribute
 Network Deserialize Method Attribute. More...
 
struct  NetworkDictionary
 Fusion type for networking Dictionaries. Maximum capacity is fixed, and is set with the CapacityAttribute.

More...
 
struct  NetworkDictionaryReadOnly
 A read-only version of NetworkDictionary<TKey,TValue>. More...
 
class  NetworkedAttribute
 
class  NetworkedWeavedAttribute
 Networked Weaved Attribute. More...
 
class  NetworkEvents
 Companion component for NetworkRunner. Exposes INetworkRunnerCallbacks as UnityEvents, which can be wired up to other components in the inspector. More...
 
struct  NetworkId
 The unique identifier for a network entity. More...
 
struct  NetworkInput
 NetworkInput Struct. More...
 
class  NetworkInputUtils
 Utility methods for NetworkInput More...
 
class  NetworkInputWeavedAttribute
 Network Input Weaved Attribute. More...
 
struct  NetworkLinkedList
 Fusion type for networking LinkedLists. Maximum capacity is fixed, and is set with the CapacityAttribute.

Typical Usage: More...
 
struct  NetworkLinkedListReadOnly
 Read-only version of NetworkLinkedList<T>. More...
 
struct  NetworkLoadSceneParameters
 Parameters for loading a scene. More...
 
class  NetworkMecanimAnimator
 A component for synchronizing the Animator controller state from the State Authority to network proxies. Requires a Unity Animator component, and a NetworkObject component. NOTE: Animator Root Motion is not compatible with re-simulation and prediction. More...
 
class  NetworkObject
 The primary Fusion component for networked GameObject entities. This stores the object's network identity and manages the object's state and input authority. More...
 
class  NetworkObjectFlagsExtensions
 Extension methods for the NetworkObjectFlags enum. More...
 
struct  NetworkObjectGuid
 NetworkObjectGuid. More...
 
struct  NetworkObjectHeader
 Network object header information for a NetworkObject. More...
 
struct  NetworkObjectHeaderPtr
 Represents a pointer to a NetworkObjectHeader. This struct is unsafe because it uses pointers. More...
 
class  NetworkObjectInitializerUnity
 Initializes network objects for Unity. More...
 
class  NetworkObjectMeta
 Meta information about a network object. More...
 
struct  NetworkObjectNestingKey
 A key used to identify a network object nesting. More...
 
class  NetworkObjectPrefabData
 This class represents the data for a network object prefab. More...
 
class  NetworkObjectProviderDummy
 A dummy implementation of the INetworkObjectProvider interface. This class is used for testing purposes and throws a NotImplementedException for all its methods. More...
 
struct  NetworkObjectReleaseContext
 Represents the context for releasing a network object. This struct is unsafe because it uses pointers. More...
 
class  NetworkObjectSortKeyComparer
 This class is used to compare two NetworkObject instances based on their SortKey. It implements the IComparer interface. More...
 
class  NetworkObjectSpawnException
 Network Object Spawn Exception. More...
 
struct  NetworkObjectTypeId
 ID for a NetworkObject Prefab which has been cataloged in a NetworkProjectConfig.PrefabTable. More...
 
struct  NetworkPhysicsInfo
 Network Physics INetworkStruct More...
 
struct  NetworkPrefabAcquireContext
 Represents the context for acquiring a prefab instance for a network object. This struct is unsafe because it uses pointers. More...
 
class  NetworkPrefabAttribute
 Network Prefab Attribute. More...
 
struct  NetworkPrefabId
 ID for a NetworkObject Prefab which has been cataloged in a NetworkProjectConfig.PrefabTable. More...
 
struct  NetworkPrefabInfo
 Meta data for a NetworkObject prefab which has been cataloged in a NetworkProjectConfig.PrefabTable. More...
 
struct  NetworkPrefabRef
 NetworkPrefabRef. More...
 
class  NetworkPrefabTable
 Class representing a table of network prefabs. More...
 
struct  NetworkPrefabTableOptions
 Options for the NetworkPrefabTable. More...
 
class  NetworkProjectConfig
 The core Fusion config file that is shared with all peers at startup. More...
 
class  NetworkProjectConfigAsset
 Manages and references the current instance of NetworkProjectConfig More...
 
class  NetworkRpcStaticWeavedInvokerAttribute
 Network Rpc Static Weaved Invoker Attribute Contains info about a static weaved RPC Method. More...
 
class  NetworkRpcWeavedInvokerAttribute
 Network Rpc Weaved Invoker Attribute Contains info about a weaved RPC Method. More...
 
class  NetworkRunner
 Host Migration related code in order to get a copy of the Simulation State. More...
 
class  NetworkRunnerCallbackArgs
 Stores data types used on the INetworkRunnerCallbacks interface. More...
 
class  NetworkRunnerUpdaterDefault
 Default implementation of INetworkRunnerUpdater that uses the Unity PlayerLoop. More...
 
struct  NetworkRunnerUpdaterDefaultInvokeSettings
 Settings for the NetworkRunnerUpdaterDefault. More...
 
struct  NetworkSceneAsyncOp
 A wrapper for async scene operations. More...
 
struct  NetworkSceneInfo
 Can store up to 8 active scenes and allows for duplicates. Each write increases Version which can be used to generate unique scene objects ids for when a scene is supposed to be reloaded. More...
 
struct  NetworkSceneLoadId
 A unique identifier for a scene load operation. More...
 
struct  NetworkSceneObjectId
 A unique identifier for a scene object. More...
 
class  NetworkSerializeMethodAttribute
 Network Serialize Method Attribute. More...
 
class  NetworkSimulationConfiguration
 Configuration for network conditions simulation (induced latency and loss). More...
 
struct  NetworkSpawnOp
 Spawn Operation. More...
 
class  NetworkString
 Fixed-size UTF32 string. All operations are alloc-free, except for converting to System.String. More...
 
class  NetworkStructUtils
 Utility methods for INetworkStruct More...
 
class  NetworkStructWeavedAttribute
 Describes the total number of WORDs a INetworkStruct uses. More...
 
class  NetworkTransform
 Add to any NetworkObject Transform, or its associated child Transforms to automatically synchronize TRSP (Position/Rotation/Scale/Parent). More...
 
class  NetworkTRSP
 Base class for spatial (Position/Rotation/Scale/Parent) synchronization component, such as NetworkTransform. Provides the base logic for render interpolation, parenting synchronization, and teleport, that can be used in components derived from this class. More...
 
struct  NetworkTRSPData
 Data structure storing spatial (Position/Rotation/Scale/Parent) synchronization data for spatial synchronization components, NetworkTRSP and its subclass NetworkTransform. More...
 
class  NormalizedRectAttribute
 Enables a special inspector drawer for Unity Rect type, specially designed for editing RectTransforms using normalized values. More...
 
class  OnChangedRenderAttribute
 OnChangedRender Attribute. More...
 
struct  PlayerRef
 Represents a Fusion player. More...
 
class  PreserveInPluginAttribute
 Preserve In Plugin Attribute. More...
 
struct  Ptr
 Ptr. More...
 
struct  QuaternionCompressed
 Represents a compressed Quaternion value for network transmission. More...
 
class  ReadWriteUtils
 Provides utility methods for reading and writing data. More...
 
class  ReadWriteUtilsForWeaver
 Provides utility methods for reading and writing data. More...
 
class  ReflectionUtils
 Provides utility methods for reflection. More...
 
class  RenderAttribute
 Override default render settings for [Networked] properties. More...
 
struct  RenderTimeline
 Can be used to acquire interpolated data for different points in time. More...
 
class  RenderWeavedAttribute
 Render Weaved Attribute. More...
 
class  ResolveNetworkPrefabSourceAttribute
 Resolve Network Prefab Source Attribute. More...
 
class  RpcAttribute
 Flags a method as being a networked Remote Procedure Call. Only usable in a NetworkBehaviour. Calls to this method (from the indicated allowed RpcSources) will generate a network message, which will execute the method remotely on the indicated RpcTargets. The RPC method can include an empty RpcInfo argument, that will include meta information about the RPC on the receiving peer. More...
 
struct  RpcHeader
 Header for RPC messages. More...
 
struct  RpcInfo
 RpcInfo is a struct that contains information about the RPC message. More...
 
struct  RpcInvokeData
 Represents the data required to invoke an RPC message. More...
 
struct  RpcInvokeInfo
 May be used as an optional RpcAttribute return value. Contains meta data about the RPC send, such as failure to send reasons, culling, message size, etc. More...
 
struct  RpcSendResult
 RPC send operation result information. More...
 
class  RpcTargetAttribute
 RPC attribute used to indicate a specific target player for an RPC when sending from one player to another. RPC is sent to the server, and then is forwarded to the specified player. Usage: More...
 
struct  SceneLoadDoneArgs
 Struct that contains information about a scene after it has been loaded. More...
 
struct  SceneRef
 Scene reference struct. Can be used to reference a scene by index or by path. More...
 
class  SerializableDictionary
 A serializable dictionary. More...
 
class  SessionInfo
 Holds information about the Game Session. More...
 
class  Simulation
 Main simulation class. More...
 
class  SimulationBehaviour
 Base class for a Fusion aware Behaviour (derived from UnityEngine.MonoBehavour). Objects derived from this object can be associated with a NetworkRunner and Simulation. If a parent NetworkObject is found, this component will also be associated with that network entity. More...
 
class  SimulationBehaviourAttribute
 Attribute for specifying which SimulationStages and SimulationModes this SimulationBehaviour will execute in. Can be used to limit execution to only Host, Server or Client peers, or to only execute on Resimulation or Forward ticks. Usage: More...
 
struct  SimulationBehaviourListScope
 Provides a scope for a SimulationBehaviourUpdater.BehaviourList, incrementing its lock count on creation and decrementing it on disposal. If the lock count reaches zero on disposal, all pending removals in the list are performed. More...
 
class  SimulationConfig
 Project configuration settings specific to how the Simulation class behaves. More...
 
class  SimulationInput
 Simulation Input. More...
 
struct  SimulationInputHeader
 Simulation Input Header. More...
 
struct  SimulationMessage
 Simulation Message. More...
 
struct  SimulationMessagePtr
 Simulation Message Pointer. More...
 
struct  SimulationRuntimeConfig
 Stores the runtime configuration of the simulation. More...
 
struct  StartGameArgs
 Fusion Start Arguments, used to configure the simulation mode and other settings. More...
 
class  StartGameResult
 Represents the result of starting the Fusion Simulation. More...
 
struct  Tick
 A tick is a 32-bit integer that represents a frame number. More...
 
struct  TickAccumulator
 A tick accumulator. More...
 
struct  TickRate
 A tick rate is a collection of tick rates. More...
 
struct  TickTimer
 A timer that is based on ticks instead of seconds. More...
 
class  TimeSyncConfiguration
 Time Synchronization Configuration. More...
 
class  UnitAttribute
 Unit Attribute class. Used to mark a field with the respective Units More...
 
class  UnityContextMenuItemAttribute
 Unity ContextMenuItemAttribute. More...
 
class  UnityDelayedAttribute
 Unity DelayedAttribute. More...
 
class  UnityFormerlySerializedAsAttribute
 Unity FormerlySerializedAsAttribute. More...
 
class  UnityHeaderAttribute
 Unity HeaderAttribute. More...
 
class  UnityMinAttribute
 Unity MinAttribute. More...
 
class  UnityMultilineAttribute
 Unity MultilineAttribute. More...
 
class  UnityNonReorderableAttribute
 Unity NonReorderableAttribute. More...
 
class  UnityNonSerializedAttribute
 Unity NonSerializedAttribute. More...
 
class  UnityRangeAttribute
 Unity RangeAttribute. More...
 
class  UnitySerializeField
 Unity SerializeField. More...
 
class  UnitySerializeReference
 Unity SerializeReference. More...
 
class  UnitySpaceAttribute
 Unity SpaceAttribute. More...
 
class  UnityTooltipAttribute
 Unity TooltipAttribute. More...
 
struct  Vector2Compressed
 Represents a compressed Vector2 value for network transmission. More...
 
struct  Vector3Compressed
 Represents a compressed Vector3 value for network transmission. More...
 
struct  Vector4Compressed
 Represents a compressed Vector4 value for network transmission. More...
 
class  WarnIfAttribute
 Editor attribute for adding notices to fields if the condition member evaluates as true. Condition member can be a property, field or method (with a return value). More...
 
class  WeaverGeneratedAttribute
 Weaver Generated Attribute. More...
 

Enumerations

enum  AnimatorSyncSettings
 
enum  CompareOperator
 Comparison method for evaluating condition member value against compareToValues. More...
 
enum  ConnectionType
 Defines the type of the current connection with the Remote Peer, either the Server or a Client. More...
 
enum  DrawIfMode
 
enum  EditorButtonVisibility
 
enum  GameMode
 Fusion Game Mode. More...
 
enum  HitboxTypes
 Defines the collision geometry type of a Hitbox. More...
 
enum  HitOptions
 
enum  NetworkObjectAcquireResult
 Enum representing the possible results of acquiring a prefab instance for a network object. More...
 
enum  NetworkObjectConnectionDataStatus
 
enum  NetworkObjectDestroyFlags
 
enum  NetworkObjectFlags : int
 Enum representing the flags for network objects in the Fusion system. This enum is marked with the Flags attribute, allowing it to be treated as a bit field. More...
 
enum  NetworkObjectHeaderFlags : int
 Enum representing various flags for a network object header. Each flag represents a different state or property of a network object. More...
 
enum  NetworkObjectHeaderPlayerDataFlags : int
 
enum  NetworkObjectPacketFlags
 
enum  NetworkObjectRuntimeFlags : int
 
enum  NetworkPrefabTableGetPrefabResult
 Enum representing the possible results of attempting to get a prefab from the NetworkPrefabTable. More...
 
enum  NetworkSceneInfoChangeSource
 What has contributed to the observed change in the scene info. More...
 
enum  NetworkSceneInfoDefaultFlags : uint
 Network Scene Info Default Flags. More...
 
enum  NetworkSpawnFlags : short
 Network Spawn Flags. More...
 
enum  NetworkSpawnStatus : int
 Network Spawn Status. More...
 
enum  NetworkTypeIdKind
 Enum representing the type of a NetworkObject. More...
 
enum  PageSizes
 Page Bit Shift Lookup Table.
 
enum  PriorityLevel
 Enum representing the priority levels for network objects. More...
 
enum  RenderSource
 Indicates how available snapshot data should be used to render networked properties (in the chosen RenderTimeframe). More...
 
enum  RenderTimeframe
 Indicates which point in time (or "timeframe") networked properties should be rendered in. More...
 
enum  RpcChannel
 Flags for the RPC channel. More...
 
enum  RpcHostMode
 Options for when the game is run in SimulationModes.Host mode and RPC is invoked by the host. More...
 
enum  RpcLocalInvokeResult
 Results for the local RPC Invocation of the RPC method. More...
 
enum  RpcSendCullResult
 Results for the RPC message send operation. Note: Some individual targets may be culled even if the send operation succeeds. Information about culled targets can be found in RpcInvokeInfo.SendResult. More...
 
enum  RpcSendMessageResult
 Result flags for the RPC message send operation. More...
 
enum  RpcSources
 Enum representing the sources of an RPC message. More...
 
enum  RpcTargets
 Enum representing the targets of an RPC message. More...
 
enum  RpcTargetStatus
 Enum representing the status of an RPC target. More...
 
enum  ScriptHeaderBackColor
 Color of the component graphic header in the Unity inspector. None indicates no header graphic should be used.
 
enum  ScriptHeaderIcon
 Icon to be rendered on the component graphic header in the Unity inspector.
 
enum  ScriptHeaderStyle
 
enum  SessionLobby
 Session Lobby Type. More...
 
enum  ShutdownReason
 Describes a list of Reason why the Fusion Runner was Shutdown. More...
 
enum  SimulationBehaviourRuntimeFlags
 
enum  SimulationMessageInternalTypes
 
enum  SimulationModes
 Flags for The type of network peer a simulation represents. More...
 
enum  SimulationStages
 Flags for which stage the simulation currently running. Forward is when a tick is being simulated for the first time. Resimulate is when a tick is being simulated again with corrections. More...
 
enum  Topologies
 
enum  Units
 Unit Type for a certain field. This helps to identify the unit that a certain value represents, like Seconds or Percentage. More...
 
enum  UnityPlayerLoopSystemAddMode
 Enum representing the possible modes for adding a system to the Unity player loop. More...
 

Functions

delegate FusionGlobalScriptableObjectLoadResult FusionGlobalScriptableObjectLoadDelegate (Type type)
 
delegate void FusionGlobalScriptableObjectUnloadDelegate (FusionGlobalScriptableObject instance)
 
delegate void NetworkObjectSpawnDelegate (NetworkSpawnOp result)
 Network Object Spawn Delegate.
 
unsafe delegate void RpcInvokeDelegate (NetworkBehaviour behaviour, SimulationMessage *message)
 Represents a delegate that can be invoked by an RPC message.
 
unsafe delegate void RpcStaticInvokeDelegate (NetworkRunner runner, SimulationMessage *message)
 Represents a delegate that can be invoked by an RPC message.
 

Enumeration Type Documentation

◆ CompareOperator

Comparison method for evaluating condition member value against compareToValues.

Enumerator
Equal 

True if condition member value equals compareToValue.

NotEqual 

True if condition member value is not equal to compareToValue.

Less 

True if condition member value is less than compareToValue.

LessOrEqual 

True if condition member value is less than or equal to compareToValue.

GreaterOrEqual 

True if condition member value is greater than or equal to compareToValue.

Greater 

True if condition member value is greater than compareToValue.

NotZero 

Returns true if the condition member evaluates to anything other than zero. In the case of object references, this means true for any non-null value.

IsZero 

Returns true if the condition member evaluates to zero. In the case of object references, this means true for any null value.

◆ ConnectionType

Defines the type of the current connection with the Remote Peer, either the Server or a Client.

Enumerator
None 

No connection is currently active.

Relayed 

Connection was accomplished using the Photon Relay Services.

Direct 

Connection was accomplished directly with the remote peer.

◆ GameMode

enum GameMode

Fusion Game Mode.

Used to select how the local simulation will act.

Enumerator
Single 

Single Player Mode: it works very similar to Host Mode, but don't accept any connections.

Shared 

Shared Mode: starts a Game Client, which will connect to a Game Server running in the Photon Cloud using the Fusion Plugin.

Server 

Server Mode: starts a Dedicated Game Server with no local player.

Host 

Host Mode: starts a Game Server and allows a local player.

Client 

Client Mode: starts a Game Client, which will connect to a peer in either Server or Host Modes.

AutoHostOrClient 

Automatically start as Host or Client. The first peer to connect to a room will be started as a Host, all others will connect as clients.

◆ HitboxTypes

Defines the collision geometry type of a Hitbox.

Enumerator
None 

[Future Use] to represent a disabled Hitbox.

Box 

Geometry is a box, fill in Extents and (optional) Offset.

Sphere 

Geometry is a sphere, fill in Radius and (optional) Offset.

Capsule 

Geometry is a capsule, fill in capsule Radius, capsule Height and (optional) Offset.

◆ HitOptions

enum HitOptions

Per-query options for lag compensation (both raycast and overlap).

Enumerator
None 

Default, no extra options.

IncludePhysX 

Add this to include checks against PhysX colliders.

IncludeBox2D 

Add this to include checks against Box2D colliders. If PhysX flag is set, it will be used instead.

SubtickAccuracy 

Subtick accuracy query (exactly like seen by player).

IgnoreInputAuthority 

If the HitboxRoot objects which the player performing the query (if specified) has input authority over should be ignored by the query.

◆ NetworkObjectAcquireResult

Enum representing the possible results of acquiring a prefab instance for a network object.

Enumerator
Success 

Indicates that the prefab instance was successfully acquired.

Failed 

Indicates that the acquisition of the prefab instance failed.

Retry 

Indicates that the acquisition of the prefab instance should be retried.

Ignore 

Indicates that the acquisition of the prefab instance should be ignored.

◆ NetworkObjectFlags

enum NetworkObjectFlags : int

Enum representing the flags for network objects in the Fusion system. This enum is marked with the Flags attribute, allowing it to be treated as a bit field.

Enumerator
None 

Represents a state where no flags are set.

MaskVersion 

Mask for isolating the version part of the flags.

V1 

Represents the first version of the network object flags.

Ignore 

Flag indicating that the network object should be ignored.

MasterClientObject 

Flag indicating that the network object is a master client object.

DestroyWhenStateAuthorityLeaves 

Flag indicating that the network object should be destroyed when the state authority leaves.

AllowStateAuthorityOverride 

Flag indicating that the network object allows state authority override.

◆ NetworkObjectHeaderFlags

Enum representing various flags for a network object header. Each flag represents a different state or property of a network object.

Enumerator
GlobalObjectInterest 

Flag indicating that the object is of global interest.

DestroyWhenStateAuthorityLeaves 

Flag indicating that the object should be destroyed when the state authority leaves.

SpawnedByClient 

Flag indicating that the object was spawned by a client.

AllowStateAuthorityOverride 

Flag indicating that the state authority override is allowed.

Struct 

Flag indicating that the object is a struct.

StructArray 

Flag indicating that the object is an array of structs.

DontDestroyOnLoad 

Flag indicating that the object should not be destroyed on load.

HasMainNetworkTRSP 

Flag indicating that the object has a main network TRSP.

AreaOfInterest 

Flag indicating that the object is in an area of interest.

◆ NetworkPrefabTableGetPrefabResult

Enum representing the possible results of attempting to get a prefab from the NetworkPrefabTable.

Enumerator
Success 

The prefab was successfully retrieved.

InProgress 

The retrieval of the prefab is in progress.

NotFound 

The prefab was not found in the NetworkPrefabTable.

LoadError 

There was an error in loading the prefab.

◆ NetworkSceneInfoChangeSource

What has contributed to the observed change in the scene info.

Enumerator
None 

No change.

Initial 

The initial local scene has changed.

Remote 

The remove scene has changed.

◆ NetworkSceneInfoDefaultFlags

Network Scene Info Default Flags.

Enumerator
SceneCountMask 

The scene count mask.

ConterMask 

The counter mask.

◆ NetworkSpawnFlags

enum NetworkSpawnFlags : short

Network Spawn Flags.

Enumerator
DontDestroyOnLoad 

Object get spawned as DontDestroyOnLoad on all clients.

SharedModeStateAuthMasterClient 

In shared mode, override the state authority to PlayerRef.MasterClient.

SharedModeStateAuthLocalPlayer 

In shared mode, override the state authority to local player.

◆ NetworkSpawnStatus

enum NetworkSpawnStatus : int

Network Spawn Status.

Enumerator
Queued 

Spawn is queued and will be spawned when the prefab is loaded.

Spawned 

Spawned successfully.

FailedToLoadPrefabSynchronously 

Failed to Load Prefab Synchronously.

FailedToCreateInstance 

Failed to create instance.

FailedClientCantSpawn 

Failed to spawn because the client can't spawn.

FailedLocalPlayerNotYetSet 

Failed to spawn because the local player is not yet set.

◆ NetworkTypeIdKind

Enum representing the type of a NetworkObject.

Enumerator
Prefab 

Represents a NetworkObject that is a Prefab.

Custom 

Represents a NetworkObject that is a Custom type.

InternalStruct 

Represents a NetworkObject that is an InternalStruct.

SceneObject 

Represents a NetworkObject that is a SceneObject.

Invalid 

Represents an Invalid NetworkObject type.

◆ PriorityLevel

Enum representing the priority levels for network objects.

Enumerator
Player 

Priority level assigned to player-related network objects.

High 

High priority level, typically assigned to network objects that require frequent updates.

Medium 

Medium priority level, typically assigned to network objects that require regular updates.

Low 

Low priority level, typically assigned to network objects that require less frequent updates.

Lowest 

Lowest priority level, typically assigned to network objects that require minimal updates.

◆ RenderSource

Indicates how available snapshot data should be used to render networked properties (in the chosen RenderTimeframe).

Enumerator
Interpolated 

The rendered value will come from interpolating the values at From and To to the desired point in time.

From 

The rendered value will come from the nearest available snapshot at or before the point in time being rendered.

To 

The rendered value will come from the nearest available snapshot ahead of the point in time being rendered.

Latest 

The rendered value will come from the latest snapshot.

◆ RenderTimeframe

Indicates which point in time (or "timeframe") networked properties should be rendered in.

Enumerator
Local 

The default timeframe for owned and predicted objects.

Remote 

The default timeframe for proxied objects.

◆ RpcChannel

enum RpcChannel

Flags for the RPC channel.

Enumerator
Reliable 

Rpc order preserved, delivery verified, resend in case of a failed delivery.

Unreliable 

Rpc order preserved, delivery not verified, no resend attempts.

◆ RpcHostMode

Options for when the game is run in SimulationModes.Host mode and RPC is invoked by the host.

Enumerator
SourceIsServer 

If host invokes RPC RpcInfo.Source will be set to PlayerRef.None (default).

SourceIsHostPlayer 

If host invokes RPC RpcInfo.Source will be set to the host's local player.

◆ RpcLocalInvokeResult

Results for the local RPC Invocation of the RPC method.

Enumerator
Invoked 

RPC has been invoked locally.

NotInvokableLocally 

Not invoked locally because RpcAttribute.InvokeLocal is false.

NotInvokableDuringResim 

Not invoked locally because InvokeResim is false and simulation stage is SimulationStages.Resimulate

InsufficientSourceAuthority 

Not invoked because source NetworkObject current authority does not match flags set in RpcAttribute.Sources

InsufficientTargetAuthority 

Not invoked because target player is local and this NetworkObject current authority does not match flags set in RpcAttribute.Targets

TargetPlayerIsNotLocal 

Not invoked because target player is not local.

PayloadSizeExceeded 

RPC is too large. See RpcAttribute.MaxPayloadSize for the maximum allowed size.

TagetPlayerIsNotLocal 

TargetPlayerIsNotLocal

◆ RpcSendCullResult

Results for the RPC message send operation. Note: Some individual targets may be culled even if the send operation succeeds. Information about culled targets can be found in RpcInvokeInfo.SendResult.

Enumerator
NotCulled 

RPC has been sent. Check RpcInvokeInfo.SendResult for details.

NotInvokableDuringResim 

Send culled because RpcAttribute.InvokeLocal is false.

InsufficientSourceAuthority 

Send culled because source NetworkObject current authority does not match flags set in RpcAttribute.Sources

NoActiveConnections 

Send culled because there are no active connections.

TargetPlayerUnreachable 

Send culled because target player does not exist.

TargetPlayerIsLocalButRpcIsNotInvokableLocally 

Send culled because target player is local and RpcAttribute.InvokeLocal is false.

PayloadSizeExceeded 

RPC message size is too large to be sent. See RpcAttribute.MaxPayloadSize for the maximum allowed size.

◆ RpcSendMessageResult

Result flags for the RPC message send operation.

Enumerator
None 

Invalid result.

SentToServerForForwarding 

Client sent to the server, server will send to the target client.

SentToTargetClient 

Server sent to a specific client (a targeted message).

SentBroadcast 

Server attempted to send to all the clients and at least one succeeded.

NotSentTargetObjectNotConfirmed 

Target object not confirmed on the client.

NotSentTargetObjectNotInPlayerInterest 

Target object not in client's interest. Likely due to being outside of player's AOI region, or needs to be explicitly set as always interested.

NotSentTargetClientNotAvailable 

Target client not connected (a targeted message).

NotSentBroadcastNoActiveConnections 

Server attempted to send to all the clients, but none was connected.

NotSentBroadcastNoConfirmedNorInterestedClients 

Server attempted to send to all the clients, but the target object is not confirmed/not in Object Interest for all target clients.

MaskSent 

Mask for sent messages.

MaskNotSent 

Mask for not sent messages.

MaskBroadcast 

Mask for broadcast messages.

MaskCulled 

Mask for culled messages.

◆ RpcSources

enum RpcSources

Enum representing the sources of an RPC message.

Enumerator
StateAuthority 

Represents the state authority source of an RPC message.

InputAuthority 

Represents the input authority source of an RPC message.

Proxies 

Represents the proxy source of an RPC message.

All 

Represents all possible sources of an RPC message.

◆ RpcTargets

enum RpcTargets

Enum representing the targets of an RPC message.

Enumerator
StateAuthority 

Represents the state authority target of an RPC message.

InputAuthority 

Represents the input authority target of an RPC message.

Proxies 

Represents the proxy target of an RPC message.

All 

Represents all possible targets of an RPC message.

◆ RpcTargetStatus

Enum representing the status of an RPC target.

Enumerator
Unreachable 

Represents an unreachable RPC target.

Self 

Represents the RPC target as self.

Remote 

Represents a remote RPC target.

◆ SessionLobby

Session Lobby Type.

Enumerator
Invalid 

Invalid Session Lobby Type.

ClientServer 

ClientServer Lobby.

Shared 

Shared Lobby.

Custom 

Custom Lobby - works in conjuction with a Lobby Name/ID.

◆ ShutdownReason

Describes a list of Reason why the Fusion Runner was Shutdown.

Enumerator
Ok 

OK Reason means Fusion was Shutdown by request.

Error 

Shutdown was caused by some internal error.

IncompatibleConfiguration 

Raised when the peer tries to Join a Room with a mismatching type between ClientServer Mode and Shared Mode.

ServerInRoom 

Raised when the local peer started as a Server and tried to join a Room that already has a Server peer.

DisconnectedByPluginLogic 

Raised when the Peer is disconnected or kicked by a Plugin Logic.

GameClosed 

Raised when the Game the Peer is trying to Join is Closed.

GameNotFound 

Raised when the Game the Peer is trying to Join does not exist.

MaxCcuReached 

Raised when all CCU available for the Photon Application are in use.

InvalidRegion 

Raised when the peer is trying to connect to an unavailable or non-existent Region.

GameIdAlreadyExists 

Raised when a Session with the same name was already created.

GameIsFull 

Raised when a peer is trying to join a Room with already the max capacity of players.

InvalidAuthentication 

Raised when the Authentication Values are invalid.

CustomAuthenticationFailed 

Raised when the Custom Authentication has failed for some other reason.

AuthenticationTicketExpired 

Raised when the Authentication Ticket has expired.

PhotonCloudTimeout 

Timeout on the Connection with the Photon Cloud.

AlreadyRunning 

Raised when Fusion is already running and the StartGame is invoked again.

InvalidArguments 

Raised when any of the StartGame arguments does not meet the requirements.

HostMigration 

Signal this Runner is shutting down because of a Host Migration is about to happen.

ConnectionTimeout 

Connection with a remote server failed by timeout.

ConnectionRefused 

Connection with a remote server failed because it was refused.

OperationTimeout 

The current operation has timed out.

OperationCanceled 

The current operation was canceled.

◆ SimulationModes

Flags for The type of network peer a simulation represents.

Enumerator
Server 

Simulation represents a server peer, with no local player.

Host 

Simulation represents a server peer, with a local player.

Client 

Simulation represents a client peer, with a local player.

◆ SimulationStages

Flags for which stage the simulation currently running. Forward is when a tick is being simulated for the first time. Resimulate is when a tick is being simulated again with corrections.

Enumerator
Forward 

Currently simulating a tick for the first time.

Resimulate 

Currently simulating a previously simulated tick again, with state corrections.

◆ Topologies

enum Topologies
Enumerator
ClientServer 

Classic server and client model.

Shared 

Relay based shared world model.

◆ Units

enum Units

Unit Type for a certain field. This helps to identify the unit that a certain value represents, like Seconds or Percentage.

Enumerator
Ticks 

ticks

Seconds 

seconds - secs

MilliSecs 

millisecs - ms

Kilobytes 

kilobytes - kB

Megabytes 

megabytes - MB

Normalized 

normalized - norm

Multiplier 

multiplier - mult

Percentage 

%

NormalizedPercentage 

normalized % - n%

Degrees 

degrees - \u00B0

PerSecond 

per sec - /sec

DegreesPerSecond 

\u00B0 / sec - \u00B0/sec

Radians 

radians - rad

RadiansPerSecond 

radian / sec - rad/s

TicksPerSecond 

ticks / sec - tck/s

Units 

units - units

Bytes 

bytes - bytes

Count 

count - count

Packets 

packets - packets

Frames 

frames - frames

FramesPerSecond 

fps - fps

SquareMagnitude 

sqrMagnitude - sqrMag

◆ UnityPlayerLoopSystemAddMode

Enum representing the possible modes for adding a system to the Unity player loop.

Enumerator
FirstChild 

Add the system as the first child of the parent system.

LastChild 

Add the system as the last child of the parent system.

Before 

Add the system before the parent system in the player loop.

After 

Add the system after the parent system in the player loop.

Function Documentation

◆ RpcInvokeDelegate()

unsafe delegate void RpcInvokeDelegate ( NetworkBehaviour  behaviour,
SimulationMessage message 
)

Represents a delegate that can be invoked by an RPC message.

Parameters
behaviourThe NetworkBehaviour associated with the RPC message.
messageThe SimulationMessage associated with the RPC message.

The RpcInvokeDelegate is used to invoke an RPC message. The delegate is invoked by the RpcSystem when an RPC message is received. The delegate is invoked with the NetworkBehaviour associated with the RPC message and the SimulationMessage associated with the RPC message.

◆ RpcStaticInvokeDelegate()

unsafe delegate void RpcStaticInvokeDelegate ( NetworkRunner  runner,
SimulationMessage message 
)

Represents a delegate that can be invoked by an RPC message.

Parameters
runnerThe NetworkRunner associated with the RPC message.
messageThe SimulationMessage associated with the RPC message.

The RpcInvokeDelegate is used to invoke an RPC message. The delegate is invoked by the RpcSystem when an RPC message is received. The delegate is invoked with the NetworkRunner associated with the RPC message and the SimulationMessage associated with the RPC message.