You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

16950 lines
862 KiB
XML

3 weeks ago
<?xml version="1.0"?>
<doc>
<assembly>
<name>Fusion.Runtime</name>
</assembly>
<members>
<member name="T:Fusion.Allocator">
<summary>
Memory Allocator
</summary>
</member>
<member name="F:Fusion.Allocator.HEAP_ALIGNMENT">
<summary>Heap Alignment</summary>
</member>
<member name="F:Fusion.Allocator.REPLICATE_WORD_SHIFT">
<summary>Replicate Word Shift</summary>
</member>
<member name="F:Fusion.Allocator.REPLICATE_WORD_SIZE">
<summary>Replicate Word Size</summary>
</member>
<member name="F:Fusion.Allocator.REPLICATE_WORD_ALIGN">
<summary>Replicate Word Align</summary>
</member>
<member name="F:Fusion.Allocator.BUCKET_COUNT">
<summary>Bucket Count</summary>
</member>
<member name="F:Fusion.Allocator.BUCKET_INVALID">
<summary>Bucket Invalid</summary>
</member>
<member name="M:Fusion.Allocator.CanAllocSizeAssert_Temp(System.Int32)">
<summary>
Check size of bytes to be allocated
</summary>
<param name="size">Number of bytes to be allocated</param>
<returns>True if size is valid, false otherwise.</returns>
<exception cref="T:Fusion.AssertException">If size is less than 1</exception>
<exception cref="T:Fusion.AssertException">If size is bigger than <see cref="P:Fusion.Allocator.Config.BlockByteSize"/></exception>
</member>
<member name="T:Fusion.Allocator.Config">
<summary>
Memory Allocator Configuration
</summary>
</member>
<member name="F:Fusion.Allocator.Config.SIZE">
<summary>
Config Size
</summary>
</member>
<member name="F:Fusion.Allocator.Config.DEFAULT_BLOCK_SHIFT">
<summary>
Default Block Shift
</summary>
</member>
<member name="F:Fusion.Allocator.Config.DEFAULT_BLOCK_COUNT">
<summary>
Default Block Count
</summary>
</member>
<member name="F:Fusion.Allocator.Config.BlockShift">
<summary>
Block Shift Config value
</summary>
</member>
<member name="F:Fusion.Allocator.Config.BlockCount">
<summary>
Block Count Config value
</summary>
</member>
<member name="F:Fusion.Allocator.Config.GlobalsSize">
<summary>
Globals Size Config value
</summary>
</member>
<member name="P:Fusion.Allocator.Config.BlockByteSize">
<summary>
Block Size in Bytes
</summary>
</member>
<member name="P:Fusion.Allocator.Config.BlockWordCount">
<summary>
Block Size in Words
</summary>
</member>
<member name="P:Fusion.Allocator.Config.HeapSizeUsable">
<summary>
Heap Size in Bytes
</summary>
</member>
<member name="P:Fusion.Allocator.Config.HeapSizeAllocated">
<summary>
Heap Size Allocated in Bytes
</summary>
</member>
<member name="M:Fusion.Allocator.Config.#ctor(Fusion.PageSizes,System.Int32,System.Int32)">
<summary>
Config Constructor
</summary>
<param name="shift">Block Shift</param>
<param name="count">Block Count</param>
<param name="globalsSize">Globals Size</param>
</member>
<member name="M:Fusion.Allocator.Config.Equals(Fusion.Allocator.Config)">
<summary>
Check Config equality
</summary>
<param name="other">Config Ref</param>
<returns>True if has the same values</returns>
</member>
<member name="M:Fusion.Allocator.Config.Equals(System.Object)">
<summary>
Check Config equality
</summary>
<param name="obj">Any object reference</param>
<returns>True if obj is a <see cref="T:Fusion.Allocator.Config"/> and has the same values</returns>
</member>
<member name="M:Fusion.Allocator.Config.GetHashCode">
<summary>
Get Hash Code
</summary>
<returns>Hash Code</returns>
</member>
<member name="M:Fusion.Allocator.Config.ToString">
<summary>
Config ToString
</summary>
</member>
<member name="T:Fusion.PageSizes">
<summary>
Page Bit Shift Lookup Table
</summary>
</member>
<member name="T:Fusion.Ptr">
<summary>
Ptr
</summary>
</member>
<member name="T:Fusion.Ptr.EqualityComparer">
<summary>
Ptr Equality Comparer
</summary>
</member>
<member name="M:Fusion.Ptr.EqualityComparer.Equals(Fusion.Ptr,Fusion.Ptr)">
<summary>
Ptr Equality Comparer
</summary>
<param name="x">Ptr X</param>
<param name="y">Ptr Y</param>
<returns>True if point to the same Address</returns>
</member>
<member name="M:Fusion.Ptr.EqualityComparer.GetHashCode(Fusion.Ptr)">
<summary>
Get Hash Code
</summary>
<param name="obj">Ptr</param>
<returns>Ptr Address</returns>
</member>
<member name="F:Fusion.Ptr.SIZE">
<summary>
Ptr Size
</summary>
</member>
<member name="P:Fusion.Ptr.Null">
<summary>
Null Ptr
</summary>
</member>
<member name="F:Fusion.Ptr.Address">
<summary>
Ptr Address
</summary>
</member>
<member name="M:Fusion.Ptr.Equals(Fusion.Ptr)">
<summary>
Check Ptr equality
</summary>
<param name="other">Ptr Ref</param>
<returns>True if points to the same Address</returns>
</member>
<member name="M:Fusion.Ptr.Equals(System.Object)">
<summary>
Check Ptr equality
</summary>
<param name="obj">Any object reference</param>
<returns>True if obj is a <see cref="T:Fusion.Ptr"/> and points to the same Address</returns>
</member>
<member name="M:Fusion.Ptr.GetHashCode">
<summary>
<see cref="T:Fusion.Ptr"/> Hash Code, same as <see cref="F:Fusion.Ptr.Address"/>
</summary>
<returns><see cref="F:Fusion.Ptr.Address"/></returns>
</member>
<member name="M:Fusion.Ptr.ToString">
<summary>
<see cref="T:Fusion.Ptr"/> to String
</summary>
<returns><see cref="F:Fusion.Ptr.Address"/> in Hexadecimal format</returns>
</member>
<member name="M:Fusion.Ptr.op_Implicit(Fusion.Ptr)~System.Boolean">
<summary>
Implicit Bool Operator
Check if <see cref="F:Fusion.Ptr.Address"/> is not 0
</summary>
<param name="a">
<see cref="T:Fusion.Ptr"/> to check
</param>
<returns>
True if <see cref="F:Fusion.Ptr.Address"/> is not 0
</returns>
</member>
<member name="M:Fusion.Ptr.op_Equality(Fusion.Ptr,Fusion.Ptr)">
<summary>
Implicit Ptr Equals Operator
</summary>
<param name="a">
<see cref="T:Fusion.Ptr"/> A
</param>
<param name="b">
<see cref="T:Fusion.Ptr"/> B
</param>
<returns>
True if <see cref="F:Fusion.Ptr.Address"/> is the same
</returns>
</member>
<member name="M:Fusion.Ptr.op_Inequality(Fusion.Ptr,Fusion.Ptr)">
<summary>
Implicit Ptr Not Equals Operator
</summary>
<param name="a">
<see cref="T:Fusion.Ptr"/> A
</param>
<param name="b">
<see cref="T:Fusion.Ptr"/> B
</param>
<returns>
True if <see cref="F:Fusion.Ptr.Address"/> is not the same
</returns>
</member>
<member name="M:Fusion.Ptr.op_Addition(Fusion.Ptr,System.Int32)">
<summary>
Implicit Ptr Sum Operator
</summary>
<param name="p">
<see cref="T:Fusion.Ptr"/> to add to
</param>
<param name="v">
Value to add
</param>
<returns>
<see cref="T:Fusion.Ptr"/> with <see cref="F:Fusion.Ptr.Address"/> increased by <paramref name="v"/>
</returns>
</member>
<member name="M:Fusion.Ptr.op_Subtraction(Fusion.Ptr,System.Int32)">
<summary>
Implicit Ptr Subtraction Operator
</summary>
<param name="p">
<see cref="T:Fusion.Ptr"/> to subtract from
</param>
<param name="v">
Value to subtract
</param>
<returns>
<see cref="T:Fusion.Ptr"/> with <see cref="F:Fusion.Ptr.Address"/> decreased by <paramref name="v"/>
</returns>
</member>
<member name="T:Fusion.CapacityAttribute">
<summary>
Capacity Attribute
</summary>
</member>
<member name="P:Fusion.CapacityAttribute.Length">
<summary>
Total Capacity
</summary>
</member>
<member name="M:Fusion.CapacityAttribute.#ctor(System.Int32)">
<summary>
CapacityAttribute Constructor
</summary>
<param name="length"><see cref="P:Fusion.CapacityAttribute.Length"/></param>
</member>
<member name="T:Fusion.DefaultForPropertyAttribute">
<summary>
Default For Property Attribute
For non-serialized properties
</summary>
</member>
<member name="P:Fusion.DefaultForPropertyAttribute.PropertyName">
<summary>
Property Name
</summary>
</member>
<member name="P:Fusion.DefaultForPropertyAttribute.WordOffset">
<summary>
Property Word Offset
</summary>
</member>
<member name="P:Fusion.DefaultForPropertyAttribute.WordCount">
<summary>
Property Word Count
</summary>
</member>
<member name="M:Fusion.DefaultForPropertyAttribute.#ctor(System.String,System.Int32,System.Int32)">
<summary>
DefaultForPropertyAttribute Constructor
</summary>
<param name="propertyName"><see cref="P:Fusion.DefaultForPropertyAttribute.PropertyName"/></param>
<param name="wordOffset"><see cref="P:Fusion.DefaultForPropertyAttribute.WordOffset"/></param>
<param name="wordCount"><see cref="P:Fusion.DefaultForPropertyAttribute.WordCount"/></param>
</member>
<member name="T:Fusion.FixedBufferPropertyAttribute">
<summary>
Fixed Buffer Property Attribute
</summary>
</member>
<member name="P:Fusion.FixedBufferPropertyAttribute.Type">
<summary>
Fixed Buffer Type
</summary>
</member>
<member name="P:Fusion.FixedBufferPropertyAttribute.SurrogateType">
<summary>
Fixed Buffer Surrogate Type
</summary>
</member>
<member name="P:Fusion.FixedBufferPropertyAttribute.Capacity">
<summary>
Fixed Buffer Capacity
</summary>
</member>
<member name="M:Fusion.FixedBufferPropertyAttribute.#ctor(System.Type,System.Type,System.Int32)">
<summary>
FixedBufferPropertyAttribute Constructor
</summary>
<param name="fieldType"><see cref="P:Fusion.FixedBufferPropertyAttribute.Type"/></param>
<param name="surrogateType"><see cref="P:Fusion.FixedBufferPropertyAttribute.SurrogateType"/></param>
<param name="capacity"><see cref="P:Fusion.FixedBufferPropertyAttribute.Capacity"/></param>
</member>
<member name="T:Fusion.NetworkAssemblyIgnoreAttribute">
<summary>
Network Assembly Ignore Attribute
</summary>
</member>
<member name="T:Fusion.NetworkAssemblyWeavedAttribute">
<summary>
Network Assembly Weaved Attribute
</summary>
</member>
<member name="T:Fusion.NetworkBehaviourWeavedAttribute">
<summary>
Network Behaviour Weaved Attribute
</summary>
</member>
<member name="P:Fusion.NetworkBehaviourWeavedAttribute.WordCount">
<summary>
<see cref="T:Fusion.NetworkBehaviour"/> Word Count
</summary>
</member>
<member name="M:Fusion.NetworkBehaviourWeavedAttribute.#ctor(System.Int32)">
<summary>
NetworkBehaviourWeavedAttribute Constructor
</summary>
<param name="wordCount"><see cref="P:Fusion.NetworkBehaviourWeavedAttribute.WordCount"/></param>
</member>
<member name="T:Fusion.NetworkDeserializeMethodAttribute">
<summary>
Network Deserialize Method Attribute
</summary>
</member>
<member name="T:Fusion.NetworkedAttribute">
<summary>
<para>
Flags a property of <see cref="T:Fusion.NetworkBehaviour"/> for network state synchronization.
The property should have empty get and set defines, which will automatically be replaced with networking code via IL Weaving.
</para>
<para>
Inside of INetworkStruct, do not use AutoProperties (get; set;), as these will introduce managed types into the struct, which are not allowed. Instead use '=> default'.
<code>
| [Networked]<br></br>
| public string StringProp { get => default; set { } }
</code>
</para>
</summary>
</member>
<member name="P:Fusion.NetworkedAttribute.Default">
<summary>
Name of the field that holds the default value for this networked property.
</summary>
</member>
<member name="M:Fusion.NetworkedAttribute.#ctor">
<summary>
Default constructor for NetworkedAttribute
</summary>
</member>
<member name="T:Fusion.OnChangedRenderAttribute">
<summary>
OnChangedRender Attribute
</summary>
<remarks>
This attribute is used to specify a method that should be called when the property changes.
</remarks>
</member>
<member name="P:Fusion.OnChangedRenderAttribute.MethodName">
<summary>
Gets the name of the method to be called when the property changes.
</summary>
</member>
<member name="M:Fusion.OnChangedRenderAttribute.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:Fusion.OnChangedRenderAttribute"/> class.
</summary>
<param name="methodName">The name of the method to be called when the property changes.</param>
<exception cref="T:System.ArgumentNullException">Thrown when <paramref name="methodName"/> is null or empty.</exception>
</member>
<member name="T:Fusion.NetworkedWeavedAttribute">
<summary>
Networked Weaved Attribute
Networked Property Attribute
</summary>
</member>
<member name="P:Fusion.NetworkedWeavedAttribute.WordOffset">
<summary>
Networked Property Word Offset
</summary>
</member>
<member name="P:Fusion.NetworkedWeavedAttribute.WordCount">
<summary>
Networked Property Word Count
</summary>
</member>
<member name="M:Fusion.NetworkedWeavedAttribute.#ctor(System.Int32,System.Int32)">
<summary>
NetworkedWeavedAttribute Constructor
</summary>
<param name="wordOffset"><see cref="P:Fusion.NetworkedWeavedAttribute.WordOffset"/></param>
<param name="wordCount"><see cref="P:Fusion.NetworkedWeavedAttribute.WordCount"/></param>
</member>
<member name="T:Fusion.NetworkInputWeavedAttribute">
<summary>
Network Input Weaved Attribute
</summary>
</member>
<member name="P:Fusion.NetworkInputWeavedAttribute.WordCount">
<summary>
<see cref="T:Fusion.NetworkInput"/> Word Count
</summary>
</member>
<member name="M:Fusion.NetworkInputWeavedAttribute.#ctor(System.Int32)">
<summary>
NetworkInputWeavedAttribute Constructor
</summary>
<param name="wordCount"><see cref="P:Fusion.NetworkInputWeavedAttribute.WordCount"/></param>
</member>
<member name="T:Fusion.NetworkPrefabAttribute">
<summary>
Network Prefab Attribute
</summary>
</member>
<member name="T:Fusion.NetworkRpcStaticWeavedInvokerAttribute">
<summary>
Network Rpc Static Weaved Invoker Attribute
Contains info about a static weaved RPC Method
</summary>
</member>
<member name="P:Fusion.NetworkRpcStaticWeavedInvokerAttribute.Key">
<summary>
RPC Key
</summary>
</member>
<member name="M:Fusion.NetworkRpcStaticWeavedInvokerAttribute.#ctor(System.String)">
<summary>
NetworkRpcStaticWeavedInvokerAttribute Constructor
</summary>
<param name="key"><see cref="P:Fusion.NetworkRpcStaticWeavedInvokerAttribute.Key"/></param>
</member>
<member name="T:Fusion.NetworkRpcWeavedInvokerAttribute">
<summary>
Network Rpc Weaved Invoker Attribute
Contains info about a weaved RPC Method
</summary>
</member>
<member name="P:Fusion.NetworkRpcWeavedInvokerAttribute.Key">
<summary>
RPC Key
</summary>
</member>
<member name="P:Fusion.NetworkRpcWeavedInvokerAttribute.Sources">
<summary>
RPC Sources
</summary>
</member>
<member name="P:Fusion.NetworkRpcWeavedInvokerAttribute.Targets">
<summary>
RPC Targets
</summary>
</member>
<member name="M:Fusion.NetworkRpcWeavedInvokerAttribute.#ctor(System.Int32,System.Int32,System.Int32)">
<summary>
NetworkRpcWeavedInvokerAttribute Constructor
</summary>
<param name="key"><see cref="P:Fusion.NetworkRpcWeavedInvokerAttribute.Key"/></param>
<param name="sources"><see cref="P:Fusion.NetworkRpcWeavedInvokerAttribute.Sources"/></param>
<param name="targets"><see cref="P:Fusion.NetworkRpcWeavedInvokerAttribute.Targets"/></param>
</member>
<member name="T:Fusion.NetworkSerializeMethodAttribute">
<summary>
Network Serialize Method Attribute
</summary>
</member>
<member name="P:Fusion.NetworkSerializeMethodAttribute.MaxSize">
<summary>
If set, this changes expected Wrap method signature to int Name(NetworkRunner, T, byte*) and Unwrap to int Name(NetworkRunner, byte*, ref T).
In both cases, the result is the number of bytes written/read and can not be greater than what's declared here.
</summary>
</member>
<member name="T:Fusion.NetworkStructWeavedAttribute">
<summary>
Describes the total number of WORDs a <see cref="T:Fusion.INetworkStruct"/> uses.
</summary>
</member>
<member name="P:Fusion.NetworkStructWeavedAttribute.WordCount">
<summary>
<see cref="T:Fusion.INetworkStruct"/> Word Count
</summary>
</member>
<member name="P:Fusion.NetworkStructWeavedAttribute.IsGenericComposite">
<summary>
If the <see cref="T:Fusion.INetworkStruct"/> is Generic Composite
</summary>
</member>
<member name="M:Fusion.NetworkStructWeavedAttribute.#ctor(System.Int32)">
<summary>
NetworkStructWeavedAttribute Constructor
</summary>
<param name="wordCount"><see cref="T:Fusion.INetworkStruct"/> word count</param>
</member>
<member name="T:Fusion.NormalizedRectAttribute">
<summary>
Enables a special inspector drawer for Unity Rect type, specially designed for editing RectTransforms using normalized values.
</summary>
</member>
<member name="F:Fusion.NormalizedRectAttribute.InvertY">
<summary>
Signal if Y should be inverted
</summary>
</member>
<member name="F:Fusion.NormalizedRectAttribute.AspectRatio">
<summary>
Set the Aspect Ratio
</summary>
</member>
<member name="M:Fusion.NormalizedRectAttribute.#ctor(System.Boolean,System.Single)">
<summary>
Constructor for <see cref="T:Fusion.NormalizedRectAttribute"/>. InvertY inverts Y handling, for RectTransforms which treat lowerRight as origin, rather than upper left.
</summary>
<param name="invertY">Invert Y handling</param>
<param name="aspectRatio">Expressed as Width/Height, this defines the ratio of the box shown in the inspector. Value of 0 indicates game window resolution will be used.</param>
</member>
<member name="T:Fusion.PreserveInPluginAttribute">
<summary>
Preserve In Plugin Attribute
</summary>
</member>
<member name="M:Fusion.PreserveInPluginAttribute.#ctor">
<summary>
PreserveInPluginAttribute Constructor
</summary>
</member>
<member name="T:Fusion.RenderAttribute">
<summary>
Override default render settings for <c>[Networked]</c> properties.
</summary>
</member>
<member name="P:Fusion.RenderAttribute.Timeframe">
<summary>
<para>
Force this property to be rendered in this <see cref="T:Fusion.RenderTimeframe"/>.
</para>
<para>
This setting is prioritized over <see cref="T:Fusion.NetworkBehaviour"/> and <see cref="T:Fusion.NetworkObject"/> overrides.
</para>
</summary>
</member>
<member name="P:Fusion.RenderAttribute.Source">
<summary>
<para>
Force this property to be rendered using this <see cref="T:Fusion.RenderSource"/> (in the chosen <see cref="T:Fusion.RenderTimeframe"/>).
</para>
<para>
This setting is prioritized over <see cref="T:Fusion.NetworkBehaviour"/> and <see cref="T:Fusion.NetworkObject"/> overrides.
</para>
</summary>
</member>
<member name="P:Fusion.RenderAttribute.Method">
<summary>
<para>
Override the default interpolation method for this property. The method's signature must match:
</para>
<para>
<code>static T MethodName(T from, T to, float alpha) { /* ... */ } </code>
</para>
</summary>
</member>
<member name="M:Fusion.RenderAttribute.#ctor">
<summary>
Default constructor for RenderAttribute
</summary>
</member>
<member name="M:Fusion.RenderAttribute.#ctor(Fusion.RenderTimeframe,Fusion.RenderSource)">
<summary>
RenderAttribute Constructor
</summary>
<param name="timeframe"><see cref="T:Fusion.RenderTimeframe"/> reference</param>
<param name="source"><see cref="T:Fusion.RenderSource"/> reference</param>
</member>
<member name="T:Fusion.RenderWeavedAttribute">
<summary>
Render Weaved Attribute
</summary>
</member>
<member name="M:Fusion.RenderWeavedAttribute.#ctor">
<summary>
RenderWeavedAttribute Constructor
</summary>
</member>
<member name="T:Fusion.ResolveNetworkPrefabSourceAttribute">
<summary>
Resolve Network Prefab Source Attribute
</summary>
</member>
<member name="T:Fusion.UnityContextMenuItemAttribute">
<summary>
Unity ContextMenuItemAttribute
</summary>
</member>
<member name="P:Fusion.UnityContextMenuItemAttribute.order">
<summary>
ContextMenuItemAttribute Order
</summary>
</member>
<member name="M:Fusion.UnityContextMenuItemAttribute.#ctor(System.String,System.String)">
<summary>
ContextMenuItemAttribute Constructor
</summary>
</member>
<member name="T:Fusion.UnityDelayedAttribute">
<summary>
Unity DelayedAttribute
</summary>
</member>
<member name="P:Fusion.UnityDelayedAttribute.order">
<summary>
DelayedAttribute Order
</summary>
</member>
<member name="T:Fusion.UnityHeaderAttribute">
<summary>
Unity HeaderAttribute
</summary>
</member>
<member name="P:Fusion.UnityHeaderAttribute.order">
<summary>
HeaderAttribute Order
</summary>
</member>
<member name="M:Fusion.UnityHeaderAttribute.#ctor(System.String)">
<summary>
HeaderAttribute Constructor
</summary>
</member>
<member name="T:Fusion.UnityMinAttribute">
<summary>
Unity MinAttribute
</summary>
</member>
<member name="P:Fusion.UnityMinAttribute.order">
<summary>
MinAttribute Order
</summary>
</member>
<member name="M:Fusion.UnityMinAttribute.#ctor(System.Single)">
<summary>
MinAttribute Constructor
</summary>
</member>
<member name="T:Fusion.UnityMultilineAttribute">
<summary>
Unity MultilineAttribute
</summary>
</member>
<member name="P:Fusion.UnityMultilineAttribute.order">
<summary>
MultilineAttribute Order
</summary>
</member>
<member name="T:Fusion.UnityNonReorderableAttribute">
<summary>
Unity NonReorderableAttribute
</summary>
</member>
<member name="P:Fusion.UnityNonReorderableAttribute.order">
<summary>
NonReorderableAttribute Order
</summary>
</member>
<member name="T:Fusion.UnityRangeAttribute">
<summary>
Unity RangeAttribute
</summary>
</member>
<member name="P:Fusion.UnityRangeAttribute.order">
<summary>
RangeAttribute Order
</summary>
</member>
<member name="M:Fusion.UnityRangeAttribute.#ctor(System.Single,System.Single)">
<summary>
RangeAttribute Constructor
</summary>
</member>
<member name="T:Fusion.UnitySerializeField">
<summary>
Unity SerializeField
</summary>
</member>
<member name="T:Fusion.UnitySerializeReference">
<summary>
Unity SerializeReference
</summary>
</member>
<member name="T:Fusion.UnitySpaceAttribute">
<summary>
Unity SpaceAttribute
</summary>
</member>
<member name="P:Fusion.UnitySpaceAttribute.order">
<summary>
SpaceAttribute Order
</summary>
</member>
<member name="M:Fusion.UnitySpaceAttribute.#ctor(System.Single)">
<summary>
SpaceAttribute Constructor
</summary>
</member>
<member name="T:Fusion.UnityTooltipAttribute">
<summary>
Unity TooltipAttribute
</summary>
</member>
<member name="P:Fusion.UnityTooltipAttribute.order">
<summary>
TooltipAttribute Order
</summary>
</member>
<member name="M:Fusion.UnityTooltipAttribute.#ctor(System.String)">
<summary>
TooltipAttribute Constructor
</summary>
</member>
<member name="T:Fusion.UnityNonSerializedAttribute">
<summary>
Unity NonSerializedAttribute
</summary>
</member>
<member name="T:Fusion.UnityFormerlySerializedAsAttribute">
<summary>
Unity FormerlySerializedAsAttribute
</summary>
</member>
<member name="M:Fusion.UnityFormerlySerializedAsAttribute.#ctor(System.String)">
<summary>
FormerlySerializedAsAttribute Constructor
</summary>
</member>
<member name="T:Fusion.WeaverGeneratedAttribute">
<summary>
Weaver Generated Attribute
</summary>
</member>
<member name="T:Fusion.CloudCommunicator">
<summary>
Wrapper around the Fusion LBC Implementation <see cref="T:Fusion.Photon.Realtime.FusionRelayClient"/>
It will control and manage the communication between Fusion and the Photon Cloud
</summary>
</member>
<member name="P:Fusion.CloudCommunicator.Client">
<summary>
Fusion LBC Client Reference
</summary>
</member>
<member name="P:Fusion.CloudCommunicator.CommunicatorID">
<summary>
ID of this Communicator. This reflects the Actor Number of the Peer inside the Room
</summary>
</member>
<member name="P:Fusion.CloudCommunicator.WasExtracted">
<summary>
Flag to signal if this Communicator was extracted and will be reused
</summary>
</member>
<member name="T:Fusion.CloudServices">
<summary>
Responsible to deal with LoadBalancingClient Events
</summary>
<summary>
Responsible for dealing and managing the API used to communicate with the Photon Cloud.
This also includes:
- Send/Reply to Protocol Messages
- Query for Reflexive Information
- Perform NAT Punchthrough
- Manage the Realtime client
- Respond to/deal with Photon Cloud events
</summary>
</member>
<member name="P:Fusion.CloudServices.IsCloudReady">
<summary>
Signal if the local peer is connected to the Photon Cloud and can perform extra actions, like creating/joining a Room.
</summary>
</member>
<member name="P:Fusion.CloudServices.UserId">
<summary>
Photon Client UserID
</summary>
</member>
<member name="P:Fusion.CloudServices.IsInRoom">
<summary>
Signal if the local peer is already inside a Room
</summary>
</member>
<member name="P:Fusion.CloudServices.IsInLobby">
<summary>
Signal if the local peer is already inside a Lobby
</summary>
</member>
<member name="P:Fusion.CloudServices.CurrentJoinStage">
<summary>
Current Fusion Session Join Stage
</summary>
</member>
<member name="P:Fusion.CloudServices.CurrentProtocolMessageVersion">
<summary>
Current ProtocolMessageVersion
</summary>
</member>
<member name="P:Fusion.CloudServices.SessionSlots">
<summary>
Max Number of players a Session can handle
</summary>
</member>
<member name="P:Fusion.CloudServices.IsMasterClient">
<summary>
Signal if the local peer is also the Master Client of the Current Room
</summary>
</member>
<member name="P:Fusion.CloudServices.AuthenticationValues">
<summary>
Get the internal <see cref="P:Fusion.CloudServices.AuthenticationValues"/> used by the Client to perform the authentication
</summary>
</member>
<member name="P:Fusion.CloudServices.Communicator">
<summary>
Reference to the current active communicator
</summary>
</member>
<member name="P:Fusion.CloudServices.CachedRegionSummary">
<summary>
Get the local client cached region summary
</summary>
</member>
<member name="P:Fusion.CloudServices.IsNATPunchthroughEnabled">
<summary>
Signal if the local peer will try or accept connections using NAT Punch
</summary>
</member>
<member name="P:Fusion.CloudServices.IsEncryptionEnabled">
<summary>
Flag to signal if the Photon Cloud connection is encrypted by default
</summary>
</member>
<member name="P:Fusion.CloudServices.CustomSTUNServer">
<summary>
Custom STUN Server
</summary>
</member>
<member name="P:Fusion.CloudServices.NATType">
<summary>
Exposes the current NAT Type from the local Peer
</summary>
</member>
<member name="P:Fusion.CloudServices.LocalPlayerRef">
<summary>
player ref assigned by the cloud
</summary>
</member>
<member name="M:Fusion.CloudServices.#ctor(Fusion.NetworkRunner,Fusion.Photon.Realtime.FusionAppSettings,Fusion.CloudCommunicator)">
<summary>
Builds a new CloudService reference
</summary>
<param name="runner">Reference to the current active Runner</param>
<param name="customAppSettings">Custom Photon App Settings</param>
<param name="communicator">Optional external Communicator</param>
</member>
<member name="M:Fusion.CloudServices.ExtractCommunicator">
<summary>
Extract the internal Communicator for later re-use
</summary>
<returns>Current <see cref="T:Fusion.CloudCommunicator"/> used by this instance with all resetted settings</returns>
</member>
<member name="M:Fusion.CloudServices.Update">
<summary>
Update and perform all pending actions related to the Photon Cloud communication
</summary>
</member>
<member name="M:Fusion.CloudServices.ConnectToCloud(Fusion.Photon.Realtime.AppSettings,Fusion.Photon.Realtime.AuthenticationValues,System.Threading.CancellationToken,System.Nullable{System.Boolean})">
<summary>
Connect the local peer to Photon Cloud using an async process.
</summary>
<param name="authentication">Custom Authentication Values used to Auth the local peer</param>
<param name="appSettings">Custom Photon App Settings</param>
<param name="externalCancellationToken">External CancellationToken</param>
<param name="useDefaultCloudPorts">Signal if the LoadBalancingClient should use the Default or Alternative Ports</param>
<returns>Async Task of the connect to Photon Cloud process. Can be used to wait for the process to be finished</returns>
</member>
<member name="M:Fusion.CloudServices.JoinSessionLobby(Fusion.SessionLobby,System.String,Fusion.Photon.Realtime.LobbyType)">
<summary>
Join the Peer to a specific Lobby, either a prebuild or a custom one
</summary>
<param name="sessionLobby">Lobby Type to Join</param>
<param name="lobbyID">Custom Lobby ID</param>
<param name="lobbyType">Custom Lobby Type</param>
<returns>True if the operation could be completed. <see cref="M:Fusion.Photon.Realtime.LoadBalancingClient.OpJoinLobby(Fusion.Photon.Realtime.TypedLobby)"/></returns>
</member>
<member name="M:Fusion.CloudServices.EnterRoom(Fusion.StartGameArgs,System.Threading.CancellationToken)">
<summary>
Make the local Peer Create/Join a Room based on Start Game Arguments
--------------------->Yes--->CreateOrJoin
SharedMode--->| Valid Room Name |
--------------------->No---->[RandomRoomName]-->JoinRandomOrCreate
--------------------->Yes--->CreateOrJoin
ClientMode--->| Valid Room Name |
--------------------->No---->[RandomRoomName]-->JoinRandom
ServerMode-- --------------------->Yes----------------------------|
|->| Valid Room Name | v
HostMode---- --------------------->No---->[RandomRoomName]-->CreateOrJoin
</summary>
<param name="args">Start Game Args ref</param>
<param name="externalCancellationToken">External Cancellation Token</param>
<returns>Task of the Join Room process</returns>
</member>
<member name="M:Fusion.CloudServices.DisconnectFromCloud">
<summary>
Disconnect the Local Peer from the Photon Cloud.
</summary>
<returns>Async Task of the disconnect from Photon Cloud process. Can be used to wait for the process to be finished</returns>
</member>
<member name="M:Fusion.CloudServices.GetActorUserID(System.Int32)">
<summary>
Get the UserID of another Player Actor in the Room
</summary>
<param name="actorID">ActorID of a Player inside the Room</param>
<returns>Player UserID</returns>
</member>
<member name="M:Fusion.CloudServices.TryGetActorIdByUniqueId(System.Int64,System.Int32@)">
<summary>
Try to get the ActorId associated with a specific Client Unique Id
</summary>
<param name="uniqueId">Client Unique Id to check</param>
<param name="actorId">ActorId associated with that Client Unique Id</param>
<returns>True if the ActorId can be found</returns>
</member>
<member name="M:Fusion.CloudServices.OnInternalConnectionAttempt(System.Int32,System.Int32,System.Boolean@,Fusion.Sockets.NetAddress@)">
<summary>
Callback fire on every connection attempt with a remote Server.
It is used while trying to hole-punch the remote server and enables the manager to swap the target endpoint in between attempts.
This is necessary to maintain a flow of attempts even if we exchange the local/public/relay endpoints
</summary>
<param name="attempt">Current attempt number</param>
<param name="totalConnectionAttempts">Max number of attempts</param>
<param name="shouldChange">Flag if target EndPoint should change</param>
<param name="newAddress">New target EndPoint</param>
</member>
<member name="M:Fusion.CloudServices.Connect(Fusion.NATPunchStage,Fusion.Sockets.NetAddress)">
<summary>
Start the connection process with a Remote Server
</summary>
<param name="punchStage">Starting NAT Punch state, see <see cref="T:Fusion.NATPunchStage"/> for more info</param>
<param name="endPoint">Remote Server EndPoint to connect to</param>
</member>
<member name="M:Fusion.CloudServices.Dispose">
<summary>
Disposes the current <see cref="T:Fusion.CloudServices"/>
</summary>
</member>
<member name="M:Fusion.CloudServices.OnRoomChanged">
<summary>
Callback invoked when any Room Property has changed
</summary>
</member>
<member name="M:Fusion.CloudServices.OnRoomListChanged(System.Collections.Generic.List{Fusion.Photon.Realtime.RoomInfo})">
<summary>
Callback invoked when the Room list is updated with data from the Cloud
</summary>
<param name="roomList">New List of <see cref="T:Fusion.Photon.Realtime.RoomInfo"/></param>
</member>
<member name="M:Fusion.CloudServices.Join(System.Threading.CancellationToken)">
<summary>
Send a <see cref="M:Fusion.CloudServices.Join(System.Threading.CancellationToken)"/> Protocol Message to Fusion Plugin
</summary>
<param name="externalCancellationToken">Optional external cancellation token</param>
</member>
<member name="M:Fusion.CloudServices.SendNetworkSyncMessage(Fusion.NetworkProjectConfig)">
<summary>
Send a <see cref="T:Fusion.Protocol.NetworkConfigSync"/> Protocol Message to the Fusion Plugin
</summary>
<param name="projectConfig">Reference to the Project Config to be sent</param>
</member>
<member name="M:Fusion.CloudServices.SendReflexiveInfo(Fusion.Sockets.Stun.StunResult)">
<summary>
Send a <see cref="T:Fusion.Protocol.ReflexiveInfo"/> Protocol Message to the Fusion Plugin
</summary>
<param name="stunResult">Reference to StunResult used to build the Protocol Message</param>
</member>
<member name="M:Fusion.CloudServices.SendStateSnapshot(System.Byte[],System.Int32,System.Int32,System.UInt32)">
<summary>
Build and send the latest Server Snapshot to the Fusion Plugin
</summary>
</member>
<member name="M:Fusion.CloudServices.HandleJoinMessage(System.Int32,Fusion.Protocol.Join)">
<summary>
Handles a <see cref="M:Fusion.CloudServices.Join(System.Threading.CancellationToken)"/> Confirmation Protocol Message sent by the Fusion Plugin
</summary>
<param name="sender">Sender Actor Number</param>
<param name="join">Join Protocol Message</param>
</member>
<member name="M:Fusion.CloudServices.HandleStartMessage(System.Int32,Fusion.Protocol.Start)">
<summary>
Handles a <see cref="T:Fusion.Protocol.Start"/> Protocol Message sent by the Fusion Plugin
</summary>
<param name="sender">Sender Actor Number</param>
<param name="start">Start Protocol Message</param>
</member>
<member name="M:Fusion.CloudServices.HandleDisconnectMessage(System.Int32,Fusion.Protocol.Disconnect)">
<summary>
Handles a <see cref="T:Fusion.Protocol.Disconnect"/> Protocol Message sent by the Fusion Plugin
</summary>
<param name="sender">Sender Actor Number</param>
<param name="disconnect">Disconnect Protocol Message</param>
</member>
<member name="M:Fusion.CloudServices.HandleNetworkConfigMessage(System.Int32,Fusion.Protocol.NetworkConfigSync)">
<summary>
Handles a <see cref="T:Fusion.Protocol.NetworkConfigSync"/> Protocol Message sent by the Fusion Plugin
</summary>
<param name="sender">Sender Actor Number</param>
<param name="configSync">NetworkConfigSync Protocol Message</param>
</member>
<member name="M:Fusion.CloudServices.HandleReflexiveInfoMessage(System.Int32,Fusion.Protocol.ReflexiveInfo)">
<summary>
Handles a <see cref="T:Fusion.Protocol.ReflexiveInfo"/> Protocol Message sent by the Fusion Plugin
</summary>
<param name="sender">Sender Actor Number</param>
<param name="reflexiveInfo">ReflexiveInfo Protocol Message</param>
</member>
<member name="M:Fusion.CloudServices.ConfirmJoin">
<summary>
Confirms or waits for confirmation from the Plugin of the Join Message
</summary>
<returns>True if the Join Confirmation was received, false otherwise</returns>
</member>
<member name="M:Fusion.CloudServices.Service_KeepAlive">
<summary>
Send an empty message to Photon Cloud so the LBC Connection keeps alive
</summary>
</member>
<member name="M:Fusion.CloudServices.Service_HostMigrationSnapshot">
<summary>
Periodically sends a host migration snapshot if the runner is in host mode and is currently running.
</summary>
<returns>
A task that represents the asynchronous operation. The task result is a boolean indicating whether the service should continue running.
Returns true if the runner is not running, indicating that the service should continue.
Returns false if the runner is not in host mode, indicating that the service should stop.
</returns>
<exception cref="T:System.OperationCanceledException">Thrown when the operation is cancelled.</exception>
</member>
<member name="M:Fusion.CloudServices.Run_ReversePing(Fusion.Sockets.NetAddress)">
<summary>
Reverse ping will send Empty UDP Packets to the RemoteAddr in order to setup the Routing Table
on the current NAT of the Server, forcing it to allow packages from the remote client to be received
</summary>
<param name="remoteAddr">Remove EndPoint to ping</param>
</member>
<member name="M:Fusion.CloudServices.QueryReflexiveInfo">
<summary>
Run the STUN Service to retrieve the current Reflexive Addresses of the local peer
</summary>
<returns>Running Task of the STUN Query Procedure</returns>
</member>
<member name="M:Fusion.CloudServices.UpdateInitializeArgs(Fusion.NetworkRunnerInitializeArgs)">
<summary>
Update the internal <see cref="T:Fusion.NetworkRunnerInitializeArgs"/> used to start the Fusion Runner
</summary>
<param name="newArgs">New arguments</param>
</member>
<member name="M:Fusion.CloudServices.CheckSubnet(Fusion.Sockets.NetAddress)">
<summary>
Check if Remote Private EndPoint appears to be in the same Subnet
</summary>
<returns>True if in same Subnet</returns>
</member>
<member name="M:Fusion.CloudServices.InitRelayLogs">
<summary>
Initilize the Log system from the Realtime SDK to use the Fusion Log System
</summary>
</member>
<member name="M:Fusion.CloudServices.UpdateSessionInfo(Fusion.SessionInfo,Fusion.Photon.Realtime.RoomInfo,System.String)">
<summary>
Converts a <see cref="T:Fusion.Photon.Realtime.RoomInfo"/> to a <see cref="T:Fusion.SessionInfo"/>
</summary>
<param name="sessionInfo"><see cref="T:Fusion.SessionInfo"/> </param>
<param name="roomInfo"><see cref="T:Fusion.Photon.Realtime.RoomInfo"/> ref</param>
<param name="region">Room Region</param>
<returns><see cref="T:Fusion.SessionInfo"/> ref</returns>
</member>
<member name="T:Fusion.CloudServicesMetadata">
<summary>
Holds information about the local peer used to Join/Start/Connect to a remote Peer
using the Photon Cloud as backend
</summary>
</member>
<member name="F:Fusion.CloudServicesMetadata.LobbyClientServer">
<summary>
Client Server Lobby
</summary>
</member>
<member name="F:Fusion.CloudServicesMetadata.LobbyShared">
<summary>
Shared Lobby
</summary>
</member>
<member name="P:Fusion.CloudServicesMetadata.RunnerInitializeArgs">
<summary>
Reference to the initialization arguments set by the user.
They are used to start the Fusion Runner
</summary>
</member>
<member name="P:Fusion.CloudServicesMetadata.CurrentPunchStage">
<summary>
Connection Stage related to the current EndPoint Type used by the client to connect a remote server
</summary>
</member>
<member name="P:Fusion.CloudServicesMetadata.CurrentJoinStage">
<summary>
Describes the current state of the Join process
</summary>
</member>
<member name="P:Fusion.CloudServicesMetadata.CurrentProtocolMessageVersion">
<summary>
Describe the current protocol version we are using to communicate with the Plugin
</summary>
</member>
<member name="P:Fusion.CloudServicesMetadata.RemoteReflexiveInfo">
<summary>
Remote Server Reflexive Info. Stores private and public EndPoint of the remote server.
</summary>
</member>
<member name="P:Fusion.CloudServicesMetadata.LocalReflexiveInfo">
<summary>
Local Reflexive Info. Stores private and public EndPoint of the local peer.
</summary>
</member>
<member name="P:Fusion.CloudServicesMetadata.UniqueId">
<summary>
Stores the local peer Unique Id
</summary>
</member>
<member name="P:Fusion.CloudServicesMetadata.PlayerRef">
<summary>
Stores the local peer Unique Id
</summary>
</member>
<member name="P:Fusion.CloudServicesMetadata.EncryptionToken">
<summary>
Stores the local Encryption Token
</summary>
</member>
<member name="F:Fusion.CloudServicesMetadata.ScheduledRequests">
<summary>
Stores requests sent by the plugin
</summary>
</member>
<member name="F:Fusion.CloudServicesMetadata.LastDisconnectMsg">
<summary>
Last Disconnect Msg Received from the Plugin
</summary>
</member>
<member name="F:Fusion.CloudServicesMetadata.UniqueIdToReflexiveInfoTable">
<summary>
Mapping between Actor UniqueId and its ReflexiveInfo
</summary>
</member>
<member name="T:Fusion.ScheduledRequests">
<summary>
Define a list of Requests that may be asked by the Plugin Server
</summary>
</member>
<member name="F:Fusion.ScheduledRequests.None">
<summary>
No Request
</summary>
</member>
<member name="F:Fusion.ScheduledRequests.ReflexiveInfo">
<summary>
Request for the Local Reflexive Info
</summary>
</member>
<member name="T:Fusion.NATPunchStage">
<summary>
Describes the current Target Address Type used in the NAT Punch procedure
</summary>
</member>
<member name="F:Fusion.NATPunchStage.None">
<summary>
No connection procedure is running
</summary>
</member>
<member name="F:Fusion.NATPunchStage.Local">
<summary>
Trying to Connect to LAN EndPoint
</summary>
</member>
<member name="F:Fusion.NATPunchStage.Public">
<summary>
Trying to Connect to WAN EndPoint
</summary>
</member>
<member name="F:Fusion.NATPunchStage.Relay">
<summary>
Trying to Connect to Relay EndPoint
</summary>
</member>
<member name="T:Fusion.JoinProcessStage">
<summary>
Stage of the Join Process.
When starting the peer, the first thing we need to make sure is to have Joined the Room
with a confirmation from the Plugin, this will signal the current stage of this
</summary>
</member>
<member name="F:Fusion.JoinProcessStage.Idle">
<summary>
Join Request not sent yet
</summary>
</member>
<member name="F:Fusion.JoinProcessStage.Joining">
<summary>
Join Request Sent, waiting for confirmation
</summary>
</member>
<member name="F:Fusion.JoinProcessStage.Done">
<summary>
Join Confirmation Received, all good
</summary>
</member>
<member name="F:Fusion.JoinProcessStage.Fail">
<summary>
Failed to receive Join Confirmation after a timeout
</summary>
</member>
<member name="T:Fusion.PeerPing">
<summary>
Stores the data of a "Request to Ping" used by the Server in Client-Server Mode
to send arbitrary "pings" to a connecting Client.
This allows the local NAT Table to be updated with the right mapping information
from the remote client, increasing the chance of the local Server to receive any
connect request from the remote peer.
</summary>
</member>
<member name="F:Fusion.PeerPing.PING_DELAY">
<summary>
Delay between pings
</summary>
</member>
<member name="F:Fusion.PeerPing.AttemptCount">
<summary>
Total number of pings to send
</summary>
</member>
<member name="F:Fusion.PeerPing.NextAttemptCountDown">
<summary>
Countdown for the next ping
</summary>
</member>
<member name="F:Fusion.PeerPing.ReflexiveInfo">
<summary>
Remote Client Reflexive Info, used to getter the Public EndPoint to send the ping
</summary>
</member>
<member name="T:Fusion.ScheduledRequestsExt">
<summary>
Extension methods to <see cref="T:Fusion.ScheduledRequests"/>
</summary>
</member>
<member name="T:Fusion.LobbyInfo">
<summary>
Holds information about a Lobby
</summary>
</member>
<member name="P:Fusion.LobbyInfo.IsValid">
<summary>
Flag to signal if the <see cref="T:Fusion.LobbyInfo"/> is ready for use.
This is only true if the peer is currently connected to a Lobby.
</summary>
</member>
<member name="P:Fusion.LobbyInfo.Name">
<summary>
Lobby Name
</summary>
</member>
<member name="P:Fusion.LobbyInfo.Region">
<summary>
Stores the current connected Region
</summary>
</member>
<member name="T:Fusion.SessionLobby">
<summary>
Session Lobby Type
</summary>
</member>
<member name="F:Fusion.SessionLobby.Invalid">
<summary>
Invalid Session Lobby Type
</summary>
</member>
<member name="F:Fusion.SessionLobby.ClientServer">
<summary>
ClientServer Lobby
</summary>
</member>
<member name="F:Fusion.SessionLobby.Shared">
<summary>
Shared Lobby
</summary>
</member>
<member name="F:Fusion.SessionLobby.Custom">
<summary>
Custom Lobby - works in conjuction with a Lobby Name/ID
</summary>
</member>
<member name="T:Fusion.SessionInfo">
<summary>
Holds information about the Game Session
</summary>
</member>
<member name="P:Fusion.SessionInfo.IsValid">
<summary>
Flag to signal if the <see cref="T:Fusion.SessionInfo"/> is ready for use
</summary>
</member>
<member name="P:Fusion.SessionInfo.Name">
<summary>
Stores the current Room Name
</summary>
</member>
<member name="P:Fusion.SessionInfo.Region">
<summary>
Stores the current connected Region
</summary>
</member>
<member name="P:Fusion.SessionInfo.IsVisible">
<summary>
Signal if the current connected Room is visible
</summary>
</member>
<member name="P:Fusion.SessionInfo.IsOpen">
<summary>
Signal if the current connected Room is open
</summary>
</member>
<member name="P:Fusion.SessionInfo.Properties">
<summary>
Room Custom Properties
</summary>
</member>
<member name="P:Fusion.SessionInfo.PlayerCount">
<summary>
Current number of peers inside this Session, this includes the Server/Host and Clients
</summary>
</member>
<member name="P:Fusion.SessionInfo.MaxPlayers">
<summary>
Max number of peer that can join this Session, this value always include an extra slot for the Server/Host
</summary>
</member>
<member name="M:Fusion.SessionInfo.op_Implicit(Fusion.SessionInfo)~System.Boolean">
<summary>
Check if the <see cref="T:Fusion.SessionInfo"/> reference is not Null and is Valid.
</summary>
<param name="sessionInfo">Session Info</param>
</member>
<member name="M:Fusion.SessionInfo.UpdateCustomProperties(System.Collections.Generic.Dictionary{System.String,Fusion.SessionProperty})">
<summary>
Update or change the Custom Properties of the current joined Room
</summary>
<param name="customProperties">New custom properties</param>
</member>
<member name="M:Fusion.SessionInfo.ToString">
<summary>
String representation of a <see cref="T:Fusion.SessionInfo"/>
</summary>
<returns>Formatted <see cref="T:Fusion.SessionInfo"/></returns>
</member>
<member name="T:Fusion.IAfterAllTicks">
<summary>
Interface for <see cref="M:Fusion.IAfterAllTicks.AfterAllTicks(System.Boolean,System.Int32)"/> callback.
Called after the re-simulation loop (when applicable), and also after the forward simulation loop.
Implement this interface on <see cref="T:Fusion.SimulationBehaviour"/> and <see cref="T:Fusion.NetworkBehaviour"/> classes.
</summary>
</member>
<member name="M:Fusion.IAfterAllTicks.AfterAllTicks(System.Boolean,System.Int32)">
<summary>
Called after the re-simulation loop (when applicable), and also after the forward simulation loop.
Only called on Updates where re-simulation or forward ticks are processed.
</summary>
<param name="resimulation">True if this is being called during the re-simulation loop. False if during the forward simulation loop.</param>
<param name="tickCount">How many re-simulation or forward ticks are going to be processed.</param>
</member>
<member name="T:Fusion.IAfterClientPredictionReset">
<summary>
Callback interface for <see cref="M:Fusion.IAfterClientPredictionReset.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 <see cref="T:Fusion.SimulationBehaviour"/> and <see cref="T:Fusion.NetworkBehaviour"/> classes.
</summary>
</member>
<member name="M:Fusion.IAfterClientPredictionReset.AfterClientPredictionReset">
<summary>
Called at the very start of the resimulation loop (on clients with prediction enabled),
immediately after state is set to the latest server snapshot.
</summary>
</member>
<member name="T:Fusion.IAfterHostMigration">
<summary>
Used to mark NetworkBehaviors that need to be react after a Host Migration process
</summary>
</member>
<member name="M:Fusion.IAfterHostMigration.AfterHostMigration">
<summary>
Invoked after the Host Migration happens in order to setup non-networked data on NetworkBehaviors
</summary>
</member>
<member name="T:Fusion.IAfterRender">
<summary>
Interface for <see cref="M:Fusion.IAfterRender.AfterRender"/> callback.
Called after the render loop.
</summary>
</member>
<member name="M:Fusion.IAfterRender.AfterRender">
<summary>
Called after the render loop.
</summary>
</member>
<member name="T:Fusion.IAfterSpawned">
<summary>
Interface for <see cref="M:Fusion.IAfterSpawned.AfterSpawned"/> callback.
Called after the object is spawned.
</summary>
</member>
<member name="M:Fusion.IAfterSpawned.AfterSpawned">
<summary>
Called after the object is spawned.
</summary>
</member>
<member name="T:Fusion.IAfterTick">
<summary>
Interface for <see cref="M:Fusion.IAfterTick.AfterTick"/> callback.
Called after each tick simulation completes.
Implement this interface on <see cref="T:Fusion.SimulationBehaviour"/> and <see cref="T:Fusion.NetworkBehaviour"/> classes.
</summary>
</member>
<member name="M:Fusion.IAfterTick.AfterTick">
<summary>
Called after each tick simulation completes.
</summary>
</member>
<member name="T:Fusion.IAfterUpdate">
<summary>
Interface for the <see cref="M:Fusion.IAfterUpdate.AfterUpdate"/> callback, which is called at the end of each Fusion Update segment.
Implement this interface on <see cref="T:Fusion.SimulationBehaviour"/> and <see cref="T:Fusion.NetworkBehaviour"/> classes.
</summary>
</member>
<member name="M:Fusion.IAfterUpdate.AfterUpdate">
<summary>
Called at the end of the Fusion Update loop, before all Unity MonoBehaviour.Update() callbacks.
</summary>
</member>
<member name="T:Fusion.IBeforeAllTicks">
<summary>
Interface for <see cref="M:Fusion.IBeforeAllTicks.BeforeAllTicks(System.Boolean,System.Int32)"/> callback.
Called before the re-simulation loop (when applicable), and also before the forward simulation loop.
Implement this interface on <see cref="T:Fusion.SimulationBehaviour"/> and <see cref="T:Fusion.NetworkBehaviour"/> classes.
</summary>
</member>
<member name="M:Fusion.IBeforeAllTicks.BeforeAllTicks(System.Boolean,System.Int32)">
<summary>
Called before the re-simulation loop (when applicable), and also before the forward simulation loop.
Only called on Updates where re-simulation or forward ticks are processed.
</summary>
<param name="resimulation">True if this is being called during the re-simulation loop. False if during the forward simulation loop.</param>
<param name="tickCount">How many re-simulation or forward ticks are going to be processed.</param>
</member>
<member name="T:Fusion.IBeforeClientPredictionReset">
<summary>
Callback interface for <see cref="M:Fusion.IBeforeClientPredictionReset.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 <see cref="T:Fusion.SimulationBehaviour"/> and <see cref="T:Fusion.NetworkBehaviour"/> classes.
</summary>
</member>
<member name="M:Fusion.IBeforeClientPredictionReset.BeforeClientPredictionReset">
<summary>
Called at the very start of the re-simulation loop (on clients with prediction enabled),
before state is set to the latest server snapshot.
</summary>
</member>
<member name="T:Fusion.IBeforeCopyPreviousState">
<summary>
Interface for <see cref="M:Fusion.IBeforeCopyPreviousState.BeforeCopyPreviousState"/> callback.
Called before the copy of the previous state.
</summary>
</member>
<member name="M:Fusion.IBeforeCopyPreviousState.BeforeCopyPreviousState">
<summary>
Called before the copy of the previous state.
</summary>
</member>
<member name="T:Fusion.IBeforeHitboxRegistration">
<summary>
Interface for <see cref="M:Fusion.IBeforeHitboxRegistration.BeforeHitboxRegistration"/> callback.
Implement this interface on <see cref="T:Fusion.SimulationBehaviour"/> and <see cref="T:Fusion.NetworkBehaviour"/> classes.
</summary>
</member>
<member name="M:Fusion.IBeforeHitboxRegistration.BeforeHitboxRegistration">
<summary>
Called immediately before the <see cref="T:Fusion.HitboxManager"/> registers hitboxes in a snapshot.
</summary>
</member>
<member name="T:Fusion.IBeforeSimulation">
<summary>
Interface for <see cref="M:Fusion.IBeforeSimulation.BeforeSimulation(System.Int32)"/> callback.
Called before both the re-simulation (when applicable) and forward simulation loops.
Implement this interface on <see cref="T:Fusion.SimulationBehaviour"/> and <see cref="T:Fusion.NetworkBehaviour"/> classes.
</summary>
</member>
<member name="M:Fusion.IBeforeSimulation.BeforeSimulation(System.Int32)">
<summary>
Called before both the re-simulation (when applicable) and forward simulation loops.
Only called on updates that have forward ticks to process.
</summary>
<param name="forwardTickCount">How many forward ticks are going to be processed.</param>
</member>
<member name="T:Fusion.IBeforeTick">
<summary>
Interface for <see cref="M:Fusion.IBeforeTick.BeforeTick"/> callback.
Called before each tick is simulated.
Implement this interface on <see cref="T:Fusion.SimulationBehaviour"/> and <see cref="T:Fusion.NetworkBehaviour"/> classes.
</summary>
</member>
<member name="M:Fusion.IBeforeTick.BeforeTick">
<summary>
Called before each tick is simulated.
</summary>
</member>
<member name="T:Fusion.IBeforeUpdate">
<summary>
Interface for the <see cref="M:Fusion.IBeforeUpdate.BeforeUpdate"/> callback, which is called at the beginning of each Fusion Update segment.
Implement this interface on <see cref="T:Fusion.SimulationBehaviour"/> and <see cref="T:Fusion.NetworkBehaviour"/> classes.
</summary>
</member>
<member name="M:Fusion.IBeforeUpdate.BeforeUpdate">
<summary>
Called at the start of the Fusion Update loop, before the Fusion simulation loop.
</summary>
</member>
<member name="T:Fusion.IDespawned">
<summary>
Interface for <see cref="M:Fusion.IDespawned.Despawned(Fusion.NetworkRunner,System.Boolean)"/> callback.
Called when a <see cref="T:Fusion.NetworkBehaviour"/> is despawned.
</summary>
</member>
<member name="M:Fusion.IDespawned.Despawned(Fusion.NetworkRunner,System.Boolean)">
<summary>
Called when a <see cref="T:Fusion.NetworkBehaviour"/> is despawned.
</summary>
<param name="runner">NetworkRunner that despawned the <see cref="T:Fusion.NetworkBehaviour"/>.</param>
<param name="hasState">Whether the <see cref="T:Fusion.NetworkBehaviour"/> has state.</param>
</member>
<member name="T:Fusion.IInterestEnter">
<summary>
Interface for handling the event when a player enters the area of interest.
</summary>
</member>
<member name="M:Fusion.IInterestEnter.InterestEnter(Fusion.PlayerRef)">
<summary>
Method to be called when a player enters the area of interest.
</summary>
<param name="player">The player who entered the area of interest.</param>
</member>
<member name="T:Fusion.IInterestExit">
<summary>
Interface for handling the event when a player exits the area of interest.
</summary>
</member>
<member name="M:Fusion.IInterestExit.InterestExit(Fusion.PlayerRef)">
<summary>
Method to be called when a player exits the area of interest.
</summary>
<param name="player">The player who exited the area of interest.</param>
</member>
<member name="T:Fusion.ILocalPrefabCreated">
<summary>
Interface for handling the event when a local prefab is created.
</summary>
</member>
<member name="M:Fusion.ILocalPrefabCreated.LocalPrefabCreated">
<summary>
Method to be called when a local prefab is created.
</summary>
</member>
<member name="T:Fusion.IPlayerJoined">
<summary>
Interface for handling the event when a player joins the game.
</summary>
</member>
<member name="M:Fusion.IPlayerJoined.PlayerJoined(Fusion.PlayerRef)">
<summary>
Method to be called when a player joins the game.
</summary>
<param name="player">The player who joined the game.</param>
</member>
<member name="T:Fusion.IPlayerLeft">
<summary>
Interface for handling the event when a player leaves the game.
</summary>
</member>
<member name="M:Fusion.IPlayerLeft.PlayerLeft(Fusion.PlayerRef)">
<summary>
Method to be called when a player leaves the game.
</summary>
<param name="player">The player who left the game.</param>
</member>
<member name="T:Fusion.IRemotePrefabCreated">
<summary>
Interface for handling the event when a remote prefab is created.
</summary>
</member>
<member name="M:Fusion.IRemotePrefabCreated.RemotePrefabCreated">
<summary>
Method to be called when a remote prefab is created.
</summary>
</member>
<member name="T:Fusion.ISceneLoadDone">
<summary>
Interface for handling the event when a scene load operation is completed.
</summary>
</member>
<member name="M:Fusion.ISceneLoadDone.SceneLoadDone(Fusion.SceneLoadDoneArgs@)">
<summary>
Method to be called when a scene load operation is completed.
</summary>
<param name="sceneInfo">The information about the loaded scene.</param>
</member>
<member name="T:Fusion.SceneLoadDoneArgs">
<summary>
Struct that contains information about a scene after it has been loaded.
</summary>
</member>
<member name="F:Fusion.SceneLoadDoneArgs.SceneRef">
<summary>
Reference to the loaded scene.
</summary>
</member>
<member name="F:Fusion.SceneLoadDoneArgs.SceneObjects">
<summary>
Array of NetworkObjects present in the loaded scene.
</summary>
</member>
<member name="F:Fusion.SceneLoadDoneArgs.Scene">
<summary>
The loaded Unity scene.
</summary>
</member>
<member name="F:Fusion.SceneLoadDoneArgs.RootGameObjects">
<summary>
Array of root GameObjects present in the loaded Unity scene.
</summary>
</member>
<member name="M:Fusion.SceneLoadDoneArgs.#ctor(Fusion.SceneRef,Fusion.NetworkObject[],UnityEngine.SceneManagement.Scene,UnityEngine.GameObject[])">
<summary>
Constructs a new SceneLoadDoneArgs struct.
</summary>
<param name="sceneRef">Reference to the loaded scene.</param>
<param name="sceneObjects">Array of NetworkObjects present in the loaded scene.</param>
<param name="scene">The loaded Unity scene.</param>
<param name="rootGameObjects">Array of root GameObjects present in the loaded Unity scene.</param>
</member>
<member name="T:Fusion.ISceneLoadStart">
<summary>
Interface for handling the event when a scene load operation is started.
</summary>
</member>
<member name="M:Fusion.ISceneLoadStart.SceneLoadStart(Fusion.SceneRef)">
<summary>
Method to be called when a scene load operation is started.
</summary>
<param name="sceneRef">Reference to the scene that is being loaded.</param>
</member>
<member name="T:Fusion.ISimulationEnter">
<summary>
Interface for <see cref="M:Fusion.ISimulationEnter.SimulationEnter"/> callback.
Called when the <see cref="T:Fusion.NetworkObject"/> joins AreaOfInterest.
Implement this interface on <see cref="T:Fusion.SimulationBehaviour"/> and <see cref="T:Fusion.NetworkBehaviour"/> classes.
</summary>
</member>
<member name="M:Fusion.ISimulationEnter.SimulationEnter">
<summary>
Called when the <see cref="T:Fusion.NetworkObject"/> joins AreaOfInterest.
Object is now receiving snapshot updates.
Object will execute <see cref="T:Fusion.NetworkBehaviour"/> FixedUpdateNetwork() and Render() methods until the object leaves simulation.
</summary>
</member>
<member name="T:Fusion.ISimulationExit">
<summary>
Interface for the <see cref="M:Fusion.ISimulationExit.SimulationExit"/> callback.
Called when the <see cref="T:Fusion.NetworkObject"/> leaves AreaOfInterest.
Implement this interface on <see cref="T:Fusion.SimulationBehaviour"/> and <see cref="T:Fusion.NetworkBehaviour"/> classes.
</summary>
</member>
<member name="M:Fusion.ISimulationExit.SimulationExit">
<summary>
Called when the <see cref="T:Fusion.NetworkObject"/> leaves AreaOfInterest.
Object is no longer receiving snapshot updates.
Object will stop executing <see cref="T:Fusion.NetworkBehaviour"/> FixedUpdateNetwork() and Render() methods until the object rejoins simulation.
</summary>
</member>
<member name="T:Fusion.ISpawned">
<summary>
Interface for handling the event when an object is spawned.
</summary>
</member>
<member name="M:Fusion.ISpawned.Spawned">
<summary>
Method to be called when an object is spawned.
</summary>
</member>
<member name="T:Fusion.IStateAuthorityChanged">
<summary>
Interface for handling the event when the state authority changes.
</summary>
</member>
<member name="M:Fusion.IStateAuthorityChanged.StateAuthorityChanged">
<summary>
Method to be called when the state authority changes.
</summary>
</member>
<member name="T:Fusion.IInputAuthorityGained">
<summary>
Interface for handling the event when the input authority is gained.
</summary>
</member>
<member name="M:Fusion.IInputAuthorityGained.InputAuthorityGained">
<summary>
Method to be called when the input authority is gained.
</summary>
</member>
<member name="T:Fusion.IInputAuthorityLost">
<summary>
Interface for handling the event when the input authority is lost.
</summary>
</member>
<member name="M:Fusion.IInputAuthorityLost.InputAuthorityLost">
<summary>
Method to be called when the input authority is lost.
</summary>
</member>
<member name="T:Fusion.NetworkBehaviour">
<summary>
Base class for Fusion network components, which are associated with a <see cref="T:Fusion.NetworkObject"/>.
<para>Derived from <see cref="T:Fusion.SimulationBehaviour"/>, components derived from this class are associated with a <see cref="T:Fusion.NetworkRunner"/> and <see cref="T:Fusion.Simulation"/>.
Components derived from this class are associated with a parent <see cref="T:Fusion.NetworkObject"/>.
and can use the <see cref="T:Fusion.NetworkedAttribute"/> on properties to automate state synchronization,
and can use the <see cref="T:Fusion.RpcAttribute"/> on methods, to automate messaging.</para>
</summary>
</member>
<member name="P:Fusion.NetworkBehaviour.StateBufferIsValid">
<summary>
Gets a value indicating whether the state buffer is valid.
</summary>
</member>
<member name="P:Fusion.NetworkBehaviour.StateBuffer">
<summary>
Gets the state buffer associated with the network behaviour.
</summary>
</member>
<member name="F:Fusion.NetworkBehaviour._onRenderCallbacksDetector">
<summary>
On Render Default Change Detector instance
</summary>
</member>
<member name="P:Fusion.NetworkBehaviour.WordInfo">
<summary>
Gives access to the offset (in 32 bit words) and count (in 32 bit words) of this behaviour backing data
</summary>
</member>
<member name="P:Fusion.NetworkBehaviour.ChangedTick">
<summary>
The tick the data on this networked behaviour changed
</summary>
</member>
<member name="P:Fusion.NetworkBehaviour.Id">
<summary>
The unique identifier for this network behaviour.
</summary>
</member>
<member name="P:Fusion.NetworkBehaviour.HasInputAuthority">
<summary>
Returns true if the <see cref="P:Fusion.Simulation.LocalPlayer"/> of the associated <see cref="T:Fusion.NetworkRunner"/> is the designated as Input Source for this network entity.
</summary>
</member>
<member name="P:Fusion.NetworkBehaviour.HasStateAuthority">
<summary>
Returns true if the associated <see cref="T:Fusion.NetworkRunner"/> is the State Source for this network entity.
</summary>
</member>
<member name="P:Fusion.NetworkBehaviour.IsProxy">
<summary>
Returns true if the associated <see cref="T:Fusion.NetworkRunner"/> is neither the Input nor State Authority for this network entity.
It is recommended to use !<see cref="P:Fusion.NetworkBehaviour.HasStateAuthority"/> or !<see cref="P:Fusion.NetworkBehaviour.HasInputAuthority"/> when possible instead,
as this check requires evaluating both authorities - and is therefore less performant than the individual checks.
</summary>
</member>
<member name="P:Fusion.NetworkBehaviour.DynamicWordCount">
<summary>
Override this value for custom memory allocations.
This is for advanced use cases only, and cannot be used if <see cref="T:Fusion.NetworkedAttribute"/> is used in the derived class.
</summary>
</member>
<member name="P:Fusion.NetworkBehaviour.IsEditorWritable">
<summary>
Returns true if the object is writable in the editor - i.e. when it is not attached
or has the state authority.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.GetLocalAuthorityMask">
<summary>
Gets a bitmask of <see cref="T:Fusion.AuthorityMasks"/> flags, representing the current local authority over this <see cref="T:Fusion.NetworkObject"/>.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.ReplicateTo(Fusion.PlayerRef,System.Boolean)">
<summary>
Controls if this network behaviours state is replicated to a player or not
</summary>
<param name="player">The player to change replication status for</param>
<param name="replicate">true = replicate, false = don't replicate</param>
</member>
<member name="M:Fusion.NetworkBehaviour.ReplicateToAll(System.Boolean)">
<summary>
Sets the default replicated state for this behaviour, this by default is true so calling ReplicateToAll(true) does nothing if ReplicateToAll(false) hasn't been called before
</summary>
<param name="replicate">The default state of this behaviour</param>
</member>
<member name="M:Fusion.NetworkBehaviour.ResetState">
<summary>
Resets the state of the object to the original state
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.CopyStateFrom(Fusion.NetworkBehaviour)">
<summary>
Copies entire state of passed in source <see cref="T:Fusion.NetworkBehaviour"/>
</summary>
<param name="source">Source <see cref="T:Fusion.NetworkBehaviour"/> to copy data from</param>
</member>
<member name="M:Fusion.NetworkBehaviour.FixedUpdateNetwork">
<summary>
Fixed update callback for networked behaviours.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.CopyBackingFieldsToState(System.Boolean)">
<summary>
Copies the backing fields to the state. This method is meant to be overridden in derived classes.
</summary>
<param name="firstTime">Indicates whether this is the first time the method is called.</param>
</member>
<member name="M:Fusion.NetworkBehaviour.CopyStateToBackingFields">
<summary>
Copies the state to the backing fields. This method is meant to be overridden in derived classes.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.Spawned">
<summary>
Post spawn callback.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.Despawned(Fusion.NetworkRunner,System.Boolean)">
<summary>
Called before the network object is despawned
</summary>
<param name="runner">The runner that owns the object</param>
<param name="hasState">If the state of the behaviour is still accessible</param>
</member>
<member name="M:Fusion.NetworkBehaviour.ReinterpretState``1(System.Int32)">
<summary>
Allows read and write access to the internal state buffer
</summary>
<param name="offset">The offset to generate a ref for, in integer words</param>
<typeparam name="T">The type of the ref to generate</typeparam>
<returns>Reference to the location in memory defined by offset</returns>
</member>
<member name="T:Fusion.NetworkBehaviour.ArrayReader`1">
<summary>
Provides a reader for network arrays of type T.
</summary>
<typeparam name="T">The type of elements in the network array.</typeparam>
</member>
<member name="F:Fusion.NetworkBehaviour.ArrayReader`1.Data">
<summary>
Contains data about the property to be read.
</summary>
</member>
<member name="F:Fusion.NetworkBehaviour.ArrayReader`1.ReaderWriter">
<summary>
Contains the reader for the elements in the network array.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.ArrayReader`1.Read(Fusion.NetworkBehaviourBuffer)">
<summary>
Reads a network array from the provided network behaviour buffer.
</summary>
<param name="first">The network behaviour buffer to read the network array from.</param>
<returns>A read-only view of the network array.</returns>
</member>
<member name="T:Fusion.NetworkBehaviour.LinkListReader`1">
<summary>
Provides a reader for network linked lists of type T.
</summary>
<typeparam name="T">The type of elements in the network linked list.</typeparam>
</member>
<member name="F:Fusion.NetworkBehaviour.LinkListReader`1.Data">
<summary>
Contains data about the property to be read.
</summary>
</member>
<member name="F:Fusion.NetworkBehaviour.LinkListReader`1.ReaderWriter">
<summary>
Contains the reader for the elements in the network array.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.LinkListReader`1.Read(Fusion.NetworkBehaviourBuffer)">
<summary>
Reads a network linked list from the provided network behaviour buffer.
</summary>
<param name="first">The network behaviour buffer to read the network linked list from.</param>
<returns>A read-only view of the network linked list.</returns>
</member>
<member name="T:Fusion.NetworkBehaviour.DictionaryReader`2">
<summary>
Provides a reader for network dictionaries with keys of type K and values of type V.
</summary>
<typeparam name="K">The type of keys in the network dictionary.</typeparam>
<typeparam name="V">The type of values in the network dictionary.</typeparam>
</member>
<member name="F:Fusion.NetworkBehaviour.DictionaryReader`2.Data">
<summary>
Contains data about the property to be read.
</summary>
</member>
<member name="F:Fusion.NetworkBehaviour.DictionaryReader`2.KeyReaderWriter">
<summary>
Contains the reader for the keys in the network dictionary.
</summary>
</member>
<member name="F:Fusion.NetworkBehaviour.DictionaryReader`2.ValueReaderWriter">
<summary>
Contains the reader for the values in the network dictionary.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.DictionaryReader`2.Read(Fusion.NetworkBehaviourBuffer)">
<summary>
Reads a network dictionary from the provided network behaviour buffer.
</summary>
<param name="first">The network behaviour buffer to read the network dictionary from.</param>
<returns>A read-only view of the network dictionary.</returns>
</member>
<member name="T:Fusion.NetworkBehaviour.BehaviourReader`1">
<summary>
Provides a reader for network behaviours of type T.
</summary>
<typeparam name="T">The type of the network behaviour.</typeparam>
</member>
<member name="F:Fusion.NetworkBehaviour.BehaviourReader`1.Runner">
<summary>The NetworkRunner associated with the network behaviour.</summary>
</member>
<member name="F:Fusion.NetworkBehaviour.BehaviourReader`1.Reader">
<summary>The reader for the network behaviour's ID.</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.BehaviourReader`1.Read(Fusion.NetworkBehaviourBuffer)">
<summary>
Reads a network behaviour from the provided network behaviour buffer.
</summary>
<param name="first">The network behaviour buffer to read the network behaviour from.</param>
<returns>The network behaviour of type T read from the buffer. Returns null if the behaviour is not found.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.BehaviourReader`1.Read(Fusion.NetworkBehaviourBuffer,Fusion.NetworkBehaviourBuffer)">
<summary>
Reads two network behaviours from the provided network behaviour buffers.
</summary>
<param name="first">The first network behaviour buffer to read the network behaviour from.</param>
<param name="second">The second network behaviour buffer to read the network behaviour from.</param>
<returns>A tuple containing the two network behaviours of type T read from the buffers.</returns>
</member>
<member name="T:Fusion.NetworkBehaviour.PropertyReader`1">
<summary>
Provides a reader for properties of type T in a network behaviour.
</summary>
<typeparam name="T">The type of the property in the network behaviour. Must be unmanaged.</typeparam>
</member>
<member name="F:Fusion.NetworkBehaviour.PropertyReader`1.Data">
<summary>
Contains data about the property to be read.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.PropertyReader`1.#ctor(Fusion.NetworkBehaviour.PropertyReaderData)">
<summary>
Constructs a new PropertyReader with the provided data.
</summary>
<param name="data">The data about the property to be read.</param>
</member>
<member name="M:Fusion.NetworkBehaviour.PropertyReader`1.#ctor(System.Int32)">
<summary>
Constructs a new PropertyReader with the provided offset.
</summary>
<param name="offset">The offset of the property in the network behaviour buffer.</param>
</member>
<member name="M:Fusion.NetworkBehaviour.PropertyReader`1.Read(Fusion.NetworkBehaviourBuffer)">
<summary>
Reads a property of type T from the provided network behaviour buffer.
</summary>
<param name="first">The network behaviour buffer to read the property from.</param>
<returns>The property of type T read from the buffer.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.PropertyReader`1.Read(Fusion.NetworkBehaviourBuffer,Fusion.NetworkBehaviourBuffer)">
<summary>
Reads a property of type T from the provided network behaviour buffers.
</summary>
<param name="first">The first network behaviour buffer to read the property from.</param>
<param name="second">The second network behaviour buffer to read the property from.</param>
<returns>A tuple containing the property of type T read from the first and second buffers.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.GetBehaviourReader``1(System.String)">
<summary>
Gets a BehaviourReader for a network behaviour of type T.
</summary>
<typeparam name="T">The type of the network behaviour.</typeparam>
<param name="property">The name of the property to be read.</param>
<returns>A BehaviourReader for the network behaviour of type T.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.GetArrayReader``1(System.String)">
<summary>
Gets an ArrayReader for a network array of type T.
</summary>
<typeparam name="T">The type of elements in the network array.</typeparam>
<param name="property">The name of the property to be read.</param>
<returns>An ArrayReader for the network array of type T.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.GetLinkListReader``1(System.String)">
<summary>
Gets a LinkListReader for a network linked list of type T.
</summary>
<typeparam name="T">The type of elements in the network linked list.</typeparam>
<param name="property">The name of the property to be read.</param>
<returns>A LinkListReader for the network linked list of type T.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.GetDictionaryReader``2(System.String)">
<summary>
Gets a DictionaryReader for a network dictionary with keys of type K and values of type V.
</summary>
<typeparam name="K">The type of keys in the network dictionary.</typeparam>
<typeparam name="V">The type of values in the network dictionary.</typeparam>
<param name="property">The name of the property to be read.</param>
<returns>A DictionaryReader for the network dictionary with keys of type K and values of type V.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.GetBehaviourReader``1(Fusion.NetworkRunner,System.Type,System.String)">
<summary>
Gets a BehaviourReader for a network behaviour of type T.
</summary>
<typeparam name="T">The type of the network behaviour.</typeparam>
<param name="runner">The NetworkRunner associated with the network behaviour.</param>
<param name="behaviourType">The type of the behaviour to be read.</param>
<param name="property">The name of the property to be read.</param>
<returns>A BehaviourReader for the network behaviour of type T.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.GetBehaviourReader``2(Fusion.NetworkRunner,System.String)">
<summary>
Gets a BehaviourReader for a network behaviour with a specific property of type TProperty.
</summary>
<typeparam name="TBehaviour">The type of the network behaviour.</typeparam>
<typeparam name="TProperty">The type of the property in the network behaviour.</typeparam>
<param name="runner">The NetworkRunner associated with the network behaviour.</param>
<param name="property">The name of the property to be read.</param>
<returns>A BehaviourReader for the network behaviour with the specific property of type TProperty.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.GetPropertyReader``2(System.String)">
<summary>
Gets a PropertyReader for a property of type TProperty in a network behaviour of type TBehaviour.
</summary>
<typeparam name="TBehaviour">The type of the network behaviour.</typeparam>
<typeparam name="TProperty">The type of the property in the network behaviour. Must be unmanaged.</typeparam>
<param name="property">The name of the property to be read.</param>
<returns>A PropertyReader for the property of type TProperty in the network behaviour of type TBehaviour.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.GetPropertyReader``1(System.Type,System.String)">
<summary>
Gets a PropertyReader for a property of type T in a network behaviour of a specific type.
</summary>
<typeparam name="T">The type of the property in the network behaviour. Must be unmanaged.</typeparam>
<param name="behaviourType">The type of the network behaviour.</param>
<param name="property">The name of the property to be read.</param>
<returns>A PropertyReader for the property of type T in the network behaviour of the specified type.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.GetArrayReader``1(System.Type,System.String,Fusion.IElementReaderWriter{``0})">
<summary>
Gets an ArrayReader for a network array of type T in a network behaviour of a specific type.
</summary>
<typeparam name="T">The type of elements in the network array.</typeparam>
<param name="behaviourType">The type of the network behaviour.</param>
<param name="property">The name of the property to be read.</param>
<param name="readerWriter"></param>
<returns>An ArrayReader for the network array of type T in the network behaviour of the specified type.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.GetDictionaryReader``2(System.Type,System.String,Fusion.IElementReaderWriter{``0},Fusion.IElementReaderWriter{``1})">
<summary>
Gets a DictionaryReader for a network dictionary with keys of type K and values of type V in a network behaviour of a specific type.
</summary>
<typeparam name="K">The type of keys in the network dictionary.</typeparam>
<typeparam name="V">The type of values in the network dictionary.</typeparam>
<param name="behaviourType">The type of the network behaviour.</param>
<param name="property">The name of the property to be read.</param>
<param name="keyReaderWriter"></param>
<param name="valueReaderWriter"></param>
<returns>A DictionaryReader for the network dictionary with keys of type K and values of type V in the network behaviour of the specified type.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.GetLinkListReader``1(System.Type,System.String,Fusion.IElementReaderWriter{``0})">
<summary>
Gets a LinkListReader for a network linked list of type T in a network behaviour of a specific type.
</summary>
<typeparam name="T">The type of elements in the network linked list.</typeparam>
<param name="behaviourType">The type of the network behaviour.</param>
<param name="property">The name of the property to be read.</param>
<param name="readerWriter"></param>
<returns>A LinkListReader for the network linked list of type T in the network behaviour of the specified type.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.GetPropertyReader``1(System.String)">
<summary>
Gets a PropertyReader for a property of type T in this network behaviour.
</summary>
<typeparam name="T">The type of the property in the network behaviour. Must be unmanaged.</typeparam>
<param name="property">The name of the property to be read.</param>
<returns>A PropertyReader for the property of type T in this network behaviour.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.GetChangeDetector(Fusion.NetworkBehaviour.ChangeDetector.Source,System.Boolean)">
<summary>
Creates a ChangeDetector for this network behaviour.
</summary>
<param name="source">The source of the change detector.</param>
<param name="copyInitial">Indicates whether to copy the initial state of the network behaviour.</param>
<returns>A ChangeDetector for this network behaviour.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.TryGetSnapshotsBuffers(Fusion.NetworkBehaviourBuffer@,Fusion.NetworkBehaviourBuffer@,System.Single@)">
<summary>
Tries to get the snapshot buffers for this network behaviour.
</summary>
<param name="from">The buffer representing the state of the network behaviour at the start of the render frame.</param>
<param name="to">The buffer representing the state of the network behaviour at the end of the render frame.</param>
<param name="alpha">The interpolation factor between the start and end of the render frame.</param>
<returns>True if the snapshot buffers are valid, false otherwise.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.ReplicateTo(Fusion.PlayerRef)">
<summary>
Determines whether to replicate the network behaviour to the specified player.
This method can be overridden in derived classes to implement custom replication logic.
</summary>
<param name="player">The player to potentially replicate the network behaviour to.</param>
<returns>True if the network behaviour should be replicated to the player, false otherwise. The default implementation always returns true.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.GetInput``1">
<summary>
</summary>
<typeparam name="T"></typeparam>
</member>
<member name="M:Fusion.NetworkBehaviour.GetInput``1(``0@)">
<summary>
Returns true if it a valid <see cref="T:Fusion.INetworkInput"/> can be found for the current simulation tick (Typically this is used in <see cref="M:Fusion.NetworkBehaviour.FixedUpdateNetwork"/>).
<para>The returned input struct originates from the <see cref="P:Fusion.NetworkObject.InputAuthority"/>,
and if valid contains the inputs supplied by that <see cref="T:Fusion.PlayerRef"/> for the current simulation tick.</para>
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.NetworkSerialize(Fusion.NetworkRunner,Fusion.NetworkBehaviour,System.Byte*)">
<summary>
Serializes a NetworkBehaviour into a byte array.
</summary>
<param name="runner"></param>
<param name="obj">The NetworkBehaviour to be serialized.</param>
<param name="data">The byte pointer to write the serialized data to.</param>
<returns>The size of the serialized data in bytes.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.NetworkSerialize(Fusion.NetworkBehaviour,System.Byte*)">
<summary>
Serializes a NetworkBehaviour into a byte array.
</summary>
<param name="obj">The NetworkBehaviour to be serialized.</param>
<param name="data">The byte pointer to write the serialized data to.</param>
<returns>The size of the serialized data in bytes.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.NetworkDeserialize(Fusion.NetworkRunner,System.Byte*,Fusion.NetworkBehaviour@)">
<summary>
Deserializes a NetworkBehaviour from a byte array.
</summary>
<param name="runner">The NetworkRunner associated with the NetworkBehaviour.</param>
<param name="data">The byte pointer to read the serialized data from.</param>
<param name="result">The NetworkBehaviour to store the deserialized data in.</param>
<returns>The size of the deserialized data in bytes.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.NetworkWrap(Fusion.NetworkRunner,Fusion.NetworkBehaviour)">
<summary>
Converts a NetworkBehaviour to a NetworkBehaviourId.
</summary>
<param name="runner">The NetworkRunner associated with the NetworkBehaviour.</param>
<param name="obj">The NetworkBehaviour to be converted.</param>
<returns>A NetworkBehaviourId representing the NetworkBehaviour. If the NetworkBehaviour is null or its NetworkObject's Id is default, returns a default NetworkBehaviourId.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.NetworkUnwrap(Fusion.NetworkRunner,Fusion.NetworkBehaviourId)">
<summary>
Converts a NetworkBehaviourId to a NetworkBehaviour.
</summary>
<param name="runner">The NetworkRunner associated with the NetworkBehaviour.</param>
<param name="wrapper">The NetworkBehaviourId to be converted.</param>
<returns>The NetworkBehaviour represented by the NetworkBehaviourId. If the NetworkBehaviourId is not valid or a NetworkBehaviour with the NetworkBehaviourId does not exist, returns null.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.op_Implicit(Fusion.NetworkBehaviour)~Fusion.NetworkBehaviourId">
<summary>
Converts NetworkBehaviour to NetworkBehaviourId
</summary>
<param name="behaviour">NetworkBehaviour to convert</param>
<returns>NetworkBehaviourId representing the NetworkBehaviour</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.InvokeWeavedCode">
<summary>
This method needs to be invoked in user overrides of:
<see cref="M:Fusion.NetworkBehaviour.CopyBackingFieldsToState(System.Boolean)"/>
<see cref="M:Fusion.NetworkBehaviour.CopyStateToBackingFields"/>
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.MakeRef``1">
<summary>
Creates a reference to a value of type T. This method is meant to be used only for [Networked] properties inline initialization.
</summary>
<typeparam name="T">The type of the value. Must be unmanaged.</typeparam>
<returns>A reference to a value of type T.</returns>
<exception cref="T:System.NotImplementedException">Thrown because this method is meant to be used only for [Networked] properties inline initialization.</exception>
</member>
<member name="M:Fusion.NetworkBehaviour.MakeRef``1(``0)">
<summary>
Creates a reference to a value of type T, initializing it with the provided default value. This method is meant to be used only for [Networked] properties inline initialization.
</summary>
<typeparam name="T">The type of the value. Must be unmanaged.</typeparam>
<param name="defaultValue">The default value to initialize the value with.</param>
<returns>A reference to a value of type T.</returns>
<exception cref="T:System.NotImplementedException">Thrown because this method is meant to be used only for [Networked] properties inline initialization.</exception>
</member>
<member name="M:Fusion.NetworkBehaviour.MakePtr``1">
<summary>
Creates a pointer to a value of type T. This method is meant to be used only for [Networked] properties inline initialization.
</summary>
<typeparam name="T">The type of the value. Must be unmanaged.</typeparam>
<returns>A pointer to a value of type T.</returns>
<exception cref="T:System.NotImplementedException">Thrown because this method is meant to be used only for [Networked] properties inline initialization.</exception>
</member>
<member name="M:Fusion.NetworkBehaviour.MakePtr``1(``0)">
<summary>
Creates a pointer to a value of type T, initializing it with the provided default value. This method is meant to be used only for [Networked] properties inline initialization.
</summary>
<typeparam name="T">The type of the value. Must be unmanaged.</typeparam>
<param name="defaultValue">The default value to initialize the value with.</param>
<returns>A pointer to a value of type T.</returns>
<exception cref="T:System.NotImplementedException">Thrown because this method is meant to be used only for [Networked] properties inline initialization.</exception>
</member>
<member name="M:Fusion.NetworkBehaviour.MakeInitializer``1(``0[])">
<summary>
This is a special method that is meant to be used only for [Networked] properties inline initialization.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.MakeInitializer``2(System.Collections.Generic.Dictionary{``0,``1})">
<summary>
This is a special method that is meant to be used only for [Networked] properties inline initialization.
</summary>
</member>
<member name="T:Fusion.NetworkBehaviour.ChangeDetector">
<summary>
Change detector for a NetworkBehaviour
</summary>
<remarks>
This class is used to detect changes in a NetworkBehaviour.
It can be used to detect changes in a NetworkBehaviour between two snapshots, or between the current state and a snapshot.
</remarks>
</member>
<member name="T:Fusion.NetworkBehaviour.ChangeDetector.Source">
<summary>Enum representing the source of a NetworkBehaviour's state.</summary>
</member>
<member name="F:Fusion.NetworkBehaviour.ChangeDetector.Source.SimulationState">
<summary>The state is the current simulation state of the NetworkBehaviour.</summary>
</member>
<member name="F:Fusion.NetworkBehaviour.ChangeDetector.Source.SnapshotFrom">
<summary>The state is from a previous snapshot of the NetworkBehaviour.</summary>
</member>
<member name="F:Fusion.NetworkBehaviour.ChangeDetector.Source.SnapshotTo">
<summary>The state is from a future snapshot of the NetworkBehaviour.</summary>
</member>
<member name="T:Fusion.NetworkBehaviour.ChangeDetector.Enumerable">
<summary>Struct representing a collection of changes detected in a NetworkBehaviour.</summary>
</member>
<member name="F:Fusion.NetworkBehaviour.ChangeDetector.Enumerable._changed">
<summary>Array of property names that have changed.</summary>
</member>
<member name="F:Fusion.NetworkBehaviour.ChangeDetector.Enumerable._count">
<summary>The number of properties that have changed.</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.ChangeDetector.Enumerable.#ctor(System.String[],System.Int32)">
<summary>
Constructor for the Enumerable struct.
</summary>
<param name="changed">Array of property names that have changed.</param>
<param name="count">The number of properties that have changed.</param>
</member>
<member name="M:Fusion.NetworkBehaviour.ChangeDetector.Enumerable.GetEnumerator">
<summary>
Gets an enumerator for the collection of changes.
</summary>
<returns>An Enumerator for the collection of changes.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.ChangeDetector.Enumerable.Changed(System.String)">
<summary>
Checks if a property has changed.
</summary>
<param name="name">The name of the property to check.</param>
<returns>True if the property has changed, false otherwise.</returns>
</member>
<member name="T:Fusion.NetworkBehaviour.ChangeDetector.Enumerator">
<summary>Enumerator for the collection of changes detected in a NetworkBehaviour.</summary>
</member>
<member name="F:Fusion.NetworkBehaviour.ChangeDetector.Enumerator._changed">
<summary>Array of property names that have changed.</summary>
</member>
<member name="F:Fusion.NetworkBehaviour.ChangeDetector.Enumerator._count">
<summary>The number of properties that have changed.</summary>
</member>
<member name="F:Fusion.NetworkBehaviour.ChangeDetector.Enumerator._current">
<summary>The current index in the array of changed properties.</summary>
</member>
<member name="P:Fusion.NetworkBehaviour.ChangeDetector.Enumerator.Current">
<summary>Gets the current property name in the array of changed properties.</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.ChangeDetector.Enumerator.#ctor(System.String[],System.Int32)">
<summary>
Constructor for the Enumerator struct.
</summary>
<param name="changed">Array of property names that have changed.</param>
<param name="count">The number of properties that have changed.</param>
</member>
<member name="M:Fusion.NetworkBehaviour.ChangeDetector.Enumerator.Reset">
<summary>
Resets the enumerator to its initial state.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.ChangeDetector.Enumerator.MoveNext">
<summary>
Advances the enumerator to the next property in the array of changed properties.
</summary>
<returns>True if the enumerator was successfully advanced to the next property, false if the enumerator has passed the end of the array.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.ChangeDetector.Finalize">
<summary>
Finalizes an instance of the <see cref="T:Fusion.NetworkBehaviour.ChangeDetector"/> class.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviour.ChangeDetector.Init(Fusion.NetworkBehaviour,Fusion.NetworkBehaviour.ChangeDetector.Source,System.Boolean)">
<summary>
Initializes the ChangeDetector for a given NetworkBehaviour.
</summary>
<param name="networkBehaviour">The NetworkBehaviour instance to initialize the ChangeDetector for.</param>
<param name="source">The source of the NetworkBehaviour's state.</param>
<param name="copyInitial">Whether to copy the initial state of the NetworkBehaviour. Defaults to true.</param>
</member>
<member name="M:Fusion.NetworkBehaviour.ChangeDetector.DetectChanges(Fusion.NetworkBehaviour,Fusion.NetworkBehaviourBuffer@,Fusion.NetworkBehaviourBuffer@,System.Boolean)">
<summary>
Detects changes in a NetworkBehaviour and returns an Enumerable of the changes.
</summary>
<param name="b">The NetworkBehaviour instance to detect changes in.</param>
<param name="previous">The previous state of the NetworkBehaviour.</param>
<param name="current">The current state of the NetworkBehaviour.</param>
<param name="copyChanges">Whether to copy the changes detected. Defaults to true.</param>
<returns>An Enumerable of the changes detected in the NetworkBehaviour.</returns>
</member>
<member name="M:Fusion.NetworkBehaviour.ChangeDetector.DetectChanges(Fusion.NetworkBehaviour,System.Boolean)">
<summary>
Detects changes in a NetworkBehaviour and returns an Enumerable of the changes.
</summary>
<param name="b">The NetworkBehaviour instance to detect changes in.</param>
<param name="copyChanges">Whether to copy the changes detected. Defaults to true.</param>
<returns>An Enumerable of the changes detected in the NetworkBehaviour.</returns>
</member>
<member name="T:Fusion.NetworkBehaviourBuffer">
<summary>
Provides low level accesss to data buffers that can be read using a NetworkBehaviour.Reader
</summary>
</member>
<member name="P:Fusion.NetworkBehaviourBuffer.Tick">
<summary>Gets the tick at which the buffer was created.</summary>
</member>
<member name="P:Fusion.NetworkBehaviourBuffer.Length">
<summary>Gets the length of the buffer.</summary>
</member>
<member name="P:Fusion.NetworkBehaviourBuffer.Valid">
<summary>
Gets a value indicating whether the buffer is valid.
A buffer is considered valid if the pointer to the start of the buffer is not null and the length of the buffer is greater than 0.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviourBuffer.ReinterpretState``1(System.Int32)">
<summary>
Reinterprets the state of the buffer at a given offset as a specific type.
</summary>
<typeparam name="T">The type to reinterpret the state as. Must be unmanaged.</typeparam>
<param name="offset">The offset at which to start reinterpreting. Defaults to 0.</param>
<returns>The state of the buffer at the given offset, reinterpreted as the specified type.</returns>
</member>
<member name="P:Fusion.NetworkBehaviourBuffer.Item(System.Int32)">
<summary>
Indexer to get the value at a specific index in the buffer.
</summary>
<param name="index">The index to get the value from.</param>
<returns>The value at the specified index in the buffer.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBuffer.Read``1(Fusion.NetworkBehaviour.BehaviourReader{``0})">
<summary>
Reads a NetworkBehaviour from the buffer using the provided BehaviourReader.
</summary>
<typeparam name="T">The type of NetworkBehaviour to read. Must be a subclass of NetworkBehaviour.</typeparam>
<param name="reader">The BehaviourReader to use for reading the NetworkBehaviour.</param>
<returns>The read NetworkBehaviour.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBuffer.Read``1(Fusion.NetworkBehaviour.PropertyReader{``0})">
<summary>
Reads a property from the buffer using the provided PropertyReader.
</summary>
<typeparam name="T">The type of the property to read. Must be unmanaged.</typeparam>
<param name="reader">The PropertyReader to use for reading the property.</param>
<returns>The read property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBuffer.Read(Fusion.NetworkBehaviour.PropertyReader{System.Single})">
<summary>
Reads a float property from the buffer using the provided PropertyReader.
</summary>
<param name="reader">The PropertyReader to use for reading the float property.</param>
<returns>The read float property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBuffer.Read(Fusion.NetworkBehaviour.PropertyReader{UnityEngine.Vector2})">
<summary>
Reads a Vector2 property from the buffer using the provided PropertyReader.
</summary>
<param name="reader">The PropertyReader to use for reading the Vector2 property.</param>
<returns>The read Vector2 property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBuffer.Read(Fusion.NetworkBehaviour.PropertyReader{UnityEngine.Vector3})">
<summary>
Reads a Vector3 property from the buffer using the provided PropertyReader.
</summary>
<param name="reader">The PropertyReader to use for reading the Vector3 property.</param>
<returns>The read Vector3 property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBuffer.Read(Fusion.NetworkBehaviour.PropertyReader{UnityEngine.Vector4})">
<summary>
Reads a Vector4 property from the buffer using the provided PropertyReader.
</summary>
<param name="reader">The PropertyReader to use for reading the Vector4 property.</param>
<returns>The read Vector4 property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBuffer.Read(Fusion.NetworkBehaviour.PropertyReader{UnityEngine.Quaternion})">
<summary>
Reads a Quaternion property from the buffer using the provided PropertyReader.
</summary>
<param name="reader">The PropertyReader to use for reading the Quaternion property.</param>
<returns>The read Quaternion property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBuffer.op_Implicit(Fusion.NetworkBehaviourBuffer)~System.Boolean">
<summary>
Implicit conversion operator to bool.
This allows a NetworkBehaviourBuffer instance to be used in conditions directly.
</summary>
<param name="buffer">The NetworkBehaviourBuffer instance to convert.</param>
<returns>True if the buffer is valid, false otherwise.</returns>
</member>
<member name="T:Fusion.NetworkBehaviourBufferInterpolator">
<summary>
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.
</summary>
</member>
<member name="F:Fusion.NetworkBehaviourBufferInterpolator.Behaviour">
<summary>
The NetworkBehaviour instance that this interpolator is associated with.
</summary>
</member>
<member name="F:Fusion.NetworkBehaviourBufferInterpolator.From">
<summary>
The NetworkBehaviourBuffer instance representing the "from" state for interpolation.
</summary>
</member>
<member name="F:Fusion.NetworkBehaviourBufferInterpolator.To">
<summary>
The NetworkBehaviourBuffer instance representing the "to" state for interpolation.
</summary>
</member>
<member name="F:Fusion.NetworkBehaviourBufferInterpolator.Alpha">
<summary>
The interpolation factor, ranging from 0 to 1.
This value is used to interpolate between the "from" and "to" states.
</summary>
</member>
<member name="F:Fusion.NetworkBehaviourBufferInterpolator.Valid">
<summary>
A value indicating whether this interpolator is valid.
An interpolator is considered valid if it has successfully retrieved the "from" and "to" buffers.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.#ctor(Fusion.NetworkBehaviour)">
<summary>
Constructor for the NetworkBehaviourBufferInterpolator struct.
</summary>
<param name="nb">The NetworkBehaviour instance that this interpolator is associated with.</param>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Angle(System.String)">
<summary>
Gets the interpolated angle of a property.
</summary>
<param name="property">The name of the property to get the angle of.</param>
<returns>The interpolated angle of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Angle(Fusion.NetworkBehaviour.PropertyReader{Fusion.Angle})">
<summary>
Gets the interpolated angle of a property.
</summary>
<param name="property">The PropertyReader for the property to get the angle of.</param>
<returns>The interpolated angle of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Float(System.String)">
<summary>
Gets the interpolated float value of a property.
</summary>
<param name="property">The name of the property to get the float value of.</param>
<returns>The interpolated float value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Float(Fusion.NetworkBehaviour.PropertyReader{System.Single})">
<summary>
Gets the interpolated float value of a property.
</summary>
<param name="property">The PropertyReader for the property to get the float value of.</param>
<returns>The interpolated float value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Int(System.String)">
<summary>
Gets the interpolated integer value of a property.
</summary>
<param name="property">The name of the property to get the integer value of.</param>
<returns>The interpolated integer value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Int(Fusion.NetworkBehaviour.PropertyReader{System.Int32})">
<summary>
Gets the interpolated integer value of a property.
</summary>
<param name="property">The PropertyReader for the property to get the integer value of.</param>
<returns>The interpolated integer value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Bool(Fusion.NetworkBehaviour.PropertyReader{System.Boolean})">
<summary>
Gets the interpolated boolean value of a property.
</summary>
<param name="property">The PropertyReader for the property to get the boolean value of.</param>
<returns>The interpolated boolean value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Bool(System.String)">
<summary>
Gets the interpolated boolean value of a property.
</summary>
<param name="property">The name of the property to get the boolean value of.</param>
<returns>The interpolated boolean value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Select``1(System.String)">
<summary>
Selects the interpolated value of a property by its name.
</summary>
<typeparam name="T">The type of the property to select. Must be unmanaged.</typeparam>
<param name="property">The name of the property to select.</param>
<returns>The interpolated value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Select``1(Fusion.NetworkBehaviour.PropertyReader{``0})">
<summary>
Selects the interpolated value of a property.
</summary>
<typeparam name="T">The type of the property to select. Must be unmanaged.</typeparam>
<param name="property">The PropertyReader for the property to select.</param>
<returns>The interpolated value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Vector3(System.String)">
<summary>
Gets the interpolated Vector3 value of a property.
</summary>
<param name="property">The name of the property to get the Vector3 value of.</param>
<returns>The interpolated Vector3 value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Vector3(Fusion.NetworkBehaviour.PropertyReader{UnityEngine.Vector3})">
<summary>
Gets the interpolated Vector3 value of a property.
</summary>
<param name="property">The PropertyReader for the property to get the Vector3 value of.</param>
<returns>The interpolated Vector3 value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Vector2(System.String)">
<summary>
Gets the interpolated Vector2 value of a property.
</summary>
<param name="property">The name of the property to get the Vector2 value of.</param>
<returns>The interpolated Vector2 value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Vector2(Fusion.NetworkBehaviour.PropertyReader{UnityEngine.Vector2})">
<summary>
Gets the interpolated Vector2 value of a property.
</summary>
<param name="property">The PropertyReader for the property to get the Vector2 value of.</param>
<returns>The interpolated Vector2 value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Vector4(System.String)">
<summary>
Gets the interpolated Vector4 value of a property.
</summary>
<param name="property">The name of the property to get the Vector4 value of.</param>
<returns>The interpolated Vector4 value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Vector4(Fusion.NetworkBehaviour.PropertyReader{UnityEngine.Vector4})">
<summary>
Gets the interpolated Vector4 value of a property.
</summary>
<param name="property">The PropertyReader for the property to get the Vector4 value of.</param>
<returns>The interpolated Vector4 value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Quaternion(System.String)">
<summary>
Gets the interpolated Quaternion value of a property.
</summary>
<param name="property">The name of the property to get the Quaternion value of.</param>
<returns>The interpolated Quaternion value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.Quaternion(Fusion.NetworkBehaviour.PropertyReader{UnityEngine.Quaternion})">
<summary>
Gets the interpolated Quaternion value of a property.
</summary>
<param name="property">The PropertyReader for the property to get the Quaternion value of.</param>
<returns>The interpolated Quaternion value of the property.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourBufferInterpolator.op_Implicit(Fusion.NetworkBehaviourBufferInterpolator)~System.Boolean">
<summary>
Implicit conversion operator to bool.
This allows a NetworkBehaviourBufferInterpolator instance to be used in conditions directly.
</summary>
<param name="i">The NetworkBehaviourBufferInterpolator instance to convert.</param>
<returns>True if the interpolator is valid, false otherwise.</returns>
</member>
<member name="T:Fusion.NetworkBehaviourId">
<summary>
Represents the unique identifier for a NetworkBehaviour instance.
</summary>
</member>
<member name="F:Fusion.NetworkBehaviourId.SIZE">
<summary>Size of the NetworkBehaviourId structure in bytes.</summary>
</member>
<member name="F:Fusion.NetworkBehaviourId.Object">
<summary>
The NetworkId of the object this behaviour belongs to.
</summary>
</member>
<member name="F:Fusion.NetworkBehaviourId.Behaviour">
<summary>
The identifier for the behaviour within the object.
</summary>
</member>
<member name="P:Fusion.NetworkBehaviourId.IsValid">
<summary>
Checks if the NetworkBehaviourId is valid.
A NetworkBehaviourId is valid if its Object is valid and its Behaviour is non-negative.
</summary>
</member>
<member name="P:Fusion.NetworkBehaviourId.None">
<summary>
Returns a new NetworkBehaviourId with default values.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviourId.Equals(Fusion.NetworkBehaviourId)">
<summary>
Checks if this NetworkBehaviourId is equal to another NetworkBehaviourId.
Two NetworkBehaviourIds are equal if their Objects and Behaviours are equal.
</summary>
<param name="other">The other NetworkBehaviourId to compare with.</param>
<returns>True if the NetworkBehaviourIds are equal, false otherwise.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourId.Equals(System.Object)">
<summary>
Checks if this NetworkBehaviourId is equal to another object.
The object is considered equal if it is a NetworkBehaviourId and its Object and Behaviour are equal to this NetworkBehaviourId's.
</summary>
<param name="obj">The object to compare with.</param>
<returns>True if the object is a NetworkBehaviourId and is equal to this, false otherwise.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourId.GetHashCode">
<summary>
Returns a hash code for this NetworkBehaviourId.
The hash code is computed based on the Object's hash code and the Behaviour.
</summary>
<returns>A hash code for this NetworkBehaviourId.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourId.ToString">
<summary>
Returns a string representation of the NetworkBehaviourId.
The string representation is in the format: [Object:{Object}, Behaviour:{Behaviour}].
</summary>
<returns>A string representation of the NetworkBehaviourId.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourId.op_Equality(Fusion.NetworkBehaviourId,Fusion.NetworkBehaviourId)">
<summary>
Determines whether two NetworkBehaviourId instances are equal.
Two NetworkBehaviourId instances are considered equal if their Objects and Behaviours are equal.
</summary>
<param name="a">The first NetworkBehaviourId to compare.</param>
<param name="b">The second NetworkBehaviourId to compare.</param>
<returns>True if the NetworkBehaviourId instances are equal, false otherwise.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourId.op_Inequality(Fusion.NetworkBehaviourId,Fusion.NetworkBehaviourId)">
<summary>
Determines whether two NetworkBehaviourId instances are not equal.
Two NetworkBehaviourId instances are considered not equal if their Objects or Behaviours are not equal.
</summary>
<param name="a">The first NetworkBehaviourId to compare.</param>
<param name="b">The second NetworkBehaviourId to compare.</param>
<returns>True if the NetworkBehaviourId instances are not equal, false otherwise.</returns>
</member>
<member name="T:Fusion.NetworkBehaviourUtils">
<summary>
This static class provides utility methods for working with NetworkBehaviour objects.
</summary>
</member>
<member name="T:Fusion.NetworkBehaviourUtils.MetaData">
<summary>
This structure holds metadata for a NetworkBehaviour object.
</summary>
</member>
<member name="F:Fusion.NetworkBehaviourUtils.InvokeRpc">
<summary>
A static field that determines whether to invoke RPC (Remote Procedure Call).
When set to true, RPCs are invoked. When set to false, RPCs are not invoked.
Default value is false.
</summary>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.GetMetaData(System.Type)">
<summary>
Retrieves the metadata for a given type.
</summary>
<param name="type">The type for which to retrieve the metadata.</param>
<returns>The metadata for the given type if it exists; otherwise, the default value.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.RegisterMetaData(System.Type)">
<summary>
Registers the metadata for a given type.
This method checks if the type has an override for the "ReplicateTo" method and stores this information in the metadata.
If the metadata for the type already exists, this method does nothing.
</summary>
<param name="type">The type for which to register the metadata.</param>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.GetWordCount(Fusion.NetworkBehaviour)">
<summary>
Retrieves the word count for a given NetworkBehaviour.
If the NetworkBehaviour has a dynamic word count, it is returned.
Otherwise, the static word count for the type of the NetworkBehaviour is returned.
</summary>
<param name="behaviour">The NetworkBehaviour for which to retrieve the word count.</param>
<returns>The word count for the given NetworkBehaviour.</returns>
<exception cref="T:System.InvalidOperationException">Thrown when the dynamic word count or the static word count is negative.</exception>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.HasStaticWordCount(System.Type)">
<summary>
Checks if a given type has a static word count.
A type has a static word count if it is a subclass of NetworkBehaviour and its word count is non-negative.
</summary>
<param name="type">The type to check.</param>
<returns>True if the type has a static word count, false otherwise.</returns>
<exception cref="T:System.ArgumentException">Thrown when the provided type is not a subclass of NetworkBehaviour.</exception>
<exception cref="T:System.InvalidOperationException">Thrown when the provided type does not have a weaved attribute.</exception>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.GetStaticWordCount(System.Type)">
<summary>
Retrieves the static word count for a given type.
If the word count for the type has not been computed yet, it is computed and stored.
</summary>
<param name="type">The type for which to retrieve the static word count.</param>
<returns>The static word count for the given type.</returns>
<exception cref="T:System.ArgumentException">Thrown when the provided type is not a subclass of NetworkBehaviour.</exception>
<exception cref="T:System.InvalidOperationException">Thrown when the provided type does not have a weaved attribute or its word count is negative.</exception>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.ShouldRegisterRpcInvokeDelegates(System.Type)">
<summary>
Determines whether the RPC (Remote Procedure Call) invoke delegates should be registered for a given type.
</summary>
<param name="type">The type for which to check the registration of RPC invoke delegates.</param>
<returns>True if the RPC invoke delegates should be registered for the type, false otherwise.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.RegisterRpcInvokeDelegates(System.Type)">
<summary>
Registers the RPC (Remote Procedure Call) invoke delegates for a given type.
This method is only available when the FUSION_UNITY compilation symbol is defined.
</summary>
<param name="type">The type for which to register the RPC invoke delegates.</param>
<exception cref="T:System.ArgumentException">Thrown when the provided type is not a subclass of NetworkBehaviour.</exception>
<exception cref="T:System.InvalidOperationException">Thrown when the provided type does not have a weaved attribute or its word count is negative.</exception>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.TryGetRpcInvokeDelegateArray(System.Type,Fusion.RpcInvokeData[]@)">
<summary>
Tries to get the RPC (Remote Procedure Call) invoke delegate array for a given type.
</summary>
<param name="type">The type for which to get the RPC invoke delegate array.</param>
<param name="delegates">When this method returns, contains the RPC invoke delegate array if the type has one; otherwise, null.</param>
<returns>
true if the type has an RPC invoke delegate array; otherwise, false.
</returns>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.GetRpcStaticIndexOrThrow(System.String)">
<summary>
Retrieves the index of a static RPC (Remote Procedure Call) based on its key.
</summary>
<param name="key">The key of the static RPC.</param>
<returns>The index of the static RPC if it exists.</returns>
<exception cref="T:System.ArgumentOutOfRangeException">Thrown when the static RPC does not exist.</exception>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.TryGetRpcStaticInvokeDelegate(System.Int32,Fusion.RpcStaticInvokeDelegate@)">
<summary>
Tries to get the static RPC (Remote Procedure Call) invoke delegate based on its index.
</summary>
<param name="index">The index of the static RPC.</param>
<param name="del">When this method returns, contains the static RPC invoke delegate if it exists; otherwise, default.</param>
<returns>True if the static RPC invoke delegate exists; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.NotifyRpcPayloadSizeExceeded(System.String,System.Int32)">
<summary>
Logs an error message indicating that the target of a Remote Procedure Call (RPC) payload is too large.
</summary>
<param name="size">Size of the payload.</param>
<param name="rpc">The name of the RPC that was attempted.</param>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.NotifyRpcTargetUnreachable(Fusion.PlayerRef,System.String)">
<summary>
Logs an error message indicating that the target of a Remote Procedure Call (RPC) is not reachable.
</summary>
<param name="player">The player reference that is not reachable.</param>
<param name="rpc">The name of the RPC that was attempted.</param>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.NotifyLocalSimulationNotAllowedToSendRpc(System.String,Fusion.NetworkObject,System.Int32)">
<summary>
Logs an error message indicating that a local simulation is not allowed to send a specific RPC.
</summary>
<param name="rpc">The name of the RPC that was attempted.</param>
<param name="obj">The network object on which the RPC was attempted.</param>
<param name="sources">The sources from which the RPC was attempted.</param>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.NotifyLocalTargetedRpcCulled(Fusion.PlayerRef,System.String)">
<summary>
Logs a warning message indicating that a local targeted RPC was culled.
</summary>
<param name="player">The player reference for which the RPC was culled.</param>
<param name="methodName">The name of the method that was culled.</param>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.ThrowIfBehaviourNotInitialized(Fusion.NetworkBehaviour)">
<summary>
Checks if the NetworkBehaviour object is initialized and throws an exception if it is not.
</summary>
<param name="behaviour">The NetworkBehaviour object to check.</param>
<exception cref="T:System.InvalidOperationException">Thrown when the NetworkBehaviour object is not initialized.</exception>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.NotifyNetworkWrapFailed``1(``0)">
<summary>
Logs a warning message indicating that a network wrap operation failed.
</summary>
<typeparam name="T">The type of the value that failed to be wrapped.</typeparam>
<param name="value">The value that failed to be wrapped.</param>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.NotifyNetworkWrapFailed``1(``0,System.Type)">
<summary>
Logs a warning message indicating that a network wrap operation failed for a specific wrapper type.
</summary>
<typeparam name="T">The type of the value that failed to be wrapped.</typeparam>
<param name="value">The value that failed to be wrapped.</param>
<param name="wrapperType">The type that was attempted to be used as a wrapper.</param>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.NotifyNetworkUnwrapFailed``1(``0,System.Type)">
<summary>
Logs a warning message indicating that a network unwrap operation failed.
</summary>
<typeparam name="T">The type of the wrapper that failed to be unwrapped.</typeparam>
<param name="wrapper">The wrapper that failed to be unwrapped.</param>
<param name="valueType">The type that was attempted to be obtained from the unwrap operation.</param>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.InitializeNetworkArray``1(Fusion.NetworkArray{``0},``0[],System.String)">
<summary>
Initializes a NetworkArray with the values from a source array.
</summary>
<typeparam name="T">The type of the elements in the NetworkArray and source array.</typeparam>
<param name="networkArray">The NetworkArray to initialize.</param>
<param name="sourceArray">The source array from which to copy the values.</param>
<param name="name">The name of the NetworkArray for logging purposes.</param>
<remarks>
If the length of the source array is greater than the length of the NetworkArray, a warning is logged and only the first elements up to the length of the NetworkArray are copied.
</remarks>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.CopyFromNetworkArray``1(Fusion.NetworkArray{``0},``0[]@)">
<summary>
Copies the values from a NetworkArray to a destination array.
</summary>
<typeparam name="T">The type of the elements in the NetworkArray and destination array.</typeparam>
<param name="networkArray">The NetworkArray from which to copy the values.</param>
<param name="dstArray">The destination array to which to copy the values.</param>
<remarks>
If the length of the destination array is not equal to the length of the NetworkArray, a new array of the correct length is created and assigned to the destination array.
</remarks>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.CloneArray``1(``0[])">
<summary>
Creates a new array that is a clone of the specified array.
</summary>
<typeparam name="T">The type of the elements in the array.</typeparam>
<param name="array">The array to clone.</param>
<returns>A new array that is a clone of the specified array. If the specified array is null, an empty array is returned.</returns>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.InitializeNetworkList``1(Fusion.NetworkLinkedList{``0},``0[],System.String)">
<summary>
Initializes a NetworkLinkedList with the values from a source array.
</summary>
<typeparam name="T">The type of the elements in the NetworkLinkedList and source array. Must be unmanaged.</typeparam>
<param name="networkList">The NetworkLinkedList to initialize.</param>
<param name="sourceArray">The source array from which to copy the values.</param>
<param name="name">The name of the NetworkLinkedList for logging purposes.</param>
<remarks>
If the length of the source array is greater than the capacity of the NetworkLinkedList, a warning is logged and only the first elements up to the capacity of the NetworkLinkedList are copied.
</remarks>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.CopyFromNetworkList``1(Fusion.NetworkLinkedList{``0},``0[]@)">
<summary>
Copies the values from a NetworkLinkedList to a destination array.
</summary>
<typeparam name="T">The type of the elements in the NetworkLinkedList and destination array.</typeparam>
<param name="networkList">The NetworkLinkedList from which to copy the values.</param>
<param name="dstArray">The destination array to which to copy the values. If the length of the destination array is not equal to the count of the NetworkLinkedList, a new array of the correct length is created and assigned to the destination array.</param>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.InternalOnDestroy(Fusion.SimulationBehaviour)">
<summary>
This method is not meant to be called directly. Calls are injected by the Weaver.
</summary>
<param name="obj">SimulationBehaviour object.</param>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.InternalOnEnable(Fusion.SimulationBehaviour)">
<summary>
This method is not meant to be called directly. Calls are injected by the Weaver.
</summary>
<param name="obj">SimulationBehaviour object.</param>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.InternalOnDisable(Fusion.SimulationBehaviour)">
<summary>
This method is not meant to be called directly. Calls are injected by the Weaver.
</summary>
<param name="obj">SimulationBehaviour object.</param>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.InitializeNetworkDictionary``3(Fusion.NetworkDictionary{``1,``2},``0,System.String)">
<summary>
Initializes a NetworkDictionary with the values from a source dictionary.
</summary>
<typeparam name="D">The type of the source dictionary. Must implement IDictionary{K, V}.</typeparam>
<typeparam name="K">The type of the keys in the NetworkDictionary and source dictionary. Must be unmanaged.</typeparam>
<typeparam name="V">The type of the values in the NetworkDictionary and source dictionary. Must be unmanaged.</typeparam>
<param name="networkDictionary">The NetworkDictionary to initialize.</param>
<param name="dictionary">The source dictionary from which to copy the values.</param>
<param name="name">The name of the NetworkDictionary for logging purposes.</param>
<remarks>
If the count of the source dictionary is greater than the capacity of the NetworkDictionary, a warning is logged and only the first elements up to the capacity of the NetworkDictionary are copied.
</remarks>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.CopyFromNetworkDictionary``3(Fusion.NetworkDictionary{``1,``2},``0@)">
<summary>
Copies the values from a NetworkDictionary to a destination dictionary.
</summary>
<typeparam name="D">The type of the destination dictionary. Must implement IDictionary{K, V} and have a parameterless constructor.</typeparam>
<typeparam name="K">The type of the keys in the NetworkDictionary and destination dictionary. Must be unmanaged.</typeparam>
<typeparam name="V">The type of the values in the NetworkDictionary and destination dictionary. Must be unmanaged.</typeparam>
<param name="networkDictionary">The NetworkDictionary from which to copy the values.</param>
<param name="dictionary">The destination dictionary to which to copy the values. If the destination dictionary is null, a new dictionary of type D is created.</param>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.MakeSerializableDictionary``2(System.Collections.Generic.Dictionary{``0,``1})">
<summary>
Wraps a Dictionary in a SerializableDictionary.
</summary>
<typeparam name="K">The type of the keys in the dictionary. Must be unmanaged.</typeparam>
<typeparam name="V">The type of the values in the dictionary. Must be unmanaged.</typeparam>
<param name="dictionary">The dictionary to wrap.</param>
<returns>A SerializableDictionary that wraps the specified dictionary.</returns>
</member>
<member name="T:Fusion.NetworkBehaviourUtils.ArrayInitializer`1">
<summary>
A utility structure for initializing NetworkArray and NetworkLinkedList with inline initialization.
</summary>
<typeparam name="T">The type of the elements in the NetworkArray and NetworkLinkedList.</typeparam>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.ArrayInitializer`1.op_Implicit(Fusion.NetworkBehaviourUtils.ArrayInitializer{`0})~Fusion.NetworkArray{`0}">
<summary>
Implicitly converts an ArrayInitializer to a NetworkArray.
</summary>
<param name="arr">The ArrayInitializer to convert.</param>
<returns>A NetworkArray initialized with the values from the ArrayInitializer.</returns>
<exception cref="T:System.NotImplementedException">Thrown always as this method is meant to be used only for [Networked] properties inline initialization.</exception>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.ArrayInitializer`1.op_Implicit(Fusion.NetworkBehaviourUtils.ArrayInitializer{`0})~Fusion.NetworkLinkedList{`0}">
<summary>
Implicitly converts an ArrayInitializer to a NetworkLinkedList.
</summary>
<param name="arr">The ArrayInitializer to convert.</param>
<returns>A NetworkLinkedList initialized with the values from the ArrayInitializer.</returns>
<exception cref="T:System.NotImplementedException">Thrown always as this method is meant to be used only for [Networked] properties inline initialization.</exception>
</member>
<member name="T:Fusion.NetworkBehaviourUtils.DictionaryInitializer`2">
<summary>
A utility structure for initializing NetworkDictionary with inline initialization.
</summary>
<typeparam name="K">The type of the keys in the NetworkDictionary.</typeparam>
<typeparam name="V">The type of the values in the NetworkDictionary.</typeparam>
</member>
<member name="M:Fusion.NetworkBehaviourUtils.DictionaryInitializer`2.op_Implicit(Fusion.NetworkBehaviourUtils.DictionaryInitializer{`0,`1})~Fusion.NetworkDictionary{`0,`1}">
<summary>
Implicitly converts a DictionaryInitializer to a NetworkDictionary.
</summary>
<param name="arr">The DictionaryInitializer to convert.</param>
<returns>A NetworkDictionary initialized with the values from the DictionaryInitializer.</returns>
<exception cref="T:System.NotImplementedException">Thrown always as this method is meant to be used only for [Networked] properties inline initialization.</exception>
</member>
<member name="T:Fusion.NetworkMecanimAnimator">
<summary>
A component for synchronizing the Animator controller state from the State Authority to network proxies.
Requires a Unity Animator component, and a <see cref="T:Fusion.NetworkObject"/> component.
NOTE: Animator Root Motion is not compatible with re-simulation and prediction.
</summary>
</member>
<member name="P:Fusion.NetworkMecanimAnimator.DynamicWordCount">
<summary>
Gets the dynamic word count for the NetworkMecanimAnimator.
</summary>
<value>
The dynamic word count, which is the maximum of the current total words and the runtime counts, if the application is playing.
</value>
<exception cref="T:System.InvalidOperationException">Thrown when this property is accessed outside of playing.</exception>
</member>
<member name="F:Fusion.NetworkMecanimAnimator.Animator">
<summary>
The Animator being synced. If unset, will attempt to find one on this GameObject.
</summary>
</member>
<member name="F:Fusion.NetworkMecanimAnimator.TotalWords">
<summary>
The number of words allocated per snapshot for serialization of the Animator. (One Word is 32 bits, or 4 bytes).
</summary>
</member>
<member name="F:Fusion.NetworkMecanimAnimator.ApplyTiming">
<summary>
The source of the State which is applied in Render.
</summary>
</member>
<member name="F:Fusion.NetworkMecanimAnimator.SyncSettings">
<summary>
Flags controlling which Mecanim data will be synced.
</summary>
</member>
<member name="F:Fusion.NetworkMecanimAnimator.StateHashes">
<summary>
States found in the current AnimatorController, converted to hashes.
</summary>
</member>
<member name="F:Fusion.NetworkMecanimAnimator.TriggerHashes">
<summary>
Triggers found in the current AnimatorController, converted to hashes.
</summary>
</member>
<member name="M:Fusion.NetworkMecanimAnimator.Spawned">
<inheritdoc cref="M:Fusion.NetworkBehaviour.Spawned"/>
</member>
<member name="M:Fusion.NetworkMecanimAnimator.Render">
<inheritdoc cref="M:Fusion.SimulationBehaviour.Render"/>
</member>
<member name="M:Fusion.NetworkMecanimAnimator.SetTrigger(System.Int32,System.Boolean)">
<summary>
Queues a SetTrigger() call for the associated Animator on the State Authority. Call this instead of Animator.SetTrigger() for the State Authority to ensure that triggers are captured.
On State Authority, this call will defer the SetTrigger() pass-through to the Animator until FixedUpdateNetwork() is called,
where all queued triggers will be executed (this is to ensure tick agreement between server and clients).
</summary>
<param name="triggerHash">Trigger hash to set</param>
<param name="passThroughOnInputAuthority">Will call Animator.SetTrigger() immediately on the InputAuthority. If false, SetTrigger() will not be called on the Input Authority at all
and Animator.SetTrigger() should be called explicitly as needed.
</param>
</member>
<member name="M:Fusion.NetworkMecanimAnimator.SetTrigger(System.String,System.Boolean)">
<summary>
Queues a SetTrigger() call for the associated Animator on the State Authority. Call this instead of Animator.SetTrigger() for the State Authority to ensure that triggers are captured.
On State Authority, this call will defer the SetTrigger() pass-through to the Animator until FixedUpdateNetwork() is called,
where all queued triggers will be executed (this is to ensure tick agreement between server and clients).
</summary>
<param name="trigger">Trigger name to set</param>
<param name="passThroughOnInputAuthority">Will call Animator.SetTrigger() immediately on the InputAuthority. If false, SetTrigger() will not be called on the Input Authority at all
and Animator.SetTrigger() should be called explicitly as needed.
</param>
</member>
<member name="T:Fusion.SimulationBehaviour">
<summary>
Base class for a Fusion aware Behaviour (derived from UnityEngine.MonoBehavour).
Objects derived from this object can be associated with a <see cref="T:Fusion.NetworkRunner"/> and <see cref="T:Fusion.Simulation"/>.
If a parent <see cref="T:Fusion.NetworkObject"/> is found, this component will also be associated with that network entity.
</summary>
</member>
<member name="P:Fusion.SimulationBehaviour.CanReceiveRenderCallback">
<summary>
Gets a value indicating whether this instance can receive render callbacks.
</summary>
<value>
<c>true</c> if this instance can receive render callbacks; otherwise, <c>false</c>.
</value>
<remarks>
This property checks the current flags of the instance against various conditions to determine if it can receive render callbacks.
</remarks>
</member>
<member name="P:Fusion.SimulationBehaviour.CanReceiveSimulationCallback">
<summary>
Gets a value indicating whether this instance can receive simulation callbacks.
</summary>
<value>
<c>true</c> if this instance can receive simulation callbacks; otherwise, <c>false</c>.
</value>
<remarks>
This property checks the current flags of the instance against various conditions to determine if it can receive simulation callbacks.
</remarks>
</member>
<member name="P:Fusion.SimulationBehaviour.Runner">
<summary>
The <see cref="T:Fusion.NetworkRunner"/> this component is associated with.
</summary>
</member>
<member name="P:Fusion.SimulationBehaviour.Object">
<summary>
The <see cref="T:Fusion.NetworkObject"/> this component is associated with.
</summary>
</member>
<member name="M:Fusion.SimulationBehaviour.FixedUpdateNetwork">
<summary>
Fusion FixedUpdate timing callback.
</summary>
</member>
<member name="M:Fusion.SimulationBehaviour.Render">
<summary>
Post simulation frame rendering callback. Runs after all simulations have finished. Use in place of Unity's Update when Fusion is handling Physics.
</summary>
</member>
<member name="M:Fusion.SimulationBehaviour.OnDestroy">
<summary>
This is intentionally private; sub classes can create their own overload
without worrying about matching visibility etc. <see cref="M:Fusion.NetworkBehaviourUtils.InternalOnDestroy(Fusion.SimulationBehaviour)"/>
calls will be weaved in.
</summary>
</member>
<member name="M:Fusion.SimulationBehaviour.OnEnable">
<summary>
<see cref="M:Fusion.SimulationBehaviour.OnDestroy"/>
</summary>
</member>
<member name="M:Fusion.SimulationBehaviour.OnDisable">
<summary>
<see cref="M:Fusion.SimulationBehaviour.OnDestroy"/>
</summary>
</member>
<member name="M:Fusion.SimulationBehaviour.GetDumpString(System.Text.StringBuilder)">
<summary>
String representation of this object for debugging purposes.
</summary>
<param name="builder">The builder to append to.</param>
</member>
<member name="T:Fusion.SimulationBehaviourAttribute">
<summary>
Attribute for specifying which <see cref="T:Fusion.SimulationStages"/> and <see cref="T:Fusion.SimulationModes"/> this <see cref="T:Fusion.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:
<code>
[SimulationBehaviour(Stages = SimulationStages.Forward, Modes = SimulationModes.Server | SimulationModes.Host)]
</code>
</summary>
</member>
<member name="P:Fusion.SimulationBehaviourAttribute.Stages">
<summary>
Flag for which stages of the simulation loop this component will execute this script.
</summary>
</member>
<member name="P:Fusion.SimulationBehaviourAttribute.Modes">
<summary>
Flag for which indicated peers in <see cref="T:Fusion.SimulationModes"/> will execute this script.
</summary>
</member>
<member name="P:Fusion.SimulationBehaviourAttribute.Topologies">
<summary>
Flag for which topologies this script will execute in
</summary>
</member>
<member name="T:Fusion.SimulationBehaviourListScope">
<summary>
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.
</summary>
</member>
<member name="M:Fusion.SimulationBehaviourListScope.Dispose">
<summary>
Dispose unmanaged resources.
</summary>
</member>
<member name="T:Fusion.BehaviourStats">
<summary>
Represents statistics related to the execution of a SimulationBehaviour.
</summary>
</member>
<member name="F:Fusion.BehaviourStats.FixedUpdateExecutionTime">
<summary>
Gets or sets the buffer for tracking the execution time of FixedUpdate over time.
</summary>
</member>
<member name="F:Fusion.BehaviourStats.FixedUpdateInvocations">
<summary>
Gets or sets the buffer for tracking the number of FixedUpdate invocations over time.
</summary>
</member>
<member name="F:Fusion.BehaviourStats.RenderExecutionTime">
<summary>
Gets or sets the buffer for tracking the execution time of Render over time.
</summary>
</member>
<member name="F:Fusion.BehaviourStats.RenderInvocations">
<summary>
Gets or sets the buffer for tracking the number of Render invocations over time.
</summary>
</member>
<member name="P:Fusion.SimulationBehaviourUpdater.CallbackInterfacesDefualts">
<summary>
The default behaviour interfaces
</summary>
</member>
<member name="T:Fusion.NetworkTransform">
<summary>
Add to any <see cref="T:Fusion.NetworkObject"/> Transform, or its associated child Transforms to automatically synchronize
TRSP (Position/Rotation/Scale/Parent).
</summary>
</member>
<member name="F:Fusion.NetworkTransform.SyncScale">
<summary>
Enables synchronization of LocalScale.
</summary>
</member>
<member name="F:Fusion.NetworkTransform.SyncParent">
<summary>
Enables synchronization of transform.parent.
NOTE: Parent GameObjects must have a <see cref="T:Fusion.NetworkBehaviour"/> derived component to be a valid parent,
parent must belong to a different <see cref="T:Fusion.NetworkObject"/> than this Object.
</summary>
</member>
<member name="P:Fusion.NetworkTransform.AutoUpdateAreaOfInterestOverride">
<summary>
Determines if parent changes should automatically call <see cref="M:Fusion.NetworkTransform.SetAreaOfInterestOverride(Fusion.NetworkObject)"/>,
and assign the parent <see cref="T:Fusion.NetworkObject"/> as the override. Default is true, as you typically will want
player interest in this object to reflect player interest in the nested parent object. For example,
if a player is carrying an nested Object, players should only see that carried Object if they see the player.
Additionally, AOI works in world space, and NetworkTransform operates in local space, so any AOI position values of
nested Objects will ALWAYS be invalid, so nested Objects should always have their AOI Override set to a non-nested Object.
</summary>
</member>
<member name="F:Fusion.NetworkTransform._autoAOIOverride">
<summary>
Automatically sets the Area Of Interest Override for this NetworkObject to the parent NetworkObject.
</summary>
</member>
<member name="F:Fusion.NetworkTransform.DisableSharedModeInterpolation">
<summary>
Disable interpolation on State Authority in Shared Mode. You should disable interpolation if your controller code moves an object inside of Update()
rather than FixedUpdateNetwork().
</summary>
</member>
<member name="M:Fusion.NetworkTransform.Teleport(System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion})">
<summary>
Set the transform position and rotation to the indicated values, and network the Teleport event.
This will suspend interpolation between the previous tick state and the current tick state in Render(),
on this peer and all remote peers.
</summary>
</member>
<member name="M:Fusion.NetworkTransform.SetAreaOfInterestOverride(Fusion.NetworkObject)">
<summary>
Manually set the <see cref="T:Fusion.NetworkObject"/> used as the AreaOfInterestOverride.
</summary>
<param name="obj">NetworkObject to use as the AreaOfInterestOverride.</param>
</member>
<member name="M:Fusion.NetworkTransform.Spawned">
<inheritdoc />
</member>
<member name="M:Fusion.NetworkTransform.Render">
<inheritdoc />
</member>
<member name="T:Fusion.INetworkTRSPTeleport">
<summary>
Implement this interface on a <see cref="T:Fusion.NetworkTRSP"/> implementation to indicate it can be teleported.
</summary>
</member>
<member name="M:Fusion.INetworkTRSPTeleport.Teleport(System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion})">
<summary>
Teleports to the indicated values, and network the Teleport event.
</summary>
</member>
<member name="T:Fusion.NetworkTRSP">
<summary>
Base class for spatial (Position/Rotation/Scale/Parent) synchronization component, such as <see cref="T:Fusion.NetworkTransform"/>.
Provides the base logic for render interpolation, parenting synchronization, and teleport, that can be used in components derived from this class.
</summary>
</member>
<member name="P:Fusion.NetworkTRSP.IsMainTRSP">
<summary>
The main <see cref="T:Fusion.NetworkTRSP"/> is at the root of the <see cref="T:Fusion.NetworkObject"/>
and it will be used for area of interest operations and parenting of the <see cref="T:Fusion.NetworkObject"/>.
</summary>
</member>
<member name="P:Fusion.NetworkTRSP.Data">
<summary>
The networked data of this <see cref="T:Fusion.NetworkTRSP"/>.
</summary>
</member>
<member name="P:Fusion.NetworkTRSP.State">
<summary>
A reference to the networked data of this <see cref="T:Fusion.NetworkTRSP"/>.
</summary>
</member>
<member name="M:Fusion.NetworkTRSP.SetAreaOfInterestOverride(Fusion.NetworkObject)">
<summary>
Manually set the <see cref="T:Fusion.NetworkObject"/> used as the AreaOfInterestOverride.
</summary>
<param name="obj">NetworkObject to use as the AreaOfInterestOverride.</param>
</member>
<member name="M:Fusion.NetworkTRSP.Teleport(Fusion.NetworkTRSP,UnityEngine.Transform,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion})">
<summary>
The default Teleport implementation for <see cref="T:Fusion.NetworkTRSP"/> derived classes.
</summary>
</member>
<member name="M:Fusion.NetworkTRSP.SetParentTransform(Fusion.NetworkTRSP,UnityEngine.Transform,Fusion.NetworkBehaviourId)">
<summary>
Default handling for setting a <see cref="T:Fusion.NetworkTRSP"/>'s parent using a NetworkBehaviourId value.
</summary>
</member>
<member name="M:Fusion.NetworkTRSP.ResolveAOIOverride(Fusion.NetworkTRSP,UnityEngine.Transform)">
<summary>
Recursively attempts to find nested parent NetworkObject, and if found assigns that NetworkObject as the AreaOfInterestOverride.
</summary>
<param name="behaviour">Only pass a NetworkTRSP derived class that is on the same Transform as its associated <see cref="T:Fusion.NetworkObject"/>,
as AreaOfInterestOverride is only applicable when <see cref="P:Fusion.NetworkTRSP.IsMainTRSP"/> is true.</param>.
<param name="parent">The direct parent of the </param>
</member>
<member name="M:Fusion.NetworkTRSP.Render(Fusion.NetworkTRSP,UnityEngine.Transform,System.Boolean,System.Boolean,System.Boolean,Fusion.Tick@)">
<summary>
Default Render handling for <see cref="T:Fusion.NetworkTRSP"/> derived classes.
</summary>
</member>
<member name="T:Fusion.NetworkTRSPData">
<summary>
Data structure storing spatial (Position/Rotation/Scale/Parent) synchronization data for spatial synchronization components, <see cref="T:Fusion.NetworkTRSP"/> and its subclass <see cref="T:Fusion.NetworkTransform"/>.
</summary>
</member>
<member name="P:Fusion.NetworkTRSPData.NonNetworkedParent">
<summary>
Special NetworkBehaviourId value, used as a flag to tell the parent is a non-networked object
</summary>
</member>
<member name="F:Fusion.NetworkTRSPData.WORDS">
<summary>
Networked properties word count for the base <see cref="T:Fusion.NetworkTRSPData"/>
</summary>
</member>
<member name="F:Fusion.NetworkTRSPData.SIZE">
<summary>
The actual size for the networked properties in bytes
</summary>
</member>
<member name="F:Fusion.NetworkTRSPData.POSITION_OFFSET">
<summary>
Offset to point at the position values on the data buffer
</summary>
</member>
<member name="F:Fusion.NetworkTRSPData.Parent">
<summary>
Id of a NetworkBehaviour on the parent of the component's transform.
</summary>
</member>
<member name="F:Fusion.NetworkTRSPData.Position">
<summary>
Position relevant for the spatial synchronization component (can be used to either store a local position or a world position, depending on the component)
</summary>
</member>
<member name="F:Fusion.NetworkTRSPData.Rotation">
<summary>
Rotation relevant for the spatial synchronization component (can be used to either store a local rotation or a world rotation, depending on the component)
</summary>
</member>
<member name="F:Fusion.NetworkTRSPData.Scale">
<summary>
Scale relevant for the spatial synchronization component
</summary>
</member>
<member name="F:Fusion.NetworkTRSPData.TeleportKey">
<summary>
Key used to differentiate between several teleports
</summary>
</member>
<member name="F:Fusion.NetworkTRSPData.AreaOfInterestOverride">
<summary>
Id of a behaviour used as the reference point for this component during area of interest operations
The behaviour should be a <see cref="T:Fusion.NetworkTRSP"/> derived class, that is on the same Transform as its associated <see cref="T:Fusion.NetworkObject"/>
</summary>
</member>
<member name="T:Fusion.NestedComponentUtilities">
<summary>
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.
</summary>
</member>
<member name="M:Fusion.NestedComponentUtilities.EnsureRootComponentExists``2(UnityEngine.Transform)">
<summary>
Ensures that a component of type T exists on the root object of the provided transform.
If a component of type T does not exist, it is added.
The search for the root object stops if a component of type TStopOn is found.
</summary>
<typeparam name="T">The type of component to ensure exists on the root object.</typeparam>
<typeparam name="TStopOn">The type of component that stops the search for the root object.</typeparam>
<param name="transform">The transform to start the search from.</param>
<returns>The component of type T on the root object. Returns null if no root object is found.</returns>
</member>
<member name="M:Fusion.NestedComponentUtilities.GetParentComponent``1(UnityEngine.Transform)">
<summary>
Find T on supplied transform or any parent. Unlike GetComponentInParent, GameObjects do not need to be active to be found.
</summary>
</member>
<member name="M:Fusion.NestedComponentUtilities.GetNestedComponentsInParents``1(UnityEngine.Transform,System.Collections.Generic.List{``0})">
<summary>
Returns all T found between the child transform and its root. Order in List from child to parent, with the root/parent most being last.
</summary>
</member>
<member name="M:Fusion.NestedComponentUtilities.GetNestedComponentInChildren``2(UnityEngine.Transform,System.Boolean)">
<summary>
Finds the first component of type T in the children of the provided transform, stopping the search if a component of type TStopOn is found.
</summary>
<typeparam name="T">The type of component to find.</typeparam>
<typeparam name="TStopOn">The type of component that stops the search.</typeparam>
<param name="t">The transform to start the search from.</param>
<param name="includeInactive">Whether to include inactive game objects in the search.</param>
<returns>The first component of type T found. Returns null if no component is found.</returns>
</member>
<member name="M:Fusion.NestedComponentUtilities.GetNestedComponentInParent``2(UnityEngine.Transform)">
<summary>
Same as GetComponentInParent, but will always include inactive objects in search.
Will also stop recursing up the hierarchy when the StopOnT is found.
</summary>
</member>
<member name="M:Fusion.NestedComponentUtilities.GetNestedComponentInParents``2(UnityEngine.Transform)">
<summary>
Finds the first component of type T in the parents of the provided transform, stopping the search if a component of type TStopOn is found.
</summary>
<typeparam name="T">The type of component to find.</typeparam>
<typeparam name="TStopOn">The type of component that stops the search.</typeparam>
<param name="t">The transform to start the search from.</param>
<returns>The first component of type T found in the parents. Returns null if no component is found or a component of type TStopOn is found.</returns>
</member>
<member name="M:Fusion.NestedComponentUtilities.GetNestedComponentsInParents``2(UnityEngine.Transform,System.Collections.Generic.List{``0})">
<summary>
Finds components of type T on supplied transform, and every parent above that node, inclusively stopping on node StopT component.
</summary>
</member>
<member name="M:Fusion.NestedComponentUtilities.GetNestedComponentsInChildren``2(UnityEngine.Transform,System.Collections.Generic.List{``0},System.Boolean)">
<summary>
Same as GetComponentsInChildren, but will not recurse into children with component of the StopT type.
</summary>
</member>
<member name="M:Fusion.NestedComponentUtilities.GetNestedComponentsInChildren``1(UnityEngine.Transform,System.Collections.Generic.List{``0},System.Boolean,System.Type[])">
<summary>
Same as GetComponentsInChildren, but will not recurse into children with any component of the types in the stopOn array.
</summary>
</member>
<member name="M:Fusion.NestedComponentUtilities.GetNestedComponentsInChildren``3(UnityEngine.Transform,System.Boolean,System.Collections.Generic.List{``0})">
<summary>
Same as GetComponentsInChildren, but will not recurse into children with component of the StopT type.
</summary>
<typeparam name="T">Cast found components to this type. Typically Component, but any other class/interface will work as long as they are assignable from SearchT.</typeparam>
<typeparam name="TSearch">Find components of this class or interface type.</typeparam>
<typeparam name="TStop">When this component is found, no further recursing will be performed on that node.</typeparam>
</member>
<member name="M:Fusion.NestedComponentUtilities.FindObjectsOfTypeInOrder``1(UnityEngine.SceneManagement.Scene,System.Boolean)">
<summary>
Find All instances of Component type in a scene. Attempts to respect the hierarchy of the scene objects to produce a more deterministic order.
This is a slower operation, and does produce garbage collection.
</summary>
</member>
<member name="M:Fusion.NestedComponentUtilities.FindObjectsOfTypeInOrder``1(UnityEngine.SceneManagement.Scene,System.Collections.Generic.List{``0},System.Boolean)">
<summary>
Find All instances of Component type in a scene. Attempts to respect the hierarchy of the scene objects to produce a more deterministic order.
This is a slower operation which should not be run every update.
</summary>
<typeparam name="T">The type being searched for.</typeparam>
<param name="scene">Scene to search.</param>
<param name="list">Supplied list that will be populated by this find.</param>
<param name="includeInactive">Whether results should include inactive components.</param>
</member>
<member name="M:Fusion.NestedComponentUtilities.FindObjectsOfTypeInOrder``2(UnityEngine.SceneManagement.Scene,System.Boolean)">
<summary>
Find All instances of Component type in a scene. Attempts to respect the hierarchy of the scene objects to produce a more deterministic order.
This is a slow operation, and does produce garbage collection.
</summary>
<typeparam name="T">The type being searched for.</typeparam>
<typeparam name="TCast">Casts all found objects to this type, and returns collection of this type. Objects that fail cast are excluded.</typeparam>
<param name="scene">Scene to search.</param>
<param name="includeInactive">Whether results should include inactive components.</param>
</member>
<member name="M:Fusion.NestedComponentUtilities.FindObjectsOfTypeInOrder``2(UnityEngine.SceneManagement.Scene,System.Collections.Generic.List{``1},System.Boolean)">
<summary>
Find All instances of Component type in a scene. Attempts to respect the hierarchy of the scene objects to produce a more deterministic order.
This is a slower operation and should not be run every update.
</summary>
<typeparam name="T">Type being searched for.</typeparam>
<typeparam name="TCast">Type to cast found objects to.</typeparam>
<param name="scene">Scene to search.</param>
<param name="list">Supplied list that will be filled with found objects.</param>
<param name="includeInactive">Whether results should include inactive components.</param>
</member>
<member name="T:Fusion.DynamicHeap">
<summary>
A dynamic heap for allocating and tracking unmanaged objects.
</summary>
</member>
<member name="M:Fusion.DynamicHeap.SetForcedAlive``1(``0*)">
<summary>
Mark an object with <see cref="F:Fusion.DynamicHeap.ObjectFlags.ForceAlive"/>
</summary>
<param name="ptr">Pointer Object to mark</param>
<typeparam name="T">Type of object</typeparam>
<returns>Pointer to object</returns>
</member>
<member name="M:Fusion.DynamicHeap.Free(Fusion.DynamicHeap*,System.Void*)">
<summary>
Free up an object
</summary>
<param name="heap">Heap to free from</param>
<param name="ptr">Pointer to object</param>
<exception cref="T:System.InvalidOperationException">Thrown if <paramref name="ptr"/> is not a tracked object</exception>
</member>
<member name="T:Fusion.DynamicHeap.CollectGarbageDelegate">
<summary>Collect garbage delegate</summary>
</member>
<member name="M:Fusion.DynamicHeap.CollectGarbage(Fusion.DynamicHeap*,System.Void**,System.Int32)">
<summary>
Collect garbage
</summary>
<param name="heap">Dynamic heap to collect from</param>
<param name="dynamicRoots">Dynamic roots</param>
<param name="dynamicRootsLength">Dynamic roots length</param>
</member>
<member name="T:Fusion.DynamicHeap.Ignore">
<summary>
Ignore this field when scanning for pointers.
</summary>
</member>
<member name="T:Fusion.DynamicHeapInstance">
<summary>
Dynamic heap instance.
</summary>
</member>
<member name="M:Fusion.DynamicHeapInstance.#ctor(System.Type[])">
<summary>
Create a dynamic heap instance.
</summary>
<param name="types">Types to allocate.</param>
</member>
<member name="M:Fusion.DynamicHeapInstance.Finalize">
<summary>
Finalizes an instance of the <see cref="T:Fusion.DynamicHeapInstance"/> class.
</summary>
</member>
<member name="M:Fusion.DynamicHeapInstance.Free(System.Void*)">
<summary>
Free a pointer.
</summary>
<param name="ptr">Pointer to free.</param>
</member>
<member name="M:Fusion.DynamicHeapInstance.Allocate(System.Int32)">
<summary>
Allocate a pointer.
</summary>
<param name="size">Size to allocate.</param>
<returns>Pointer to allocated memory.</returns>
</member>
<member name="M:Fusion.DynamicHeapInstance.AllocateArray``1(System.Int32)">
<summary>
Allocate a pointer array.
</summary>
<param name="length">Length of array.</param>
<typeparam name="T">Type of array.</typeparam>
<returns>Pointer to allocated memory.</returns>
</member>
<member name="M:Fusion.DynamicHeapInstance.AllocateArrayPointers``1(System.Int32)">
<summary>
Allocate an array of pointers.
</summary>
<param name="length">Length of array.</param>
<typeparam name="T">Type of array.</typeparam>
<returns>Pointer to allocated memory.</returns>
</member>
<member name="M:Fusion.DynamicHeapInstance.AllocateTracked``1(System.Boolean)">
<summary>
Allocate a tracked pointer.
</summary>
<param name="root">Signal if the pointer is a root.</param>
<typeparam name="T">Type of pointer.</typeparam>
<returns>Pointer to allocated memory.</returns>
</member>
<member name="M:Fusion.DynamicHeapInstance.AllocateTrackedArray``1(System.Int32,System.Boolean)">
<summary>
Allocate a tracked pointer array.
</summary>
<param name="length">Length of array.</param>
<param name="root">Signal if the pointer is a root.</param>
<typeparam name="T">Type of array.</typeparam>
<returns>Pointer to allocated memory.</returns>
</member>
<member name="M:Fusion.DynamicHeapInstance.AllocateTrackedArrayPointers``1(System.Int32,System.Boolean)">
<summary>
Allocate a tracked array of pointers.
</summary>
<param name="length">Length of array.</param>
<param name="root">Signal if the pointer is a root.</param>
<typeparam name="T">Type of array.</typeparam>
<returns>Pointer to allocated memory.</returns>
</member>
<member name="M:Fusion.LagCompensation.BVH.PosUpdateRefit">
<summary>
Call this to batch-optimize any object-changes notified through
ssBVHNode.refit_ObjectChanged(..). For example, in a game-loop,
call this once per frame.
</summary>
</member>
<member name="M:Fusion.LagCompensation.BVH.BoundsFromSphere(UnityEngine.Vector3,System.Single)">
<summary>
Call this when you wish to update an object. This does not update straight away, but marks it for update when Optimize() is called
</summary>
</member>
<member name="M:Fusion.LagCompensation.BVH.#ctor(Fusion.LagCompensation.Mapper,System.Int32,System.Collections.Generic.List{Fusion.HitboxRoot},System.Single,System.Int32)">
<summary>
initializes a BVH with a given nodeAdaptor, and object list.
</summary>
</member>
<member name="M:Fusion.LagCompensation.BVHNode.SplitNode(Fusion.LagCompensation.BVH,System.Collections.Generic.List{Fusion.HitboxRoot})">
<summary>
SplitNode is called when a node has too many objects in it, and needs to be split into two nodes.
</summary>
<param name="bvh">BVH</param>
<param name="entries">The list of objects in the node</param>
</member>
<member name="T:Fusion.LagCompensation.LagCompensationUtils.ContactData">
<summary>
Details regarding a shape intersection.
It does not carry information about the intersection happening or not.
</summary>
</member>
<member name="F:Fusion.LagCompensation.LagCompensationUtils.ContactData.Point">
<summary>
Contact point.
</summary>
</member>
<member name="F:Fusion.LagCompensation.LagCompensationUtils.ContactData.Normal">
<summary>
Vector that described the plane of smallest penetration between the shapes.
</summary>
</member>
<member name="F:Fusion.LagCompensation.LagCompensationUtils.ContactData.Penetration">
<summary>
Penetration along the normal plane.
</summary>
</member>
<member name="M:Fusion.LagCompensation.LagCompensationUtils.LocalAABBSphereIntersection(UnityEngine.Vector3,UnityEngine.Vector3,System.Single)">
<summary>
Checks if a sphere in the local space of an AABB intersects with it.
</summary>
<param name="aabbExtents">The extents of the AABB in the positive direction of each axis.</param>
<param name="sphereCenter">The center of the sphere in the local space of the AABB.</param>
<param name="sphereRadius">The radius of the sphere.</param>
<returns>True if there is intersection. False otherwise.</returns>
</member>
<member name="M:Fusion.LagCompensation.LagCompensationUtils.LocalAABBSphereContact(UnityEngine.Vector3,UnityEngine.Vector3,System.Single,Fusion.LagCompensation.LagCompensationUtils.ContactData@)">
<summary>
Checks if a sphere in the local space of an AABB intersects with it and outputs contact data (also in local space).
</summary>
<param name="aabbExtents">The extents of the AABB in the positive direction of each axis.</param>
<param name="sphereCenter">The center of the sphere in the local space of the AABB.</param>
<param name="sphereRadius">The radius of the sphere.</param>
<param name="contact"><see cref="T:Fusion.LagCompensation.LagCompensationUtils.ContactData">Contact data</see> in the local space of the AABB. Default if there is no intersection.</param>
<returns>True if there is intersection. False otherwise.</returns>
</member>
<member name="T:Fusion.LagCompensation.BVHNodeDrawInfo">
<summary>
Container class to provide the necessary info to draw nodes from the BVH
</summary>
</member>
<member name="P:Fusion.LagCompensation.BVHNodeDrawInfo.Bounds">
<summary>
Get the node Bounds
</summary>
</member>
<member name="P:Fusion.LagCompensation.BVHNodeDrawInfo.Depth">
<summary>
Get the node depth on the BVH
</summary>
</member>
<member name="P:Fusion.LagCompensation.BVHNodeDrawInfo.MaxDepth">
<summary>
Get the BVH max depth
</summary>
</member>
<member name="T:Fusion.LagCompensation.ColliderDrawInfo">
<summary>
Container class to provide the necessary information to draw a hitbox collider
</summary>
</member>
<member name="P:Fusion.LagCompensation.ColliderDrawInfo.Type">
<summary>
The <see cref="T:Fusion.HitboxTypes"/> of the collider.
</summary>
</member>
<member name="P:Fusion.LagCompensation.ColliderDrawInfo.BoxExtents">
<summary>
The box extends of the collider
Used on <see cref="T:Fusion.HitboxTypes"/> of types: Box
</summary>
</member>
<member name="P:Fusion.LagCompensation.ColliderDrawInfo.Offset">
<summary>
The offset of the collider.
</summary>
</member>
<member name="P:Fusion.LagCompensation.ColliderDrawInfo.Radius">
<summary>
The radius of the collider.
Used on <see cref="T:Fusion.HitboxTypes"/> of types: Sphere and Capsule.
</summary>
</member>
<member name="P:Fusion.LagCompensation.ColliderDrawInfo.CapsuleExtents">
<summary>
The height for capsule colliders.
<seealso cref="T:Fusion.HitboxTypes"/>
</summary>
</member>
<member name="P:Fusion.LagCompensation.ColliderDrawInfo.CapsuleTopCenter">
<summary>
Represents the top center position of the capsule collider.
</summary>
</member>
<member name="P:Fusion.LagCompensation.ColliderDrawInfo.CapsuleBottomCenter">
<summary>
Represents the bottom center position of the capsule collider.
</summary>
</member>
<member name="P:Fusion.LagCompensation.ColliderDrawInfo.LocalToWorldMatrix">
<summary>
The local to world matrix of the collider.
</summary>
</member>
<member name="T:Fusion.LagCompensation.LagCompensationDraw">
<summary>
Provide access to iterate over the lag compensation system components and give the necessary information to draw them.
</summary>
</member>
<member name="F:Fusion.LagCompensation.LagCompensationDraw.SnapshotHistoryDraw">
<summary>
Iterate over to get the hitbox snapshots draw data. Iterate the received hitbox snapshot draw data to get all the colliders draw info for that snapshot.
</summary>
</member>
<member name="F:Fusion.LagCompensation.LagCompensationDraw.BVHDraw">
<summary>
Iterate over to get the BVH node draw data.
</summary>
</member>
<member name="M:Fusion.LagCompensation.LagCompensationDraw.GizmosDrawWireCapsule(UnityEngine.Vector3,UnityEngine.Vector3,System.Single)">
<summary>
Method to draw capsules out of simple shapes.
</summary>
<param name="topCenter">The top capsule end position</param>
<param name="bottomCenter">The bottom capsule end posistion</param>
<param name="capsuleRadius">The capsule radius</param>
</member>
<member name="T:Fusion.LagCompensation.SnapshotHistoryDraw">
<summary>
Provide a way to iterate over the <see cref="T:Fusion.LagCompensation.HitboxBuffer"/> and
return the <see cref="T:Fusion.LagCompensation.HitboxColliderContainerDraw"/> container for each snapshot on the buffer.
</summary>
</member>
<member name="M:Fusion.LagCompensation.SnapshotHistoryDraw.GetEnumerator">
<summary>
Returns an enumerator that iterates through the <see cref="T:Fusion.LagCompensation.HitboxColliderContainerDraw"/>.
</summary>
</member>
<member name="T:Fusion.LagCompensation.HitboxColliderContainerDraw">
<summary>
Provide a way to iterate over the <see cref="T:Fusion.LagCompensation.HitboxBuffer.HitboxSnapshot"/> and return
the <see cref="T:Fusion.LagCompensation.ColliderDrawInfo"/> for each collider on the snapshot.
</summary>
</member>
<member name="M:Fusion.LagCompensation.HitboxColliderContainerDraw.GetEnumerator">
<summary>
Returns an enumerator that iterates through the <see cref="T:Fusion.LagCompensation.ColliderDrawInfo"/> of this container.
</summary>
</member>
<member name="T:Fusion.LagCompensation.BVHDraw">
<summary>
Provide a way to iterate over BVH and return a <see cref="T:Fusion.LagCompensation.BVHNodeDrawInfo"/> for each node.
</summary>
</member>
<member name="M:Fusion.LagCompensation.BVHDraw.GetEnumerator">
<summary>
Returns an enumerator that iterates through the <see cref="T:Fusion.LagCompensation.BVHNodeDrawInfo"/>.
</summary>
</member>
<member name="T:Fusion.LagCompensation.HitType">
<summary>
Queries can hit either fusion's custom <see cref="F:Fusion.LagCompensation.HitType.Hitbox"/> or Unity's standard Physx/Box2D colliders.
</summary>
</member>
<member name="F:Fusion.LagCompensation.HitType.None">
<summary>
Used when a raycast does not hit anything. Not used on overlaps.
</summary>
</member>
<member name="F:Fusion.LagCompensation.HitType.Hitbox">
<summary>
<see cref="T:Fusion.LagCompensatedHit"/> is a Fusion <see cref="F:Fusion.LagCompensation.HitType.Hitbox"/>.
</summary>
</member>
<member name="F:Fusion.LagCompensation.HitType.PhysX">
<summary>
<see cref="T:Fusion.LagCompensatedHit"/> is a Unity PhysX Collider.
</summary>
</member>
<member name="F:Fusion.LagCompensation.HitType.Box2D">
<summary>
<see cref="T:Fusion.LagCompensatedHit"/> is a Unity Box2D Collider.
</summary>
</member>
<member name="T:Fusion.LagCompensation.LagCompensatedExt">
<summary>
LagCompensated Extension methods
</summary>
</member>
<member name="M:Fusion.LagCompensation.LagCompensatedExt.SortReference(System.Collections.Generic.List{Fusion.LagCompensatedHit},UnityEngine.Vector3)">
<summary>
Sorts all <paramref name="hits"/> in ascending order of distance
from <see cref="F:Fusion.LagCompensatedHit.Point"/> to the <paramref name="reference"/> point.
</summary>
<param name="hits">List containing hits to be sorted.</param>
<param name="reference">Used as reference point to compute distance from hit points.</param>
<exception cref="T:System.NullReferenceException"> If <paramref name="hits"/> are null.</exception>
</member>
<member name="M:Fusion.LagCompensation.LagCompensatedExt.SortDistance(System.Collections.Generic.List{Fusion.LagCompensatedHit})">
<summary>
Sorts all <paramref name="hits"/> in ascending order of <see cref="F:Fusion.LagCompensatedHit.Distance"/>.
</summary>
<param name="hits">List containing hits to be sorted.</param>
<exception cref="T:System.NullReferenceException"> If <paramref name="hits"/> are null.</exception>
</member>
<member name="T:Fusion.LagCompensation.HitboxBuffer">
<summary>
HitboxBuffer will store all snapshots of the colliders into a circular buffer
</summary>
</member>
<member name="T:Fusion.LagCompensation.HitboxBuffer.HitboxSnapshot">
<summary>
HitboxContainer represents 1 snapshot of all containers in a given Tick
</summary>
</member>
<member name="T:Fusion.LagCompensation.PreProcessingDelegate">
<summary>
Pre-processing delegate for queries.
</summary>
<param name="query">The query to be performed.</param>
<param name="rootCandidates">The root candidates to be used for the query.</param>
<param name="processedColliderIndices">The indices of the colliders that have been processed.</param>
</member>
<member name="T:Fusion.LagCompensation.AABB">
<summary>
Represents an Axis-Aligned Bounding Box (AABB).
</summary>
</member>
<member name="F:Fusion.LagCompensation.AABB.Center">
<summary>
Represents the center of the AABB.
</summary>
</member>
<member name="F:Fusion.LagCompensation.AABB.Extents">
<summary>
Represents the extents (half-widths) of the AABB.
</summary>
</member>
<member name="F:Fusion.LagCompensation.AABB.Min">
<summary>
Represents the minimum point (lower corner) of the AABB.
</summary>
</member>
<member name="F:Fusion.LagCompensation.AABB.Max">
<summary>
Represents the maximum point (upper corner) of the AABB.
</summary>
</member>
<member name="M:Fusion.LagCompensation.AABB.#ctor(UnityEngine.Bounds)">
<summary>
Constructs an AABB from a Unity Bounds object.
</summary>
<param name="bounds">The Unity Bounds object to construct the AABB from.</param>
</member>
<member name="M:Fusion.LagCompensation.AABB.#ctor(UnityEngine.Vector3,UnityEngine.Vector3)">
<summary>
Constructs an AABB from a center point and extents.
</summary>
<param name="center">The center point of the AABB.</param>
<param name="extents">The extents (half-widths) of the AABB.</param>
</member>
<member name="T:Fusion.LagCompensation.PositionRotationQueryParams">
<summary>
Query parameters for position rotation query
</summary>
</member>
<member name="F:Fusion.LagCompensation.PositionRotationQueryParams.QueryParams">
<summary>
Represents the base parameters for the query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.PositionRotationQueryParams.Hitbox">
<summary>
Represents the hitbox to be queried.
</summary>
</member>
<member name="M:Fusion.LagCompensation.PositionRotationQueryParams.#ctor(Fusion.LagCompensation.QueryParams,Fusion.Hitbox)">
<summary>
Create a new <see cref="T:Fusion.LagCompensation.PositionRotationQueryParams"/>.
</summary>
<param name="queryParams">Parameters to be used</param>
<param name="hitbox">The hitbox to be queried</param>
</member>
<member name="T:Fusion.LagCompensation.BoxOverlapQuery">
<summary>
Class that represents a box overlap query. Used to query against the <see cref="P:Fusion.NetworkRunner.LagCompensation"/> API.
</summary>
</member>
<member name="F:Fusion.LagCompensation.BoxOverlapQuery.Center">
<summary>
The box query center.
</summary>
</member>
<member name="F:Fusion.LagCompensation.BoxOverlapQuery.Extents">
<summary>
The box query extents.
</summary>
</member>
<member name="F:Fusion.LagCompensation.BoxOverlapQuery.Rotation">
<summary>
The box query rotation.
</summary>
</member>
<member name="M:Fusion.LagCompensation.BoxOverlapQuery.#ctor(Fusion.LagCompensation.BoxOverlapQueryParams@)">
<summary>
Create a new <see cref="T:Fusion.LagCompensation.BoxOverlapQuery"/> with the given <paramref name="boxOverlapParams"/>.
</summary>
<param name="boxOverlapParams">The parameters to be used when creating the query.</param>
</member>
<member name="M:Fusion.LagCompensation.BoxOverlapQuery.#ctor(Fusion.LagCompensation.BoxOverlapQueryParams@,UnityEngine.Collider[],UnityEngine.Collider2D[])">
<summary>
Create a new <see cref="T:Fusion.LagCompensation.BoxOverlapQuery"/> with the given <paramref name="boxOverlapParams"/>. The result colliders arrays
can be provided to avoid allocation.
</summary>
<param name="boxOverlapParams">The parameters to be used when creating the query.</param>
<param name="physXOverlapHitsCache">Array to write the results of the PhysX query if used.</param>
<param name="box2DOverlapHitsCache">Array to write the results of the Box2D query if used.</param>
</member>
<member name="M:Fusion.LagCompensation.BoxOverlapQuery.Check(Fusion.LagCompensation.AABB@)">
<summary>
Check if the given <paramref name="bounds"/> overlaps with this query.
</summary>
<param name="bounds">The bounds to check.</param>
<returns>True if the bounds overlaps with this query, false otherwise.</returns>
</member>
<member name="T:Fusion.LagCompensation.BoxOverlapQueryParams">
<summary>
Base parameters needed to execute a box overlap query
</summary>
</member>
<member name="F:Fusion.LagCompensation.BoxOverlapQueryParams.QueryParams">
<summary>
Represents the base parameters for the query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.BoxOverlapQueryParams.Center">
<summary>
Represents the center of the box for the overlap query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.BoxOverlapQueryParams.Extents">
<summary>
Represents the extents of the box for the overlap query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.BoxOverlapQueryParams.Rotation">
<summary>
Represents the rotation of the box for the overlap query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.BoxOverlapQueryParams.StaticHitsCapacity">
<summary>
Represents the capacity for the cached PhysX and Box2D static hits.
</summary>
</member>
<member name="M:Fusion.LagCompensation.BoxOverlapQueryParams.#ctor(Fusion.LagCompensation.QueryParams,UnityEngine.Vector3,UnityEngine.Vector3,UnityEngine.Quaternion,System.Int32)">
<summary>
Create a new <see cref="T:Fusion.LagCompensation.BoxOverlapQueryParams"/>
</summary>
<param name="queryParams">Parameters to be used</param>
<param name="center">The query center</param>
<param name="extents">The query extents</param>
<param name="rotation">The query rotation</param>
<param name="staticHitsCapacity">Capacity for the cached PhysX and Box2D static hits.</param>
</member>
<member name="T:Fusion.LagCompensation.Query">
<summary>
Base class for all Lag Compensation queries
</summary>
</member>
<member name="F:Fusion.LagCompensation.Query.TriggerInteraction">
<summary>
Represents the interaction type of the query with triggers.
</summary>
</member>
<member name="F:Fusion.LagCompensation.Query.Options">
<summary>
Represents the options for the hit detection of the query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.Query.LayerMask">
<summary>
Represents the layer mask to selectively ignore colliders when performing the query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.Query.Player">
<summary>
Represents the player who initiated the query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.Query.Tick">
<summary>
Represents the simulation tick at which the query was initiated.
</summary>
</member>
<member name="F:Fusion.LagCompensation.Query.UserArgs">
<summary>
Represents the user arguments for the query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.Query.Alpha">
<summary>
Represents the interpolation factor between the current and next simulation tick.
</summary>
</member>
<member name="F:Fusion.LagCompensation.Query.TickTo">
<summary>
Represents the simulation tick to which the query is performed.
</summary>
</member>
<member name="F:Fusion.LagCompensation.Query.PreProcessingDelegate">
<summary>
Represents the delegate to be called for pre-processing before the query is performed.
</summary>
</member>
<member name="M:Fusion.LagCompensation.Query.#ctor(Fusion.LagCompensation.QueryParams@)">
<summary>
Initializes a new instance of the Query class using the provided QueryParams.
</summary>
<param name="qParams">The QueryParams to use for initializing the Query.</param>
</member>
<member name="M:Fusion.LagCompensation.Query.Check(Fusion.LagCompensation.AABB@)">
<summary>
Checks if the provided bounds should be included in the query.
</summary>
<param name="bounds">The bounds to check.</param>
<returns>True if the bounds should be included in the query, false otherwise.</returns>
</member>
<member name="T:Fusion.LagCompensation.QueryParams">
<summary>
Base parameters needed to execute a query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.QueryParams.Options">
<summary>
Represents the options for the hit detection of the query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.QueryParams.TriggerInteraction">
<summary>
Represents the interaction type of the query with triggers.
</summary>
</member>
<member name="F:Fusion.LagCompensation.QueryParams.LayerMask">
<summary>
Represents the layer mask to selectively ignore colliders when performing the query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.QueryParams.Player">
<summary>
Represents the player who initiated the query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.QueryParams.Tick">
<summary>
Represents the simulation tick at which the query was initiated.
</summary>
</member>
<member name="F:Fusion.LagCompensation.QueryParams.TickTo">
<summary>
Represents the simulation tick to which the query is performed.
</summary>
</member>
<member name="F:Fusion.LagCompensation.QueryParams.Alpha">
<summary>
Represents the interpolation factor between the current and next simulation tick.
</summary>
</member>
<member name="F:Fusion.LagCompensation.QueryParams.PreProcessingDelegate">
<summary>
Represents the delegate to be called for pre-processing before the query is performed.
</summary>
</member>
<member name="F:Fusion.LagCompensation.QueryParams.UserArgs">
<summary>
Represents the user arguments for the query.
</summary>
</member>
<member name="T:Fusion.LagCompensation.RaycastAllQuery">
<summary>
Class that represents a raycast all query. Used to query against the <see cref="P:Fusion.NetworkRunner.LagCompensation"/> API.
</summary>
</member>
<member name="M:Fusion.LagCompensation.RaycastAllQuery.#ctor(Fusion.LagCompensation.RaycastQueryParams@)">
<summary>
Create a new <see cref="T:Fusion.LagCompensation.RaycastAllQuery"/> with the given <see cref="T:Fusion.LagCompensation.RaycastQueryParams"/>.
</summary>
<param name="raycastQueryParams">The parameters to be used when creating the query.</param>
</member>
<member name="M:Fusion.LagCompensation.RaycastAllQuery.#ctor(Fusion.LagCompensation.RaycastQueryParams@,UnityEngine.RaycastHit[],UnityEngine.RaycastHit2D[])">
<summary>
Create a new <see cref="T:Fusion.LagCompensation.RaycastAllQuery"/> with the given <see cref="T:Fusion.LagCompensation.RaycastQueryParams"/>. The result colliders arrays
can be provided to avoid allocation.
</summary>
<param name="raycastQueryParams">The parameters to be used when creating the query.</param>
<param name="physXRaycastHitsCache">Array to write the results of the PhysX query if used.</param>
<param name="box2DRaycastHitCache">Array to write the results of the Box2D query if used.</param>
</member>
<member name="T:Fusion.LagCompensation.RaycastQuery">
<summary>
Class that represents a raycast query. Used to query against the <see cref="P:Fusion.NetworkRunner.LagCompensation"/> API.
</summary>
</member>
<member name="F:Fusion.LagCompensation.RaycastQuery.Direction">
<summary>
Represents the direction of the raycast for the query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.RaycastQuery.Origin">
<summary>
Represents the origin point of the raycast for the query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.RaycastQuery.Length">
<summary>
Represents the maximum length of the raycast for the query.
</summary>
</member>
<member name="M:Fusion.LagCompensation.RaycastQuery.#ctor(Fusion.LagCompensation.RaycastQueryParams@)">
<summary>
Create a new <see cref="T:Fusion.LagCompensation.RaycastQuery"/> with the given <see cref="T:Fusion.LagCompensation.RaycastQueryParams"/>
</summary>
<param name="raycastQueryParams">The parameters to be used when creating the query.</param>
</member>
<member name="M:Fusion.LagCompensation.RaycastQuery.Check(Fusion.LagCompensation.AABB@)">
<summary>
Check if the provided bounds should be included in the query.
</summary>
<param name="bounds">The bounds to check.</param>
<returns>True if the bounds should be included in the query, false otherwise.</returns>
</member>
<member name="T:Fusion.LagCompensation.RaycastQueryParams">
<summary>
Base parameters needed to execute a raycast query
</summary>
</member>
<member name="F:Fusion.LagCompensation.RaycastQueryParams.QueryParams">
<summary>
Represents the base parameters for the raycast query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.RaycastQueryParams.Origin">
<summary>
Represents the origin point of the raycast for the query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.RaycastQueryParams.Direction">
<summary>
Represents the direction of the raycast for the query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.RaycastQueryParams.Length">
<summary>
Represents the maximum length of the raycast for the query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.RaycastQueryParams.StaticHitsCapacity">
<summary>
Represents the capacity for the cached PhysX and Box2D static hits.
</summary>
</member>
<member name="M:Fusion.LagCompensation.RaycastQueryParams.#ctor(Fusion.LagCompensation.QueryParams,UnityEngine.Vector3,UnityEngine.Vector3,System.Single,System.Int32)">
<summary>
Create a new <see cref="T:Fusion.LagCompensation.RaycastQueryParams"/>
</summary>
<param name="queryParams">Parameters to be used</param>
<param name="origin">The raycast origin</param>
<param name="direction">The raycast direction</param>
<param name="length">The raycast max length</param>
<param name="staticHitsCapacity">Capacity for the cached PhysX and Box2D static hits.</param>
</member>
<member name="T:Fusion.LagCompensation.SphereOverlapQuery">
<summary>
Class that represents a sphere overlap query. Used to query against the <see cref="P:Fusion.NetworkRunner.LagCompensation"/> API.
</summary>
</member>
<member name="F:Fusion.LagCompensation.SphereOverlapQuery.Center">
<summary>
Represents the center of the sphere for the overlap query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.SphereOverlapQuery.Radius">
<summary>
Represents the radius of the sphere for the overlap query.
</summary>
</member>
<member name="M:Fusion.LagCompensation.SphereOverlapQuery.#ctor(Fusion.LagCompensation.SphereOverlapQueryParams@)">
<summary>
Create a new <see cref="T:Fusion.LagCompensation.SphereOverlapQuery"/> with the given <see cref="T:Fusion.LagCompensation.SphereOverlapQueryParams"/>.
</summary>
<param name="sphereOverlapParams">The parameters to be used when creating the query.</param>
</member>
<member name="M:Fusion.LagCompensation.SphereOverlapQuery.#ctor(Fusion.LagCompensation.SphereOverlapQueryParams@,UnityEngine.Collider[],UnityEngine.Collider2D[])">
<summary>
Create a new <see cref="T:Fusion.LagCompensation.SphereOverlapQuery"/> with the given <see cref="T:Fusion.LagCompensation.SphereOverlapQueryParams"/>.
</summary>
<param name="sphereOverlapParams">The parameters to be used when creating the query.</param>
<param name="physXOverlapHitsCache">Array to write the results of the PhysX query if used.</param>
<param name="box2DOverlapHitsCache">Array to write the results of the Box2D query if used.</param>
</member>
<member name="M:Fusion.LagCompensation.SphereOverlapQuery.Check(Fusion.LagCompensation.AABB@)">
<summary>
Check if the given <see cref="T:Fusion.LagCompensation.AABB"/> intersects with the sphere overlap query.
</summary>
<param name="bounds">The bounds to check against.</param>
<returns>True if the bounds intersects with the sphere overlap query, false otherwise.</returns>
</member>
<member name="T:Fusion.LagCompensation.SphereOverlapQueryParams">
<summary>
Base parameters needed to execute a sphere overlap query
</summary>
</member>
<member name="F:Fusion.LagCompensation.SphereOverlapQueryParams.QueryParams">
<summary>
Represents the base parameters for the sphere overlap query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.SphereOverlapQueryParams.Center">
<summary>
Represents the center of the sphere for the overlap query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.SphereOverlapQueryParams.Radius">
<summary>
Represents the radius of the sphere for the overlap query.
</summary>
</member>
<member name="F:Fusion.LagCompensation.SphereOverlapQueryParams.StaticHitsCapacity">
<summary>
Represents the capacity for the cached PhysX and Box2D static hits.
</summary>
</member>
<member name="M:Fusion.LagCompensation.SphereOverlapQueryParams.#ctor(Fusion.LagCompensation.QueryParams,UnityEngine.Vector3,System.Single,System.Int32)">
<summary>
Create a new <see cref="T:Fusion.LagCompensation.SphereOverlapQueryParams"/>.
</summary>
<param name="queryParams">Parameters to be used</param>
<param name="center">The query center</param>
<param name="radius">The query radius</param>
<param name="staticHitsCapacity">Capacity for the cached PhysX and Box2D static hits.</param>
</member>
<member name="T:Fusion.HitboxTypes">
<summary>
Defines the collision geometry type of a <see cref="T:Fusion.Hitbox"/>.
</summary>
</member>
<member name="F:Fusion.HitboxTypes.None">
<summary>
[Future Use] to represent a disabled <see cref="T:Fusion.Hitbox"/>.
</summary>
</member>
<member name="F:Fusion.HitboxTypes.Box">
<summary>
Geometry is a box, fill in Extents and (optional) Offset.
</summary>
</member>
<member name="F:Fusion.HitboxTypes.Sphere">
<summary>
Geometry is a sphere, fill in Radius and (optional) Offset.
</summary>
</member>
<member name="F:Fusion.HitboxTypes.Capsule">
<summary>
Geometry is a capsule, fill in capsule Radius, capsule Height and (optional) Offset.
</summary>
</member>
<member name="T:Fusion.Hitbox">
<summary>
Represents a single lag-compensated collider.
Multiple component instances can be added anywhere in the hierarchy of a <see cref="T:Fusion.NetworkObject"/> which includes a <see cref="T:Fusion.HitboxRoot"/>.
</summary>
</member>
<member name="F:Fusion.Hitbox.Type">
<summary>
The collision geometry type for this <see cref="T:Fusion.Hitbox"/>.
</summary>
</member>
<member name="F:Fusion.Hitbox.SphereRadius">
<summary>
When <see cref="F:Fusion.Hitbox.Type"/> is set to <see cref="F:Fusion.HitboxTypes.Sphere"/>, this defines the local-space geometry for narrow-phase checks.
</summary>
</member>
<member name="F:Fusion.Hitbox.CapsuleRadius">
<summary>
When <see cref="F:Fusion.Hitbox.Type"/> is set to <see cref="F:Fusion.HitboxTypes.Capsule"/>, this defines the local-space geometry for narrow-phase checks.
</summary>
</member>
<member name="F:Fusion.Hitbox.BoxExtents">
<summary>
When <see cref="F:Fusion.Hitbox.Type"/> is set to <see cref="F:Fusion.HitboxTypes.Box"/>, this defines the local-space geometry for narrow-phase checks.
</summary>
</member>
<member name="F:Fusion.Hitbox.CapsuleExtents">
<summary>
When <see cref="F:Fusion.Hitbox.Type"/> is set to <see cref="F:Fusion.HitboxTypes.Capsule"/>, this defines the local-space geometry for narrow-phase checks.
</summary>
</member>
<member name="F:Fusion.Hitbox.Offset">
<summary>
This <see cref="T:Fusion.Hitbox"/>'s local-space offset from its GameObject position.
</summary>
</member>
<member name="F:Fusion.Hitbox.Root">
<summary>
Reference to the top-level <see cref="T:Fusion.HitboxRoot"/> component for this <see cref="T:Fusion.NetworkObject"/>.
</summary>
</member>
<member name="P:Fusion.Hitbox.HitboxIndex">
<summary>
The index of this hitbox in the <see cref="F:Fusion.HitboxRoot.Hitboxes"/> array on <see cref="F:Fusion.Hitbox.Root"/>.
The value is set by the root when initializing the nested hitboxes with <see cref="M:Fusion.HitboxRoot.InitHitboxes"/>.
</summary>
</member>
<member name="P:Fusion.Hitbox.HitboxMask">
<summary>
Mask to access the state of this hitbox on the root.
</summary>
</member>
<member name="P:Fusion.Hitbox.HitboxActive">
<summary>
Get or set the state of this Hitbox.
If a hitbox or its HitboxRoot are not active, it will not be hit by lag-compensated queries.
</summary>
</member>
<member name="P:Fusion.Hitbox.ColliderIndex">
<summary>
Index assigned to the collider of this hitbox on the lag-compensated snapshots.
</summary>
</member>
<member name="P:Fusion.Hitbox.Position">
<summary>
World-space position (includes Offset) of this <see cref="T:Fusion.Hitbox"/>.
</summary>
</member>
<member name="F:Fusion.Hitbox.GizmosColor">
<summary>
Color used when drawing gizmos for this hitbox.
</summary>
</member>
<member name="M:Fusion.Hitbox.SetLayer(System.Int32)">
<summary>
Set a layer mask for this <see cref="T:Fusion.Hitbox"/> gameobject. This method caches the layer mask.
</summary>
<param name="layer"></param>
</member>
<member name="M:Fusion.Hitbox.OnDrawGizmos">
<summary>
Draws this hitbox gizmo on Unity editor.
</summary>
</member>
<member name="M:Fusion.Hitbox.DrawGizmos(UnityEngine.Color,UnityEngine.Matrix4x4@)">
<summary>
Draw the <see cref="T:Fusion.Hitbox"/> gizmos.
</summary>
</member>
<member name="T:Fusion.HitboxManager">
<summary>
Entry point for lag compensated <see cref="T:Fusion.Hitbox"/> queries, which
maintains a history buffer, and provides lag compensated raycast and overlap methods.
Singleton instance is accessible through the property Runner.LagCompensation.
<para>Usage - Call any of the following methods:</para>
<code>HitboxManager.Raycast()<br></br>
HitboxManager.RaycastAll()<br></br>
HitboxManager.PositionRotation()<br></br>
HitboxManager.OverlapSphere()</code>
<para>These methods use the history buffer to perform a <see cref="T:Fusion.Hitbox"/> query against a state consistent with how the indicated <see cref="T:Fusion.PlayerRef"/> perceived them locally.</para>
</summary>
</member>
<member name="F:Fusion.HitboxManager.BVHDepth">
<summary>
Debug data from Broadphase BVH (tree depth).
</summary>
</member>
<member name="F:Fusion.HitboxManager.BVHNodes">
<summary>
Debug data from Broadphase BVH (total nodes count).
</summary>
</member>
<member name="F:Fusion.HitboxManager.TotalHitboxes">
<summary>
Debug data from lag compensation history (registered <see cref="T:Fusion.Hitbox"/> count).
</summary>
</member>
<member name="F:Fusion.HitboxManager.DrawInfo">
<summary>
Debug data used to draw the BVH nodes and the lag compensation history.
</summary>
</member>
<member name="M:Fusion.HitboxManager.Raycast(UnityEngine.Vector3,UnityEngine.Vector3,System.Single,Fusion.PlayerRef,Fusion.LagCompensatedHit@,System.Int32,Fusion.HitOptions,UnityEngine.QueryTriggerInteraction,Fusion.LagCompensation.PreProcessingDelegate)">
<summary>
Performs a lag-compensated raycast query against all registered hitboxes.
If the <see cref="F:Fusion.HitOptions.IncludePhysX"/> or <see cref="F:Fusion.HitOptions.IncludeBox2D"/> flag is indicated, query will also include static colliders,
Unity colliders are recommended for static geometry, rather than Hitboxes.
</summary>
<param name="origin">Raycast origin, in world-space</param>
<param name="direction">Raycast direction, in world-space</param>
<param name="length">Raycast length</param>
<param name="player">Player who "owns" this raycast. Used by the server to find the exact hitbox snapshots to check against.</param>
<param name="hit">Raycast results will be filled in here.</param>
<param name="layerMask">Only objects with matching layers will be checked against.</param>
<param name="options">Opt-in flags to compute with sub-tick accuracy (<see cref="F:Fusion.HitOptions.SubtickAccuracy"/>) and/or to include PhysX (<see cref="F:Fusion.HitOptions.IncludePhysX"/>) or Box2D (<see cref="F:Fusion.HitOptions.IncludeBox2D"/>).</param>
<param name="queryTriggerInteraction">Trigger interaction behavior when also querying PhysX.</param>
<param name="preProcessRoots">
Delegate to pre-process <see cref="T:Fusion.HitboxRoot">HitboxRoots</see> found in the broad-phase resolution of the query.
Roots removed from the list will not be processed any further.
Roots that remain on the candidates collection will be normally processed and fitting colliders will be evaluated in
the query narrow-phase resolution.
Hitbox collider indices added to the processed set will be evaluated in the narrow-phase regardless of further root
processing steps (e.g. layer mask match).
</param>
<returns>True if something is hit</returns>
</member>
<member name="M:Fusion.HitboxManager.Raycast(UnityEngine.Vector3,UnityEngine.Vector3,System.Single,System.Int32,System.Nullable{System.Int32},System.Nullable{System.Single},Fusion.LagCompensatedHit@,System.Int32,Fusion.HitOptions,UnityEngine.QueryTriggerInteraction,Fusion.LagCompensation.PreProcessingDelegate)">
<summary>
Performs a lag-compensated raycast query against all registered hitboxes.
If the <see cref="F:Fusion.HitOptions.IncludePhysX"/> or <see cref="F:Fusion.HitOptions.IncludeBox2D"/> flag is indicated, query will also include static colliders,
Unity colliders are recommended for static geometry, rather than Hitboxes.
</summary>
<param name="origin">Raycast origin, in world-space</param>
<param name="direction">Raycast direction, in world-space</param>
<param name="length">Raycast length</param>
<param name="tick">Simulation tick number to use as the time reference for the lag compensation (use this for server AI, and similar).</param>
<param name="tickTo">
Simulation tick number to use as the time reference for the lag compensation.
If provided, must be combined with the <paramref name="alpha"/> parameter for interpolation between <paramref name="tick"/> and <paramref name="tickTo"/>.
If <see cref="F:Fusion.HitOptions.SubtickAccuracy"/> is included on <paramref name="options"/>, this query will be resolved against hitbox colliders interpolated between the specified ticks.
Otherwise, only one of the two ticks will be considered, according to the rounded value of <paramref name="alpha"/>.
</param>
<param name="alpha">
Interpolation value when querying between <paramref name="tick"/> and <paramref name="tickTo"/>.
If <see cref="F:Fusion.HitOptions.SubtickAccuracy"/> is included on <paramref name="options"/>, this query will be resolved against hitbox colliders interpolated between the specified ticks.
Otherwise, only one of the two ticks will be considered, according to the rounded alpha value.
</param>
<param name="hit">Raycast results will be filled in here.</param>
<param name="layerMask">Only objects with matching layers will be checked against.</param>
<param name="options">Opt-in flags to compute with sub-tick accuracy (<see cref="F:Fusion.HitOptions.SubtickAccuracy"/>) and/or to include PhysX (<see cref="F:Fusion.HitOptions.IncludePhysX"/>) or Box2D (<see cref="F:Fusion.HitOptions.IncludeBox2D"/>).</param>
<param name="queryTriggerInteraction">Trigger interaction behavior when also querying PhysX.</param>
<param name="preProcessRoots">
Delegate to pre-process <see cref="T:Fusion.HitboxRoot">HitboxRoots</see> found in the broad-phase resolution of the query.
Roots removed from the list will not be processed any further.
Roots that remain on the candidates collection will be normally processed and fitting colliders will be evaluated in
the query narrow-phase resolution.
Hitbox collider indices added to the processed set will be evaluated in the narrow-phase regardless of further root
processing steps (e.g. layer mask match).
</param>
<returns>True if something is hit</returns>
</member>
<member name="M:Fusion.HitboxManager.RaycastAll(UnityEngine.Vector3,UnityEngine.Vector3,System.Single,Fusion.PlayerRef,System.Collections.Generic.List{Fusion.LagCompensatedHit},System.Int32,System.Boolean,Fusion.HitOptions,UnityEngine.QueryTriggerInteraction,Fusion.LagCompensation.PreProcessingDelegate)">
<summary>
Performs a lag-compensated raycast query against all registered hitboxes.
If the <see cref="F:Fusion.HitOptions.IncludePhysX"/> or <see cref="F:Fusion.HitOptions.IncludeBox2D"/> flag is indicated, query will also include static colliders,
Unity colliders are recommended for static geometry, rather than Hitboxes.
Important: results are NOT sorted by distance.
</summary>
<param name="origin">Raycast origin, in world-space</param>
<param name="direction">Raycast direction, in world-space</param>
<param name="length">Raycast length</param>
<param name="player">Player who "owns" this raycast. Used by the server to find the exact hitbox snapshots to check against.</param>
<param name="hits">List to be filled with hits (both hitboxes and/or static colliders, if included).</param>
<param name="layerMask">Only objects with matching layers will be checked against.</param>
<param name="options">Opt-in flags to compute with sub-tick accuracy (<see cref="F:Fusion.HitOptions.SubtickAccuracy"/>) and/or to include PhysX (<see cref="F:Fusion.HitOptions.IncludePhysX"/>) or Box2D (<see cref="F:Fusion.HitOptions.IncludeBox2D"/>).</param>
<param name="clearHits">Clear list of hits before filling with new ones (defaults to true).</param>
<param name="queryTriggerInteraction">Trigger interaction behavior when also querying PhysX.</param>
<param name="preProcessRoots">
Delegate to pre-process <see cref="T:Fusion.HitboxRoot">HitboxRoots</see> found in the broad-phase resolution of the query.
Roots removed from the list will not be processed any further.
Roots that remain on the candidates collection will be normally processed and fitting colliders will be evaluated in
the query narrow-phase resolution.
Hitbox collider indices added to the processed set will be evaluated in the narrow-phase regardless of further root
processing steps (e.g. layer mask match).
</param>
<returns>total number of hits</returns>
</member>
<member name="M:Fusion.HitboxManager.RaycastAll(UnityEngine.Vector3,UnityEngine.Vector3,System.Single,System.Int32,System.Nullable{System.Int32},System.Nullable{System.Single},System.Collections.Generic.List{Fusion.LagCompensatedHit},System.Int32,System.Boolean,Fusion.HitOptions,UnityEngine.QueryTriggerInteraction,Fusion.LagCompensation.PreProcessingDelegate)">
<summary>
Performs a lag-compensated raycast query against all registered hitboxes.
If the <see cref="F:Fusion.HitOptions.IncludePhysX"/> or <see cref="F:Fusion.HitOptions.IncludeBox2D"/> flag is indicated, query will also include static colliders,
Unity colliders are recommended for static geometry, rather than Hitboxes.
Important: results are NOT sorted by distance.
</summary>
<param name="origin">Raycast origin, in world-space</param>
<param name="direction">Raycast direction, in world-space</param>
<param name="length">Raycast length</param>
<param name="tick">Simulation tick number to use as the time reference for the lag compensation (use this for server AI, and similar).</param>
<param name="tickTo">
Simulation tick number to use as the time reference for the lag compensation.
If provided, must be combined with the <paramref name="alpha"/> parameter for interpolation between <paramref name="tick"/> and <paramref name="tickTo"/>.
If <see cref="F:Fusion.HitOptions.SubtickAccuracy"/> is included on <paramref name="options"/>, this query will be resolved against hitbox colliders interpolated between the specified ticks.
Otherwise, only one of the two ticks will be considered, according to the rounded value of <paramref name="alpha"/>.
</param>
<param name="alpha">
Interpolation value when querying between <paramref name="tick"/> and <paramref name="tickTo"/>.
If <see cref="F:Fusion.HitOptions.SubtickAccuracy"/> is included on <paramref name="options"/>, this query will be resolved against hitbox colliders interpolated between the specified ticks.
Otherwise, only one of the two ticks will be considered, according to the rounded alpha value.
</param>
<param name="hits">List to be filled with hits (both hitboxes and/or static colliders, if included).</param>
<param name="layerMask">Only objects with matching layers will be checked against.</param>
<param name="options">Opt-in flags to compute with sub-tick accuracy (<see cref="F:Fusion.HitOptions.SubtickAccuracy"/>) and/or to include PhysX (<see cref="F:Fusion.HitOptions.IncludePhysX"/>) or Box2D (<see cref="F:Fusion.HitOptions.IncludeBox2D"/>).</param>
<param name="clearHits">Clear list of hits before filling with new ones (defaults to true).</param>
<param name="queryTriggerInteraction">Trigger interaction behavior when also querying PhysX.</param>
<param name="preProcessRoots">
Delegate to pre-process <see cref="T:Fusion.HitboxRoot">HitboxRoots</see> found in the broad-phase resolution of the query.
Roots removed from the list will not be processed any further.
Roots that remain on the candidates collection will be normally processed and fitting colliders will be evaluated in
the query narrow-phase resolution.
Hitbox collider indices added to the processed set will be evaluated in the narrow-phase regardless of further root
processing steps (e.g. layer mask match).
</param>
<returns>total number of hits</returns>
</member>
<member name="M:Fusion.HitboxManager.OverlapSphere(UnityEngine.Vector3,System.Single,Fusion.PlayerRef,System.Collections.Generic.List{Fusion.LagCompensatedHit},System.Int32,Fusion.HitOptions,System.Boolean,UnityEngine.QueryTriggerInteraction,Fusion.LagCompensation.PreProcessingDelegate)">
<summary>
Performs a lag-compensated overlap sphere query against all registered hitboxes.
If the <see cref="F:Fusion.HitOptions.IncludePhysX"/> or <see cref="F:Fusion.HitOptions.IncludeBox2D"/> flag is indicated, query will also include static colliders,
Unity colliders are recommended for static geometry, rather than Hitboxes.
</summary>
<param name="origin">Sphere center, in world-space</param>
<param name="radius">Sphere radius</param>
<param name="player">Player who "owns" this overlap. Used by the server to find the exact hitbox snapshots to check against.</param>
<param name="hits">List to be filled with hits (both hitboxes and/or static colliders, if included).</param>
<param name="layerMask">Only objects with matching layers will be checked against.</param>
<param name="options">Opt-in flags to compute with sub-tick accuracy (<see cref="F:Fusion.HitOptions.SubtickAccuracy"/>) and/or to include PhysX (<see cref="F:Fusion.HitOptions.IncludePhysX"/>) or Box2D (<see cref="F:Fusion.HitOptions.IncludeBox2D"/>).</param>
<param name="clearHits">Clear list of hits before filling with new ones (defaults to true).</param>
<param name="queryTriggerInteraction">Trigger interaction behavior when also querying PhysX.</param>
<param name="preProcessRoots">
Delegate to pre-process <see cref="T:Fusion.HitboxRoot">HitboxRoots</see> found in the broad-phase resolution of the query.
Roots removed from the list will not be processed any further.
Roots that remain on the candidates collection will be normally processed and fitting colliders will be evaluated in
the query narrow-phase resolution.
Hitbox collider indices added to the processed set will be evaluated in the narrow-phase regardless of further root
processing steps (e.g. layer mask match).
</param>
<returns>total number of hits</returns>
</member>
<member name="M:Fusion.HitboxManager.OverlapSphere(UnityEngine.Vector3,System.Single,System.Int32,System.Nullable{System.Int32},System.Nullable{System.Single},System.Collections.Generic.List{Fusion.LagCompensatedHit},System.Int32,Fusion.HitOptions,System.Boolean,UnityEngine.QueryTriggerInteraction,Fusion.LagCompensation.PreProcessingDelegate)">
<summary>
Performs a lag-compensated overlap sphere query against all registered hitboxes.
If the <see cref="F:Fusion.HitOptions.IncludePhysX"/> or <see cref="F:Fusion.HitOptions.IncludeBox2D"/> flag is indicated, query will also include static colliders,
Unity colliders are recommended for static geometry, rather than Hitboxes.
</summary>
<param name="origin">Sphere center, in world-space</param>
<param name="radius">Sphere radius</param>
<param name="tick">The tick to be queried</param>
<param name="tickTo">
Simulation tick number to use as the time reference for the lag compensation.
If provided, must be combined with the <paramref name="alpha"/> parameter for interpolation between <paramref name="tick"/> and <paramref name="tickTo"/>.
If <see cref="F:Fusion.HitOptions.SubtickAccuracy"/> is included on <paramref name="options"/>, this query will be resolved against hitbox colliders interpolated between the specified ticks.
Otherwise, only one of the two ticks will be considered, according to the rounded value of <paramref name="alpha"/>.
</param>
<param name="alpha">
Interpolation value when querying between <paramref name="tick"/> and <paramref name="tickTo"/>.
If <see cref="F:Fusion.HitOptions.SubtickAccuracy"/> is included on <paramref name="options"/>, this query will be resolved against hitbox colliders interpolated between the specified ticks.
Otherwise, only one of the two ticks will be considered, according to the rounded alpha value.
</param>
<param name="hits">List to be filled with hits (both hitboxes and/or static colliders, if included).</param>
<param name="layerMask">Only objects with matching layers will be checked against.</param>
<param name="options">Opt-in flags to compute with sub-tick accuracy (<see cref="F:Fusion.HitOptions.SubtickAccuracy"/>) and/or to include PhysX (<see cref="F:Fusion.HitOptions.IncludePhysX"/>) or Box2D (<see cref="F:Fusion.HitOptions.IncludeBox2D"/>).</param>
<param name="clearHits">Clear list of hits before filling with new ones (defaults to true).</param>
<param name="queryTriggerInteraction">Trigger interaction behavior when also querying PhysX.</param>
<param name="preProcessRoots">
Delegate to pre-process <see cref="T:Fusion.HitboxRoot">HitboxRoots</see> found in the broad-phase resolution of the query.
Roots removed from the list will not be processed any further.
Roots that remain on the candidates collection will be normally processed and fitting colliders will be evaluated in
the query narrow-phase resolution.
Hitbox collider indices added to the processed set will be evaluated in the narrow-phase regardless of further root
processing steps (e.g. layer mask match).
</param>
<returns>total number of hits</returns>
</member>
<member name="M:Fusion.HitboxManager.OverlapBox(UnityEngine.Vector3,UnityEngine.Vector3,UnityEngine.Quaternion,Fusion.PlayerRef,System.Collections.Generic.List{Fusion.LagCompensatedHit},System.Int32,Fusion.HitOptions,System.Boolean,UnityEngine.QueryTriggerInteraction,Fusion.LagCompensation.PreProcessingDelegate)">
<summary>
Performs a lag-compensated box overlap query against all registered hitboxes.
If the <see cref="F:Fusion.HitOptions.IncludePhysX"/> or <see cref="F:Fusion.HitOptions.IncludeBox2D"/> flag is indicated, query will also include static colliders,
Unity colliders are recommended for static geometry, rather than Hitboxes.
</summary>
<param name="center">Center of the box in world space.</param>
<param name="extents">Half of the size of the box in each dimension.</param>
<param name="orientation">Rotation of the box.</param>
<param name="player">Player who "owns" this overlap. Used by the server to find the exact hitbox snapshots to check against.</param>
<param name="hits">List to be filled with hits (both hitboxes and/or static colliders, if included).</param>
<param name="layerMask">Only objects with matching layers will be checked against.</param>
<param name="options">Opt-in flags to compute with sub-tick accuracy (<see cref="F:Fusion.HitOptions.SubtickAccuracy"/>) and/or to include PhysX (<see cref="F:Fusion.HitOptions.IncludePhysX"/>) or Box2D (<see cref="F:Fusion.HitOptions.IncludeBox2D"/>).</param>
<param name="clearHits">Clear list of hits before filling with new ones (defaults to true).</param>
<param name="queryTriggerInteraction">Trigger interaction behavior when also querying PhysX.</param>
<param name="preProcessRoots">
Delegate to pre-process <see cref="T:Fusion.HitboxRoot">HitboxRoots</see> found in the broad-phase resolution of the query.
Roots removed from the list will not be processed any further.
Roots that remain on the candidates collection will be normally processed and fitting colliders will be evaluated in
the query narrow-phase resolution.
Hitbox collider indices added to the processed set will be evaluated in the narrow-phase regardless of further root
processing steps (e.g. layer mask match).
</param>
<returns>The total number of hits found.</returns>
</member>
<member name="M:Fusion.HitboxManager.OverlapBox(UnityEngine.Vector3,UnityEngine.Vector3,UnityEngine.Quaternion,System.Int32,System.Nullable{System.Int32},System.Nullable{System.Single},System.Collections.Generic.List{Fusion.LagCompensatedHit},System.Int32,Fusion.HitOptions,System.Boolean,UnityEngine.QueryTriggerInteraction,Fusion.LagCompensation.PreProcessingDelegate)">
<summary>
Performs a lag-compensated box overlap query against all registered hitboxes.
If the <see cref="F:Fusion.HitOptions.IncludePhysX"/> or <see cref="F:Fusion.HitOptions.IncludeBox2D"/> flag is indicated, query will also include static colliders,
Unity colliders are recommended for static geometry, rather than Hitboxes.
</summary>
<param name="center">Center of the box in world space.</param>
<param name="extents">Half of the size of the box in each dimension.</param>
<param name="orientation">Rotation of the box.</param>
<param name="tick">The exact tick to be queried</param>
<param name="tickTo">
Simulation tick number to use as the time reference for the lag compensation.
If provided, must be combined with the <paramref name="alpha"/> parameter for interpolation between <paramref name="tick"/> and <paramref name="tickTo"/>.
If <see cref="F:Fusion.HitOptions.SubtickAccuracy"/> is included on <paramref name="options"/>, this query will be resolved against hitbox colliders interpolated between the specified ticks.
Otherwise, only one of the two ticks will be considered, according to the rounded value of <paramref name="alpha"/>.
</param>
<param name="alpha">
Interpolation value when querying between <paramref name="tick"/> and <paramref name="tickTo"/>.
If <see cref="F:Fusion.HitOptions.SubtickAccuracy"/> is included on <paramref name="options"/>, this query will be resolved against hitbox colliders interpolated between the specified ticks.
Otherwise, only one of the two ticks will be considered, according to the rounded alpha value.
</param>
<param name="hits">List to be filled with hits (both hitboxes and/or static colliders, if included).</param>
<param name="layerMask">Only objects with matching layers will be checked against.</param>
<param name="options">Opt-in flags to compute with sub-tick accuracy (<see cref="F:Fusion.HitOptions.SubtickAccuracy"/>) and/or to include PhysX (<see cref="F:Fusion.HitOptions.IncludePhysX"/>) or Box2D (<see cref="F:Fusion.HitOptions.IncludeBox2D"/>).</param>
<param name="clearHits">Clear list of hits before filling with new ones (defaults to true).</param>
<param name="queryTriggerInteraction">Trigger interaction behavior when also querying PhysX.</param>
<param name="preProcessRoots">
Delegate to pre-process <see cref="T:Fusion.HitboxRoot">HitboxRoots</see> found in the broad-phase resolution of the query.
Roots removed from the list will not be processed any further.
Roots that remain on the candidates collection will be normally processed and fitting colliders will be evaluated in
the query narrow-phase resolution.
Hitbox collider indices added to the processed set will be evaluated in the narrow-phase regardless of further root
processing steps (e.g. layer mask match).
</param>
<returns>The total number of hits found.</returns>
</member>
<member name="M:Fusion.HitboxManager.PositionRotation(Fusion.Hitbox,System.Int32,UnityEngine.Vector3@,UnityEngine.Quaternion@,System.Boolean,System.Nullable{System.Int32},System.Nullable{System.Single})">
<summary>
Performs a lag-compensated query for a specific Hitbox position and rotation.
</summary>
<param name="hitbox">The target hitbox to be queried in the past</param>
<param name="tick">The tick to be queried</param>
<param name="tickTo">
Simulation tick number to use as the time reference for the lag compensation.
If provided, must be combined with the <paramref name="alpha"/> parameter for interpolation between <paramref name="tick"/> and <paramref name="tickTo"/>.
If <paramref name="subtickAccuracy"/> is requested, the query will return the hitbox state interpolated between the specified ticks.
Otherwise, only one of the two ticks will be considered, according to the rounded value of <paramref name="alpha"/>.
</param>
<param name="alpha">
Interpolation value when querying between <paramref name="tick"/> and <paramref name="tickTo"/>.
If <paramref name="subtickAccuracy"/> is requested, the query will return the hitbox state interpolated between the specified ticks.
Otherwise, only one of the two ticks will be considered, according to the rounded alpha value.
</param>
<param name="position">Will be filled with the hitbox position at the time of the tick</param>
<param name="rotation">Will be filled with the hitbox rotation at the time of the tick</param>
<param name="subtickAccuracy">If the query should interpolate between ticks to reflect exactly what was seen on the client.</param>
</member>
<member name="M:Fusion.HitboxManager.PositionRotation(Fusion.Hitbox,Fusion.PlayerRef,UnityEngine.Vector3@,UnityEngine.Quaternion@,System.Boolean)">
<summary>
Performs a lag-compensated query for a specific Hitbox position and rotation.
</summary>
<param name="hitbox">The target hitbox to be queried in the past</param>
<param name="player">Player who "owns" this overlap. Used by the server to find the exact hitbox snapshots to check against.</param>
<param name="position">Will be filled with the hitbox position at the time of the tick</param>
<param name="rotation">Will be filled with the hitbox rotation at the time of the tick</param>
<param name="subTickAccuracy">If the query should interpolate between ticks to reflect exactly what was seen on the client.</param>
</member>
<member name="M:Fusion.HitboxManager.GetClosestHit(System.Collections.Generic.List{Fusion.LagCompensatedHit})">
<summary>
Get the closest hit from a list of <see cref="T:Fusion.LagCompensatedHit"/>.
</summary>
<returns>The closest <see cref="T:Fusion.LagCompensatedHit"/> found.</returns>
</member>
<member name="M:Fusion.HitboxManager.Raycast(Fusion.LagCompensation.RaycastQuery,Fusion.LagCompensatedHit@)">
<summary>
Performs a lag-compensated raycast query against all registered hitboxes.
If the <see cref="F:Fusion.HitOptions.IncludePhysX"/> or <see cref="F:Fusion.HitOptions.IncludeBox2D"/> flag is indicated, query will also include static colliders,
Unity colliders are recommended for static geometry, rather than Hitboxes.
</summary>
<param name="query">The query containing all necessary information.</param>
<param name="hit">Raycast results will be filled in here.</param>
<returns>The total number of hits found.</returns>
</member>
<member name="M:Fusion.HitboxManager.RaycastAll(Fusion.LagCompensation.RaycastAllQuery,System.Collections.Generic.List{Fusion.LagCompensatedHit},System.Boolean)">
<summary>
Performs a lag-compensated raycast query against all registered hitboxes.
If the <see cref="F:Fusion.HitOptions.IncludePhysX"/> or <see cref="F:Fusion.HitOptions.IncludeBox2D"/> flag is indicated, query will also include static colliders,
Unity colliders are recommended for static geometry, rather than Hitboxes.
</summary>
<param name="query">The query containing all necessary information.</param>
<param name="hits">List to be filled with hits (both hitboxes and/or static colliders, if included).</param>
<param name="clearHits">Clear list of hits before filling with new ones (defaults to true).</param>
<returns>The total number of hits found.</returns>
</member>
<member name="M:Fusion.HitboxManager.OverlapSphere(Fusion.LagCompensation.SphereOverlapQuery,System.Collections.Generic.List{Fusion.LagCompensatedHit},System.Boolean)">
<summary>
Performs a lag-compensated sphere overlap query against all registered hitboxes.
If the <see cref="F:Fusion.HitOptions.IncludePhysX"/> or <see cref="F:Fusion.HitOptions.IncludeBox2D"/> flag is indicated, query will also include static colliders,
Unity colliders are recommended for static geometry, rather than Hitboxes.
</summary>
<param name="query">The query containing all necessary information.</param>
<param name="hits">List to be filled with hits (both hitboxes and/or static colliders, if included).</param>
<param name="clearHits">Clear list of hits before filling with new ones (defaults to true).</param>
<returns>The total number of hits found.</returns>
</member>
<member name="M:Fusion.HitboxManager.OverlapBox(Fusion.LagCompensation.BoxOverlapQuery,System.Collections.Generic.List{Fusion.LagCompensatedHit},System.Boolean)">
<summary>
Performs a lag-compensated box overlap query against all registered hitboxes.
If the <see cref="F:Fusion.HitOptions.IncludePhysX"/> or <see cref="F:Fusion.HitOptions.IncludeBox2D"/> flag is indicated, query will also include static colliders,
Unity colliders are recommended for static geometry, rather than Hitboxes.
</summary>
<param name="query">The query containing all necessary information.</param>
<param name="hits">List to be filled with hits (both hitboxes and/or static colliders, if included).</param>
<param name="clearHits">Clear list of hits before filling with new ones (defaults to true).</param>
<returns>The total number of hits found.</returns>
</member>
<member name="M:Fusion.HitboxManager.GetPlayerTickAndAlpha(Fusion.PlayerRef,System.Nullable{System.Int32}@,System.Nullable{System.Int32}@,System.Nullable{System.Single}@)">
<summary>
Gets the tick and alpha interpolate values for a player.
</summary>
<param name="player">The player reference.</param>
<param name="tickFrom">The tick value from which to interpolate.</param>
<param name="tickTo">The tick value to which to interpolate.</param>
<param name="alpha">The interpolation alpha value.</param>
</member>
<member name="M:Fusion.HitboxManager.RegisterHitboxSnapshot(System.Int32,System.Int32)">
<summary>
Internal use. Inserts (new ones) and updates all registered hitboxes into lag compensation history.
</summary>
</member>
<member name="M:Fusion.HitboxManager.Fusion#IAfterTick#AfterTick">
<inheritdoc cref="M:Fusion.IAfterTick.AfterTick"/>
Register new hitboxes and updates existing ones on the Server.
</member>
<member name="M:Fusion.HitboxManager.WriteBenchmarkResults">
<summary>
Used internally to write the benchmark results.
</summary>
</member>
<member name="M:Fusion.HitboxManager.Fusion#IBeforeSimulation#BeforeSimulation(System.Int32)">
<inheritdoc />
</member>
<member name="T:Fusion.HitOptions">
<summary>
Per-query options for lag compensation (both raycast and overlap).
</summary>
</member>
<member name="F:Fusion.HitOptions.None">
<summary>
Default, no extra options.
</summary>
</member>
<member name="F:Fusion.HitOptions.IncludePhysX">
<summary>
Add this to include checks against PhysX colliders.
</summary>
</member>
<member name="F:Fusion.HitOptions.IncludeBox2D">
<summary>
Add this to include checks against Box2D colliders. If PhysX flag is set, it will be used instead.
</summary>
</member>
<member name="F:Fusion.HitOptions.SubtickAccuracy">
<summary>
Subtick accuracy query (exactly like seen by player).
</summary>
</member>
<member name="F:Fusion.HitOptions.IgnoreInputAuthority">
<summary>
If the <see cref="T:Fusion.HitboxRoot"/> objects which the player performing the query
(if specified) has input authority over should be ignored by the query.
</summary>
</member>
<member name="T:Fusion.LagCompensationSettings">
<summary>
Settings for lag compensation history.
</summary>
</member>
<member name="F:Fusion.LagCompensationSettings.Enabled">
<summary>
Indicates if a <see cref="T:Fusion.HitboxManager"/> instance should be added when the <see cref="T:Fusion.NetworkRunner"/> is initialized.
</summary>
</member>
<member name="F:Fusion.LagCompensationSettings.HitboxBufferLengthInMs">
<summary>
Hitbox snapshot history length in milliseconds.
</summary>
</member>
<member name="F:Fusion.LagCompensationSettings.HitboxDefaultCapacity">
<summary>
Hitbox capacity per snapshot.
</summary>
</member>
<member name="F:Fusion.LagCompensationSettings.CachedStaticCollidersSize">
<summary>
The size of the cached static colliders (PhysX or Box2D) array of the default Lag Compensation Queries.
</summary>
</member>
<member name="P:Fusion.LagCompensationSettings.ExpansionFactor">
<summary>
Broadphase BVH node expansion factor (default 20%) for leaf nodes, so updates are not too frequent.
</summary>
</member>
<member name="P:Fusion.LagCompensationSettings.Optimize">
<summary>
Optional: tries to optimize broadphase BVH every update. May be removed in the future.
</summary>
</member>
<member name="T:Fusion.LagCompensatedHit">
<summary>
Defines a lag compensated query hit result.
</summary>
</member>
<member name="F:Fusion.LagCompensatedHit.Type">
<summary>
Hit object source (PhysX or Fusion Hitboxes).
</summary>
</member>
<member name="F:Fusion.LagCompensatedHit.GameObject">
<summary>
The Unity Game Object that was hit. Its data is not lag compensated.
This is either the <see cref="F:Fusion.LagCompensatedHit.Hitbox"/>'s or the <see cref="F:Fusion.LagCompensatedHit.Collider"/>'s gameObject,
depending on the object hit being a lag-compensated Hitbox or a regular Unity collider, respectively.
</summary>
</member>
<member name="F:Fusion.LagCompensatedHit.Normal">
<summary>
Surface normal (if requested) of the hit, at the lag compensated time.
</summary>
</member>
<member name="F:Fusion.LagCompensatedHit.Point">
<summary>
Point of impact of the hit, at the lag compensated time.
</summary>
</member>
<member name="F:Fusion.LagCompensatedHit.HitboxColliderPosition">
<summary>
The hitbox collider position on the snapshot.
</summary>
</member>
<member name="F:Fusion.LagCompensatedHit.HitboxColliderRotation">
<summary>
The hitbox collider rotation on the snapshot.
</summary>
</member>
<member name="F:Fusion.LagCompensatedHit.Distance">
<summary>
Distance (if requested) to hit, at the lag compensated time.
</summary>
</member>
<member name="F:Fusion.LagCompensatedHit.Hitbox">
<summary>
Fusion's <see cref="F:Fusion.LagCompensatedHit.Hitbox"/>. Null in case the hit was on PhysX or Box2D.
</summary>
</member>
<member name="F:Fusion.LagCompensatedHit.Collider">
<summary>
PhysX collider hit. Null in case hit is a Fusion <see cref="F:Fusion.LagCompensatedHit.Hitbox"/> or a Box2D hit.
</summary>
</member>
<member name="F:Fusion.LagCompensatedHit.Collider2D">
<summary>
Box2D collider hit. Null in case hit is a Fusion <see cref="F:Fusion.LagCompensatedHit.Hitbox"/> or a PhysX hit.
</summary>
</member>
<member name="F:Fusion.LagCompensatedHit._sortAux">
<summary>
Auxiliary field used when sorting hits in a collection.
</summary>
</member>
<member name="M:Fusion.LagCompensatedHit.op_Explicit(UnityEngine.RaycastHit)~Fusion.LagCompensatedHit">
<summary>
Creates a <see cref="T:Fusion.LagCompensatedHit"/> structure from the information on a Unity <see cref="T:UnityEngine.RaycastHit"/>.
</summary>
<param name="raycastHit">The <see cref="T:UnityEngine.RaycastHit"/> used as source.</param>
<returns>The built LagCompensatedHit structure.</returns>
</member>
<member name="M:Fusion.LagCompensatedHit.op_Explicit(UnityEngine.RaycastHit2D)~Fusion.LagCompensatedHit">
<summary>
Creates a <see cref="T:Fusion.LagCompensatedHit"/> structure from the information on a Unity <see cref="T:UnityEngine.RaycastHit2D"/>.
</summary>
<param name="raycastHit2D">The <see cref="T:UnityEngine.RaycastHit2D"/> used as source.</param>
<returns>The built LagCompensatedHit structure.</returns>
</member>
<member name="M:Fusion.LagCompensatedHit.FromHitboxHit(Fusion.LagCompensation.HitboxHit@)">
<summary>
Creates a <see cref="T:Fusion.LagCompensatedHit"/> structure from the information on a <see cref="T:Fusion.LagCompensation.HitboxHit"/>.
</summary>
<param name="hitboxHit">The <see cref="T:Fusion.LagCompensation.HitboxHit"/> used as source.</param>
<returns>The built LagCompensatedHit structure.</returns>
</member>
<member name="T:Fusion.HitboxRoot">
<summary>
Root <see cref="T:Fusion.Hitbox"/> group container. Manages registering/unregistering hitboxes with the group, and defines the broadphase geometry for the group.
<para><b><i>Broadphase</i></b> is the initial rough query used by raycasts/overlaps/etc to find potential hit candidates,
which are then used in the final <b><i>narrowphase</i></b> query.</para>
</summary>
</member>
<member name="T:Fusion.HitboxRoot.ConfigFlags">
<summary>
Set of configuration options for a Hitbox Root behaviour.
</summary>
</member>
<member name="F:Fusion.HitboxRoot.ConfigFlags.ReinitializeHitboxesBeforeRegistration">
<summary>
If the collection of hitboxes under a given root should be re-initialized before the Root is registered
in a hitbox snapshot. If disabled, the hitboxes will be used as configured in edit-time.
</summary>
</member>
<member name="F:Fusion.HitboxRoot.ConfigFlags.IncludeInactiveHitboxes">
<summary>
If Hitboxes on inactive Game Objects should be registered under this root upon initialization.
</summary>
</member>
<member name="F:Fusion.HitboxRoot.ConfigFlags.Legacy">
<summary>
Set of configuration flags that replicate the behaviour as it was before the flag options were added.
</summary>
</member>
<member name="F:Fusion.HitboxRoot.ConfigFlags.Default">
<summary>
Ser of configuration flags with the default behaviour, suitable for most use-cases.
</summary>
</member>
<member name="P:Fusion.HitboxRoot.HitboxRootActive">
<summary>
Get or set the state of this HitboxRoot.
For a hitbox to be hit by lag-compensated queries, both it and its HitboxRoot must be active.
</summary>
</member>
<member name="F:Fusion.HitboxRoot.MAX_HITBOXES">
<summary>
The max number of hitboxes allowed under the same root.
</summary>
</member>
<member name="F:Fusion.HitboxRoot.Config">
<summary>
Set of configuration options for this Hitbox Root behaviour.
Check the API documentation for more details on what each flag represents.
</summary>
</member>
<member name="F:Fusion.HitboxRoot.BroadRadius">
<summary>
The radius of the broadphase bounding sphere for this <see cref="T:Fusion.Hitbox"/> group.
Used by <see cref="T:Fusion.HitboxManager"/> to insert/update lag compensated NetworkObjects into its BVH (bounding volume hierarchy) data structure.
Be sure this radius encompasses all children <see cref="T:Fusion.Hitbox"/> components (including their full ranges of animation motion).
We plan to offer an option to dynamically compute the bounding volume, but the performance trade of will still favor a hand-crafted radius.
<para><b><i>Broadphase</i></b> is the initial rough query used by raycasts/overlaps/etc to find potential hit candidates,
which are then used in the final <b><i>narrowphase</i></b> query.</para>
</summary>
</member>
<member name="F:Fusion.HitboxRoot.Offset">
<summary>
Local-space offset of the broadphase bounding sphere from its transform position.
<para>Adjust the <see cref="F:Fusion.HitboxRoot.BroadRadius"/> and <see cref="F:Fusion.HitboxRoot.Offset"/> until the sphere gizmo (shown in the Unity Scene window)
encompasses all children <see cref="T:Fusion.Hitbox"/> components (including their full ranges of animation motion).</para>
<para><b><i>Broadphase</i></b> is the initial rough query used by raycasts/overlaps/etc to find potential hit candidates,
which are then used in the final <b><i>narrowphase</i></b> query.</para>
</summary>
</member>
<member name="F:Fusion.HitboxRoot.GizmosColor">
<summary>
Color used when drawing gizmos for this hitbox.
</summary>
</member>
<member name="F:Fusion.HitboxRoot.Hitboxes">
<summary>
All Hitbox instances in hierarchy. Auto-filled at Spawned.
</summary>
</member>
<member name="P:Fusion.HitboxRoot.Manager">
<summary>
Reference to associated hitbox manager (from which lag compensated queries can be performed).
</summary>
</member>
<member name="P:Fusion.HitboxRoot.InInterest">
<summary>
If this <see cref="T:Fusion.HitboxRoot"/> is in interest for the local player.
</summary>
</member>
<member name="M:Fusion.HitboxRoot.OnDrawGizmos">
<summary>
<see cref="T:Fusion.HitboxRoot"/> on draw gizmos.
</summary>
</member>
<member name="M:Fusion.HitboxRoot.DrawGizmos(UnityEngine.Color,UnityEngine.Matrix4x4@)">
<summary>
Draws the gizmos for the <see cref="T:Fusion.HitboxRoot"/>
</summary>
</member>
<member name="M:Fusion.HitboxRoot.InitHitboxes">
<summary>
Finds child <see cref="T:Fusion.Hitbox"/> components, and adds them to the <see cref="F:Fusion.HitboxRoot.Hitboxes"/> collection.
</summary>
</member>
<member name="M:Fusion.HitboxRoot.SetMinBoundingRadius">
<summary>
Sets <see cref="F:Fusion.HitboxRoot.BroadRadius"/> to a rough value which encompasses all <see cref="F:Fusion.HitboxRoot.Hitboxes"/> in their current positions.
</summary>
</member>
<member name="M:Fusion.HitboxRoot.SetHitboxActive(Fusion.Hitbox,System.Boolean)">
<summary>
Sets the state of a Hitbox instance under this root.
Both the hitbox and its root must be active in order for it to be hit by lag-compensated queries.
</summary>
<param name="hitbox">A hitbox instance under the hierarchy of this root.</param>
<param name="setActive">If the hitbox should be activated or deactivated.</param>
<exception cref="T:System.ArgumentOutOfRangeException">If the <see cref="P:Fusion.Hitbox.HitboxIndex"/> of the <paramref name="hitbox"/> is outside the valid range.</exception>
<exception cref="T:Fusion.AssertException">In Debug configuration, if the <paramref name="hitbox"/> is not part of this root.</exception>
</member>
<member name="M:Fusion.HitboxRoot.IsHitboxActive(Fusion.Hitbox)">
<summary>
Checks the state of a Hitbox instance under this root.
Both the hitbox and its root must be active in order for it to be hit by lag-compensated queries.
</summary>
<param name="hitbox">A hitbox instance under the hierarchy of this root.</param>
<returns>True if the <paramref name="hitbox"/> is part of this root and is active.</returns>
<exception cref="T:System.ArgumentOutOfRangeException">If the <see cref="P:Fusion.Hitbox.HitboxIndex"/> of the <paramref name="hitbox"/> is outside the valid range.</exception>
<exception cref="T:Fusion.AssertException">In Debug configuration, if the <paramref name="hitbox"/> is not part of this root.</exception>
</member>
<member name="M:Fusion.HitboxRoot.Despawned(Fusion.NetworkRunner,System.Boolean)">
<inheritdoc cref="M:Fusion.NetworkBehaviour.Despawned(Fusion.NetworkRunner,System.Boolean)"/>
</member>
<member name="T:Fusion.Angle">
<summary>
A Networked fusion type for degrees. This can be used with the <see cref="T:Fusion.NetworkedAttribute"/>, in RPCs, or in <see cref="T:Fusion.NetworkInput"/> structs.
</summary>
</member>
<member name="F:Fusion.Angle.SIZE">
<summary>Size of this struct in bytes.</summary>
</member>
<member name="M:Fusion.Angle.Clamp(Fusion.Angle,Fusion.Angle)">
<summary>
Clamps the current value to the supplied min-max range.
</summary>
</member>
<member name="M:Fusion.Angle.Min(Fusion.Angle,Fusion.Angle)">
<summary>
Returns the smaller of two supplied angles.
</summary>
</member>
<member name="M:Fusion.Angle.Max(Fusion.Angle,Fusion.Angle)">
<summary>
Returns the larger of two supplied angles.
</summary>
</member>
<member name="M:Fusion.Angle.Lerp(Fusion.Angle,Fusion.Angle,System.Single)">
<summary>
Lerps between two angle values.
</summary>
</member>
<member name="M:Fusion.Angle.Clamp(Fusion.Angle,Fusion.Angle,Fusion.Angle)">
<summary>
Returns a the value, clamped to the min-max range.
</summary>
</member>
<member name="M:Fusion.Angle.op_LessThan(Fusion.Angle,Fusion.Angle)">
<summary>
Less than operator for Angle struct.
</summary>
<param name="a">First Angle instance.</param>
<param name="b">Second Angle instance.</param>
<returns>True if the value of the first Angle instance is less than the value of the second Angle instance, otherwise false.</returns>
</member>
<member name="M:Fusion.Angle.op_LessThanOrEqual(Fusion.Angle,Fusion.Angle)">
<summary>
Less than or equal to operator for Angle struct.
</summary>
<param name="a">First Angle instance.</param>
<param name="b">Second Angle instance.</param>
<returns>True if the value of the first Angle instance is less than or equal to the value of the second Angle instance, otherwise false.</returns>
</member>
<member name="M:Fusion.Angle.op_GreaterThan(Fusion.Angle,Fusion.Angle)">
<summary>
Greater than operator for Angle struct.
</summary>
<param name="a">First Angle instance.</param>
<param name="b">Second Angle instance.</param>
<returns>True if the value of the first Angle instance is greater than the value of the second Angle instance, otherwise false.</returns>
</member>
<member name="M:Fusion.Angle.op_GreaterThanOrEqual(Fusion.Angle,Fusion.Angle)">
<summary>
Greater than or equal to operator for Angle struct.
</summary>
<param name="a">First Angle instance.</param>
<param name="b">Second Angle instance.</param>
<returns>True if the value of the first Angle instance is greater than or equal to the value of the second Angle instance, otherwise false.</returns>
</member>
<member name="M:Fusion.Angle.op_Equality(Fusion.Angle,Fusion.Angle)">
<summary>
Equality operator for Angle struct.
</summary>
<param name="a">First Angle instance.</param>
<param name="b">Second Angle instance.</param>
<returns>True if the value of the first Angle instance is equal to the value of the second Angle instance, otherwise false.</returns>
</member>
<member name="M:Fusion.Angle.op_Inequality(Fusion.Angle,Fusion.Angle)">
<summary>
Inequality operator for Angle struct.
</summary>
<param name="a">First Angle instance.</param>
<param name="b">Second Angle instance.</param>
<returns>True if the value of the first Angle instance is not equal to the value of the second Angle instance, otherwise false.</returns>
</member>
<member name="M:Fusion.Angle.Equals(Fusion.Angle)">
<summary>
Checks equality with another Angle.
</summary>
<param name="other">Other Angle.</param>
<returns>Equality result.</returns>
</member>
<member name="M:Fusion.Angle.Equals(System.Object)">
<summary>
Checks equality with an object.
</summary>
<param name="obj">Object to compare.</param>
<returns>Equality result.</returns>
</member>
<member name="M:Fusion.Angle.GetHashCode">
<summary>
Gets the hash code.
</summary>
<returns>Hash code.</returns>
</member>
<member name="M:Fusion.Angle.op_Addition(Fusion.Angle,Fusion.Angle)">
<summary>
Addition operator for Angle struct.
</summary>
<param name="a">First Angle instance.</param>
<param name="b">Second Angle instance.</param>
<returns>A new Angle instance that is the sum of the first and second Angle instances, wrapped around at 360 degrees if necessary.</returns>
</member>
<member name="M:Fusion.Angle.op_Subtraction(Fusion.Angle,Fusion.Angle)">
<summary>
Subtraction operator for Angle struct.
</summary>
<param name="a">First Angle instance.</param>
<param name="b">Second Angle instance.</param>
<returns>A new Angle instance that is the difference of the first and second Angle instances, wrapped around at 360 degrees if necessary.</returns>
</member>
<member name="M:Fusion.Angle.op_Explicit(Fusion.Angle)~System.Single">
<summary>
Converts Angle to float.
</summary>
<param name="value">Angle instance.</param>
<returns>Float representation of the Angle.</returns>
</member>
<member name="M:Fusion.Angle.op_Explicit(Fusion.Angle)~System.Double">
<summary>
Converts Angle to double.
</summary>
<param name="value">Angle instance.</param>
<returns>Double representation of the Angle.</returns>
</member>
<member name="M:Fusion.Angle.op_Implicit(System.Double)~Fusion.Angle">
<summary>
Converts double to Angle.
</summary>
<param name="value">Double value.</param>
<returns>Angle instance with the value of the double.</returns>
</member>
<member name="M:Fusion.Angle.op_Implicit(System.Single)~Fusion.Angle">
<summary>
Converts float to Angle.
</summary>
<param name="value">Float value.</param>
<returns>Angle instance with the value of the float.</returns>
</member>
<member name="M:Fusion.Angle.op_Implicit(System.Int32)~Fusion.Angle">
<summary>
Converts int to Angle.
</summary>
<param name="value">Integer value.</param>
<returns>Angle instance with the value of the integer.</returns>
</member>
<member name="M:Fusion.Angle.ToString">
<summary>
String representation of the Angle.
</summary>
</member>
<member name="T:Fusion.AssetObject">
<summary>
Base class for all Fusion assets.
</summary>
</member>
<member name="T:Fusion.Behaviour">
<summary>
Alternative base class to Unity's MonoBehaviour.
This allows for components that work both in Unity, as well as the Photon relays.
</summary>
</member>
<member name="M:Fusion.Behaviour.AddBehaviour``1">
<summary>
Wrapper for Unity's GameObject.AddComponent()
</summary>
</member>
<member name="M:Fusion.Behaviour.TryGetBehaviour``1(``0@)">
<summary>
Wrapper for Unity's GameObject.TryGetComponent()
</summary>
</member>
<member name="M:Fusion.Behaviour.GetBehaviour``1">
<summary>
Wrapper for Unity's GameObject.GetComponentInChildren()
</summary>
</member>
<member name="M:Fusion.Behaviour.DestroyBehaviour(Fusion.Behaviour)">
<summary>
Wrapper for Unity's GameObject.Destroy()
</summary>
</member>
<member name="M:Fusion.Behaviour.GetDumpString(System.Text.StringBuilder)">
<summary>
Get the string to dump to the log.
</summary>
<param name="builder">The string builder to append to.</param>
</member>
<member name="T:Fusion.FloatCompressed">
<summary>
Represents a compressed float value for network transmission.
</summary>
</member>
<member name="F:Fusion.FloatCompressed.valueEncoded">
<summary>Encoded value of the float.</summary>
</member>
<member name="M:Fusion.FloatCompressed.op_Implicit(System.Single)~Fusion.FloatCompressed">
<summary>
Implicit conversion from float to FloatCompressed.
</summary>
<param name="v">The float value to convert.</param>
<returns>A new FloatCompressed instance with the compressed value of the float.</returns>
</member>
<member name="M:Fusion.FloatCompressed.op_Implicit(Fusion.FloatCompressed)~System.Single">
<summary>
Implicit conversion from FloatCompressed to float.
</summary>
<param name="q">The FloatCompressed instance to convert.</param>
<returns>The decompressed float value of the FloatCompressed instance.</returns>
</member>
<member name="M:Fusion.FloatCompressed.Equals(Fusion.FloatCompressed)">
<summary>
Checks if the current FloatCompressed instance is equal to the other FloatCompressed instance.
</summary>
<param name="other">The other FloatCompressed instance to compare with the current FloatCompressed instance.</param>
<returns>True if the values of both FloatCompressed instances are equal, otherwise false.</returns>
</member>
<member name="M:Fusion.FloatCompressed.Equals(System.Object)">
<summary>
Checks if the provided object is a FloatCompressed instance and if it's equal to the current FloatCompressed instance.
</summary>
<param name="obj">The object to compare with the current FloatCompressed instance.</param>
<returns>True if the provided object is a FloatCompressed instance and it's equal to the current FloatCompressed instance, otherwise false.</returns>
</member>
<member name="M:Fusion.FloatCompressed.GetHashCode">
<summary>
Returns the hash code for the current FloatCompressed instance.
</summary>
<returns>A hash code for the current FloatCompressed instance.</returns>
</member>
<member name="M:Fusion.FloatCompressed.op_Equality(Fusion.FloatCompressed,Fusion.FloatCompressed)">
<summary>
Equality operator for FloatCompressed struct.
</summary>
<param name="left">First FloatCompressed instance.</param>
<param name="right">Second FloatCompressed instance.</param>
<returns>True if the value of the first FloatCompressed instance is equal to the value of the second FloatCompressed instance, otherwise false.</returns>
</member>
<member name="M:Fusion.FloatCompressed.op_Inequality(Fusion.FloatCompressed,Fusion.FloatCompressed)">
<summary>
Inequality operator for FloatCompressed struct.
</summary>
<param name="left">First FloatCompressed instance.</param>
<param name="right">Second FloatCompressed instance.</param>
<returns>True if the value of the first FloatCompressed instance is not equal to the value of the second FloatCompressed instance, otherwise false.</returns>
</member>
<member name="T:Fusion.Vector2Compressed">
<summary>
Represents a compressed Vector2 value for network transmission.
</summary>
</member>
<member name="F:Fusion.Vector2Compressed.xEncoded">
<summary>Encoded value of the x component.</summary>
</member>
<member name="F:Fusion.Vector2Compressed.yEncoded">
<summary>Encoded value of the y component.</summary>
</member>
<member name="P:Fusion.Vector2Compressed.X">
<summary>Gets or sets the x component.</summary>
</member>
<member name="P:Fusion.Vector2Compressed.Y">
<summary>Gets or sets the y component.</summary>
</member>
<member name="M:Fusion.Vector2Compressed.op_Implicit(UnityEngine.Vector2)~Fusion.Vector2Compressed">
<summary>
Implicit conversion from Vector2 to Vector2Compressed.
</summary>
<param name="v">The Vector2 value to convert.</param>
<returns>A new Vector2Compressed instance with the compressed value of the Vector2.</returns>
</member>
<member name="M:Fusion.Vector2Compressed.op_Implicit(Fusion.Vector2Compressed)~UnityEngine.Vector2">
<summary>
Implicit conversion from Vector2Compressed to Vector2.
</summary>
<param name="q">The Vector2Compressed instance to convert.</param>
<returns>The decompressed Vector2 value of the Vector2Compressed instance.</returns>
</member>
<member name="M:Fusion.Vector2Compressed.Equals(Fusion.Vector2Compressed)">
<summary>
Checks if the current Vector2Compressed instance is equal to the other Vector2Compressed instance.
</summary>
<param name="other">The other Vector2Compressed instance to compare with the current Vector2Compressed instance.</param>
<returns>True if the values of both Vector2Compressed instances are equal, otherwise false.</returns>
</member>
<member name="M:Fusion.Vector2Compressed.Equals(System.Object)">
<summary>
Checks if the provided object is a Vector2Compressed instance and if it's equal to the current Vector2Compressed instance.
</summary>
<param name="obj">The object to compare with the current Vector2Compressed instance.</param>
<returns>True if the provided object is a Vector2Compressed instance and it's equal to the current Vector2Compressed instance, otherwise false.</returns>
</member>
<member name="M:Fusion.Vector2Compressed.GetHashCode">
<summary>
Returns the hash code for the current Vector2Compressed instance.
</summary>
<returns>A hash code for the current Vector2Compressed instance.</returns>
</member>
<member name="M:Fusion.Vector2Compressed.op_Equality(Fusion.Vector2Compressed,Fusion.Vector2Compressed)">
<summary>
Equality operator for Vector2Compressed struct.
</summary>
<param name="left">First Vector2Compressed instance.</param>
<param name="right">Second Vector2Compressed instance.</param>
<returns>True if the value of the first Vector2Compressed instance is equal to the value of the second Vector2Compressed instance, otherwise false.</returns>
</member>
<member name="M:Fusion.Vector2Compressed.op_Inequality(Fusion.Vector2Compressed,Fusion.Vector2Compressed)">
<summary>
Inequality operator for Vector2Compressed struct.
</summary>
<param name="left">First Vector2Compressed instance.</param>
<param name="right">Second Vector2Compressed instance.</param>
<returns>True if the value of the first Vector2Compressed instance is not equal to the value of the second Vector2Compressed instance, otherwise false.</returns>
</member>
<member name="T:Fusion.Vector3Compressed">
<summary>
Represents a compressed Vector3 value for network transmission.
</summary>
</member>
<member name="F:Fusion.Vector3Compressed.xEncoded">
<summary>Encoded value of the x component.</summary>
</member>
<member name="F:Fusion.Vector3Compressed.yEncoded">
<summary>Encoded value of the y component.</summary>
</member>
<member name="F:Fusion.Vector3Compressed.zEncoded">
<summary>Encoded value of the z component.</summary>
</member>
<member name="P:Fusion.Vector3Compressed.X">
<summary>Gets or sets the x component.</summary>
</member>
<member name="P:Fusion.Vector3Compressed.Y">
<summary>Gets or sets the y component.</summary>
</member>
<member name="P:Fusion.Vector3Compressed.Z">
<summary>Gets or sets the z component.</summary>
</member>
<member name="M:Fusion.Vector3Compressed.op_Implicit(UnityEngine.Vector3)~Fusion.Vector3Compressed">
<summary>
Implicit conversion from Vector3 to Vector3Compressed.
</summary>
<param name="v">The Vector3 value to convert.</param>
<returns>A new Vector3Compressed instance with the compressed value of the Vector3.</returns>
</member>
<member name="M:Fusion.Vector3Compressed.op_Implicit(Fusion.Vector3Compressed)~UnityEngine.Vector3">
<summary>
Implicit conversion from Vector3Compressed to Vector3.
</summary>
<param name="q">The Vector3Compressed instance to convert.</param>
<returns>The decompressed Vector3 value of the Vector3Compressed instance.</returns>
</member>
<member name="M:Fusion.Vector3Compressed.op_Implicit(UnityEngine.Vector2)~Fusion.Vector3Compressed">
<summary>
Implicit conversion from Vector2 to Vector3Compressed.
</summary>
<param name="v">The Vector2 value to convert.</param>
<returns>A new Vector3Compressed instance with the compressed value of the Vector2.</returns>
</member>
<member name="M:Fusion.Vector3Compressed.op_Implicit(Fusion.Vector3Compressed)~UnityEngine.Vector2">
<summary>
Implicit conversion from Vector3Compressed to Vector2.
</summary>
<param name="q">The Vector3Compressed instance to convert.</param>
<returns>The decompressed Vector2 value of the Vector3Compressed instance.</returns>
</member>
<member name="M:Fusion.Vector3Compressed.Equals(Fusion.Vector3Compressed)">
<summary>
Checks if the current Vector3Compressed instance is equal to the other Vector3Compressed instance.
</summary>
<param name="other">The other Vector3Compressed instance to compare with the current Vector3Compressed instance.</param>
<returns>True if the values of both Vector3Compressed instances are equal, otherwise false.</returns>
</member>
<member name="M:Fusion.Vector3Compressed.Equals(System.Object)">
<summary>
Checks if the provided object is a Vector3Compressed instance and if it's equal to the current Vector3Compressed instance.
</summary>
<param name="obj">The object to compare with the current Vector3Compressed instance.</param>
<returns>True if the provided object is a Vector3Compressed instance and it's equal to the current Vector3Compressed instance, otherwise false.</returns>
</member>
<member name="M:Fusion.Vector3Compressed.GetHashCode">
<summary>
Returns the hash code for the current Vector3Compressed instance.
</summary>
<returns>A hash code for the current Vector3Compressed instance.</returns>
</member>
<member name="M:Fusion.Vector3Compressed.op_Equality(Fusion.Vector3Compressed,Fusion.Vector3Compressed)">
<summary>
Equality operator for Vector3Compressed struct.
</summary>
<param name="left">First Vector3Compressed instance.</param>
<param name="right">Second Vector3Compressed instance.</param>
<returns>True if the value of the first Vector3Compressed instance is equal to the value of the second Vector3Compressed instance, otherwise false.</returns>
</member>
<member name="M:Fusion.Vector3Compressed.op_Inequality(Fusion.Vector3Compressed,Fusion.Vector3Compressed)">
<summary>
Inequality operator for Vector3Compressed struct.
</summary>
<param name="left">First Vector3Compressed instance.</param>
<param name="right">Second Vector3Compressed instance.</param>
<returns>True if the value of the first Vector3Compressed instance is not equal to the value of the second Vector3Compressed instance, otherwise false.</returns>
</member>
<member name="T:Fusion.Vector4Compressed">
<summary>
Represents a compressed Vector4 value for network transmission.
</summary>
</member>
<member name="F:Fusion.Vector4Compressed.xEncoded">
<summary>Encoded value of the x component.</summary>
</member>
<member name="F:Fusion.Vector4Compressed.yEncoded">
<summary>Encoded value of the y component.</summary>
</member>
<member name="F:Fusion.Vector4Compressed.zEncoded">
<summary>Encoded value of the z component.</summary>
</member>
<member name="F:Fusion.Vector4Compressed.wEncoded">
<summary>Encoded value of the w component.</summary>
</member>
<member name="P:Fusion.Vector4Compressed.X">
<summary>Gets or sets the x component.</summary>
</member>
<member name="P:Fusion.Vector4Compressed.Y">
<summary>Gets or sets the y component.</summary>
</member>
<member name="P:Fusion.Vector4Compressed.Z">
<summary>Gets or sets the z component.</summary>
</member>
<member name="P:Fusion.Vector4Compressed.W">
<summary>Gets or sets the w component.</summary>
</member>
<member name="M:Fusion.Vector4Compressed.op_Implicit(UnityEngine.Vector4)~Fusion.Vector4Compressed">
<summary>
Implicit conversion from Vector4 to Vector4Compressed.
</summary>
<param name="v">The Vector4 value to convert.</param>
<returns>A new Vector4Compressed instance with the compressed value of the Vector4.</returns>
</member>
<member name="M:Fusion.Vector4Compressed.op_Implicit(Fusion.Vector4Compressed)~UnityEngine.Vector4">
<summary>
Implicit conversion from Vector4Compressed to Vector4.
</summary>
<param name="q">The Vector4Compressed instance to convert.</param>
<returns>The decompressed Vector4 value of the Vector4Compressed instance.</returns>
</member>
<member name="M:Fusion.Vector4Compressed.Equals(Fusion.Vector4Compressed)">
<summary>
Checks if the current Vector4Compressed instance is equal to the other Vector4Compressed instance.
</summary>
<param name="other">The other Vector4Compressed instance to compare with the current Vector4Compressed instance.</param>
<returns>True if the values of both Vector4Compressed instances are equal, otherwise false.</returns>
</member>
<member name="M:Fusion.Vector4Compressed.Equals(System.Object)">
<summary>
Checks if the provided object is a Vector4Compressed instance and if it's equal to the current Vector4Compressed instance.
</summary>
<param name="obj">The object to compare with the current Vector4Compressed instance.</param>
<returns>True if the provided object is a Vector4Compressed instance and it's equal to the current Vector4Compressed instance, otherwise false.</returns>
</member>
<member name="M:Fusion.Vector4Compressed.GetHashCode">
<summary>
Returns the hash code for the current Vector4Compressed instance.
</summary>
<returns>A hash code for the current Vector4Compressed instance.</returns>
</member>
<member name="M:Fusion.Vector4Compressed.op_Equality(Fusion.Vector4Compressed,Fusion.Vector4Compressed)">
<summary>
Equality operator for Vector4Compressed struct.
</summary>
<param name="left">First Vector4Compressed instance.</param>
<param name="right">Second Vector4Compressed instance.</param>
<returns>True if the value of the first Vector4Compressed instance is equal to the value of the second Vector4Compressed instance, otherwise false.</returns>
</member>
<member name="M:Fusion.Vector4Compressed.op_Inequality(Fusion.Vector4Compressed,Fusion.Vector4Compressed)">
<summary>
Inequality operator for Vector4Compressed struct.
</summary>
<param name="left">First Vector4Compressed instance.</param>
<param name="right">Second Vector4Compressed instance.</param>
<returns>True if the value of the first Vector4Compressed instance is not equal to the value of the second Vector4Compressed instance, otherwise false.</returns>
</member>
<member name="T:Fusion.QuaternionCompressed">
<summary>
Represents a compressed Quaternion value for network transmission.
</summary>
</member>
<member name="F:Fusion.QuaternionCompressed.xEncoded">
<summary>Encoded value of the x component.</summary>
</member>
<member name="F:Fusion.QuaternionCompressed.yEncoded">
<summary>Encoded value of the y component.</summary>
</member>
<member name="F:Fusion.QuaternionCompressed.zEncoded">
<summary>Encoded value of the z component.</summary>
</member>
<member name="F:Fusion.QuaternionCompressed.wEncoded">
<summary>Encoded value of the w component.</summary>
</member>
<member name="P:Fusion.QuaternionCompressed.X">
<summary>Gets or sets the x component.</summary>
</member>
<member name="P:Fusion.QuaternionCompressed.Y">
<summary>Gets or sets the y component.</summary>
</member>
<member name="P:Fusion.QuaternionCompressed.Z">
<summary>Gets or sets the z component.</summary>
</member>
<member name="P:Fusion.QuaternionCompressed.W">
<summary>Gets or sets the w component.</summary>
</member>
<member name="M:Fusion.QuaternionCompressed.op_Implicit(UnityEngine.Quaternion)~Fusion.QuaternionCompressed">
<summary>
Implicit conversion from Quaternion to QuaternionCompressed.
</summary>
<param name="v">The Quaternion value to convert.</param>
<returns>A new QuaternionCompressed instance with the compressed value of the Quaternion.</returns>
</member>
<member name="M:Fusion.QuaternionCompressed.op_Implicit(Fusion.QuaternionCompressed)~UnityEngine.Quaternion">
<summary>
Implicit conversion from QuaternionCompressed to Quaternion.
</summary>
<param name="q">The QuaternionCompressed instance to convert.</param>
<returns>The decompressed Quaternion value of the QuaternionCompressed instance.</returns>
</member>
<member name="M:Fusion.QuaternionCompressed.Equals(Fusion.QuaternionCompressed)">
<summary>
Checks if the current QuaternionCompressed instance is equal to the other QuaternionCompressed instance.
</summary>
<param name="other">The other QuaternionCompressed instance to compare with the current QuaternionCompressed instance.</param>
<returns>True if the values of both QuaternionCompressed instances are equal, otherwise false.</returns>
</member>
<member name="M:Fusion.QuaternionCompressed.Equals(System.Object)">
<summary>
Checks if the provided object is a QuaternionCompressed instance and if it's equal to the current QuaternionCompressed instance.
</summary>
<param name="obj">The object to compare with the current QuaternionCompressed instance.</param>
<returns>True if the provided object is a QuaternionCompressed instance and it's equal to the current QuaternionCompressed instance, otherwise false.</returns>
</member>
<member name="M:Fusion.QuaternionCompressed.GetHashCode">
<summary>
Returns the hash code for the current QuaternionCompressed instance.
</summary>
<returns>A hash code for the current QuaternionCompressed instance.</returns>
</member>
<member name="M:Fusion.QuaternionCompressed.op_Equality(Fusion.QuaternionCompressed,Fusion.QuaternionCompressed)">
<summary>
Equality operator for QuaternionCompressed struct.
</summary>
<param name="left">First QuaternionCompressed instance.</param>
<param name="right">Second QuaternionCompressed instance.</param>
<returns>True if the value of the first QuaternionCompressed instance is equal to the value of the second QuaternionCompressed instance, otherwise false.</returns>
</member>
<member name="M:Fusion.QuaternionCompressed.op_Inequality(Fusion.QuaternionCompressed,Fusion.QuaternionCompressed)">
<summary>
Inequality operator for QuaternionCompressed struct.
</summary>
<param name="left">First QuaternionCompressed instance.</param>
<param name="right">Second QuaternionCompressed instance.</param>
<returns>True if the value of the first QuaternionCompressed instance is not equal to the value of the second QuaternionCompressed instance, otherwise false.</returns>
</member>
<member name="T:Fusion.ConnectionType">
<summary>
Defines the type of the current connection with the Remote Peer,
either the Server or a Client
</summary>
</member>
<member name="F:Fusion.ConnectionType.None">
<summary>
No connection is currently active
</summary>
</member>
<member name="F:Fusion.ConnectionType.Relayed">
<summary>
Connection was accomplished using the Photon Relay Services
</summary>
</member>
<member name="F:Fusion.ConnectionType.Direct">
<summary>
Connection was accomplished directly with the remote peer
</summary>
</member>
<member name="T:Fusion.FixedArray`1">
<summary>
A fixed size array that can be used in structs.
</summary>
<typeparam name="T"></typeparam>
</member>
<member name="T:Fusion.FixedArray`1.Enumerator">
<summary>
Enumerator for the FixedArray struct.
</summary>
</member>
<member name="P:Fusion.FixedArray`1.Enumerator.Current">
<summary>
Gets the current element in the collection.
</summary>
</member>
<member name="M:Fusion.FixedArray`1.Enumerator.#ctor(Fusion.FixedArray{`0})">
<summary>
Initializes a new instance of the Enumerator struct.
</summary>
<param name="array">The FixedArray instance to enumerate.</param>
</member>
<member name="M:Fusion.FixedArray`1.Enumerator.MoveNext">
<summary>
Advances the enumerator to the next element of the collection.
</summary>
<returns>True if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection.</returns>
</member>
<member name="M:Fusion.FixedArray`1.Enumerator.Reset">
<summary>
Sets the enumerator to its initial position, which is before the first element in the collection.
</summary>
</member>
<member name="M:Fusion.FixedArray`1.Enumerator.Dispose">
<summary>
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
</summary>
</member>
<member name="P:Fusion.FixedArray`1.Length">
<summary>
The fixed size of the array.
</summary>
</member>
<member name="P:Fusion.FixedArray`1.Item(System.Int32)">
<summary>
Indexer of array elements.
</summary>
</member>
<member name="M:Fusion.FixedArray`1.#ctor(`0*,System.Int32)">
<summary>
NetworkArray constructor.
</summary>
</member>
<member name="M:Fusion.FixedArray`1.ToArray">
<summary>
Allocates a new array and copies values from this array. For a non-alloc alternative use <see cref="M:Fusion.FixedArray`1.CopyTo(System.Collections.Generic.List{`0})"/>.
</summary>
</member>
<member name="M:Fusion.FixedArray`1.CopyTo(System.Collections.Generic.List{`0})">
<summary>
Adds each value to the supplied List. This does not clear the list, so values will be appended to the existing list.
</summary>
</member>
<member name="M:Fusion.FixedArray`1.CopyTo(`0[],System.Boolean)">
<summary>
Copies values to the supplied array.
</summary>
<param name="array">The array to copy values to. Must not be null.</param>
<param name="throwIfOverflow">If true, this method will throw an error if the supplied array is smaller than this <see cref="T:Fusion.NetworkArray`1"/>. If false, will only copy as many elements as the target array can hold.</param>
</member>
<member name="M:Fusion.FixedArray`1.ToString">
<summary>
Returns a string that represents the current object.
</summary>
</member>
<member name="M:Fusion.FixedArray`1.GetEnumerator">
<summary>
Returns an enumerator that iterates through the FixedArray.
</summary>
</member>
<member name="M:Fusion.FixedArray`1.Clear">
<summary>
Sets all elements in the array to their default value.
</summary>
</member>
<member name="M:Fusion.FixedArray`1.CopyFrom(`0[],System.Int32,System.Int32)">
<summary>
Copies a range of elements from a source array into the FixedArray.
</summary>
<param name="source">The source array from which to copy elements. Must not be null.</param>
<param name="sourceOffset">The zero-based index in the source array at which copying begins.</param>
<param name="sourceCount">The number of elements to copy from the source array.</param>
<exception cref="T:System.ArgumentNullException">Thrown when the provided source array is null.</exception>
<exception cref="T:System.ArgumentException">Thrown when the number of elements to copy is greater than the length of the FixedArray.</exception>
<exception cref="T:System.ArgumentOutOfRangeException">Thrown when the sum of sourceOffset and sourceCount is greater than the length of the source array.</exception>
</member>
<member name="M:Fusion.FixedArray`1.CopyFrom(System.Collections.Generic.List{`0},System.Int32,System.Int32)">
<summary>
Copies a range of elements from a source list into the FixedArray.
</summary>
<param name="source">The source list from which to copy elements. Must not be null.</param>
<param name="sourceOffset">The zero-based index in the source list at which copying begins.</param>
<param name="sourceCount">The number of elements to copy from the source list.</param>
<exception cref="T:System.ArgumentNullException">Thrown when the provided source list is null.</exception>
<exception cref="T:System.ArgumentException">Thrown when the number of elements to copy is greater than the length of the FixedArray.</exception>
<exception cref="T:System.ArgumentOutOfRangeException">Thrown when the sum of sourceOffset and sourceCount is greater than the length of the source list.</exception>
</member>
<member name="M:Fusion.FixedArray`1.ToListString">
<summary>
Returns the elements of this array as a string, with value separated by \n characters. Specifically for use in the Unity inspector.
This is private and only is found by NetworkBehaviourEditor using reflection, so do not rename this method.
</summary>
</member>
<member name="T:Fusion.FixedArray">
<summary>
Helper methods for FixedArray.
</summary>
</member>
<member name="M:Fusion.FixedArray.CreateFromFieldSequence``1(``0@,``0@)">
<summary>
Creates a FixedArray from a sequence of fields.
</summary>
<param name="firstField">Reference to the first field in the sequence.</param>
<param name="lastField">Reference to the last field in the sequence.</param>
<returns>A new FixedArray instance with the values from the sequence of fields.</returns>
</member>
<member name="M:Fusion.FixedArray.Create``1(``0@,System.Int32)">
<summary>
Creates a FixedArray with a specified length.
</summary>
<param name="firstField">Reference to the first field in the array.</param>
<param name="length">The length of the array.</param>
<returns>A new FixedArray instance with the specified length.</returns>
</member>
<member name="M:Fusion.FixedArray.Create``2(``0@,System.Int32)">
<summary>
Creates a FixedArray with a specified length and adapts the type of the elements.
</summary>
<param name="firstField">Reference to the first field in the array.</param>
<param name="length">The length of the array.</param>
<returns>A new FixedArray instance with the specified length and adapted type of elements.</returns>
</member>
<member name="M:Fusion.FixedArray.IndexOf``1(Fusion.FixedArray{``0},``0)">
<summary>
Returns the index of the first occurrence of a value in the FixedArray.
</summary>
<param name="array">The FixedArray to search.</param>
<param name="elem">The value to locate in the FixedArray.</param>
<returns>The zero-based index of the first occurrence of elem within the entire FixedArray, if found; otherwise, -1.</returns>
</member>
<member name="T:Fusion.IFixedStorage">
<summary>
Interface for fixed storage types.
</summary>
</member>
<member name="T:Fusion.FixedStorage">
<summary>
Provides utility methods for fixed storage types.
</summary>
</member>
<member name="M:Fusion.FixedStorage.GetWordCount``1">
<summary>
Gets the word count of a fixed storage type.
</summary>
<typeparam name="T">The type of the fixed storage.</typeparam>
<returns>The word count of the fixed storage type.</returns>
</member>
<member name="T:Fusion._2">
<summary>
A FixedStorage that can hold up to 2 words.
</summary>
</member>
<member name="F:Fusion._2.SIZE">
<summary>
The size of the FixedStorage in bytes.
</summary>
</member>
<member name="F:Fusion._2.Data">
<summary>
The data of the FixedStorage.
</summary>
</member>
<member name="T:Fusion._4">
<summary>
A FixedStorage that can hold up to 4 words.
</summary>
</member>
<member name="F:Fusion._4.SIZE">
<summary>
The size of the FixedStorage in bytes.
</summary>
</member>
<member name="F:Fusion._4.Data">
<summary>
The data of the FixedStorage.
</summary>
</member>
<member name="T:Fusion._8">
<summary>
A FixedStorage that can hold up to 8 words.
</summary>
</member>
<member name="F:Fusion._8.SIZE">
<summary>
The size of the FixedStorage in bytes.
</summary>
</member>
<member name="F:Fusion._8.Data">
<summary>
The data of the FixedStorage.
</summary>
</member>
<member name="T:Fusion._16">
<summary>
A FixedStorage that can hold up to 16 words.
</summary>
</member>
<member name="F:Fusion._16.SIZE">
<summary>
The size of the FixedStorage in bytes.
</summary>
</member>
<member name="F:Fusion._16.Data">
<summary>
The data of the FixedStorage.
</summary>
</member>
<member name="T:Fusion._32">
<summary>
A FixedStorage that can hold up to 32 words.
</summary>
</member>
<member name="F:Fusion._32.SIZE">
<summary>
The size of the FixedStorage in bytes.
</summary>
</member>
<member name="F:Fusion._32.Data">
<summary>
The data of the FixedStorage.
</summary>
</member>
<member name="T:Fusion._64">
<summary>
A FixedStorage that can hold up to 64 words.
</summary>
</member>
<member name="F:Fusion._64.SIZE">
<summary>
The size of the FixedStorage in bytes.
</summary>
</member>
<member name="F:Fusion._64.Data">
<summary>
The data of the FixedStorage.
</summary>
</member>
<member name="T:Fusion._128">
<summary>
A FixedStorage that can hold up to 128 words.
</summary>
</member>
<member name="F:Fusion._128.SIZE">
<summary>
The size of the FixedStorage in bytes.
</summary>
</member>
<member name="F:Fusion._128.Data">
<summary>
The data of the FixedStorage.
</summary>
</member>
<member name="T:Fusion._256">
<summary>
A FixedStorage that can hold up to 256 words.
</summary>
</member>
<member name="F:Fusion._256.SIZE">
<summary>
The size of the FixedStorage in bytes.
</summary>
</member>
<member name="F:Fusion._256.Data">
<summary>
The data of the FixedStorage.
</summary>
</member>
<member name="T:Fusion._512">
<summary>
A FixedStorage that can hold up to 512 words.
</summary>
</member>
<member name="F:Fusion._512.SIZE">
<summary>
The size of the FixedStorage in bytes.
</summary>
</member>
<member name="F:Fusion._512.Data">
<summary>
The data of the FixedStorage.
</summary>
</member>
<member name="T:Fusion.FloatUtils">
<summary>
Provides utility methods for compressing and decompressing float values.
</summary>
</member>
<member name="F:Fusion.FloatUtils.DEFAULT_ACCURACY">
<summary>
Default accuracy for float compression and decompression.
</summary>
</member>
<member name="M:Fusion.FloatUtils.Compress(System.Single,System.Int32)">
<summary>
Compresses a float value.
</summary>
<param name="f">The float value to compress.</param>
<param name="accuracy">The accuracy to use for compression. Defaults to DEFAULT_ACCURACY.</param>
<returns>The compressed float value.</returns>
</member>
<member name="M:Fusion.FloatUtils.Decompress(System.Int32,System.Single)">
<summary>
Decompresses a compressed float value.
</summary>
<param name="value">The compressed float value to decompress.</param>
<param name="accuracy">The accuracy to use for decompression. Defaults to DEFAULT_ACCURACY.</param>
<returns>The decompressed float value.</returns>
</member>
<member name="M:Fusion.HashCodeUtilities.GetHashDeterministic(System.String,System.Int32)">
<summary>
This may only be deterministic on 64 bit systems.
</summary>
<param name="str">String to hash</param>
<param name="initialHash">Initial hash value</param>
<returns>Hash code</returns>
</member>
<member name="T:Fusion.IAsyncOperation">
<summary>
Defines an asynchronous operation.
</summary>
</member>
<member name="P:Fusion.IAsyncOperation.IsDone">
<summary>Gets a value indicating whether the operation is done.</summary>
</member>
<member name="E:Fusion.IAsyncOperation.Completed">
<summary>Occurs when the operation is completed.</summary>
</member>
<member name="P:Fusion.IAsyncOperation.Error">
<summary>Gets the exception information if an error occurred during the operation.</summary>
</member>
<member name="T:Fusion.ICoroutine">
<summary>
Defines a coroutine.
</summary>
</member>
<member name="T:Fusion.IElementReaderWriter`1">
<summary>
Defines the interface for reading and writing elements in a byte array.
</summary>
<typeparam name="T">The type of the elements.</typeparam>
</member>
<member name="M:Fusion.IElementReaderWriter`1.Read(System.Byte*,System.Int32)">
<summary>
Reads an element from the specified index in the byte array.
</summary>
<param name="data">The byte array.</param>
<param name="index">The index of the element.</param>
<returns>The element at the specified index.</returns>
</member>
<member name="M:Fusion.IElementReaderWriter`1.Write(System.Byte*,System.Int32,`0)">
<summary>
Writes an element to the specified index in the byte array.
</summary>
<param name="data">The byte array.</param>
<param name="index">The index at which to write the element.</param>
<param name="element">The element to write.</param>
</member>
<member name="M:Fusion.IElementReaderWriter`1.GetElementWordCount">
<summary>
Gets the word count of an element.
</summary>
<returns>The word count of an element.</returns>
</member>
<member name="M:Fusion.IElementReaderWriter`1.ReadRef(System.Byte*,System.Int32)">
<summary>
Reads a reference to an element from the specified index in the byte array.
</summary>
<param name="data">The byte array.</param>
<param name="index">The index of the element.</param>
<returns>A reference to the element at the specified index.</returns>
</member>
<member name="M:Fusion.IElementReaderWriter`1.GetElementHashCode(`0)">
<summary>
Calculate the hash code of an element.
</summary>
<param name="element"></param>
<returns></returns>
</member>
<member name="T:Fusion.INetworkInput">
<summary>
Flag interface for custom NetworkInput structs.
</summary>
</member>
<member name="T:Fusion.InterpolatedErrorCorrectionSettings">
<summary>
A set of parameters that tune the interpolated correction of prediction error on transform data.
</summary>
</member>
<member name="F:Fusion.InterpolatedErrorCorrectionSettings.MinRate">
<summary>
<para>
A factor with dimension of 1/s (Hz) that works as a lower limit for how much
of the accumulated prediction error is corrected every frame.
This factor affects both the position and the rotation correction.
Suggested values are greater than zero and smaller than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MaxRate">MaxRate</see>.
</para>
<para>
E.g.: MinRate = 3, rendering delta time = (1/60)s: at least 5% (3 * 1/60) of the accumulated error
will be corrected on this rendered frame.
</para>
<para>
This threshold might not be respected if the resultant correction magnitude is
below the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.PosMinCorrection">PosMinCorrection</see>
or above the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.PosTeleportDistance">PosTeleportDistance</see>, for the position error,
or above the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.RotTeleportRadians">RotTeleportRadians</see>, for the rotation error.
</para>
</summary>
</member>
<member name="F:Fusion.InterpolatedErrorCorrectionSettings.MaxRate">
<summary>
<para>
A factor with dimension of 1/s (Hz) that works as a upper limit for how much
of the accumulated prediction error is corrected every frame.
This factor affects both the position and the rotation correction.
Suggested values are greater than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MinRate">MinRate</see>
and smaller than half of a target rendering rate.
</para>
<para>
E.g.: MaxRate = 15, rendering delta time = (1/60)s: at maximum 25% (15 * 1/60) of the accumulated error
will be corrected on this rendered frame.
</para>
<para>
This threshold might not be respected if the resultant correction magnitude is
below the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.PosMinCorrection">PosMinCorrection</see> or
above the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.PosTeleportDistance">PosTeleportDistance</see>, for the position error,
or above the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.RotTeleportRadians">RotTeleportRadians</see>, for the rotation error.
</para>
</summary>
</member>
<member name="F:Fusion.InterpolatedErrorCorrectionSettings.PosBlendStart">
<summary>
<para>
The reference for the magnitude of the accumulated position error, in meters,
at which the position error will be corrected at the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MinRate">MinRate</see>.
Suggested values are greater than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.PosMinCorrection">PosMinCorrection</see>
and smaller than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.PosBlendEnd">PosBlendEnd</see>.
</para>
<para>
In other words, if the magnitude of the accumulated error is equal to or smaller than this threshold,
it will be corrected at the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MinRate">MinRate</see>.
If, instead, the magnitude is between this threshold and <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.PosBlendEnd">PosBlendEnd</see>,
the error is corrected at a rate between <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MinRate">MinRate</see>
and <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MaxRate">MaxRate</see>, proportionally.
If it is equal to or greater than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.PosBlendEnd">PosBlendEnd</see>,
it will be corrected at the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MaxRate">MaxRate</see>.
</para>
<para>
Note: as the factor is expressed in distance units (meters), it might need to be scaled
proportionally to the overall scale of objects in the scene and speeds at which they move,
which are factors that affect the expected magnitude of prediction errors.
</para>
</summary>
</member>
<member name="F:Fusion.InterpolatedErrorCorrectionSettings.PosBlendEnd">
<summary>
<para>
The reference for the magnitude of the accumulated position error, in meters,
at which the position error will be corrected at the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MaxRate">MaxRate</see>.
Suggested values are greater than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.PosBlendStart">PosBlendStart</see>
and smaller than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.PosTeleportDistance">PosTeleportDistance</see>.
</para>
<para>
In other words, if the magnitude of the accumulated error is equal to or greater than this threshold,
it will be corrected at the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MaxRate">MaxRate</see>.
If, instead, the magnitude is between <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.PosBlendStart">PosBlendStart</see> and this threshold,
the error is corrected at a rate between <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MinRate">MinRate</see>
and <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MaxRate">MaxRate</see>, proportionally.
If it is equal to or smaller than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.PosBlendStart">PosBlendStart</see>,
it will be corrected at the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MinRate">MinRate</see>.
</para>
<para>
Note: as the factor is expressed in distance units (meters), it might need to be scaled
proportionally to the overall scale of objects in the scene and speeds at which they move,
which are factors that affect the expected magnitude of prediction errors.
</para>
</summary>
</member>
<member name="F:Fusion.InterpolatedErrorCorrectionSettings.PosMinCorrection">
<summary>
<para>
The value, in meters, that represents the minimum magnitude of the accumulated position error
that will be corrected in a single frame, until it is fully corrected.
</para>
<para>
This setting has priority over the resultant correction rate, i.e. the restriction
will be respected even if it makes the effective correction rate be different than
the one computed according to the min/max rates and start/end blend values.
Suggested values are greater than zero and smaller than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.PosBlendStart">PosBlendStart</see>.
</para>
<para>
Note: as the factor is expressed in distance units (meters), it might need to be scaled
proportionally to the overall scale of objects in the scene and speeds at which they move,
which are factors that affect the expected magnitude of prediction errors.
</para>
</summary>
</member>
<member name="F:Fusion.InterpolatedErrorCorrectionSettings.PosTeleportDistance">
<summary>
<para>
The value, in meters, that represents the magnitude of the accumulated
position error above which the error will be instantaneously corrected,
effectively teleporting the rendered object to its correct position.
Suggested values are greater than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.PosBlendEnd">PosBlendEnd</see>.
</para>
<para>
This setting has priority over the resultant correction rate, i.e. the restriction
will be respected even if it makes the effective correction rate be different than
the one computed according to the min/max rates and start/end blend values.
</para>
<para>
Note: as the factor is expressed in distance units (meters), it might need to be scaled
proportionally to the overall scale of objects in the scene and speeds at which they move,
which are factors that affect the expected magnitude of prediction errors.
</para>
</summary>
</member>
<member name="F:Fusion.InterpolatedErrorCorrectionSettings.RotBlendStart">
<summary>
<para>
The reference for the magnitude of the accumulated rotation error, in radians,
at which the rotation error will be corrected at the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MinRate">MinRate</see>.
Suggested values are smaller than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.RotBlendEnd">RotBlendEnd</see>.
</para>
<para>
In other words, if the magnitude of the accumulated error is equal to or smaller than this threshold,
it will be corrected at the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MinRate">MinRate</see>.
If, instead, the magnitude is between this threshold and <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.RotBlendEnd">RotBlendEnd</see>,
the error is corrected at a rate between <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MinRate">MinRate</see>
and <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MaxRate">MaxRate</see>, proportionally.
If it is equal to or greater than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.RotBlendEnd">RotBlendEnd</see>,
it will be corrected at the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MaxRate">MaxRate</see>.
</para>
</summary>
</member>
<member name="F:Fusion.InterpolatedErrorCorrectionSettings.RotBlendEnd">
<summary>
<para>
The reference for the magnitude of the accumulated rotation error, in radians,
at which the rotation error will be corrected at the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MaxRate">MaxRate</see>.
Suggested values are greater than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.RotBlendStart">RotBlendStart</see>
and smaller than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.RotTeleportRadians">RotTeleportRadians</see>.
</para>
<para>
In other words, if the magnitude of the accumulated error is equal to or greater than this threshold,
it will be corrected at the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MaxRate">MaxRate</see>.
If, instead, the magnitude is between <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.RotBlendStart">RotBlendStart</see> and this threshold,
the error is corrected at a rate between <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MinRate">MinRate</see>
and <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MaxRate">MaxRate</see>, proportionally.
If it is equal to or smaller than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.RotBlendStart">RotBlendStart</see>,
it will be corrected at the <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.MinRate">MinRate</see>.
</para>
</summary>
</member>
<member name="F:Fusion.InterpolatedErrorCorrectionSettings.RotTeleportRadians">
<summary>
<para>
The value, in radians, that represents the magnitude of the accumulated
rotation error above which the error will be instantaneously corrected,
effectively teleporting the rendered object to its correct orientation.
Suggested values are greater than <see cref="F:Fusion.InterpolatedErrorCorrectionSettings.RotBlendEnd">RotBlendEnd</see>.
</para>
<para>
This setting has priority over the resultant correction rate, i.e. the restriction
will be respected even if it makes the effective correction rate be different than
the one computed according to the min/max rates and start/end blend values.
</para>
</summary>
</member>
<member name="T:Fusion.LogSimpleUnity">
<summary>
Log Simple Unity
</summary>
</member>
<member name="M:Fusion.LogSimpleUnity.Log(Fusion.LogType,System.Object,Fusion.LogContext@)">
<inheritdoc cref="M:Fusion.ILogger.Log(Fusion.LogType,System.Object,Fusion.LogContext@)"/>
</member>
<member name="M:Fusion.LogSimpleUnity.LogException(System.Exception,Fusion.LogContext@)">
<inheritdoc cref="M:Fusion.ILogger.LogException(System.Exception,Fusion.LogContext@)"/>
</member>
<member name="T:Fusion.NetworkArray`1">
<summary>
Fusion type for networking arrays.
Maximum capacity is fixed, and is set with the <see cref="T:Fusion.CapacityAttribute"/>.<br></br><br></br>
<para>Typical Usage:
<code>
[Networked, Capacity(4)]<br></br>
NetworkArray&lt;float&gt; syncedArray => default;
</code></para>
<para>Optional usage (for NetworkBehaviours ONLY - this is not legal in INetworkStructs):
<code>
[Networked, Capacity(4)]<br></br>
NetworkArray&lt;int&gt; syncedArray { get; } = MakeInitializer(new int[] { 1, 2, 3, 4 });<br></br>
</code></para>
<para>Usage for modifying data:
<code>
array.Set(123);
array[0] = 456;
</code></para>
</summary>
<typeparam name="T">T can be a primitive, or an INetworkStruct.</typeparam>
</member>
<member name="T:Fusion.NetworkArray`1.Enumerator">
<summary>
Enumerator for NetworkArray.
</summary>
</member>
<member name="P:Fusion.NetworkArray`1.Enumerator.Current">
<summary>
Gets the current element in the collection.
</summary>
</member>
<member name="P:Fusion.NetworkArray`1.Enumerator.System#Collections#IEnumerator#Current">
<summary>Gets the current element in the collection.</summary>
</member>
<member name="M:Fusion.NetworkArray`1.Enumerator.#ctor(Fusion.NetworkArray{`0})">
<summary>
Initializes a new instance of the Enumerator with the specified NetworkArray.
</summary>
<param name="array">The NetworkArray to enumerate.</param>
</member>
<member name="M:Fusion.NetworkArray`1.Enumerator.MoveNext">
<summary>
Advances the enumerator to the next element of the collection.
</summary>
<returns>true if the enumerator was successfully advanced to the next element; false if the enumerator has passed the end of the collection.</returns>
</member>
<member name="M:Fusion.NetworkArray`1.Enumerator.Reset">
<summary>
Sets the enumerator to its initial position, which is before the first element in the collection.
</summary>
</member>
<member name="M:Fusion.NetworkArray`1.Enumerator.Dispose">
<summary>
Releases all resources used by the Enumerator.
</summary>
</member>
<member name="P:Fusion.NetworkArray`1.Length">
<summary>
The fixed size of the array.
</summary>
</member>
<member name="P:Fusion.NetworkArray`1.Item(System.Int32)">
<summary>
Indexer of array elements.
</summary>
</member>
<member name="M:Fusion.NetworkArray`1.#ctor(System.Byte*,System.Int32,Fusion.IElementReaderWriter{`0})">
<summary>
NetworkArray constructor.
</summary>
</member>
<member name="M:Fusion.NetworkArray`1.ToReadOnly">
<summary>
Returns a NetworkArrayReadOnly view of this array.
</summary>
</member>
<member name="M:Fusion.NetworkArray`1.Get(System.Int32)">
<summary>
Returns the array value at supplied index.
</summary>
</member>
<member name="M:Fusion.NetworkArray`1.Set(System.Int32,`0)">
<summary>
Sets the array value at the supplied index.
</summary>
</member>
<member name="M:Fusion.NetworkArray`1.GetRef(System.Int32)">
<summary>
This method is exposed with an extension method to filter
types to unmanaged ones only. This is not exhaustive,
as wrapped types are likely to pass this.
</summary>
<param name="index">Index to get.</param>
<returns>Value at index.</returns>
<exception cref="T:System.IndexOutOfRangeException"></exception>
</member>
<member name="M:Fusion.NetworkArray`1.ToArray">
<summary>
Allocates a new array and copies values from this array. For a non-alloc alternative use <see cref="M:Fusion.NetworkArray`1.CopyTo(System.Collections.Generic.List{`0})"/>.
</summary>
</member>
<member name="M:Fusion.NetworkArray`1.CopyTo(System.Collections.Generic.List{`0})">
<summary>
Adds each value to the supplied List. This does not clear the list, so values will be appended to the existing list.
</summary>
</member>
<member name="M:Fusion.NetworkArray`1.CopyTo(Fusion.NetworkArray{`0})">
<summary>
Copies values to the supplied array.
</summary>
<param name="array">NetworkArray to copy to.</param>
<exception cref="T:System.ArgumentException">Thrown if the supplied array is smaller than this <see cref="T:Fusion.NetworkArray`1"/>.</exception>
</member>
<member name="M:Fusion.NetworkArray`1.CopyTo(`0[],System.Boolean)">
<summary>
Copies values to the supplied array.
</summary>
<param name="array">Array to copy to.</param>
<param name="throwIfOverflow">If true, this method will throw an error if the supplied array is smaller than this <see cref="T:Fusion.NetworkArray`1"/>. If false, will only copy as many elements as the target array can hold.</param>
</member>
<member name="M:Fusion.NetworkArray`1.ToString">
<summary>
Returns a string that represents the current object.
</summary>
</member>
<member name="M:Fusion.NetworkArray`1.GetEnumerator">
<summary>
Returns an enumerator that iterates through the collection.
</summary>
</member>
<member name="M:Fusion.NetworkArray`1.Clear">
<summary>
Clears the array, setting all values to default.
</summary>
</member>
<member name="M:Fusion.NetworkArray`1.CopyFrom(`0[],System.Int32,System.Int32)">
<summary>
Copies a range of elements from a source array into the NetworkArray.
</summary>
<param name="source">The source array from which to copy elements. Must not be null.</param>
<param name="sourceOffset">The zero-based index in the source array at which copying begins.</param>
<param name="sourceCount">The number of elements to copy from the source array.</param>
<exception cref="T:System.ArgumentNullException">Thrown when the provided source array is null.</exception>
<exception cref="T:System.ArgumentException">Thrown when the number of elements to copy is greater than the length of the NetworkArray.</exception>
<exception cref="T:System.ArgumentOutOfRangeException">Thrown when the sum of sourceOffset and sourceCount is greater than the length of the source array.</exception>
</member>
<member name="M:Fusion.NetworkArray`1.CopyFrom(System.Collections.Generic.List{`0},System.Int32,System.Int32)">
<summary>
Copies a range of values from a supplied source list into the NetworkArray.
</summary>
<param name="source">The source list from which to copy elements.</param>
<param name="sourceOffset">The zero-based index in the source list at which copying begins.</param>
<param name="sourceCount">The number of elements to copy from the source list.</param>
<exception cref="T:System.ArgumentNullException">Thrown when the provided source list is null.</exception>
<exception cref="T:System.ArgumentException">Thrown when the number of elements to copy is greater than the length of the NetworkArray.</exception>
<exception cref="T:System.ArgumentOutOfRangeException">Thrown when the sum of sourceOffset and sourceCount is greater than the length of the source list.</exception>
</member>
<member name="M:Fusion.NetworkArray`1.ToListString">
<summary>
Returns the elements of this array as a string, with value separated by \n characters. Specifically for use in the Unity inspector.
This is private and only is found by NetworkBehaviourEditor using reflection, so do not rename this method.
</summary>
</member>
<member name="M:Fusion.NetworkArray`1.op_Implicit(Fusion.NetworkArray{`0})~Fusion.NetworkArrayReadOnly{`0}">
<summary>
Returns a NetworkArrayReadOnly view of this array.
</summary>
<param name="value">NetworkArray to convert.</param>
<returns>NetworkArrayReadOnly view of this array.</returns>
</member>
<member name="T:Fusion.NetworkArrayExtensions">
<summary>
Provides extension methods for the NetworkArray class.
</summary>
</member>
<member name="M:Fusion.NetworkArrayExtensions.IndexOf``1(Fusion.NetworkArray{``0},``0)">
<summary>
Finds the index of the first occurrence of a specified element in the NetworkArray.
</summary>
<param name="array">The NetworkArray to search.</param>
<param name="elem">The element to locate in the NetworkArray.</param>
<returns>The zero-based index of the first occurrence of elem within the entire NetworkArray, if found; otherwise, -1.</returns>
</member>
<member name="M:Fusion.NetworkArrayExtensions.GetRef``1(Fusion.NetworkArray{``0},System.Int32)">
<summary>
Returns a reference to the element at a specified position in the NetworkArray.
</summary>
<param name="array">The NetworkArray to search.</param>
<param name="index">The zero-based index of the element to get a reference for.</param>
<returns>A reference to the element at the specified position in the NetworkArray.</returns>
</member>
<member name="T:Fusion.INetworkArray">
<summary>
Defines the interface for a networked array.
</summary>
</member>
<member name="P:Fusion.INetworkArray.Item(System.Int32)">
<summary>
Gets or sets the element at the specified index.
</summary>
<param name="index">The zero-based index of the element to get or set.</param>
</member>
<member name="T:Fusion.NetworkArrayReadOnly`1">
<summary>
Provides a read-only view of a network array.
</summary>
<typeparam name="T">The type of the elements.</typeparam>
</member>
<member name="P:Fusion.NetworkArrayReadOnly`1.Length">
<summary>
The fixed size of the array.
</summary>
</member>
<member name="P:Fusion.NetworkArrayReadOnly`1.Item(System.Int32)">
<summary>
Indexer of array elements.
</summary>
</member>
<member name="M:Fusion.NetworkArrayReadOnly`1.#ctor(System.Byte*,System.Int32,Fusion.IElementReaderWriter{`0})">
<summary>
NetworkArrayReadOnly constructor.
</summary>
</member>
<member name="T:Fusion.NetworkBool">
<summary>
Represents a boolean value that can be networked.
</summary>
</member>
<member name="M:Fusion.NetworkBool.#ctor(System.Boolean)">
<summary>
Initializes a new instance of the NetworkBool struct with the specified value.
</summary>
<param name="value">The boolean value.</param>
</member>
<member name="M:Fusion.NetworkBool.Equals(Fusion.NetworkBool)">
<summary>
Determines whether the specified NetworkBool is equal to the current NetworkBool.
</summary>
<param name="other">The NetworkBool to compare with the current NetworkBool.</param>
<returns>true if the specified NetworkBool is equal to the current NetworkBool; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkBool.ToString">
<summary>
Returns a string that represents the current NetworkBool.
</summary>
<returns>A string that represents the current NetworkBool.</returns>
</member>
<member name="M:Fusion.NetworkBool.Equals(System.Object)">
<summary>
Determines whether the specified object is equal to the current NetworkBool.
</summary>
<param name="obj">The object to compare with the current NetworkBool.</param>
<returns>true if the specified object is equal to the current NetworkBool; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkBool.GetHashCode">
<summary>
Serves as the default hash function.
</summary>
<returns>A hash code for the current NetworkBool.</returns>
</member>
<member name="M:Fusion.NetworkBool.op_Implicit(Fusion.NetworkBool)~System.Boolean">
<summary>
Defines an implicit conversion of a NetworkBool to a bool.
</summary>
<param name="val">The NetworkBool to convert.</param>
</member>
<member name="M:Fusion.NetworkBool.op_Implicit(System.Boolean)~Fusion.NetworkBool">
<summary>
Defines an implicit conversion of a bool to a NetworkBool.
</summary>
<param name="val">The bool to convert.</param>
</member>
<member name="T:Fusion.NetworkButtons">
<summary>
Represents a set of buttons that can be networked.
</summary>
</member>
<member name="P:Fusion.NetworkButtons.Bits">
<summary>
Gets the bits representing the state of the buttons.
</summary>
</member>
<member name="M:Fusion.NetworkButtons.#ctor(System.Int32)">
<summary>
Initializes a new instance of the NetworkButtons struct with the specified buttons state.
</summary>
<param name="buttons">The integer representing the state of the buttons.</param>
</member>
<member name="M:Fusion.NetworkButtons.IsSet(System.Int32)">
<summary>
Checks if the button at the specified index is set.
</summary>
<param name="button">The index of the button to check.</param>
<returns>true if the button is set; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkButtons.SetDown(System.Int32)">
<summary>
Sets the button at the specified index to down.
</summary>
<param name="button">The index of the button to set to down.</param>
</member>
<member name="M:Fusion.NetworkButtons.SetUp(System.Int32)">
<summary>
Sets the button at the specified index to up.
</summary>
<param name="button">The index of the button to set to up.</param>
</member>
<member name="M:Fusion.NetworkButtons.Set(System.Int32,System.Boolean)">
<summary>
Sets the button at the specified index to the specified state.
</summary>
<param name="button">The index of the button to set.</param>
<param name="state">The state to set the button to.</param>
</member>
<member name="M:Fusion.NetworkButtons.SetAllUp">
<summary>
Sets all buttons to up.
</summary>
</member>
<member name="M:Fusion.NetworkButtons.SetAllDown">
<summary>
Sets all buttons to down.
</summary>
</member>
<member name="M:Fusion.NetworkButtons.IsSet``1(``0)">
<summary>
Checks if the button of the specified enum type is set.
</summary>
<typeparam name="T">The enum type of the button.</typeparam>
<param name="button">The button of type T to check.</param>
<returns>true if the button is set; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkButtons.SetDown``1(``0)">
<summary>
Sets the button of the specified enum type to down.
</summary>
<typeparam name="T">The enum type of the button.</typeparam>
<param name="button">The button of type T to set to down.</param>
</member>
<member name="M:Fusion.NetworkButtons.SetUp``1(``0)">
<summary>
Sets the button of the specified enum type to up.
</summary>
<typeparam name="T">The enum type of the button.</typeparam>
<param name="button">The button of type T to set to up.</param>
</member>
<member name="M:Fusion.NetworkButtons.Set``1(``0,System.Boolean)">
<summary>
Sets the button of the specified enum type to the specified state.
</summary>
<typeparam name="T">The enum type of the button.</typeparam>
<param name="button">The button of type T to set.</param>
<param name="state">The state to set the button to.</param>
</member>
<member name="M:Fusion.NetworkButtons.GetPressedOrReleased(Fusion.NetworkButtons)">
<summary>
Gets the buttons that were pressed or released since the previous state.
</summary>
<param name="previous">The previous state of the buttons.</param>
<returns>A tuple containing the buttons that were pressed and the buttons that were released.</returns>
</member>
<member name="M:Fusion.NetworkButtons.GetPressed(Fusion.NetworkButtons)">
<summary>
Gets the buttons that were pressed since the previous state.
</summary>
<param name="previous">The previous state of the buttons.</param>
<returns>The buttons that were pressed.</returns>
</member>
<member name="M:Fusion.NetworkButtons.GetReleased(Fusion.NetworkButtons)">
<summary>
Gets the buttons that were released since the previous state.
</summary>
<param name="previous">The previous state of the buttons.</param>
<returns>The buttons that were released.</returns>
</member>
<member name="M:Fusion.NetworkButtons.WasPressed(Fusion.NetworkButtons,System.Int32)">
<summary>
Checks if the button at the specified index was pressed since the previous state.
</summary>
<param name="previous">The previous state of the buttons.</param>
<param name="button">The index of the button to check.</param>
<returns>true if the button was pressed; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkButtons.WasReleased(Fusion.NetworkButtons,System.Int32)">
<summary>
Checks if the button at the specified index was released since the previous state.
</summary>
<param name="previous">The previous state of the buttons.</param>
<param name="button">The index of the button to check.</param>
<returns>true if the button was released; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkButtons.WasPressed``1(Fusion.NetworkButtons,``0)">
<summary>
Checks if the button of the specified enum type was pressed since the previous state.
</summary>
<typeparam name="T">The enum type of the button.</typeparam>
<param name="previous">The previous state of the buttons.</param>
<param name="button">The button of type T to check.</param>
<returns>true if the button was pressed; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkButtons.WasReleased``1(Fusion.NetworkButtons,``0)">
<summary>
Checks if the button of the specified enum type was released since the previous state.
</summary>
<typeparam name="T">The enum type of the button.</typeparam>
<param name="previous">The previous state of the buttons.</param>
<param name="button">The button of type T to check.</param>
<returns>true if the button was released; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkButtons.Equals(Fusion.NetworkButtons)">
<summary>
Determines whether the specified NetworkButtons is equal to the current NetworkButtons.
</summary>
<param name="other">The NetworkButtons to compare with the current NetworkButtons.</param>
<returns>true if the specified NetworkButtons is equal to the current NetworkButtons; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkButtons.Equals(System.Object)">
<summary>
Determines whether the specified object is equal to the current NetworkButtons.
</summary>
<param name="obj">The object to compare with the current NetworkButtons.</param>
<returns>true if the specified object is equal to the current NetworkButtons; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkButtons.GetHashCode">
<summary>
Serves as the default hash function.
</summary>
<returns>A hash code for the current NetworkButtons.</returns>
</member>
<member name="T:Fusion.NetworkDictionary`2">
<summary>
Fusion type for networking Dictionaries.
Maximum capacity is fixed, and is set with the <see cref="T:Fusion.CapacityAttribute"/>.<br></br><br></br>
<para>Typical Usage:
<code>
[Networked, Capacity(10)]<br></br>
NetworkDictionary&lt;int, float&gt; syncedDict => default;<br></br>
</code></para>
<para>Usage for modifying data:
<code>
var dict = syncedDict;
dict.Add(5, 123);
dict[5] = 456;
dict.Remove(5);
</code></para>
</summary>
<typeparam name="K">Key can be a primitive, or an INetworkStruct.</typeparam>
<typeparam name="V">Value can be a primitive, or an INetworkStruct.</typeparam>
</member>
<member name="F:Fusion.NetworkDictionary`2.META_WORD_COUNT">
<summary>Meta word count for NetworkDictionary.</summary>
</member>
<member name="T:Fusion.NetworkDictionary`2.Enumerator">
<summary>
Enumerator for NetworkDictionary.
</summary>
</member>
<member name="M:Fusion.NetworkDictionary`2.Enumerator.MoveNext">
<summary>
Move to next entry in dictionary.
</summary>
<returns>Returns true if there is a next entry.</returns>
</member>
<member name="M:Fusion.NetworkDictionary`2.Enumerator.Reset">
<summary>
Reset enumerator.
</summary>
</member>
<member name="P:Fusion.NetworkDictionary`2.Enumerator.Current">
<summary>
Current key/value pair.
</summary>
<exception cref="T:System.InvalidOperationException">Thrown if enumerator is not valid.</exception>
</member>
<member name="M:Fusion.NetworkDictionary`2.Enumerator.Dispose">
<summary>
Dispose enumerator.
</summary>
</member>
<member name="P:Fusion.NetworkDictionary`2.Count">
<summary>
Current number of key/value entries in the Dictionary.
</summary>
</member>
<member name="P:Fusion.NetworkDictionary`2.Capacity">
<summary>
The maximum number of entries this dictionary may contain.
</summary>
</member>
<member name="P:Fusion.NetworkDictionary`2.Item(`0)">
<summary>
Key indexer. Gets/Sets value for specified key.
</summary>
</member>
<member name="M:Fusion.NetworkDictionary`2.#ctor(System.Int32*,System.Int32,Fusion.IElementReaderWriter{`0},Fusion.IElementReaderWriter{`1})">
<summary>
Initializes a new instance of the NetworkDictionary struct with the specified data, capacity, and reader/writers.
</summary>
<param name="data">The pointer to the data of the dictionary.</param>
<param name="capacity">The capacity of the dictionary.</param>
<param name="keyReaderWriter">The reader/writer for the keys of the dictionary.</param>
<param name="valReaderWriter">The reader/writer for the values of the dictionary.</param>
</member>
<member name="M:Fusion.NetworkDictionary`2.ToReadOnly">
<summary>
Converts the current NetworkDictionary to a read-only version.
</summary>
<returns>A new instance of NetworkDictionaryReadOnly with the same data, capacity, and reader/writers as the current NetworkDictionary.</returns>
</member>
<member name="M:Fusion.NetworkDictionary`2.Clear">
<summary>
Remove all entries from the Dictionary, and clear backing memory.
</summary>
</member>
<member name="M:Fusion.NetworkDictionary`2.ContainsKey(`0)">
<summary>
Returns true if the Dictionary contains an entry for the given key.
</summary>
</member>
<member name="M:Fusion.NetworkDictionary`2.ContainsValue(`1,System.Collections.Generic.IEqualityComparer{`1})">
<summary>
Returns true if the Dictionary contains an entry value which compares as equal to given value.
</summary>
<param name="value">The value to compare against.</param>
<param name="equalityComparer">Specify custom IEqualityComparer to be used for compare.</param>
</member>
<member name="M:Fusion.NetworkDictionary`2.Get(`0)">
<summary>
Returns the value for the given key. Will throw an error if the key is not found.
</summary>
</member>
<member name="M:Fusion.NetworkDictionary`2.Set(`0,`1)">
<summary>
Sets the value for the given key. Will add a new key if the key does not already exist.
</summary>
</member>
<member name="M:Fusion.NetworkDictionary`2.Add(`0,`1)">
<summary>
Adds a new key value pair to the Dictionary. If the key already exists, will return false.
</summary>
</member>
<member name="M:Fusion.NetworkDictionary`2.TryGet(`0,`1@)">
<summary>
Attempts to get the value for a given key. If found, returns true.
</summary>
<param name="key">The key to remove.</param>
<param name="value">Returns value of removed item. Returns default value if key did not exist.</param>
<returns>Returns true if key was found.</returns>
</member>
<member name="M:Fusion.NetworkDictionary`2.Remove(`0)">
<summary>
Remove entry from Dictionary.
</summary>
<param name="key">The key to remove.</param>
<returns>Returns true if key was found.</returns>
</member>
<member name="M:Fusion.NetworkDictionary`2.Remove(`0,`1@)">
<summary>
Removes entry from Dictionary. If successful (key existed), returns true and the value of removed item.
</summary>
<param name="key">The key to remove.</param>
<param name="value">Returns value of removed item. Returns default value if key did not exist.</param>
<returns>Returns true if key was found.</returns>
</member>
<member name="M:Fusion.NetworkDictionary`2.GetEnumerator">
<summary>
Returns an enumerator that iterates through the NetworkDictionary.
</summary>
</member>
<member name="M:Fusion.NetworkDictionary`2.op_Implicit(Fusion.NetworkDictionary{`0,`1})~Fusion.NetworkDictionaryReadOnly{`0,`1}">
<summary>
Converts the current NetworkDictionary to a read-only version.
</summary>
<param name="value">The NetworkDictionary to convert.</param>
<returns>A new instance of NetworkDictionaryReadOnly with the same data, capacity, and reader/writers as the current NetworkDictionary.</returns>
</member>
<member name="T:Fusion.INetworkDictionary">
<summary>
Defines the interface for a networked dictionary.
</summary>
</member>
<member name="M:Fusion.INetworkDictionary.Add(System.Object)">
<summary>
Adds an item to the networked dictionary.
</summary>
<param name="item">The item to add to the dictionary.</param>
</member>
<member name="T:Fusion.NetworkDictionaryReadOnly`2">
<summary>
A read-only version of <see cref="T:Fusion.NetworkDictionary`2"/>.
</summary>
<typeparam name="K">The type of the key.</typeparam>
<typeparam name="V">The type of the value.</typeparam>
</member>
<member name="P:Fusion.NetworkDictionaryReadOnly`2.Count">
<summary>
Current number of key/value entries in the Dictionary.
</summary>
</member>
<member name="P:Fusion.NetworkDictionaryReadOnly`2.Capacity">
<summary>
The maximum number of entries this dictionary may contain.
</summary>
</member>
<member name="M:Fusion.NetworkDictionaryReadOnly`2.Get(`0)">
<summary>
Returns the value for the given key. Will throw an error if the key is not found.
</summary>
</member>
<member name="M:Fusion.NetworkDictionaryReadOnly`2.TryGet(`0,`1@)">
<summary>
Attempts to get the value for a given key. If found, returns true.
</summary>
<param name="key">The key to remove.</param>
<param name="value">Returns value of removed item. Returns default value if key did not exist.</param>
<returns>Returns true if key was found.</returns>
</member>
<member name="T:Fusion.NetworkLinkedList`1">
<summary>
Fusion type for networking LinkedLists.
Maximum capacity is fixed, and is set with the <see cref="T:Fusion.CapacityAttribute"/>.<br></br><br></br>
Typical Usage:
<para><code>
[Networked, Capacity(10)]<br></br>
NetworkLinkedList&lt;int&gt; syncedLinkedList => default;
</code></para>
<para>Optional usage (for NetworkBehaviours ONLY - this is not legal in INetworkStructs):
<code>
[Networked, Capacity(4)]<br></br>
NetworkLinkedList&lt;int&gt; syncedLinkedList { get; } = MakeInitializer(new int[] { 1, 2, 3, 4 });<br></br>
</code></para>
<para>Usage for modifying data:
<code>
var list = syncedLinkedList;
list.Add(123);
list[0] = 456;
list.Remove(0);
</code></para>
</summary>
<typeparam name="T">T can be a primitive, or an INetworkStruct.</typeparam>
</member>
<member name="F:Fusion.NetworkLinkedList`1.ELEMENT_WORDS">
<summary>Returns the number of words required to store a single element.</summary>
</member>
<member name="F:Fusion.NetworkLinkedList`1.META_WORDS">
<summary>Returns the number of words required to store the list metadata.</summary>
</member>
<member name="T:Fusion.NetworkLinkedList`1.Enumerator">
<summary>
Enumerator for <see cref="T:Fusion.NetworkLinkedList`1"/>.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedList`1.Enumerator.MoveNext">
<summary>
Advances the enumerator to the next element of the <see cref="T:Fusion.NetworkLinkedList`1"/>.
</summary>
<returns>Returns true if the enumerator advanced to the next element.</returns>
</member>
<member name="M:Fusion.NetworkLinkedList`1.Enumerator.Reset">
<summary>
Resets the enumerator to its initial position, which is before the first element in the collection.
</summary>
</member>
<member name="P:Fusion.NetworkLinkedList`1.Enumerator.Current">
<summary>
Gets the current element in the collection.
</summary>
<returns>The current element in the collection.</returns>
<exception cref="T:System.InvalidOperationException">Thrown when the enumerator is positioned before the first element or after the last element.</exception>
</member>
<member name="M:Fusion.NetworkLinkedList`1.Enumerator.Dispose">
<summary>
Releases all resources used by the <see cref="T:Fusion.NetworkLinkedList`1.Enumerator"/>.
</summary>
</member>
<member name="P:Fusion.NetworkLinkedList`1.Count">
<summary>
Returns the current element count.
</summary>
</member>
<member name="P:Fusion.NetworkLinkedList`1.Capacity">
<summary>
Returns the max element count.
</summary>
</member>
<member name="P:Fusion.NetworkLinkedList`1.Item(System.Int32)">
<summary>
Element indexer.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedList`1.#ctor(System.Byte*,System.Int32,Fusion.IElementReaderWriter{`0})">
<summary>
Initializes a new instance of the NetworkLinkedList struct with the specified data, capacity, and reader/writer.
</summary>
<param name="data">The pointer to the data of the list.</param>
<param name="capacity">The capacity of the list.</param>
<param name="rw">The reader/writer for the elements of the list.</param>
</member>
<member name="M:Fusion.NetworkLinkedList`1.Remap(System.Void*)">
<summary>
Remaps the current NetworkLinkedList to a new memory location.
</summary>
<param name="list">The pointer to the new memory location.</param>
<returns>A new instance of NetworkLinkedList with the same capacity and reader/writer, but mapped to the new memory location.</returns>
</member>
<member name="M:Fusion.NetworkLinkedList`1.Clear">
<summary>
Removes and clears all list elements.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedList`1.Contains(`0)">
<summary>
Returns true if the value already exists in the list.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedList`1.Contains(`0,System.Collections.Generic.IEqualityComparer{`0})">
<summary>
Returns true if the value already exists in the list.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedList`1.Set(System.Int32,`0)">
<summary>
Sets the value at supplied index.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedList`1.Get(System.Int32)">
<summary>
Returns the value at supplied index.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedList`1.IndexOf(`0)">
<summary>
Returns the index with this value. Returns -1 if not found.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedList`1.IndexOf(`0,System.Collections.Generic.IEqualityComparer{`0})">
<summary>
Returns the index of the first occurrence of a value in the NetworkLinkedList.
</summary>
<param name="value">The value to locate in the NetworkLinkedList. The value can be null for reference types.</param>
<param name="equalityComparer">An equality comparer to compare values. Must not be null.</param>
<returns>The zero-based index of the first occurrence of value within the entire NetworkLinkedList, if found; otherwise, -1.</returns>
<remarks>
This method performs a linear search; therefore, this method is an O(n) operation, where n is Capacity.
</remarks>
</member>
<member name="M:Fusion.NetworkLinkedList`1.Remove(`0)">
<summary>
Removes the first found element with indicated value.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedList`1.Remove(`0,System.Collections.Generic.IEqualityComparer{`0})">
<summary>
Removes the first found element with indicated value.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedList`1.Add(`0)">
<summary>
Adds a value to the end of the list.
</summary>
<param name="value">Value to add.</param>
</member>
<member name="M:Fusion.NetworkLinkedList`1.GetEnumerator">
<summary>
Get the enumerator for the list.
</summary>
</member>
<member name="T:Fusion.INetworkLinkedList">
<summary>
Defines the interface for a networked linked list.
</summary>
</member>
<member name="M:Fusion.INetworkLinkedList.Add(System.Object)">
<summary>
Adds an item to the networked linked list.
</summary>
<param name="item">The item to add to the linked list.</param>
</member>
<member name="T:Fusion.NetworkLinkedListReadOnly`1">
<summary>
Read-only version of <see cref="T:Fusion.NetworkLinkedList`1"/>.
</summary>
<typeparam name="T">Custom struct type.</typeparam>
</member>
<member name="F:Fusion.NetworkLinkedListReadOnly`1.ELEMENT_WORDS">
<summary>Returns the number of words required to store a single element.</summary>
</member>
<member name="F:Fusion.NetworkLinkedListReadOnly`1.META_WORDS">
<summary>Returns the number of words required to store the list metadata.</summary>
</member>
<member name="P:Fusion.NetworkLinkedListReadOnly`1.Count">
<summary>
Returns the current element count.
</summary>
</member>
<member name="P:Fusion.NetworkLinkedListReadOnly`1.Capacity">
<summary>
Returns the max element count.
</summary>
</member>
<member name="P:Fusion.NetworkLinkedListReadOnly`1.Item(System.Int32)">
<summary>
Element indexer.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedListReadOnly`1.Contains(`0)">
<summary>
Returns true if the value already exists in the list.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedListReadOnly`1.Contains(`0,System.Collections.Generic.IEqualityComparer{`0})">
<summary>
Returns true if the value already exists in the list.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedListReadOnly`1.Get(System.Int32)">
<summary>
Returns the value at supplied index.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedListReadOnly`1.IndexOf(`0)">
<summary>
Returns the index with this value. Returns -1 if not found.
</summary>
</member>
<member name="M:Fusion.NetworkLinkedListReadOnly`1.IndexOf(`0,System.Collections.Generic.IEqualityComparer{`0})">
<summary>
Returns the index of the first occurrence of a value in the FixedArray.
</summary>
<param name="value">The value to locate in the FixedArray. The value can be null for reference types.</param>
<param name="equalityComparer">An equality comparer to compare values. Must not be null.</param>
<returns>The zero-based index of the first occurrence of value within the entire FixedArray, if found; otherwise, -1.</returns>
<remarks>
This method performs a linear search; therefore, this method is an O(n) operation, where n is Capacity.
</remarks>
</member>
<member name="T:Fusion.NetworkRNG">
<summary>
PCG32 random generator, 16 bytes in size.
<a href="http://www.pcg-random.org">http://www.pcg-random.org</a>
</summary>
</member>
<member name="F:Fusion.NetworkRNG.FP_32_32_ToUnitDoubleInclusive">
<summary>
0x1.00000001p-32 aka 0x3df0000000100000
</summary>
</member>
<member name="F:Fusion.NetworkRNG.FP_32_32_ToUnitDoubleExclusive">
<summary>
0x1p-32 aka 0x3df0000000000000
</summary>
</member>
<member name="F:Fusion.NetworkRNG.FP_8_24_ToUnitSingleInclusive">
<summary>
0x1.000002p-24 aka 0x33800001
</summary>
</member>
<member name="F:Fusion.NetworkRNG.FP_8_24_ToUnitSingleExclusive">
<summary>
0x1p-24 aka 0x33800000
</summary>
</member>
<member name="P:Fusion.NetworkRNG.Peek">
<summary>
Returns the same RNG instance.
</summary>
</member>
<member name="M:Fusion.NetworkRNG.Next">
<summary>
Generates a random double value within the inclusive range [0, 1].
</summary>
<returns>A random double value between 0 and 1, inclusive.</returns>
</member>
<member name="M:Fusion.NetworkRNG.NextExclusive">
<summary>
Generates a random double value within the exclusive range [0, 1).
</summary>
<returns>A random double value between 0 (inclusive) and 1 (exclusive).</returns>
</member>
<member name="M:Fusion.NetworkRNG.NextSingle">
<summary>
Generates a random float value within the inclusive range [0, 1].
</summary>
<returns>A random float value between 0 and 1, inclusive.</returns>
</member>
<member name="M:Fusion.NetworkRNG.NextSingleExclusive">
<summary>
Generates a random float value within the exclusive range [0, 1).
</summary>
<returns>A random float value between 0 (inclusive) and 1 (exclusive).</returns>
</member>
<member name="M:Fusion.NetworkRNG.NextInt32">
<summary>
Generates a random integer value within the range of int.MinValue to int.MaxValue.
</summary>
<returns>A random integer value between int.MinValue and int.MaxValue, inclusive.</returns>
</member>
<member name="M:Fusion.NetworkRNG.NextUInt32">
<summary>
Generates a random unsigned integer value within the range of 0 to uint.MaxValue.
</summary>
<returns>A random unsigned integer value between 0 and uint.MaxValue, inclusive.</returns>
</member>
<member name="F:Fusion.NetworkRNG.SIZE">
<summary>Size of the struct in bytes.</summary>
</member>
<member name="F:Fusion.NetworkRNG.MAX">
<summary>Maximum allowed value</summary>
</member>
<member name="M:Fusion.NetworkRNG.#ctor(System.Int32)">
<summary>
Creates a new instance of <see cref="T:Fusion.NetworkRNG"/> with a random seed.
</summary>
<param name="seed">Seed value.</param>
</member>
<member name="M:Fusion.NetworkRNG.ToString">
<summary>
String representation of the RNG state.
</summary>
</member>
<member name="M:Fusion.NetworkRNG.RangeInclusive(System.Double,System.Double)">
<summary>
Returns a random Double within [minInclusive, maxInclusive] (range is inclusive).
If minInclusive is greater than maxInclusive, then the numbers are automatically swapped.
</summary>
</member>
<member name="M:Fusion.NetworkRNG.RangeInclusive(System.Single,System.Single)">
<summary>
Returns a random Single within [minInclusive, maxInclusive] (range is inclusive).
If minInclusive is greater than maxInclusive, then the numbers are automatically swapped.
</summary>
</member>
<member name="M:Fusion.NetworkRNG.RangeExclusive(System.Int32,System.Int32)">
<summary>
Returns a random Int32 within [minInclusive, maxExclusive) (range is exclusive).
If minInclusive and maxExclusive are equal, then the "exclusive rule" is ignored and minInclusive will be returned.
If minInclusive is greater than maxExclusive, then the numbers are automatically swapped.
</summary>
</member>
<member name="M:Fusion.NetworkRNG.RangeInclusive(System.Int32,System.Int32)">
<summary>
Returns a random Int32 within [minInclusive, maxInclusive] (range is inclusive).
If minInclusive is greater than maxInclusive, then the numbers are automatically swapped.
</summary>
</member>
<member name="M:Fusion.NetworkRNG.RangeExclusive(System.UInt32,System.UInt32)">
<summary>
Returns a random UInt32 within [minInclusive, maxExclusive) (range is exclusive).
If minInclusive and maxExclusive are equal, then the "exclusive rule" is ignored and minInclusive will be returned.
If minInclusive is greater than maxExclusive, then the numbers are automatically swapped.
</summary>
</member>
<member name="M:Fusion.NetworkRNG.RangeInclusive(System.UInt32,System.UInt32)">
<summary>
Returns a random UInt32 within [minInclusive, maxInclusive] (range is inclusive).
If minInclusive is greater than maxInclusive, then the numbers are automatically swapped.
</summary>
</member>
<member name="T:Fusion.NetworkString`1">
<summary>
Fixed-size UTF32 string. All operations are alloc-free, except for converting to <see cref="T:System.String"/>.
</summary>
<typeparam name="TSize"></typeparam>
</member>
<member name="M:Fusion.NetworkString`1.#ctor(System.String)">
<summary>
Creates a new instance of <see cref="T:Fusion.NetworkString`1"/> with the given value.
</summary>
<param name="value">String value.</param>
</member>
<member name="P:Fusion.NetworkString`1.Capacity">
<summary>
Maximum UTF32 string length.
</summary>
</member>
<member name="P:Fusion.NetworkString`1.Value">
<summary>
Converts to/from regular UTF16 string. Setter is alloc-free. Use <see cref="M:Fusion.NetworkString`1.Get(System.String@)"/>
to get possibly alloc-free conversion.
</summary>
</member>
<member name="P:Fusion.NetworkString`1.Length">
<summary>
Number of UTF32 scalars. It is equal or less than <see cref="M:Fusion.NetworkString`1.GetCharCount"/> or the length
of <see cref="P:Fusion.NetworkString`1.Value"/>, because those use UTF16 encoding, which needs two characters to encode
some values.
</summary>
</member>
<member name="P:Fusion.NetworkString`1.Item(System.Int32)">
<summary>
Returns UTF32 scalar at <paramref name="index"/> position. To iterate over characters,
use <see cref="M:Fusion.NetworkString`1.GetEnumerator"/>.
</summary>
<param name="index">Index to get.</param>
<returns>UTF32 scalar at <paramref name="index"/> position.</returns>
</member>
<member name="M:Fusion.NetworkString`1.op_Implicit(System.String)~Fusion.NetworkString{`0}">
<summary>
Defines an implicit conversion of a string to a NetworkString.
</summary>
<param name="str">The string to convert.</param>
<returns>A new instance of NetworkString with the same value as the string.</returns>
</member>
<member name="M:Fusion.NetworkString`1.op_Explicit(Fusion.NetworkString{`0})~System.String">
<summary>
Defines an explicit conversion of a NetworkString to a string.
</summary>
<param name="str">The NetworkString to convert.</param>
<returns>The string value of the NetworkString.</returns>
</member>
<member name="M:Fusion.NetworkString`1.op_Inequality(Fusion.NetworkString{`0},Fusion.NetworkString{`0})">
<summary>
Defines an inequality operator for NetworkString.
</summary>
<param name="a">The first NetworkString to compare.</param>
<param name="b">The second NetworkString to compare.</param>
<returns>true if the NetworkStrings are not equal; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.op_Inequality(System.String,Fusion.NetworkString{`0})">
<summary>
Defines an inequality operator for a string and a NetworkString.
</summary>
<param name="a">The string to compare.</param>
<param name="b">The NetworkString to compare.</param>
<returns>true if the string and the NetworkString are not equal; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.op_Inequality(Fusion.NetworkString{`0},System.String)">
<summary>
Defines an inequality operator for a NetworkString and a string.
</summary>
<param name="a">The NetworkString to compare.</param>
<param name="b">The string to compare.</param>
<returns>true if the NetworkString and the string are not equal; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.op_Equality(Fusion.NetworkString{`0},Fusion.NetworkString{`0})">
<summary>
Defines an equality operator for NetworkString.
</summary>
<param name="a">The first NetworkString to compare.</param>
<param name="b">The second NetworkString to compare.</param>
<returns>true if the NetworkStrings are equal; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.op_Equality(System.String,Fusion.NetworkString{`0})">
<summary>
Defines an equality operator for a string and a NetworkString.
</summary>
<param name="a">The string to compare.</param>
<param name="b">The NetworkString to compare.</param>
<returns>true if the string and the NetworkString are equal; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.op_Equality(Fusion.NetworkString{`0},System.String)">
<summary>
Defines an equality operator for a NetworkString and a string.
</summary>
<param name="a">The NetworkString to compare.</param>
<param name="b">The string to compare.</param>
<returns>true if the NetworkString and the string are equal; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Get(System.String@)">
<summary>
Checks if <paramref name="cache"/> is equivalent and if not converts to UTF16 and
stores the result in <paramref name="cache"/>.
</summary>
<param name="cache">The string to convert.</param>
<returns>False if no conversion was performed, true otherwise.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Set(System.String)">
<summary>
Converts <paramref name="value"/> to UTF32 string and stores it internally.
</summary>
<param name="value">The string to set.</param>
<returns>False if <paramref name="value"/> was too long to fit and had to be trimmed.</returns>
</member>
<member name="M:Fusion.NetworkString`1.IndexOf(System.Char,System.Int32)">
<summary>
Returns the index of the first occurrence of a specified character in this instance.
</summary>
<param name="c">The Unicode character to seek.</param>
<param name="startIndex">The search starting position.</param>
<returns>The zero-based index position of value if that character is found, or -1 if it is not.</returns>
</member>
<member name="M:Fusion.NetworkString`1.IndexOf(System.Char,System.Int32,System.Int32)">
<summary>
Returns the index of the first occurrence of a specified character in this instance.
</summary>
<param name="c">The Unicode character to seek.</param>
<param name="startIndex">The search starting position.</param>
<param name="count">The number of character positions to examine.</param>
<returns>The zero-based index position of value if that character is found, or -1 if it is not.</returns>
</member>
<member name="M:Fusion.NetworkString`1.IndexOf(System.UInt32,System.Int32)">
<summary>
Returns the index of the first occurrence of a specified Unicode code point in this instance.
</summary>
<param name="codePoint">The Unicode code point to seek.</param>
<param name="startIndex">The search starting position.</param>
<returns>The zero-based index position of value if that Unicode code point is found, or -1 if it is not.</returns>
</member>
<member name="M:Fusion.NetworkString`1.IndexOf(System.UInt32,System.Int32,System.Int32)">
<summary>
Returns the index of the first occurrence of a specified Unicode code point in this instance.
</summary>
<param name="codePoint">The Unicode code point to seek.</param>
<param name="startIndex">The search starting position.</param>
<param name="count">The number of character positions to examine.</param>
<returns>The zero-based index position of value if that Unicode code point is found, or -1 if it is not.</returns>
<exception cref="T:System.ArgumentOutOfRangeException">Thrown when the start index is less than zero or greater than the safe length of the string, or when the count is less than zero or the sum of the start index and count is greater than the safe length of the string.</exception>
</member>
<member name="M:Fusion.NetworkString`1.IndexOf(System.String,System.Int32)">
<summary>
Returns the index of the first occurrence of a specified string in this instance.
</summary>
<param name="str">The string to seek.</param>
<param name="startIndex">The search starting position.</param>
<returns>The zero-based index position of value if that string is found, or -1 if it is not.</returns>
</member>
<member name="M:Fusion.NetworkString`1.IndexOf(System.String,System.Int32,System.Int32)">
<summary>
Returns the index of the first occurrence of a specified string in this instance.
</summary>
<param name="str">The string to seek.</param>
<param name="startIndex">The search starting position.</param>
<param name="count">The number of character positions to examine.</param>
<returns>The zero-based index position of value if that string is found, or -1 if it is not.</returns>
<exception cref="T:System.ArgumentNullException">Thrown when the string is null.</exception>
<exception cref="T:System.ArgumentOutOfRangeException">Thrown when the start index is less than zero or greater than the safe length of the string, or when the count is less than zero or the sum of the start index and count is greater than the safe length of the string.</exception>
</member>
<member name="M:Fusion.NetworkString`1.IndexOf``1(Fusion.NetworkString{``0},System.Int32)">
<summary>
Returns the index of the first occurrence of a specified NetworkString in this instance.
</summary>
<typeparam name="TOtherSize">The size of the other NetworkString.</typeparam>
<param name="str">The NetworkString to seek.</param>
<param name="startIndex">The search starting position.</param>
<returns>The zero-based index position of value if that NetworkString is found, or -1 if it is not.</returns>
</member>
<member name="M:Fusion.NetworkString`1.IndexOf``1(Fusion.NetworkString{``0},System.Int32,System.Int32)">
<summary>
Returns the index of the first occurrence of a specified NetworkString in this instance.
</summary>
<typeparam name="TOtherSize">The size of the other NetworkString.</typeparam>
<param name="str">The NetworkString to seek.</param>
<param name="startIndex">The search starting position.</param>
<param name="count">The number of character positions to examine.</param>
<returns>The zero-based index position of value if that NetworkString is found, or -1 if it is not.</returns>
</member>
<member name="M:Fusion.NetworkString`1.IndexOf``1(Fusion.NetworkString{``0}@,System.Int32)">
<summary>
Returns the index of the first occurrence of a specified NetworkString in this instance.
</summary>
<typeparam name="TOtherSize">The size of the other NetworkString.</typeparam>
<param name="str">The NetworkString to seek.</param>
<param name="startIndex">The search starting position.</param>
<returns>The zero-based index position of value if that NetworkString is found, or -1 if it is not.</returns>
</member>
<member name="M:Fusion.NetworkString`1.IndexOf``1(Fusion.NetworkString{``0}@,System.Int32,System.Int32)">
<summary>
Returns the index of the first occurrence of a specified NetworkString in this instance.
</summary>
<typeparam name="TOtherSize">The size of the other NetworkString.</typeparam>
<param name="str">The NetworkString to seek.</param>
<param name="startIndex">The search starting position.</param>
<param name="count">The number of character positions to examine.</param>
<returns>The zero-based index position of value if that NetworkString is found, or -1 if it is not.</returns>
<exception cref="T:System.ArgumentOutOfRangeException">Thrown when the start index is less than zero or greater than the safe length of the string, or when the count is less than zero or the sum of the start index and count is greater than the safe length of the string.</exception>
</member>
<member name="M:Fusion.NetworkString`1.Contains(System.Char)">
<summary>
Determines whether a specified character is in this instance.
</summary>
<param name="c">The Unicode character to seek.</param>
<returns>true if the value parameter occurs within this string, or if value is the empty string (""); otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Contains(System.UInt32)">
<summary>
Determines whether a specified Unicode code point is in this instance.
</summary>
<param name="codePoint">The Unicode code point to seek.</param>
<returns>true if the value parameter occurs within this string, or if value is the empty string (""); otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Contains(System.String)">
<summary>
Determines whether a specified string is in this instance.
</summary>
<param name="str">The string to seek.</param>
<returns>true if the value parameter occurs within this string, or if value is the empty string (""); otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Contains``1(Fusion.NetworkString{``0})">
<summary>
Determines whether a specified NetworkString is in this instance.
</summary>
<typeparam name="TOtherSize">The size of the other NetworkString.</typeparam>
<param name="str">The NetworkString to seek.</param>
<returns>true if the value parameter occurs within this string, or if value is the empty string (""); otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Contains``1(Fusion.NetworkString{``0}@)">
<summary>
Determines whether a specified NetworkString is in this instance.
</summary>
<typeparam name="TOtherSize">The size of the other NetworkString.</typeparam>
<param name="str">The NetworkString to seek.</param>
<returns>true if the value parameter occurs within this string, or if value is the empty string (""); otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Substring(System.Int32)">
<summary>
Returns a substring from this instance. The substring starts at a specified character position.
</summary>
<param name="startIndex">The zero-based starting character position of a substring in this instance.</param>
<returns>A new NetworkString that is equivalent to the substring that begins at startIndex in this instance, or NetworkString.Empty if startIndex is equal to the length of this instance.</returns>
<exception cref="T:System.ArgumentOutOfRangeException">startIndex is less than zero or greater than the length of this instance.</exception>
</member>
<member name="M:Fusion.NetworkString`1.Substring(System.Int32,System.Int32)">
<summary>
Returns a substring from this instance. The substring starts at a specified character position and has a specified length.
</summary>
<param name="startIndex">The zero-based starting character position of a substring in this instance.</param>
<param name="length">The number of characters in the substring.</param>
<returns>A new NetworkString that is equivalent to the substring of length length that begins at startIndex in this instance, or NetworkString.Empty if startIndex is equal to the length of this instance and length is zero.</returns>
<exception cref="T:System.ArgumentOutOfRangeException">startIndex plus length indicates a position not within this instance, or startIndex or length is less than zero.</exception>
</member>
<member name="M:Fusion.NetworkString`1.ToLower">
<summary>
Converts all the characters in this NetworkString to lowercase.
</summary>
<returns>A new NetworkString in which all characters in this NetworkString are converted to lowercase.</returns>
</member>
<member name="M:Fusion.NetworkString`1.ToUpper">
<summary>
Converts all the characters in this NetworkString to uppercase.
</summary>
<returns>A new NetworkString in which all characters in this NetworkString are converted to uppercase.</returns>
</member>
<member name="M:Fusion.NetworkString`1.GetCharCount">
<summary>
Calculates the length of the equivalent UTF16 string.
</summary>
<returns>The length of the equivalent UTF16 string.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Compare(System.String)">
<summary>
Compares this instance with a specified string.
</summary>
<param name="s">The string to compare.</param>
<returns>A 32-bit signed integer that indicates the comparison result.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Compare(Fusion.NetworkString{`0})">
<summary>
Compares this instance with a specified NetworkString.
</summary>
<param name="s">The NetworkString to compare.</param>
<returns>A 32-bit signed integer that indicates the comparison result.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Compare(Fusion.NetworkString{`0}@)">
<summary>
Compares this instance with a specified NetworkString.
</summary>
<param name="s">The NetworkString to compare.</param>
<returns>A 32-bit signed integer that indicates the comparison result.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Compare``1(Fusion.NetworkString{``0})">
<summary>
Compares this instance with a specified NetworkString of a different size.
</summary>
<typeparam name="TOtherSize">The size of the other NetworkString.</typeparam>
<param name="other">The NetworkString to compare.</param>
<returns>A 32-bit signed integer that indicates the comparison result.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Compare``1(Fusion.NetworkString{``0}@)">
<summary>
Compares this instance with a specified NetworkString of a different size.
</summary>
<typeparam name="TOtherSize">The size of the other NetworkString.</typeparam>
<param name="other">The NetworkString to compare.</param>
<returns>A 32-bit signed integer that indicates the comparison result.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Equals(System.String)">
<summary>
Determines whether the current NetworkString is equal to a specified string.
</summary>
<param name="s">The string to compare with the current NetworkString.</param>
<returns>true if the specified string is equal to the current NetworkString; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Equals(System.Object)">
<summary>
Determines whether the current NetworkString is equal to a specified object.
</summary>
<param name="obj">The object to compare with the current NetworkString.</param>
<returns>true if the specified object is equal to the current NetworkString; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Equals(Fusion.NetworkString{`0})">
<summary>
Determines whether the current NetworkString is equal to a specified NetworkString.
</summary>
<param name="other">The NetworkString to compare with the current NetworkString.</param>
<returns>true if the specified NetworkString is equal to the current NetworkString; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Equals(Fusion.NetworkString{`0}@)">
<summary>
Determines whether the current NetworkString is equal to a specified NetworkString.
</summary>
<param name="other">The NetworkString to compare with the current NetworkString.</param>
<returns>true if the specified NetworkString is equal to the current NetworkString; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Equals``1(Fusion.NetworkString{``0})">
<summary>
Determines whether the current NetworkString is equal to a specified NetworkString of a different size.
</summary>
<typeparam name="TOtherSize">The size of the other NetworkString.</typeparam>
<param name="other">The NetworkString to compare with the current NetworkString.</param>
<returns>true if the specified NetworkString is equal to the current NetworkString; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Equals``1(Fusion.NetworkString{``0}@)">
<summary>
Determines whether the current NetworkString is equal to a specified NetworkString of a different size.
</summary>
<typeparam name="TOtherSize">The size of the other NetworkString.</typeparam>
<param name="other">The NetworkString to compare with the current NetworkString.</param>
<returns>true if the specified NetworkString is equal to the current NetworkString; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.Assign(System.String)">
<summary>
Assign a new value to this NetworkString.
</summary>
<param name="value">String value.</param>
</member>
<member name="M:Fusion.NetworkString`1.StartsWith(System.String)">
<summary>
Checks if the current NetworkString starts with a specified string.
</summary>
<param name="s">The string to check.</param>
<returns>true if the current NetworkString starts with the specified string; otherwise, false.</returns>
<exception cref="T:System.ArgumentNullException">Thrown when the string is null.</exception>
</member>
<member name="M:Fusion.NetworkString`1.StartsWith``1(Fusion.NetworkString{``0}@)">
<summary>
Checks if the current NetworkString starts with a specified NetworkString of a different size.
</summary>
<typeparam name="TOtherSize">The size of the other NetworkString.</typeparam>
<param name="other">The NetworkString to check.</param>
<returns>true if the current NetworkString starts with the specified NetworkString; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.EndsWith``1(Fusion.NetworkString{``0}@)">
<summary>
Checks if the current NetworkString ends with a specified NetworkString of a different size.
</summary>
<typeparam name="TOtherSize">The size of the other NetworkString.</typeparam>
<param name="other">The NetworkString to check.</param>
<returns>true if the current NetworkString ends with the specified NetworkString; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkString`1.EndsWith(System.String)">
<summary>
Checks if the current NetworkString ends with a specified string.
</summary>
<param name="s">The string to check.</param>
<returns>true if the current NetworkString ends with the specified string; otherwise, false.</returns>
<exception cref="T:System.ArgumentNullException">Thrown when the string is null.</exception>
</member>
<member name="M:Fusion.NetworkString`1.GetHashCode">
<summary>
Returns the hash code for this NetworkString.
</summary>
<returns>A 32-bit signed integer hash code.</returns>
</member>
<member name="M:Fusion.NetworkString`1.ToString">
<summary>
Converts the value of this NetworkString to its equivalent string representation.
</summary>
<returns>A string representation of the value of this NetworkString.</returns>
</member>
<member name="M:Fusion.NetworkString`1.GetEnumerator">
<summary>
Returns an enumerator that iterates through the NetworkString.
</summary>
<returns>A UTF32Tools.CharEnumerator for the NetworkString.</returns>
</member>
<member name="T:Fusion.NetworkString">
<summary>
Provides static methods for NetworkString operations.
</summary>
</member>
<member name="M:Fusion.NetworkString.GetCapacity``1">
<summary>
Gets the capacity of a NetworkString of a specified size.
</summary>
<typeparam name="TSize">The size of the NetworkString.</typeparam>
<returns>The capacity of a NetworkString of the specified size.</returns>
</member>
<member name="T:Fusion.PlayerRef">
<summary>
Represents a Fusion player.
</summary>
<para>The PlayerRef, in contrast to the player index, is 1-based. The reason is that default(PlayerRef) will return a "null/invalid" player ref struct for convenience. There are automatic cast operators that can cast an int into a PlayerRef.</para>
<example><code>
default(PlayerRef), internally a 0, means NOBODY
PlayerRef, internally 1, is the same as player index 0
PlayerRef, internally 2, is the same as player index 1
</code></example>
</member>
<member name="P:Fusion.PlayerRef.Comparer">
<summary>
Gets an equality comparer that can be used to compare two PlayerRef instances.
</summary>
</member>
<member name="F:Fusion.PlayerRef.SIZE">
<summary>
The size of the PlayerRef structure in bytes.
</summary>
</member>
<member name="F:Fusion.PlayerRef.MASTER_CLIENT_RAW">
<summary>
A constant representing the raw index value for the master client.
</summary>
</member>
<member name="P:Fusion.PlayerRef.None">
<summary>
None player
</summary>
</member>
<member name="P:Fusion.PlayerRef.MasterClient">
<summary>
Special master client player ref value of -1
</summary>
</member>
<member name="P:Fusion.PlayerRef.IsRealPlayer">
<summary>
If this player ref is a valid unique player index
</summary>
</member>
<member name="P:Fusion.PlayerRef.IsNone">
<summary>
Returns true if the index value equals -1 (internal raw value of 0), indicating no player.
</summary>
</member>
<member name="P:Fusion.PlayerRef.IsMasterClient">
<summary>
Returns true if this PlayerRef indicates the MasterClient rather than a specific Player by Index,
This is a special flag value which has the encoded index value of -2 (internal raw backing value of -1).
This is not a valid PlayerRef value in itself, and no Runner will ever be assigned this value as its LocalPlayer.
It is used by properties like Object.StateAuthority to indicate that the MasterClient has authority
(which ever player that currently is), rather than a specific Player.
</summary>
</member>
<member name="P:Fusion.PlayerRef.RawEncoded">
<summary>
Returns the index backing value without modification.
Unlike <see cref="P:Fusion.PlayerRef.AsIndex"/> which returns the backing value - 1.
<para>0=None -1=MasterClient >0=PlayerId</para>
</summary>
</member>
<member name="P:Fusion.PlayerRef.AsIndex">
<summary>
Returns the PlayerRef int as an integer Id value.
<para>-1=None -2=MasterClient >=0=PlayerId</para>
</summary>
</member>
<member name="P:Fusion.PlayerRef.PlayerId">
<summary>
Returns the PlayerRef as an integer Id value.
<para>-1=None -2=MasterClient</para>
</summary>
</member>
<member name="M:Fusion.PlayerRef.Equals(System.Object)">
<summary>
Determines whether the specified object is equal to the current object.
</summary>
<param name="obj">The object to compare with the current object.</param>
<returns>true if the specified object is equal to the current object; otherwise, false.</returns>
</member>
<member name="M:Fusion.PlayerRef.GetHashCode">
<summary>
Serves as the default hash function.
</summary>
</member>
<member name="M:Fusion.PlayerRef.ToString">
<summary>
Returns a string that represents the current object.
</summary>
</member>
<member name="M:Fusion.PlayerRef.FromEncoded(System.Int32)">
<summary>
Creates a new PlayerRef from the given encoded value.
</summary>
<param name="encoded">The encoded value to create the PlayerRef from.</param>
<returns>A new PlayerRef that represents the encoded value.</returns>
</member>
<member name="M:Fusion.PlayerRef.FromIndex(System.Int32)">
<summary>
Creates a new PlayerRef from the given index.
</summary>
<param name="index">The index to create the PlayerRef from.</param>
<returns>A new PlayerRef that represents the index.</returns>
</member>
<member name="M:Fusion.PlayerRef.op_Equality(Fusion.PlayerRef,Fusion.PlayerRef)">
<summary>
Determines whether two PlayerRef instances are equal.
</summary>
<param name="a">The first PlayerRef to compare.</param>
<param name="b">The second PlayerRef to compare.</param>
<returns>true if the PlayerRefs are equal; otherwise, false.</returns>
</member>
<member name="M:Fusion.PlayerRef.op_Inequality(Fusion.PlayerRef,Fusion.PlayerRef)">
<summary>
Determines whether two PlayerRef instances are not equal.
</summary>
<param name="a">The first PlayerRef to compare.</param>
<param name="b">The second PlayerRef to compare.</param>
<returns>true if the PlayerRefs are not equal; otherwise, false.</returns>
</member>
<member name="M:Fusion.PlayerRef.Write(Fusion.Sockets.NetBitBuffer*,Fusion.PlayerRef)">
<summary>
Writes the PlayerRef to the provided NetBitBuffer.
</summary>
<param name="buffer">The buffer to write to.</param>
<param name="playerRef">The PlayerRef to write.</param>
</member>
<member name="M:Fusion.PlayerRef.Write``1(``0*,Fusion.PlayerRef)">
<summary>
Writes the PlayerRef to the provided buffer.
</summary>
<typeparam name="T">The type of the buffer. Must be unmanaged and implement INetBitWriteStream.</typeparam>
<param name="buffer">The buffer to write to.</param>
<param name="playerRef">The PlayerRef to write.</param>
</member>
<member name="M:Fusion.PlayerRef.Read(Fusion.Sockets.NetBitBuffer*)">
<summary>
Reads a PlayerRef from the provided NetBitBuffer.
</summary>
<param name="buffer">The buffer to read from.</param>
<returns>The PlayerRef read from the buffer.</returns>
</member>
<member name="M:Fusion.PlayerRef.Equals(Fusion.PlayerRef)">
<summary>
Determines whether the specified PlayerRef is equal to the current PlayerRef.
</summary>
<param name="other">The PlayerRef to compare with the current PlayerRef.</param>
<returns>true if the specified PlayerRef is equal to the current PlayerRef; otherwise, false.</returns>
</member>
<member name="T:Fusion.ReadWriteUtils">
<summary>
Provides utility methods for reading and writing data.
</summary>
</member>
<member name="F:Fusion.ReadWriteUtils.ACCURACY">
<summary>Accuracy of floating point values when serialized.</summary>
</member>
<member name="M:Fusion.ReadWriteUtils.WriteFloat(System.Int32*,System.Single)">
<summary>
Writes a float value to the provided memory location.
</summary>
<param name="data">The memory location to write to.</param>
<param name="f">The float value to write.</param>
</member>
<member name="M:Fusion.ReadWriteUtils.ReadFloat(System.Int32*)">
<summary>
Reads a float value from the provided memory location.
</summary>
<param name="data">The memory location to read from.</param>
<returns>The float value read from the memory location.</returns>
</member>
<member name="M:Fusion.ReadWriteUtils.WriteVector2(System.Int32*,UnityEngine.Vector2)">
<summary>
Writes a Vector2 value to the provided memory location.
</summary>
<param name="data">The memory location to write to.</param>
<param name="value">The Vector2 value to write.</param>
</member>
<member name="M:Fusion.ReadWriteUtils.ReadVector2(System.Int32*)">
<summary>
Reads a Vector2 value from the provided memory location.
</summary>
<param name="data">The memory location to read from.</param>
<returns>The Vector2 value read from the memory location.</returns>
</member>
<member name="M:Fusion.ReadWriteUtils.WriteVector3(System.Int32*,UnityEngine.Vector3)">
<summary>
Writes a Vector3 value to the provided memory location.
</summary>
<param name="data">The memory location to write to.</param>
<param name="value">The Vector3 value to write.</param>
</member>
<member name="M:Fusion.ReadWriteUtils.ReadVector3(System.Int32*)">
<summary>
Reads a Vector3 value from the provided memory location.
</summary>
<param name="data">The memory location to read from.</param>
<returns>The Vector3 value read from the memory location.</returns>
</member>
<member name="M:Fusion.ReadWriteUtils.WriteVector4(System.Int32*,UnityEngine.Vector4)">
<summary>
Writes a Vector4 value to the provided memory location.
</summary>
<param name="data">The memory location to write to.</param>
<param name="value">The Vector4 value to write.</param>
</member>
<member name="M:Fusion.ReadWriteUtils.ReadVector4(System.Int32*)">
<summary>
Reads a Vector4 value from the provided memory location.
</summary>
<param name="data">The memory location to read from.</param>
<returns>The Vector4 value read from the memory location.</returns>
</member>
<member name="M:Fusion.ReadWriteUtils.WriteQuaternion(System.Int32*,UnityEngine.Quaternion)">
<summary>
Writes a Quaternion value to the provided memory location.
</summary>
<param name="data">The memory location to write to.</param>
<param name="value">The Quaternion value to write.</param>
</member>
<member name="M:Fusion.ReadWriteUtils.ReadQuaternion(System.Int32*)">
<summary>
Reads a Quaternion value from the provided memory location.
</summary>
<param name="data">The memory location to read from.</param>
<returns>The Quaternion value read from the memory location.</returns>
</member>
<member name="M:Fusion.ReadWriteUtils.WriteEmptyNetworkBehaviourRef(System.Int32*)">
<summary>
Writes an empty NetworkBehaviour reference to the provided memory location.
</summary>
<param name="data">The memory location to write to.</param>
</member>
<member name="M:Fusion.ReadWriteUtils.WriteNullBehaviourRef(System.Int32*)">
<summary>
Writes a null NetworkBehaviour reference to the provided memory location.
</summary>
<param name="data">The memory location to write to.</param>
</member>
<member name="M:Fusion.ReadWriteUtils.WriteNetworkBehaviourRef(System.Int32*,Fusion.NetworkRunner,Fusion.NetworkBehaviour)">
<summary>
Writes a NetworkBehaviour reference to the provided memory location.
</summary>
<param name="data">The memory location to write to.</param>
<param name="runner">The NetworkRunner associated with the NetworkBehaviour.</param>
<param name="reference">The NetworkBehaviour reference to write.</param>
</member>
<member name="M:Fusion.ReadWriteUtils.ReadNetworkBehaviourRef(System.Int32*,Fusion.NetworkRunner,System.Boolean@)">
<summary>
Reads a NetworkBehaviour reference from the provided memory location.
Null is considered valid (0,1).
</summary>
<param name="data">The memory location to read from.</param>
<param name="runner">The NetworkRunner associated with the NetworkBehaviour.</param>
<param name="isValid">Out parameter indicating whether the read operation was valid.</param>
<returns>The NetworkBehaviour reference read from the memory location.</returns>
</member>
<member name="T:Fusion.ReadWriteUtilsForWeaver">
<summary>
Provides utility methods for reading and writing data.
</summary>
</member>
<member name="F:Fusion.ReadWriteUtilsForWeaver.ACCURACY">
<summary>Accuracy of floating point values when serialized.</summary>
</member>
<member name="M:Fusion.ReadWriteUtilsForWeaver.ReadBoolean(System.Int32*)">
<summary>
Reads a boolean value from the provided memory location.
</summary>
<param name="data">The memory location to read from.</param>
<returns>The boolean value read from the memory location.</returns>
</member>
<member name="M:Fusion.ReadWriteUtilsForWeaver.WriteBoolean(System.Int32*,System.Boolean)">
<summary>
Writes a boolean value to the provided memory location.
</summary>
<param name="data">The memory location to write to.</param>
<param name="value">The boolean value to write.</param>
</member>
<member name="M:Fusion.ReadWriteUtilsForWeaver.GetByteArrayHashCode(System.Byte*,System.Int32)">
<summary>
</summary>
<param name="ptr"></param>
<param name="length"></param>
<returns></returns>
</member>
<member name="M:Fusion.ReadWriteUtilsForWeaver.WriteStringUtf8NoHash(System.Void*,System.String)">
<summary>
Writes a string to the provided memory location in UTF8 format without a hash.
</summary>
<param name="destination">The memory location to write to.</param>
<param name="str">The string to write.</param>
<returns>The number of bytes written.</returns>
</member>
<member name="M:Fusion.ReadWriteUtilsForWeaver.ReadStringUtf8NoHash(System.Void*,System.String@)">
<summary>
Reads a string from the provided memory location in UTF8 format without a hash.
</summary>
<param name="source">The memory location to read from.</param>
<param name="result">The string read from the memory location.</param>
<returns>The number of bytes read.</returns>
</member>
<member name="M:Fusion.ReadWriteUtilsForWeaver.GetByteCountUtf8NoHash(System.String)">
<summary>
Gets the byte count of a string in UTF8 format without a hash.
</summary>
<param name="value">The string to get the byte count of.</param>
<returns>The byte count of the string in UTF8 format.</returns>
</member>
<member name="M:Fusion.ReadWriteUtilsForWeaver.GetStringHashCode(System.String,System.Int32)">
<summary>
</summary>
<param name="value"></param>
<param name="maxLength"></param>
<returns></returns>
</member>
<member name="M:Fusion.ReadWriteUtilsForWeaver.WriteStringUtf32NoHash(System.Int32*,System.Int32,System.String)">
<summary>
Writes a string to the provided memory location in UTF32 format without a hash.
</summary>
<param name="ptr">The memory location to write to.</param>
<param name="maxLength">The maximum length of the string.</param>
<param name="value">The string to write.</param>
<returns>The number of bytes written.</returns>
</member>
<member name="M:Fusion.ReadWriteUtilsForWeaver.ReadStringUtf32NoHash(System.Int32*,System.Int32,System.String@)">
<summary>
Reads a string from the provided memory location in UTF32 format without a hash.
</summary>
<param name="ptr">The memory location to read from.</param>
<param name="maxLength">The maximum length of the string.</param>
<param name="result">The string read from the memory location.</param>
<returns>The number of bytes read.</returns>
</member>
<member name="M:Fusion.ReadWriteUtilsForWeaver.WriteStringUtf32WithHash(System.Int32*,System.Int32,System.String,System.String@)">
<summary>
Writes a string to the provided memory location in UTF32 format with a hash.
</summary>
<param name="ptr">The memory location to write to.</param>
<param name="maxLength">The maximum length of the string.</param>
<param name="value">The string to write.</param>
<param name="cache">A reference to a cache string. This will be updated with the trimmed value of the input string.</param>
<returns>The number of bytes written.</returns>
</member>
<member name="M:Fusion.ReadWriteUtilsForWeaver.ReadStringUtf32WithHash(System.Int32*,System.Int32,System.String@)">
<summary>
Reads a string from the provided memory location in UTF32 format with a hash.
</summary>
<param name="ptr">The memory location to read from.</param>
<param name="maxLength">The maximum length of the string.</param>
<param name="cache">A reference to a cache string. This will be updated with the read string if it matches the cached hashcode.</param>
<returns>The number of bytes read.</returns>
</member>
<member name="M:Fusion.ReadWriteUtilsForWeaver.GetWordCountString(System.Int32,System.Boolean)">
<summary>
Gets the word count of a string with optional caching.
</summary>
<param name="capacity">The capacity of the string.</param>
<param name="withCaching">Indicates whether caching is used.</param>
<returns>The word count of the string.</returns>
</member>
<member name="M:Fusion.ReadWriteUtilsForWeaver.VerifyRawNetworkUnwrap``1(System.Int32,System.Int32)">
<summary>
Verifies the byte count of a network unwrapped object.
Throws an exception if the actual byte count exceeds the maximum allowed byte count.
</summary>
<typeparam name="T">The type of the network unwrapped object.</typeparam>
<param name="actual">The actual byte count.</param>
<param name="maxBytes">The maximum allowed byte count.</param>
<returns>The actual byte count if it does not exceed the maximum allowed byte count.</returns>
</member>
<member name="M:Fusion.ReadWriteUtilsForWeaver.VerifyRawNetworkWrap``1(System.Int32,System.Int32)">
<summary>
Verifies the byte count of a network wrapped object.
Throws an exception if the actual byte count exceeds the maximum allowed byte count.
</summary>
<typeparam name="T">The type of the network wrapped object.</typeparam>
<param name="actual">The actual byte count.</param>
<param name="maxBytes">The maximum allowed byte count.</param>
<returns>The actual byte count if it does not exceed the maximum allowed byte count.</returns>
</member>
<member name="T:Fusion.ReflectionUtils">
<summary>
Provides utility methods for reflection.
</summary>
</member>
<member name="M:Fusion.ReflectionUtils.GetCustomAttributeOrThrow``1(System.Reflection.MemberInfo,System.Boolean)">
<summary>
Retrieves a custom attribute of type T from the provided member.
</summary>
<typeparam name="T">The type of the attribute to retrieve. Must be a subclass of Attribute.</typeparam>
<param name="member">The member to retrieve the attribute from.</param>
<param name="inherit">Specifies whether to search this member's inheritance chain to find the attributes.</param>
<returns>The custom attribute of type T.</returns>
<exception cref="T:System.ArgumentOutOfRangeException">Thrown when the provided member does not have an attribute of type T.</exception>
<exception cref="T:System.InvalidOperationException">Thrown when the provided member has more than one attribute of type T.</exception>
</member>
<member name="M:Fusion.ReflectionUtils.GetWeavedAttributeOrThrow(System.Type)">
<summary>
Gets the NetworkBehaviourWeavedAttribute for the specified type.
Throws an InvalidOperationException if the type has not been weaved.
</summary>
<param name="type">The type to get the NetworkBehaviourWeavedAttribute for.</param>
<returns>The NetworkBehaviourWeavedAttribute for the specified type.</returns>
<exception cref="T:System.InvalidOperationException">Thrown when the type has not been weaved.</exception>
</member>
<member name="M:Fusion.ReflectionUtils.GetAllWeavedAssemblies">
<summary>
Gets all assemblies that have been weaved.
</summary>
<returns>An IEnumerable of all weaved assemblies.</returns>
</member>
<member name="M:Fusion.ReflectionUtils.GetAllSimulationBehaviourTypes">
<summary>
Gets all types that are assignable from SimulationBehaviour from all assemblies.
</summary>
<returns>An IEnumerable of all types that are assignable from SimulationBehaviour.</returns>
</member>
<member name="M:Fusion.ReflectionUtils.GetAllWeavedSimulationBehaviourTypes">
<summary>
Gets all types that are assignable from SimulationBehaviour from all weaved assemblies.
</summary>
<returns>An IEnumerable of all types that are assignable from SimulationBehaviour in weaved assemblies.</returns>
</member>
<member name="M:Fusion.ReflectionUtils.GetAllNetworkBehaviourTypes">
<summary>
Gets all types that are assignable from NetworkBehaviour from all assemblies.
</summary>
<returns>An IEnumerable of all types that are assignable from NetworkBehaviour.</returns>
</member>
<member name="M:Fusion.ReflectionUtils.GetAllWeavedNetworkBehaviourTypes">
<summary>
Gets all types that are assignable from NetworkBehaviour from all weaved assemblies.
</summary>
<returns>An IEnumerable of all types that are assignable from NetworkBehaviour in weaved assemblies.</returns>
</member>
<member name="M:Fusion.ReflectionUtils.GetAllWeaverGeneratedTypes">
<summary>
Gets all types that have the WeaverGeneratedAttribute from all weaved assemblies.
</summary>
<returns>An IEnumerable of all types that have the WeaverGeneratedAttribute in weaved assemblies.</returns>
</member>
<member name="T:Fusion.RingBuffer`1">
<summary>
<para>
A circular buffer.
</para>
<para>
Normally, you push to the back and pop from the front.
When it's full, <c>PushBack</c> will remove from the front and <c>PushFront</c> will remove from the back.
</para>
</summary>
</member>
<member name="M:Fusion.RingBuffer`1.#ctor(System.Int32)">
<summary>
Returns a new <see cref="T:Fusion.RingBuffer`1"/> instance.
</summary>
</member>
<member name="M:Fusion.RingBuffer`1.#ctor(System.Int32,`0[])">
<summary>
Returns a new <see cref="T:Fusion.RingBuffer`1"/> instance.
</summary>
</member>
<member name="P:Fusion.RingBuffer`1.Count">
<summary>
The number of items in the buffer.
</summary>
</member>
<member name="P:Fusion.RingBuffer`1.Capacity">
<summary>
The maximum number of items that can be in the buffer.
</summary>
</member>
<member name="P:Fusion.RingBuffer`1.IsEmpty">
<summary>
<c>True</c> if the buffer contains no items.
</summary>
</member>
<member name="P:Fusion.RingBuffer`1.IsFull">
<summary>
<c>True</c> if the buffer contains the maximum number of items.
</summary>
</member>
<member name="P:Fusion.RingBuffer`1.Item(System.Int32)">
<summary>
<para>Indexed access to items in the buffer.</para>
<para>Indexes follow insertion order, i.e. <c>this[0]</c> returns the front item and <c>this[Count - 1]</c> returns the rear item.</para>
</summary>
<exception cref="T:System.IndexOutOfRangeException"></exception>
</member>
<member name="M:Fusion.RingBuffer`1.Front">
<summary>
The front item in the buffer.
</summary>
</member>
<member name="M:Fusion.RingBuffer`1.Back">
<summary>
The back item in the buffer.
</summary>
</member>
<member name="M:Fusion.RingBuffer`1.PushBack(`0)">
<summary>
Inserts an item at the back of the buffer.
</summary>
</member>
<member name="M:Fusion.RingBuffer`1.PushFront(`0)">
<summary>
Inserts an item at the front of the buffer.
</summary>
</member>
<member name="M:Fusion.RingBuffer`1.PopBack">
<summary>
Removes and returns the item at the back of the buffer.
</summary>
</member>
<member name="M:Fusion.RingBuffer`1.PopFront">
<summary>
Removes and returns the item at the front of the buffer.
</summary>
</member>
<member name="M:Fusion.RingBuffer`1.Clear">
<summary>
Removes all items from the buffer.
</summary>
</member>
<member name="M:Fusion.RingBuffer`1.ToArraySegments">
<summary>
Returns an <c>ArraySegment</c> pair, where both segments and the items within them follow insertion order.
Does not copy.
</summary>
</member>
<member name="M:Fusion.RingBuffer`1.ToArray">
<summary>
Returns a new array with the buffer's items in insertion order.
</summary>
</member>
<member name="M:Fusion.RingBuffer`1.GetEnumerator">
<summary>
Returns an enumerator that can iterate the buffer.
</summary>
</member>
<member name="M:Fusion.RingBuffer`1.InternalIndex(System.Int32)">
<summary>
Converts <c>index</c> into the corresponding index in <c>_buffer</c>.
</summary>
</member>
<member name="M:Fusion.RingBuffer`1.Increment(System.Int32)">
<summary>
Increments the provided index variable, wrapping around if necessary.
</summary>
</member>
<member name="M:Fusion.RingBuffer`1.Decrement(System.Int32)">
<summary>
Decrements the provided index variable, wrapping around if necessary.
</summary>
</member>
<member name="T:Fusion.SceneRef">
<summary>
Scene reference struct.
Can be used to reference a scene by index or by path.
</summary>
</member>
<member name="F:Fusion.SceneRef.SIZE">
<summary>The size of the SceneRef structure in bytes.</summary>
</member>
<member name="F:Fusion.SceneRef.FLAG_ADDRESSABLE">
<summary>A constant representing the flag for addressable scenes.</summary>
</member>
<member name="F:Fusion.SceneRef.RawValue">
<summary>The raw value of the SceneRef. This can represent either an index or a path hash, depending on the flag.</summary>
</member>
<member name="P:Fusion.SceneRef.None">
<summary>
None scene
</summary>
</member>
<member name="P:Fusion.SceneRef.IsValid">
<summary>
If this scene index is valid
</summary>
</member>
<member name="P:Fusion.SceneRef.IsIndex">
<summary>
Returns true if this scene ref is an index.
</summary>
</member>
<member name="P:Fusion.SceneRef.AsIndex">
<summary>
Returns lower 32 bits as an index.
</summary>
</member>
<member name="P:Fusion.SceneRef.AsPathHash">
<summary>
Gets the path hash of the SceneRef.
</summary>
<exception cref="T:System.InvalidOperationException">Thrown when the SceneRef is an index, not a path.</exception>
</member>
<member name="M:Fusion.SceneRef.IsPath(System.String)">
<summary>
Checks if the SceneRef corresponds to a specific path.
</summary>
<param name="path">The path to check.</param>
<returns>true if the SceneRef corresponds to the path; otherwise, false.</returns>
</member>
<member name="M:Fusion.SceneRef.FromIndex(System.Int32)">
<summary>
Creates a SceneRef from an index.
</summary>
<param name="index">The index to create the SceneRef from.</param>
<returns>A SceneRef that represents the index.</returns>
<exception cref="T:System.ArgumentOutOfRangeException">Thrown when the index is less than 0 or equal to int.MaxValue.</exception>
</member>
<member name="M:Fusion.SceneRef.FromPath(System.String)">
<summary>
Creates a scene ref from a path. The most common use case for this method is when using Unity's addressable scenes.
The path is hashed (31 bit), so on rare occasion there may be a hash collision. In such case
consider renaming a scene or construct your own hash and use <see cref="M:Fusion.SceneRef.FromRaw(System.UInt32)"/>.
To check if a scene ref is was created for a specific path, use <see cref="M:Fusion.SceneRef.IsPath(System.String)"/>.
</summary>
<param name="path">The path to create the SceneRef from.</param>
<returns>A SceneRef that represents the path.</returns>
</member>
<member name="M:Fusion.SceneRef.FromRaw(System.UInt32)">
<summary>
Creates a SceneRef from a raw value.
</summary>
<param name="rawValue">The raw value to create the SceneRef from.</param>
<returns>A SceneRef that represents the raw value.</returns>
</member>
<member name="M:Fusion.SceneRef.Equals(System.Object)">
<summary>
Determines whether the specified object is equal to the current SceneRef.
</summary>
<param name="obj">The object to compare with the current SceneRef.</param>
<returns>true if the specified object is equal to the current SceneRef; otherwise, false.</returns>
</member>
<member name="M:Fusion.SceneRef.Equals(Fusion.SceneRef)">
<summary>
Determines whether the specified SceneRef is equal to the current SceneRef.
</summary>
<param name="other">The SceneRef to compare with the current SceneRef.</param>
<returns>true if the specified SceneRef is equal to the current SceneRef; otherwise, false.</returns>
</member>
<member name="M:Fusion.SceneRef.GetHashCode">
<summary>
Serves as the default hash function.
</summary>
<returns>A hash code for the current SceneRef.</returns>
</member>
<member name="M:Fusion.SceneRef.ToString">
<summary>
Returns a string that represents the current SceneRef.
</summary>
<returns>A string that represents the current SceneRef.</returns>
</member>
<member name="M:Fusion.SceneRef.ToString(System.Boolean,System.Boolean)">
<summary>
Returns a string that represents the current SceneRef, with optional formatting.
</summary>
<param name="brackets">If true, the string will be enclosed in brackets.</param>
<param name="prefix">If true, the string will be prefixed with "Scene:".</param>
<returns>A string that represents the current SceneRef, formatted according to the provided parameters.</returns>
</member>
<member name="M:Fusion.SceneRef.op_Equality(Fusion.SceneRef,Fusion.SceneRef)">
<summary>
Returns true if the values are equal.
</summary>
<param name="a">SceneRef a</param>
<param name="b">SceneRef b</param>
<returns>true if the values are equal; otherwise, false.</returns>
</member>
<member name="M:Fusion.SceneRef.op_Inequality(Fusion.SceneRef,Fusion.SceneRef)">
<summary>
Returns true if the values are not equal.
</summary>
<param name="a">SceneRef a</param>
<param name="b">SceneRef b</param>
<returns>true if the values are not equal; otherwise, false.</returns>
</member>
<member name="T:Fusion.SerializableDictionary">
<summary>
A serializable dictionary.
</summary>
</member>
<member name="M:Fusion.SerializableDictionary.Create``2">
<summary>
Creates a new serializable dictionary.
</summary>
<typeparam name="TKey">The type of the dictionary key.</typeparam>
<typeparam name="TValue">The type of the dictionary value.</typeparam>
<returns>A new serializable dictionary.</returns>
</member>
<member name="T:Fusion.SerializableDictionary`2">
<summary>
A serializable dictionary.
</summary>
<typeparam name="TKey">The type of the dictionary key.</typeparam>
<typeparam name="TValue">The type of the dictionary value.</typeparam>
<remarks>
This class is not thread-safe.
</remarks>
</member>
<member name="F:Fusion.SerializableDictionary`2.ItemsPropertyPath">
<summary>
The property path for the items in the SerializableDictionary.
</summary>
</member>
<member name="F:Fusion.SerializableDictionary`2.EntryKeyPropertyPath">
<summary>
The property path for the key in the Entry structure.
</summary>
</member>
<member name="M:Fusion.SerializableDictionary`2.Wrap(System.Collections.Generic.Dictionary{`0,`1})">
<summary>
Wraps an existing Dictionary into a SerializableDictionary.
</summary>
<param name="dictionary">The Dictionary to be wrapped.</param>
<returns>A new SerializableDictionary that wraps the provided Dictionary.</returns>
</member>
<member name="P:Fusion.SerializableDictionary`2.Item(`0)">
<summary>
Gets or sets the value associated with the specified key.
</summary>
<param name="key">The key of the value to get or set.</param>
<returns>The value associated with the specified key. If the specified key is not found, a get operation throws a KeyNotFoundException, and a set operation creates a new element with the specified key.</returns>
</member>
<member name="P:Fusion.SerializableDictionary`2.Count">
<summary>
Gets the number of key/value pairs contained in the SerializableDictionary.
</summary>
</member>
<member name="P:Fusion.SerializableDictionary`2.IsReadOnly">
<summary>
Gets a value indicating whether the SerializableDictionary is read-only. This value is always false.
</summary>
</member>
<member name="M:Fusion.SerializableDictionary`2.Add(`0,`1)">
<summary>
Adds the specified key and value to the SerializableDictionary.
</summary>
<param name="key">The key of the element to add.</param>
<param name="value">The value of the element to add.</param>
</member>
<member name="M:Fusion.SerializableDictionary`2.Clear">
<summary>
Removes all keys and values from the SerializableDictionary.
</summary>
</member>
<member name="M:Fusion.SerializableDictionary`2.ContainsKey(`0)">
<summary>
Determines whether the SerializableDictionary contains the specified key.
</summary>
<param name="key">The key to locate in the SerializableDictionary.</param>
<returns>true if the SerializableDictionary contains an element with the specified key; otherwise, false.</returns>
</member>
<member name="M:Fusion.SerializableDictionary`2.Remove(`0)">
<summary>
Removes the value with the specified key from the SerializableDictionary.
</summary>
<param name="key">The key of the element to remove.</param>
<returns>true if the element is successfully found and removed; otherwise, false. This method returns false if key is not found in the SerializableDictionary.</returns>
</member>
<member name="M:Fusion.SerializableDictionary`2.TryGetValue(`0,`1@)">
<summary>
Gets the value associated with the specified key.
</summary>
<param name="key">The key of the value to get.</param>
<param name="value">When this method returns, contains the value associated with the specified key, if the key is found; otherwise, the default value for the type of the value parameter. This parameter is passed uninitialized.</param>
<returns>true if the SerializableDictionary contains an element with the specified key; otherwise, false.</returns>
</member>
<member name="P:Fusion.SerializableDictionary`2.Keys">
<summary>
Gets a collection containing the keys in the SerializableDictionary.
</summary>
</member>
<member name="P:Fusion.SerializableDictionary`2.Values">
<summary>
Gets a collection containing the values in the SerializableDictionary.
</summary>
</member>
<member name="M:Fusion.SerializableDictionary`2.GetEnumerator">
<summary>
Returns an enumerator that iterates through the SerializableDictionary.
</summary>
<returns>A Dictionary{TKey,TValue}.Enumerator structure for the SerializableDictionary.</returns>
</member>
<member name="M:Fusion.SerializableDictionary`2.Reset">
<summary>
Resets the SerializableDictionary, clearing its internal dictionary.
</summary>
</member>
<member name="M:Fusion.SerializableDictionary`2.Store">
<summary>
Stores the SerializableDictionary's data into an array for serialization.
This includes handling duplicates and null keys.
</summary>
</member>
<member name="T:Fusion.Tick">
<summary>
A tick is a 32-bit integer that represents a frame number.
</summary>
</member>
<member name="T:Fusion.Tick.RelationalComparer">
<summary>
Provides a mechanism for comparing two Tick objects.
</summary>
</member>
<member name="M:Fusion.Tick.RelationalComparer.Compare(Fusion.Tick,Fusion.Tick)">
<summary>
Compares two Tick objects and returns a value indicating whether one is less than, equal to, or greater than the other.
</summary>
<param name="x">The first Tick object to compare.</param>
<param name="y">The second Tick object to compare.</param>
<returns>A signed integer that indicates the relative values of x and y.</returns>
</member>
<member name="T:Fusion.Tick.EqualityComparer">
<summary>
Provides a mechanism for comparing two Tick objects for equality.
</summary>
</member>
<member name="M:Fusion.Tick.EqualityComparer.Equals(Fusion.Tick,Fusion.Tick)">
<summary>
Determines whether the specified Tick objects are equal.
</summary>
<param name="x">The first Tick object to compare.</param>
<param name="y">The second Tick object to compare.</param>
<returns>true if the specified Tick objects are equal; otherwise, false.</returns>
</member>
<member name="M:Fusion.Tick.EqualityComparer.GetHashCode(Fusion.Tick)">
<summary>
Serves as a hash function for a Tick object.
</summary>
<param name="obj">The Tick object for which to get a hash code.</param>
<returns>A hash code for the specified Tick object.</returns>
</member>
<member name="F:Fusion.Tick.SIZE">
<summary>
The size of the Tick structure in bytes.
</summary>
</member>
<member name="F:Fusion.Tick.ALIGNMENT">
<summary>
The alignment of the Tick structure in bytes.
</summary>
</member>
<member name="F:Fusion.Tick.Raw">
<summary>
The raw value of the Tick. This represents a frame number.
</summary>
</member>
<member name="M:Fusion.Tick.Next(System.Int32)">
<summary>
Returns the next Tick, incremented by a specified value.
</summary>
<param name="increment">The value to increment the Tick by.</param>
<returns>A new Tick that represents the current Tick incremented by the specified value.</returns>
</member>
<member name="M:Fusion.Tick.Equals(Fusion.Tick)">
<summary>
Determines whether the specified Tick is equal to the current Tick.
</summary>
<param name="other">The Tick to compare with the current Tick.</param>
<returns>true if the specified Tick is equal to the current Tick; otherwise, false.</returns>
</member>
<member name="M:Fusion.Tick.CompareTo(Fusion.Tick)">
<summary>
Compares the current Tick with another Tick.
</summary>
<param name="other">A Tick to compare with this Tick.</param>
<returns>A value that indicates the relative order of the objects being compared.</returns>
</member>
<member name="M:Fusion.Tick.Equals(System.Object)">
<summary>
Determines whether the specified object is equal to the current Tick.
</summary>
<param name="obj">The object to compare with the current Tick.</param>
<returns>true if the specified object is equal to the current Tick; otherwise, false.</returns>
</member>
<member name="M:Fusion.Tick.GetHashCode">
<summary>
Serves as the default hash function.
</summary>
<returns>A hash code for the current Tick.</returns>
</member>
<member name="M:Fusion.Tick.ToString">
<summary>
String representation of the Tick.
</summary>
</member>
<member name="M:Fusion.Tick.op_GreaterThan(Fusion.Tick,Fusion.Tick)">
<summary>
Determines whether the first specified Tick is greater than the second specified Tick.
</summary>
</member>
<member name="M:Fusion.Tick.op_GreaterThanOrEqual(Fusion.Tick,Fusion.Tick)">
<summary>
Determines whether the first specified Tick is greater than or equal to the second specified Tick.
</summary>
</member>
<member name="M:Fusion.Tick.op_LessThan(Fusion.Tick,Fusion.Tick)">
<summary>
Determines whether the first specified Tick is less than the second specified Tick.
</summary>
</member>
<member name="M:Fusion.Tick.op_LessThanOrEqual(Fusion.Tick,Fusion.Tick)">
<summary>
Determines whether the first specified Tick is less than or equal to the second specified Tick.
</summary>
</member>
<member name="M:Fusion.Tick.op_Equality(Fusion.Tick,Fusion.Tick)">
<summary>
Determines whether the first specified Tick is equal to the second specified Tick.
</summary>
</member>
<member name="M:Fusion.Tick.op_Inequality(Fusion.Tick,Fusion.Tick)">
<summary>
Determines whether the first specified Tick is not equal to the second specified Tick.
</summary>
</member>
<member name="M:Fusion.Tick.op_Implicit(System.Int32)~Fusion.Tick">
<summary>
Converts an integer to a Tick.
</summary>
<param name="value">The integer to convert.</param>
<returns>A Tick that represents the specified integer. If the integer is less than 0, the Tick's raw value is set to 0.</returns>
</member>
<member name="M:Fusion.Tick.op_Implicit(Fusion.Tick)~System.Int32">
<summary>
Converts a Tick to an integer.
</summary>
<param name="value">The Tick to convert.</param>
<returns>An integer that represents the raw value of the specified Tick.</returns>
</member>
<member name="M:Fusion.Tick.op_Implicit(Fusion.Tick)~System.Boolean">
<summary>
Converts a Tick to a boolean.
</summary>
<param name="value">The Tick to convert.</param>
<returns>true if the Tick's raw value is greater than 0; otherwise, false.</returns>
</member>
<member name="T:Fusion.TickAccumulator">
<summary>
A tick accumulator.
</summary>
</member>
<member name="P:Fusion.TickAccumulator.Pending">
<summary>
Gets the number of pending ticks in the TickAccumulator.
</summary>
</member>
<member name="P:Fusion.TickAccumulator.Remainder">
<summary>
Gets the remaining time in the TickAccumulator.
</summary>
</member>
<member name="P:Fusion.TickAccumulator.Running">
<summary>
Gets a value indicating whether the TickAccumulator is running.
</summary>
</member>
<member name="P:Fusion.TickAccumulator.TimeScale">
<summary>
Gets or sets the time scale of the TickAccumulator.
</summary>
<exception cref="T:System.InvalidOperationException">Thrown when the value is less than or equal to 0.</exception>
</member>
<member name="M:Fusion.TickAccumulator.Alpha(System.Double)">
<summary>
Calculates the alpha value based on the given step.
</summary>
<param name="step">The step value used to calculate the alpha.</param>
<returns>The calculated alpha value.</returns>
</member>
<member name="M:Fusion.TickAccumulator.AddTicks(System.Int32)">
<summary>
Adds a specified number of ticks to the TickAccumulator.
</summary>
<param name="ticks">The number of ticks to add.</param>
</member>
<member name="M:Fusion.TickAccumulator.AddTime(System.Double,System.Double,System.Nullable{System.Int32})">
<summary>
Adds a specified amount of time to the TickAccumulator, incrementing the tick count as necessary.
</summary>
<param name="dt">The amount of time to add.</param>
<param name="step">The time step value.</param>
<param name="maxTicks">The maximum number of ticks to add. If this value is reached, the remaining time is set to 0.</param>
</member>
<member name="M:Fusion.TickAccumulator.Stop">
<summary>
Stops the TickAccumulator from accumulating ticks.
</summary>
</member>
<member name="M:Fusion.TickAccumulator.Start">
<summary>
Starts the TickAccumulator, allowing it to accumulate ticks.
</summary>
</member>
<member name="M:Fusion.TickAccumulator.ConsumeTick(System.Boolean@)">
<summary>
Consumes a tick from the TickAccumulator.
</summary>
<param name="last">When this method returns, contains a boolean indicating whether the consumed tick was the last one.</param>
<returns>true if a tick was successfully consumed; otherwise, false.</returns>
</member>
<member name="M:Fusion.TickAccumulator.StartNew">
<summary>
Starts a new TickAccumulator.
</summary>
<returns>A new TickAccumulator.</returns>
</member>
<member name="T:Fusion.TickRate">
<summary>
A tick rate is a collection of tick rates.
</summary>
</member>
<member name="T:Fusion.TickRate.Selection">
<summary>
Represents a selection of tick rates for client and server.
</summary>
</member>
<member name="F:Fusion.TickRate.Selection.Client">
<summary>
The tick rate for the client.
</summary>
</member>
<member name="F:Fusion.TickRate.Selection.ServerIndex">
<summary>
The index of the server's tick rate in the available tick rates.
</summary>
</member>
<member name="F:Fusion.TickRate.Selection.ClientSendIndex">
<summary>
The index of the client's send tick rate in the available tick rates.
</summary>
</member>
<member name="F:Fusion.TickRate.Selection.ServerSendIndex">
<summary>
The index of the server's send tick rate in the available tick rates.
</summary>
</member>
<member name="T:Fusion.TickRate.Resolved">
<summary>
Represents a resolved tick rate.
</summary>
<remarks>
The tick rate is resolved by the client and server tick rates.
</remarks>
</member>
<member name="F:Fusion.TickRate.Resolved.SIZE">
<summary>The size of the Resolved structure in bytes.</summary>
</member>
<member name="F:Fusion.TickRate.Resolved.WORDS">
<summary>The size of the Resolved structure in words.</summary>
</member>
<member name="F:Fusion.TickRate.Resolved.Client">
<summary>The tick rate for the client.</summary>
</member>
<member name="F:Fusion.TickRate.Resolved.ClientSend">
<summary>The send tick rate for the client.</summary>
</member>
<member name="F:Fusion.TickRate.Resolved.Server">
<summary>The tick rate for the server.</summary>
</member>
<member name="F:Fusion.TickRate.Resolved.ServerSend">
<summary>The send tick rate for the server.</summary>
</member>
<member name="P:Fusion.TickRate.Resolved.ServerTickDelta">
<summary>
Gets the delta time for the server tick rate.
</summary>
</member>
<member name="P:Fusion.TickRate.Resolved.ServerSendDelta">
<summary>
Gets the delta time for the server send rate.
</summary>
</member>
<member name="P:Fusion.TickRate.Resolved.ServerTickStride">
<summary>
Gets the stride of the server tick rate relative to the client tick rate.
</summary>
</member>
<member name="P:Fusion.TickRate.Resolved.ClientTickDelta">
<summary>
Gets the delta time for the client tick rate.
</summary>
</member>
<member name="P:Fusion.TickRate.Resolved.ClientSendDelta">
<summary>
Gets the delta time for the client send rate.
</summary>
</member>
<member name="P:Fusion.TickRate.Resolved.ClientTickStride">
<summary>
Gets the stride of the client tick rate. This is always 1.
</summary>
</member>
<member name="T:Fusion.TickRate.ValidateResult">
<summary>
Enumerates the possible results of validating a tick rate selection.
</summary>
</member>
<member name="F:Fusion.TickRate.ValidateResult.Ok">
<summary>The tick rate selection is valid.</summary>
</member>
<member name="F:Fusion.TickRate.ValidateResult.Error">
<summary>An error occurred during validation.</summary>
</member>
<member name="F:Fusion.TickRate.ValidateResult.NotFound">
<summary>The tick rate selection was not found.</summary>
</member>
<member name="F:Fusion.TickRate.ValidateResult.InvalidTickRate">
<summary>The tick rate selection is invalid.</summary>
</member>
<member name="F:Fusion.TickRate.ValidateResult.ServerIndexOutOfRange">
<summary>The server index in the tick rate selection is out of range.</summary>
</member>
<member name="F:Fusion.TickRate.ValidateResult.ClientSendIndexOutOfRange">
<summary>The client send index in the tick rate selection is out of range.</summary>
</member>
<member name="F:Fusion.TickRate.ValidateResult.ServerSendIndexOutOfRange">
<summary>The server send index in the tick rate selection is out of range.</summary>
</member>
<member name="F:Fusion.TickRate.ValidateResult.ServerSendRateLargerThanTickRate">
<summary>The server send rate in the tick rate selection is larger than the tick rate.</summary>
</member>
<member name="P:Fusion.TickRate.Client">
<summary>
Gets the tick rate for the client.
</summary>
</member>
<member name="P:Fusion.TickRate.Count">
<summary>
Gets the count of tick rates in the TickRate.
</summary>
</member>
<member name="P:Fusion.TickRate.Item(System.Int32)">
<summary>
Gets the tick rate at the specified index.
</summary>
<param name="index">The index of the tick rate to get.</param>
<returns>The tick rate at the specified index.</returns>
</member>
<member name="M:Fusion.TickRate.GetDivisor(System.Int32)">
<summary>
Gets the divisor for the tick rate at the specified index.
</summary>
<param name="index">The index of the tick rate to get the divisor for.</param>
<returns>The divisor for the tick rate at the specified index.</returns>
<exception cref="T:System.ArgumentOutOfRangeException">Thrown when the index is out of range.</exception>
<exception cref="T:System.InvalidOperationException">Thrown when the client tick rate is not divisible by the tick rate at the specified index.</exception>
</member>
<member name="M:Fusion.TickRate.GetTickRate(System.Int32)">
<summary>
Gets the tick rate at the specified index.
</summary>
<param name="index">The index of the tick rate to get.</param>
<returns>The tick rate at the specified index.</returns>
<exception cref="T:System.ArgumentOutOfRangeException">Thrown when the index is out of range.</exception>
</member>
<member name="M:Fusion.TickRate.ToArray">
<summary>
Converts the tick rates to an array.
</summary>
<returns>An array containing the tick rates.</returns>
</member>
<member name="M:Fusion.TickRate.Validate">
<summary>
Validates the tick rates in the TickRate.
</summary>
<returns>true if the tick rates are valid; otherwise, false.</returns>
<remarks>
The tick rates are valid if:
- There is at least one tick rate.
- There are no more than four tick rates.
- The first tick rate is greater than 0.
- Each tick rate is a divisor of the first tick rate.
</remarks>
</member>
<member name="M:Fusion.TickRate.ClampSelection(Fusion.TickRate.Selection)">
<summary>
Clamps the indices in the specified Selection to valid ranges.
</summary>
<param name="selection">The Selection to clamp.</param>
<returns>A new Selection with clamped indices. If the TickRate is invalid, returns a default Selection.</returns>
</member>
<member name="M:Fusion.TickRate.ValidateSelection(Fusion.TickRate.Selection)">
<summary>
Validates the tick rates in the specified Selection.
</summary>
<param name="selected">The Selection to validate.</param>
<returns>A ValidateResult that indicates the result of the validation.</returns>
<remarks>
The Selection is valid if:
- The TickRate is valid.
- The client tick rate in the Selection matches the client tick rate in the TickRate.
- The server index in the Selection is within the range of available tick rates.
- The server send index in the Selection is within the range of available tick rates.
- The client send index in the Selection is within the range of available tick rates.
- The server send rate in the Selection is not larger than the server tick rate.
</remarks>
</member>
<member name="M:Fusion.TickRate.Init">
<summary>
Initializes the TickRate class by setting up the valid tick rates and their lookup dictionary.
</summary>
</member>
<member name="M:Fusion.TickRate.IsValid(Fusion.TickRate)">
<summary>
Checks if the provided TickRate is valid.
</summary>
<param name="rate">The TickRate to validate.</param>
<returns>true if the TickRate is valid; otherwise, false.</returns>
</member>
<member name="M:Fusion.TickRate.IsValid(System.Int32)">
<summary>
Checks if the provided tick rate is valid.
</summary>
<param name="rate">The tick rate to validate.</param>
<returns>true if the tick rate is valid; otherwise, false.</returns>
</member>
<member name="M:Fusion.TickRate.Get(System.Int32)">
<summary>
Retrieves the TickRate associated with the specified tick rate.
</summary>
<param name="rate">The tick rate to retrieve the TickRate for.</param>
<returns>The TickRate associated with the specified tick rate.</returns>
<exception cref="T:System.InvalidOperationException">Thrown when the tick rate is invalid.</exception>
</member>
<member name="M:Fusion.TickRate.Resolve(Fusion.TickRate.Selection)">
<summary>
Resolves the specified Selection into a Resolved structure.
</summary>
<param name="selection">The Selection to resolve.</param>
<returns>A Resolved structure that represents the resolved tick rates.</returns>
</member>
<member name="P:Fusion.TickRate.Available">
<summary>
Gets a read-only list of all available TickRates.
</summary>
<remarks>
This property ensures that the TickRate class is initialized before returning the list.
</remarks>
</member>
<member name="T:Fusion.TickTimer">
<summary>
A timer that is based on ticks instead of seconds.
</summary>
</member>
<member name="P:Fusion.TickTimer.None">
<summary>
Gets a TickTimer that is not running.
</summary>
</member>
<member name="P:Fusion.TickTimer.IsRunning">
<summary>
Gets a value indicating whether the TickTimer is running.
</summary>
<value>
true if the TickTimer is running; otherwise, false.
</value>
</member>
<member name="P:Fusion.TickTimer.TargetTick">
<summary>
Gets the target tick of the TickTimer.
</summary>
<value>
The target tick if the TickTimer is running; otherwise, null.
</value>
</member>
<member name="M:Fusion.TickTimer.Expired(Fusion.NetworkRunner)">
<summary>
Checks if the TickTimer has expired.
</summary>
<param name="runner">The NetworkRunner associated with the TickTimer.</param>
<returns>true if the TickTimer is alive, the runner is running, and the target tick has been reached or passed; otherwise, false.</returns>
</member>
<member name="M:Fusion.TickTimer.ExpiredOrNotRunning(Fusion.NetworkRunner)">
<summary>
Checks if the TickTimer has expired or is not running.
</summary>
<param name="runner">The NetworkRunner associated with the TickTimer.</param>
<returns>true if the TickTimer is not running, the runner is not running, or the TickTimer has expired; otherwise, false.</returns>
</member>
<member name="M:Fusion.TickTimer.RemainingTicks(Fusion.NetworkRunner)">
<summary>
Gets the number of remaining ticks until the TickTimer expires.
</summary>
<param name="runner">The NetworkRunner associated with the TickTimer.</param>
<returns>The number of remaining ticks if the TickTimer is alive and running; otherwise, null.</returns>
</member>
<member name="M:Fusion.TickTimer.RemainingTime(Fusion.NetworkRunner)">
<summary>
Gets the remaining time in seconds until the TickTimer expires.
</summary>
<param name="runner">The NetworkRunner associated with the TickTimer.</param>
<returns>The remaining time in seconds if there are remaining ticks; otherwise, null.</returns>
</member>
<member name="M:Fusion.TickTimer.CreateFromSeconds(Fusion.NetworkRunner,System.Single)">
<summary>
Creates a TickTimer from a specified delay in seconds.
</summary>
<param name="runner">The NetworkRunner associated with the TickTimer.</param>
<param name="delayInSeconds">The delay in seconds to set the TickTimer to.</param>
<returns>A TickTimer that will expire after the specified delay in seconds. If the NetworkRunner is not alive or not running, returns a default TickTimer.</returns>
</member>
<member name="M:Fusion.TickTimer.CreateFromTicks(Fusion.NetworkRunner,System.Int32)">
<summary>
Creates a TickTimer from a specified number of ticks.
</summary>
<param name="runner">The NetworkRunner associated with the TickTimer.</param>
<param name="ticks">The number of ticks to set the TickTimer to.</param>
<returns>A TickTimer that will expire after the specified number of ticks. If the NetworkRunner is not alive or not running, returns a default TickTimer.</returns>
</member>
<member name="M:Fusion.TickTimer.ToString">
<summary>
Returns a string that represents the current TickTimer.
</summary>
<returns>A string that represents the current TickTimer.</returns>
</member>
<member name="P:Fusion.TimeSeries.Count">
<summary>
The number of available samples.
</summary>
</member>
<member name="P:Fusion.TimeSeries.Capacity">
<summary>
The maximum number samples that can fit in this series.
</summary>
</member>
<member name="P:Fusion.TimeSeries.IsEmpty">
<summary>
<c>True</c> if the series contains zero samples.
</summary>
</member>
<member name="P:Fusion.TimeSeries.IsFull">
<summary>
<c>True</c> if the series contains the maximum number of samples.
</summary>
</member>
<member name="P:Fusion.TimeSeries.Latest">
<summary>
The most recent sample.
</summary>
</member>
<member name="P:Fusion.TimeSeries.Avg">
<summary>
The arithmetic mean of the samples in the series.
</summary>
</member>
<member name="P:Fusion.TimeSeries.Var">
<summary>
The variance of the samples in the series.
</summary>
</member>
<member name="P:Fusion.TimeSeries.Dev">
<summary>
The standard deviation of the samples in the series.
</summary>
</member>
<member name="P:Fusion.TimeSeries.Min">
<summary>
The smallest value in the series.
</summary>
</member>
<member name="P:Fusion.TimeSeries.Max">
<summary>
The largest value in the series.
</summary>
</member>
<member name="M:Fusion.TimeSeries.Smoothed(System.Double)">
<summary>
Returns the exponentially-weighted average of the series (with smoothing factor <c>alpha</c>).
</summary>
</member>
<member name="M:Fusion.TimeSeries.Add(System.Double)">
<summary>
Adds a new sample to the time series. If the series is already full, the oldest sample will be removed.
</summary>
<param name="value">The new sample value to be added to the series.</param>
<exception cref="T:System.ArgumentException">Thrown when the provided value is NaN or Infinity.</exception>
</member>
<member name="M:Fusion.TimeSeries.Clear">
<summary>
Removes all samples and resets statistical values.
</summary>
</member>
<member name="T:Fusion.Internal.UnityArraySurrogate`2">
<summary>
A base class for Unity array surrogates.
</summary>
<typeparam name="T">Unmanaged type of the array elements.</typeparam>
<typeparam name="ReaderWriter">Unmanaged type of the reader/writer for the array elements.</typeparam>
</member>
<member name="P:Fusion.Internal.UnityArraySurrogate`2.DataProperty">
<summary>
Gets or sets the data array for the UnityArraySurrogate.
</summary>
</member>
<member name="M:Fusion.Internal.UnityArraySurrogate`2.Read(System.Int32*,System.Int32)">
<summary>
Reads data into the UnityArraySurrogate from a specified memory location.
</summary>
<param name="data">The memory location to read from.</param>
<param name="capacity">The number of elements to read.</param>
</member>
<member name="M:Fusion.Internal.UnityArraySurrogate`2.Write(System.Int32*,System.Int32)">
<summary>
Writes data from the UnityArraySurrogate to a specified memory location.
</summary>
<param name="data">The memory location to write to.</param>
<param name="capacity">The number of elements to write.</param>
</member>
<member name="M:Fusion.Internal.UnityArraySurrogate`2.Init(System.Int32)">
<summary>
Initializes the UnityArraySurrogate with a specified capacity.
</summary>
<param name="capacity">The capacity to initialize the UnityArraySurrogate with.</param>
</member>
<member name="T:Fusion.Internal.UnityDictionarySurrogate`4">
<summary>
A surrogate for serializing a dictionary.
</summary>
<typeparam name="TKeyType">The type of the key.</typeparam>
<typeparam name="TKeyReaderWriter">The type of the key reader writer.</typeparam>
<typeparam name="TValueType">The type of the value.</typeparam>
<typeparam name="TValueReaderWriter">The type of the value reader writer.</typeparam>
<seealso cref="T:Fusion.Internal.UnitySurrogateBase" />
</member>
<member name="P:Fusion.Internal.UnityDictionarySurrogate`4.DataProperty">
<summary>
Gets or sets the data property.
</summary>
</member>
<member name="M:Fusion.Internal.UnityDictionarySurrogate`4.Read(System.Int32*,System.Int32)">
<summary>
Reads data into the UnityDictionarySurrogate from a specified memory location.
</summary>
<param name="data">The memory location to read from.</param>
<param name="capacity">The number of elements to read.</param>
</member>
<member name="M:Fusion.Internal.UnityDictionarySurrogate`4.Write(System.Int32*,System.Int32)">
<summary>
Writes data from the UnityDictionarySurrogate to a specified memory location.
</summary>
<param name="data">The memory location to write to.</param>
<param name="capacity">The number of elements to write.</param>
</member>
<member name="M:Fusion.Internal.UnityDictionarySurrogate`4.Init(System.Int32)">
<summary>
Initializes the UnityDictionarySurrogate with a specified capacity.
</summary>
<param name="capacity">The capacity to initialize the UnityDictionarySurrogate with.</param>
</member>
<member name="T:Fusion.Internal.UnityLinkedListSurrogate`2">
<summary>
A surrogate for serializing a linked list.
</summary>
<typeparam name="T">The type of the elements in the linked list.</typeparam>
<typeparam name="ReaderWriter">The type of the reader writer for the elements in the linked list.</typeparam>
</member>
<member name="P:Fusion.Internal.UnityLinkedListSurrogate`2.DataProperty">
<summary>Gets or sets the data property.</summary>
</member>
<member name="M:Fusion.Internal.UnityLinkedListSurrogate`2.Read(System.Int32*,System.Int32)">
<summary>
Reads data into the UnityLinkedListSurrogate from a specified memory location.
</summary>
<param name="data">The memory location to read from.</param>
<param name="capacity">The number of elements to read.</param>
</member>
<member name="M:Fusion.Internal.UnityLinkedListSurrogate`2.Write(System.Int32*,System.Int32)">
<summary>
Writes data from the UnityLinkedListSurrogate to a specified memory location.
</summary>
<param name="data">The memory location to write to.</param>
<param name="capacity">The number of elements to write.</param>
</member>
<member name="M:Fusion.Internal.UnityLinkedListSurrogate`2.Init(System.Int32)">
<summary>
Initializes the UnityLinkedListSurrogate with a specified capacity.
</summary>
<param name="capacity">The capacity to initialize the UnityLinkedListSurrogate with.</param>
</member>
<member name="T:Fusion.Internal.UnitySurrogateBase">
<summary>
Represents a base class for Unity surrogates.
This class is serializable and provides abstract methods for reading, writing, and initializing data.
</summary>
</member>
<member name="M:Fusion.Internal.UnitySurrogateBase.Read(System.Int32*,System.Int32)">
<summary>
Reads data from a specified memory location into the UnitySurrogateBase.
</summary>
<param name="data">The memory location to read from.</param>
<param name="capacity">The number of elements to read.</param>
</member>
<member name="M:Fusion.Internal.UnitySurrogateBase.Write(System.Int32*,System.Int32)">
<summary>
Writes data from the UnitySurrogateBase to a specified memory location.
</summary>
<param name="data">The memory location to write to.</param>
<param name="capacity">The number of elements to write.</param>
</member>
<member name="M:Fusion.Internal.UnitySurrogateBase.Init(System.Int32)">
<summary>
Initializes the UnitySurrogateBase with a specified capacity.
</summary>
<param name="capacity">The capacity to initialize the UnitySurrogateBase with.</param>
</member>
<member name="T:Fusion.Internal.IUnitySurrogate">
<summary>
Represents an interface for Unity surrogates.
This interface provides methods for reading and writing data.
</summary>
</member>
<member name="M:Fusion.Internal.IUnitySurrogate.Read(System.Int32*,System.Int32)">
<summary>
Reads data from a specified memory location.
</summary>
<param name="data">The memory location to read from.</param>
<param name="capacity">The number of elements to read.</param>
</member>
<member name="M:Fusion.Internal.IUnitySurrogate.Write(System.Int32*,System.Int32)">
<summary>
Writes data to a specified memory location.
</summary>
<param name="data">The memory location to write to.</param>
<param name="capacity">The number of elements to write.</param>
</member>
<member name="T:Fusion.Internal.UnityValueSurrogate`2">
<summary>
Represents a base class for Unity value surrogates.
This class is serializable and provides methods for reading, writing, and initializing data.
</summary>
<typeparam name="T">The type of the data.</typeparam>
<typeparam name="TReaderWriter">The type of the reader/writer for the data. Must be unmanaged and implement IElementReaderWriter{T}.</typeparam>
</member>
<member name="P:Fusion.Internal.UnityValueSurrogate`2.DataProperty">
<summary>
Gets or sets the data for the UnityValueSurrogate.
</summary>
</member>
<member name="M:Fusion.Internal.UnityValueSurrogate`2.Read(System.Int32*,System.Int32)">
<summary>
Reads data into the UnityValueSurrogate from a specified memory location.
</summary>
<param name="data">The memory location to read from.</param>
<param name="capacity">The number of elements to read.</param>
</member>
<member name="M:Fusion.Internal.UnityValueSurrogate`2.Write(System.Int32*,System.Int32)">
<summary>
Writes data from the UnityValueSurrogate to a specified memory location.
</summary>
<param name="data">The memory location to write to.</param>
<param name="capacity">The number of elements to write.</param>
</member>
<member name="M:Fusion.Internal.UnityValueSurrogate`2.Init(System.Int32)">
<summary>
Initializes the UnityValueSurrogate with a specified capacity.
</summary>
<param name="capacity">The capacity to initialize the UnityValueSurrogate with.</param>
</member>
<member name="T:Fusion.Internal.IUnityValueSurrogate`1">
<summary>
Represents an interface for Unity value surrogates.
This interface provides a property for accessing and modifying the data.
</summary>
<typeparam name="T">The type of the data.</typeparam>
</member>
<member name="P:Fusion.Internal.IUnityValueSurrogate`1.DataProperty">
<summary>
Gets or sets the data for the Unity value surrogate.
</summary>
</member>
<member name="T:Fusion.UnityPlayerLoopSystemAddMode">
<summary>
Enum representing the possible modes for adding a system to the Unity player loop.
</summary>
</member>
<member name="F:Fusion.UnityPlayerLoopSystemAddMode.FirstChild">
<summary>Add the system as the first child of the parent system.</summary>
</member>
<member name="F:Fusion.UnityPlayerLoopSystemAddMode.LastChild">
<summary>Add the system as the last child of the parent system.</summary>
</member>
<member name="F:Fusion.UnityPlayerLoopSystemAddMode.Before">
<summary>Add the system before the parent system in the player loop.</summary>
</member>
<member name="F:Fusion.UnityPlayerLoopSystemAddMode.After">
<summary>Add the system after the parent system in the player loop.</summary>
</member>
<member name="T:Fusion.NetworkId">
<summary>
The unique identifier for a network entity.
</summary>
</member>
<member name="F:Fusion.NetworkId.BLOCK_SIZE">
<summary>
The size of the network id block in bytes.
</summary>
</member>
<member name="T:Fusion.NetworkId.EqualityComparer">
<summary>
IEqualityComparer interface for NetworkId objects.
</summary>
</member>
<member name="M:Fusion.NetworkId.EqualityComparer.Equals(Fusion.NetworkId,Fusion.NetworkId)">
<summary>
Determines whether the specified NetworkId objects are equal.
</summary>
</member>
<member name="M:Fusion.NetworkId.EqualityComparer.GetHashCode(Fusion.NetworkId)">
<summary>
Returns a hash code for the specified NetworkId object.
</summary>
</member>
<member name="F:Fusion.NetworkId.SIZE">
<summary>
The size of the network id in bytes.
</summary>
</member>
<member name="F:Fusion.NetworkId.ALIGNMENT">
<summary>
The alignment of the network id in bytes.
</summary>
</member>
<member name="P:Fusion.NetworkId.Comparer">
<summary>
The IEqualityComparer for NetworkId objects.
</summary>
</member>
<member name="F:Fusion.NetworkId.Raw">
<summary>
The raw value of the network id.
</summary>
</member>
<member name="P:Fusion.NetworkId.IsValid">
<summary>
Signal if the network id is valid.
</summary>
</member>
<member name="P:Fusion.NetworkId.IsReserved">
<summary>
Signal if the network id is reserved.
</summary>
</member>
<member name="M:Fusion.NetworkId.Equals(Fusion.NetworkId)">
<summary>
Determines whether the current NetworkId object is equal to another NetworkId object.
</summary>
<param name="other">A NetworkId object to compare with this object.</param>
<returns>true if the current object is equal to the other parameter; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkId.CompareTo(Fusion.NetworkId)">
<summary>
Compares the current NetworkId object with another NetworkId object.
</summary>
<param name="other">A NetworkId object to compare with this object.</param>
<returns>A value that indicates the relative order of the objects being compared.</returns>
</member>
<member name="M:Fusion.NetworkId.Equals(System.Object)">
<summary>
Determines whether the specified object is equal to the current NetworkId object.
</summary>
<param name="obj">The object to compare with the current object.</param>
<returns>true if the specified object is equal to the current object; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkId.op_Equality(Fusion.NetworkId,Fusion.NetworkId)">
<summary>
Determines whether two NetworkId objects are equal.
</summary>
</member>
<member name="M:Fusion.NetworkId.op_Inequality(Fusion.NetworkId,Fusion.NetworkId)">
<summary>
Determines whether two NetworkId objects are not equal.
</summary>
</member>
<member name="M:Fusion.NetworkId.op_Implicit(Fusion.NetworkId)~System.Boolean">
<summary>
Converts the NetworkId object to a boolean value.
</summary>
</member>
<member name="M:Fusion.NetworkId.Write(Fusion.Sockets.NetBitBuffer*,Fusion.NetworkId)">
<summary>
Writes the NetworkId to the provided NetBitBuffer.
</summary>
<param name="buffer">The buffer to write the NetworkId to.</param>
<param name="id">The NetworkId to write.</param>
</member>
<member name="M:Fusion.NetworkId.Read(Fusion.Sockets.NetBitBuffer*)">
<summary>
Reads a NetworkId from the provided NetBitBuffer.
</summary>
<param name="buffer">The buffer to read the NetworkId from.</param>
<returns>The NetworkId read from the buffer.</returns>
</member>
<member name="M:Fusion.NetworkId.Write(Fusion.Sockets.NetBitBuffer*)">
<summary>
Writes this NetworkId to the provided NetBitBuffer.
</summary>
<param name="buffer">The buffer to write this NetworkId to.</param>
</member>
<member name="M:Fusion.NetworkId.GetHashCode">
<summary>
Get the hash code for this NetworkId.
</summary>
</member>
<member name="M:Fusion.NetworkId.ToString">
<summary>
String representation of the NetworkId.
</summary>
</member>
<member name="M:Fusion.NetworkId.ToNamePrefixString">
<summary>
String conversion specifically for use in prefixing names of GameObjects.
</summary>
</member>
<member name="T:Fusion.PriorityLevel">
<summary>
Enum representing the priority levels for network objects
</summary>
</member>
<member name="F:Fusion.PriorityLevel.Player">
<summary>
Priority level assigned to player-related network objects.
</summary>
</member>
<member name="F:Fusion.PriorityLevel.High">
<summary>
High priority level, typically assigned to network objects that require frequent updates.
</summary>
</member>
<member name="F:Fusion.PriorityLevel.Medium">
<summary>
Medium priority level, typically assigned to network objects that require regular updates.
</summary>
</member>
<member name="F:Fusion.PriorityLevel.Low">
<summary>
Low priority level, typically assigned to network objects that require less frequent updates.
</summary>
</member>
<member name="F:Fusion.PriorityLevel.Lowest">
<summary>
Lowest priority level, typically assigned to network objects that require minimal updates.
</summary>
</member>
<member name="T:Fusion.NetworkObject">
<summary>
The primary Fusion component for networked GameObject entities.
This stores the object's network identity and manages the object's state and input authority.
</summary>
</member>
<member name="T:Fusion.NetworkObject.ReplicateToDelegate">
<summary>
Delegate for determining if a network object should be replicated to a specific player.
</summary>
<param name="networkObject">The network object in question.</param>
<param name="player">The player to potentially replicate to.</param>
<returns>True if the object should be replicated to the player, false otherwise.</returns>
</member>
<member name="T:Fusion.NetworkObject.PriorityLevelDelegate">
<summary>
Delegate for determining the priority level of a network object for a specific player.
</summary>
<param name="networkObject">The network object in question.</param>
<param name="player">The player for whom the priority level is being determined.</param>
<returns>The priority level of the network object for the player.</returns>
</member>
<member name="P:Fusion.NetworkObject.Id">
<summary>
The unique identifier for this network entity.
</summary>
</member>
<member name="F:Fusion.NetworkObject.IsResume">
<summary>
Signal that this <see cref="T:Fusion.NetworkObject"/> comes from a Resume Spawn
</summary>
</member>
<member name="P:Fusion.NetworkObject.Runner">
<summary>
The <see cref="T:Fusion.NetworkRunner"/> this entity is associated with.
</summary>
</member>
<member name="F:Fusion.NetworkObject.SortKey">
<summary>
Used for whenever objects need to be sorted in a deterministic order, like
when registering scene objects.
</summary>
</member>
<member name="F:Fusion.NetworkObject.ReplicateTo">
<summary>
Delegate callback used to override if an object should be replicate to a client or not
</summary>
</member>
<member name="F:Fusion.NetworkObject.PriorityCallback">
<summary>
Delegate callback used to override priority value for a specific object-player pair
</summary>
</member>
<member name="F:Fusion.NetworkObject.ObjectInterest">
<summary>
How Object Interest is determined for this object.
</summary>
</member>
<member name="P:Fusion.NetworkObject.LastReceiveTick">
<summary>
Last tick this object received an update.
</summary>
</member>
<member name="F:Fusion.NetworkObject.Flags">
<summary>
Flags used for network object prefabs and similar
</summary>
</member>
<member name="F:Fusion.NetworkObject.NetworkTypeId">
<summary>
The type ID for this prefab or scene object, set when adding to the prefab table and registering scene objects, respectively.
All spawned instances of this object will retain this value. Use <see cref="T:Fusion.NetworkId"/> for the unique ID of network entries.
</summary>
</member>
<member name="F:Fusion.NetworkObject.NestedObjects">
<summary>
Array of initial child nested <see cref="T:Fusion.NetworkObject"/> entities, that are children of this Object.
</summary>
</member>
<member name="F:Fusion.NetworkObject.NetworkedBehaviours">
<summary>
Array of all <see cref="T:Fusion.NetworkBehaviour"/>s associated with this network entity.
</summary>
</member>
<member name="P:Fusion.NetworkObject.Name">
<summary>
The ID + Unity GameObject name for this entity.
</summary>
</member>
<member name="P:Fusion.NetworkObject.IsValid">
<summary>
Returns if this network entity is associated with its <see cref="T:Fusion.NetworkRunner"/>, and that runner is not null.
</summary>
</member>
<member name="P:Fusion.NetworkObject.IsInSimulation">
<summary>
If this object is inserted into the simulation
</summary>
</member>
<member name="P:Fusion.NetworkObject.HasInputAuthority">
<summary>
Returns if <see cref="P:Fusion.Simulation.LocalPlayer"/> is the designated Input Source for this network entity.
</summary>
</member>
<member name="P:Fusion.NetworkObject.HasStateAuthority">
<summary>
Returns if <see cref="P:Fusion.Simulation.LocalPlayer"/> is the designated State Source for this network entity.
</summary>
</member>
<member name="P:Fusion.NetworkObject.IsProxy">
<summary>
Returns if <see cref="P:Fusion.Simulation.LocalPlayer"/> is neither the Input nor State Source for this network entity.
</summary>
</member>
<member name="P:Fusion.NetworkObject.RenderTimeframe">
<summary>
Returns the <see cref="T:Fusion.RenderTimeframe"/> for this <see cref="T:Fusion.NetworkBehaviour"/> instance,
indicating what snapshot data will be used to render it.
</summary>
</member>
<member name="P:Fusion.NetworkObject.RenderSource">
<summary>
Returns the <see cref="T:Fusion.RenderSource"/> for this <see cref="T:Fusion.NetworkBehaviour"/> instance,
indicating how snapshot data will be used to render it.
</summary>
</member>
<member name="P:Fusion.NetworkObject.RenderTime">
<summary>
Returns the current interpolation time for this object
</summary>
</member>
<member name="P:Fusion.NetworkObject.InputAuthority">
<summary>
Returns the <see cref="T:Fusion.PlayerRef"/> that has Input Authority over this network entity.
PlayerRefs are assigned in order from 0 to MaxPlayers-1 and are re-used as players join and leave.
The only caveat is that the server player (if one exists), always gets the last index no matter how many clients are connected.
</summary>
</member>
<member name="P:Fusion.NetworkObject.StateAuthority">
<summary>
Returns the <see cref="T:Fusion.PlayerRef"/> that has State Authority over this network entity.
PlayerRefs are assigned in order from 0 to MaxPlayers-1 and are re-used as players join and leave.
The only caveat is that the server player (if one exists), always gets the last index no matter how many clients are connected.
</summary>
</member>
<member name="P:Fusion.NetworkObject.IsSpawnable">
<summary>
Toggles if this NetworkObject is included in the <see cref="F:Fusion.NetworkProjectConfig.PrefabTable"/>, which will include the prefab in builds as a Spawnable object.
</summary>
</member>
<member name="M:Fusion.NetworkObject.Awake">
<summary>
Awake is called when the script instance is being loaded.
</summary>
</member>
<member name="M:Fusion.NetworkObject.OnDestroy">
<summary>
OnDestroy is called when the script instance is being destroyed.
</summary>
</member>
<member name="M:Fusion.NetworkObject.GetWordCount(Fusion.NetworkObject)">
<summary>
Calculates the total word count for a given NetworkObject.
</summary>
<param name="obj">The NetworkObject for which the word count is to be calculated.</param>
<returns>The total word count of the NetworkObject. Returns 0 if the NetworkObject is not alive.</returns>
<exception cref="T:System.Exception">Thrown when a NetworkBehaviour reference is missing in the NetworkBehaviour array of the NetworkObject.</exception>
</member>
<member name="M:Fusion.NetworkObject.GetLocalAuthorityMask">
<summary>
Gets a bitmask of <see cref="T:Fusion.AuthorityMasks"/> flags, representing the current local authority over this <see cref="T:Fusion.NetworkObject"/>.
</summary>
</member>
<member name="M:Fusion.NetworkObject.GetRpcSourceAuthorityMask(Fusion.PlayerRef)">
<summary>
Gets a bitmask of <see cref="T:Fusion.AuthorityMasks"/> flags, representing the supplied <see cref="T:Fusion.PlayerRef"/> RPC authority for this <see cref="T:Fusion.NetworkObject"/>.
</summary>
</member>
<member name="M:Fusion.NetworkObject.AssignInputAuthority(Fusion.PlayerRef)">
<summary>
Sets which <see cref="T:Fusion.PlayerRef"/> has Input Authority for this Object.
</summary>
</member>
<member name="M:Fusion.NetworkObject.RequestStateAuthority">
<summary>
Request state authority over this <see cref="T:Fusion.NetworkObject"/> on shared mode.
</summary>
</member>
<member name="M:Fusion.NetworkObject.ReleaseStateAuthority">
<summary>
Release the state authority over this <see cref="T:Fusion.NetworkObject"/> on shared mode.
</summary>
</member>
<member name="M:Fusion.NetworkObject.RemoveInputAuthority">
<summary>
Removes input authority from whichever player has it for this object. Only valid when called on a Host or Server peer.
</summary>
</member>
<member name="M:Fusion.NetworkObject.op_Implicit(Fusion.NetworkObject)~Fusion.NetworkId">
<summary>
Converts the Network Object to it's NetworkId.
</summary>
<param name="obj">The object to convert</param>
<returns>The <see cref="T:Fusion.NetworkId"/> of the object. Default if the object is not alive (null or destroyed)</returns>
</member>
<member name="M:Fusion.NetworkObject.SetPlayerAlwaysInterested(Fusion.PlayerRef,System.Boolean)">
<summary>
Add or remove specific player interest in this NetworkObject. Only the NetworkObject State Authority can set interest.
</summary>
<param name="player">The player to set interest for</param>
<param name="alwaysInterested">If the player should always be interested in this object</param>
</member>
<member name="M:Fusion.NetworkObject.CopyStateFrom(Fusion.NetworkObject)">
<summary>
Copies the entire State from another <see cref="T:Fusion.NetworkObject"/>
</summary>
<param name="source"><see cref="T:Fusion.NetworkObject"/> to copy the State from</param>
</member>
<member name="M:Fusion.NetworkObject.CopyStateFrom(Fusion.NetworkObjectHeaderPtr)">
<summary>
Copies the entire State from another <see cref="T:Fusion.NetworkObject"/> based on the <see cref="T:Fusion.NetworkObjectHeaderPtr"/>
</summary>
<param name="source"><see cref="T:Fusion.NetworkObjectHeaderPtr"/> to copy the state from</param>
</member>
<member name="M:Fusion.NetworkObject.NetworkWrap(Fusion.NetworkRunner,Fusion.NetworkObject)">
<summary>
Return the <paramref name="obj"/> <see cref="T:Fusion.NetworkId"/>.
</summary>
<param name="runner">The <see cref="T:Fusion.NetworkRunner"/> that <paramref name="obj"/> is assigned to</param>
<param name="obj">The <see cref="T:Fusion.NetworkObject"/> to get the ID from</param>
<returns>The <see cref="T:Fusion.NetworkId"/> of the object. Default if the object is not alive (null or destroyed)</returns>
</member>
<member name="M:Fusion.NetworkObject.NetworkWrap(Fusion.NetworkObject)">
<summary>
Return the <paramref name="obj"/> <see cref="T:Fusion.NetworkId"/>.
</summary>
<param name="obj">The <see cref="T:Fusion.NetworkObject"/> to get the ID from</param>
<returns>The <see cref="T:Fusion.NetworkId"/> of the object. Default if the object is not alive (null or destroyed)</returns>
</member>
<member name="M:Fusion.NetworkObject.NetworkUnwrap(Fusion.NetworkRunner,Fusion.NetworkId,Fusion.NetworkObject@)">
<summary>
Return the <see cref="T:Fusion.NetworkObject"/> reference on <paramref name="result"/> that matches the provided <see cref="T:Fusion.NetworkId"/>
</summary>
<param name="runner">The <see cref="T:Fusion.NetworkRunner"/> that will be used to try to find a <see cref="T:Fusion.NetworkObject"/> with ID equals to <paramref name="wrapper"/></param>
<param name="wrapper">The <see cref="T:Fusion.NetworkId"/> to be searched</param>
<param name="result">The found <see cref="T:Fusion.NetworkObject"/>. null if the provided <see cref="T:Fusion.NetworkId"/> is not valid</param>
</member>
<member name="M:Fusion.NetworkObject.GetDumpString(System.Text.StringBuilder)">
<summary>
Returns a string representation of the object.
</summary>
<param name="builder">The StringBuilder to append to.</param>
</member>
<member name="T:Fusion.NetworkObjectFlags">
<summary>
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.
</summary>
</member>
<member name="F:Fusion.NetworkObjectFlags.None">
<summary>
Represents a state where no flags are set.
</summary>
</member>
<member name="F:Fusion.NetworkObjectFlags.MaskVersion">
<summary>
Mask for isolating the version part of the flags.
</summary>
</member>
<member name="F:Fusion.NetworkObjectFlags.V1">
<summary>
Represents the first version of the network object flags.
</summary>
</member>
<member name="F:Fusion.NetworkObjectFlags.Ignore">
<summary>
Flag indicating that the network object should be ignored.
</summary>
</member>
<member name="F:Fusion.NetworkObjectFlags.MasterClientObject">
<summary>
Flag indicating that the network object is a master client object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectFlags.DestroyWhenStateAuthorityLeaves">
<summary>
Flag indicating that the network object should be destroyed when the state authority leaves.
</summary>
</member>
<member name="F:Fusion.NetworkObjectFlags.AllowStateAuthorityOverride">
<summary>
Flag indicating that the network object allows state authority override.
</summary>
</member>
<member name="T:Fusion.NetworkObjectFlagsExtensions">
<summary>
Extension methods for the NetworkObjectFlags enum.
</summary>
</member>
<member name="M:Fusion.NetworkObjectFlagsExtensions.GetVersion(Fusion.NetworkObjectFlags)">
<summary>
Returns the version of the flags.
</summary>
<param name="flags">The flags to get the version of.</param>
<returns>The version of the flags.</returns>
</member>
<member name="M:Fusion.NetworkObjectFlagsExtensions.IsVersionCurrent(Fusion.NetworkObjectFlags)">
<summary>
Check if the flags are the current version.
</summary>
<param name="flags">The flags to check.</param>
<returns>True if the flags are the current version, false otherwise.</returns>
</member>
<member name="M:Fusion.NetworkObjectFlagsExtensions.SetCurrentVersion(Fusion.NetworkObjectFlags)">
<summary>
Sets the flags to the current version.
</summary>
<param name="flags">The flags to set.</param>
<returns>The flags with the version set to the current version.</returns>
</member>
<member name="M:Fusion.NetworkObjectFlagsExtensions.IsIgnored(Fusion.NetworkObjectFlags)">
<summary>
Check if the flags are ignored.
</summary>
<param name="flags">The flags to check.</param>
<returns>True if the flags are ignored, false otherwise.</returns>
</member>
<member name="M:Fusion.NetworkObjectFlagsExtensions.SetIgnored(Fusion.NetworkObjectFlags,System.Boolean)">
<summary>
Sets the ignored flag on the flags.
</summary>
<param name="flags">Flags to set the ignored flag on.</param>
<param name="value">Ignored flag value.</param>
<returns>The flags with the ignored flag set to the given value.</returns>
</member>
<member name="M:Fusion.NetworkObjectFlagsExtensions.SetWithMask(Fusion.NetworkObjectFlags,Fusion.NetworkObjectFlags,Fusion.NetworkObjectFlags)">
<summary>
Sets the flags with the provided mask and value.
</summary>
<param name="flags">The original flags.</param>
<param name="value">The value to be set.</param>
<param name="mask">The mask to isolate the part of the flags to be set.</param>
<returns>The flags after setting the value with the mask.</returns>
<remarks>
This method first clears the part of the flags specified by the mask, then sets that part to the provided value.
</remarks>
</member>
<member name="T:Fusion.NetworkObjectGuid">
<summary>
NetworkObjectGuid
</summary>
</member>
<member name="T:Fusion.NetworkObjectGuid.EqualityComparer">
<summary>
EqualityComparer for NetworkObjectGuid
</summary>
</member>
<member name="M:Fusion.NetworkObjectGuid.EqualityComparer.Equals(Fusion.NetworkObjectGuid,Fusion.NetworkObjectGuid)">
<summary>
Check if two NetworkObjectGuid are equals
</summary>
</member>
<member name="M:Fusion.NetworkObjectGuid.EqualityComparer.GetHashCode(Fusion.NetworkObjectGuid)">
<summary>
Get the hashcode for a NetworkObjectGuid
</summary>
</member>
<member name="F:Fusion.NetworkObjectGuid.SIZE">
<summary>The Size of the NetworkObjectGuid in bytes</summary>
</member>
<member name="F:Fusion.NetworkObjectGuid.ALIGNMENT">
<summary>The alignment of the NetworkObjectGuid</summary>
</member>
<member name="F:Fusion.NetworkObjectGuid.RawGuidValue">
<summary>The Raw Guid Value of the NetworkObjectGuid</summary>
</member>
<member name="P:Fusion.NetworkObjectGuid.Empty">
<summary>The default value of a NetworkObjectGuid</summary>
</member>
<member name="M:Fusion.NetworkObjectGuid.#ctor(System.String)">
<summary>
Create a new NetworkObjectGuid
</summary>
<param name="guid">The guid to use</param>
</member>
<member name="M:Fusion.NetworkObjectGuid.#ctor(System.Int64,System.Int64)">
<summary>
Create a new NetworkObjectGuid
</summary>
<param name="data0">Data0 of the Guid</param>
<param name="data1">Data1 of the Guid</param>
</member>
<member name="M:Fusion.NetworkObjectGuid.#ctor(System.Byte[])">
<summary>
Create a NetworkObjectGuid from a byte array
</summary>
<param name="guid">The byte array to create the NetworkObjectGuid from</param>
</member>
<member name="M:Fusion.NetworkObjectGuid.#ctor(System.Byte*)">
<summary>
Create a NetworkObjectGuid from a byte*
</summary>
<param name="guid">The byte* to create the NetworkObjectGuid from</param>
</member>
<member name="P:Fusion.NetworkObjectGuid.IsValid">
<summary>
Signal if the NetworkObjectGuid is valid.
</summary>
</member>
<member name="M:Fusion.NetworkObjectGuid.op_Implicit(System.Guid)~Fusion.NetworkObjectGuid">
<summary>
Implicit conversion from Guid to NetworkObjectGuid
</summary>
<param name="guid">Guid to convert from</param>
<returns>NetworkObjectGuid</returns>
</member>
<member name="M:Fusion.NetworkObjectGuid.op_Implicit(Fusion.NetworkObjectGuid)~System.Guid">
<summary>
Implicit conversion from NetworkObjectGuid to Guid
</summary>
<param name="guid">NetworkObjectGuid to convert from</param>
<returns>Guid</returns>
</member>
<member name="M:Fusion.NetworkObjectGuid.TryParse(System.String,Fusion.NetworkObjectGuid@)">
<summary>
Try to parse a string into a NetworkObjectGuid
</summary>
<param name="str">String to parse</param>
<param name="guid">Parsed NetworkObjectGuid</param>
<returns>True if the string was parsed successfully, false otherwise</returns>
</member>
<member name="M:Fusion.NetworkObjectGuid.Parse(System.String)">
<summary>
Parse a NetworkObjectGuid from a string.
</summary>
<param name="str">The string to parse.</param>
<returns>The parsed NetworkObjectGuid.</returns>
</member>
<member name="M:Fusion.NetworkObjectGuid.op_Equality(Fusion.NetworkObjectGuid,Fusion.NetworkObjectGuid)">
<summary>
Compare two NetworkObjectGuid
</summary>
<returns>True if the NetworkObjectGuid are equal, false otherwise</returns>
</member>
<member name="M:Fusion.NetworkObjectGuid.op_Inequality(Fusion.NetworkObjectGuid,Fusion.NetworkObjectGuid)">
<summary>
Compare two NetworkObjectGuid
</summary>
<returns>True if the NetworkObjectGuid are not equal, false otherwise</returns>
</member>
<member name="M:Fusion.NetworkObjectGuid.Equals(Fusion.NetworkObjectGuid)">
<summary>
Check if the NetworkObjectGuid is equal to another NetworkObjectGuid
</summary>
<param name="other">The other NetworkObjectGuid to check against</param>
<returns>True if the NetworkObjectGuids are equal, false otherwise</returns>
</member>
<member name="M:Fusion.NetworkObjectGuid.Equals(System.Object)">
<summary>
Check if the NetworkObjectGuid is equal to another object
</summary>
<param name="obj">The other object to check against</param>
<returns>True if the objects are equal, false otherwise</returns>
</member>
<member name="M:Fusion.NetworkObjectGuid.GetHashCode">
<summary>
Get the hashcode for a NetworkObjectGuid
</summary>
</member>
<member name="M:Fusion.NetworkObjectGuid.ToString">
<summary>
Returns a string representation of the NetworkObjectGuid.
</summary>
</member>
<member name="M:Fusion.NetworkObjectGuid.ToUnityGuidString">
<summary>
Returns a string representation of the NetworkObjectGuid.
</summary>
</member>
<member name="M:Fusion.NetworkObjectGuid.ToString(System.String)">
<summary>
Returns a string representation of the NetworkObjectGuid.
</summary>
</member>
<member name="M:Fusion.NetworkObjectGuid.CompareTo(Fusion.NetworkObjectGuid)">
<summary>
Compare the NetworkObjectGuid to another NetworkObjectGuid
</summary>
<param name="other">The other NetworkObjectGuid to compare against</param>
<returns>0 if the NetworkObjectGuid are equal, -1 if this NetworkObjectGuid is less than the other, 1 if this NetworkObjectGuid is greater than the other</returns>
</member>
<member name="M:Fusion.NetworkObjectGuid.op_Explicit(Fusion.NetworkObjectGuid)~Fusion.NetworkPrefabRef">
<summary>
Explicit conversion from NetworkObjectGuid to NetworkPrefabRef
</summary>
<param name="t">NetworkObjectGuid to convert from</param>
<returns>NetworkPrefabRef</returns>
</member>
<member name="T:Fusion.NetworkPrefabRef">
<summary>
NetworkPrefabRef
</summary>
<summary>
A decoupled <see cref="T:Fusion.NetworkObject"/> prefab reference. Internally stored as a GUID.
</summary>
</member>
<member name="T:Fusion.NetworkPrefabRef.EqualityComparer">
<summary>
EqualityComparer for NetworkPrefabRef
</summary>
</member>
<member name="M:Fusion.NetworkPrefabRef.EqualityComparer.Equals(Fusion.NetworkPrefabRef,Fusion.NetworkPrefabRef)">
<summary>
Check if two NetworkPrefabRef are equals
</summary>
</member>
<member name="M:Fusion.NetworkPrefabRef.EqualityComparer.GetHashCode(Fusion.NetworkPrefabRef)">
<summary>
Get the hashcode for a NetworkPrefabRef
</summary>
</member>
<member name="F:Fusion.NetworkPrefabRef.SIZE">
<summary>The Size of the NetworkPrefabRef in bytes</summary>
</member>
<member name="F:Fusion.NetworkPrefabRef.ALIGNMENT">
<summary>The alignment of the NetworkPrefabRef</summary>
</member>
<member name="F:Fusion.NetworkPrefabRef.RawGuidValue">
<summary>The Raw Guid Value of the NetworkPrefabRef</summary>
</member>
<member name="P:Fusion.NetworkPrefabRef.Empty">
<summary>The default value of a NetworkPrefabRef</summary>
</member>
<member name="M:Fusion.NetworkPrefabRef.#ctor(System.String)">
<summary>
Create a new NetworkPrefabRef
</summary>
<param name="guid">The guid to use</param>
</member>
<member name="M:Fusion.NetworkPrefabRef.#ctor(System.Int64,System.Int64)">
<summary>
Create a new NetworkPrefabRef
</summary>
<param name="data0">Data0 of the Guid</param>
<param name="data1">Data1 of the Guid</param>
</member>
<member name="M:Fusion.NetworkPrefabRef.#ctor(System.Byte[])">
<summary>
Create a NetworkPrefabRef from a byte array
</summary>
<param name="guid">The byte array to create the NetworkPrefabRef from</param>
</member>
<member name="M:Fusion.NetworkPrefabRef.#ctor(System.Byte*)">
<summary>
Create a NetworkPrefabRef from a byte*
</summary>
<param name="guid">The byte* to create the NetworkPrefabRef from</param>
</member>
<member name="P:Fusion.NetworkPrefabRef.IsValid">
<summary>
Signal if the NetworkPrefabRef is valid.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabRef.op_Implicit(System.Guid)~Fusion.NetworkPrefabRef">
<summary>
Implicit conversion from Guid to NetworkPrefabRef
</summary>
<param name="guid">Guid to convert from</param>
<returns>NetworkPrefabRef</returns>
</member>
<member name="M:Fusion.NetworkPrefabRef.op_Implicit(Fusion.NetworkPrefabRef)~System.Guid">
<summary>
Implicit conversion from NetworkPrefabRef to Guid
</summary>
<param name="guid">NetworkPrefabRef to convert from</param>
<returns>Guid</returns>
</member>
<member name="M:Fusion.NetworkPrefabRef.TryParse(System.String,Fusion.NetworkPrefabRef@)">
<summary>
Try to parse a string into a NetworkPrefabRef
</summary>
<param name="str">String to parse</param>
<param name="guid">Parsed NetworkPrefabRef</param>
<returns>True if the string was parsed successfully, false otherwise</returns>
</member>
<member name="M:Fusion.NetworkPrefabRef.Parse(System.String)">
<summary>
Parse a NetworkPrefabRef from a string.
</summary>
<param name="str">The string to parse.</param>
<returns>The parsed NetworkPrefabRef.</returns>
</member>
<member name="M:Fusion.NetworkPrefabRef.op_Equality(Fusion.NetworkPrefabRef,Fusion.NetworkPrefabRef)">
<summary>
Compare two NetworkPrefabRef
</summary>
<returns>True if the NetworkPrefabRef are equal, false otherwise</returns>
</member>
<member name="M:Fusion.NetworkPrefabRef.op_Inequality(Fusion.NetworkPrefabRef,Fusion.NetworkPrefabRef)">
<summary>
Compare two NetworkPrefabRef
</summary>
<returns>True if the NetworkPrefabRef are not equal, false otherwise</returns>
</member>
<member name="M:Fusion.NetworkPrefabRef.Equals(Fusion.NetworkPrefabRef)">
<summary>
Check if the NetworkPrefabRef is equal to another NetworkPrefabRef
</summary>
<param name="other">The other NetworkPrefabRef to check against</param>
<returns>True if the NetworkPrefabRefs are equal, false otherwise</returns>
</member>
<member name="M:Fusion.NetworkPrefabRef.Equals(System.Object)">
<summary>
Check if the NetworkPrefabRef is equal to another object
</summary>
<param name="obj">The other object to check against</param>
<returns>True if the objects are equal, false otherwise</returns>
</member>
<member name="M:Fusion.NetworkPrefabRef.GetHashCode">
<summary>
Get the hashcode for a NetworkPrefabRef
</summary>
</member>
<member name="M:Fusion.NetworkPrefabRef.ToString">
<summary>
Returns a string representation of the NetworkPrefabRef.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabRef.ToUnityGuidString">
<summary>
Returns a string representation of the NetworkPrefabRef.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabRef.ToString(System.String)">
<summary>
Returns a string representation of the NetworkPrefabRef.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabRef.CompareTo(Fusion.NetworkPrefabRef)">
<summary>
Compare the NetworkPrefabRef to another NetworkPrefabRef
</summary>
<param name="other">The other NetworkPrefabRef to compare against</param>
<returns>0 if the NetworkPrefabRef are equal, -1 if this NetworkPrefabRef is less than the other, 1 if this NetworkPrefabRef is greater than the other</returns>
</member>
<member name="M:Fusion.NetworkPrefabRef.op_Explicit(Fusion.NetworkPrefabRef)~Fusion.NetworkObjectGuid">
<summary>
Explicit conversion from NetworkPrefabRef to NetworkObjectGuid
</summary>
<param name="t">NetworkPrefabRef to convert from</param>
<returns>NetworkObjectGuid</returns>
</member>
<member name="T:Fusion.NetworkObjectHeaderFlags">
<summary>
Enum representing various flags for a network object header.
Each flag represents a different state or property of a network object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeaderFlags.GlobalObjectInterest">
<summary>
Flag indicating that the object is of global interest.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeaderFlags.DestroyWhenStateAuthorityLeaves">
<summary>
Flag indicating that the object should be destroyed when the state authority leaves.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeaderFlags.SpawnedByClient">
<summary>
Flag indicating that the object was spawned by a client.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeaderFlags.AllowStateAuthorityOverride">
<summary>
Flag indicating that the state authority override is allowed.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeaderFlags.Struct">
<summary>
Flag indicating that the object is a struct.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeaderFlags.StructArray">
<summary>
Flag indicating that the object is an array of structs.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeaderFlags.DontDestroyOnLoad">
<summary>
Flag indicating that the object should not be destroyed on load.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeaderFlags.HasMainNetworkTRSP">
<summary>
Flag indicating that the object has a main network TRSP.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeaderFlags.AreaOfInterest">
<summary>
Flag indicating that the object is in an area of interest.
</summary>
</member>
<member name="T:Fusion.NetworkObjectHeaderPtr">
<summary>
Represents a pointer to a NetworkObjectHeader.
This struct is unsafe because it uses pointers.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeaderPtr.Ptr">
<summary>
Pointer to a NetworkObjectHeader.
</summary>
</member>
<member name="P:Fusion.NetworkObjectHeaderPtr.Type">
<summary>
Gets the Type of the NetworkObjectHeader this struct points to.
</summary>
</member>
<member name="P:Fusion.NetworkObjectHeaderPtr.Id">
<summary>
Gets the Id of the NetworkObjectHeader this struct points to.
</summary>
</member>
<member name="T:Fusion.NetworkObjectHeader">
<summary>
Network object header information for a <see cref="T:Fusion.NetworkObject"/>.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeader.SIZE">
<summary>
The size of the NetworkObjectHeader in bytes.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeader.WORDS">
<summary>
The size of the NetworkObjectHeader in words.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeader.PLAYER_DATA_WORD">
<summary>
The word index of the player data in the NetworkObjectHeader.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeader.Id">
<summary>
The unique identifier of the network object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeader.WordCount">
<summary>
The number of words in the network object header.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeader.BehaviourCount">
<summary>
The number of behaviours in the network object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeader.Type">
<summary>
The type identifier of the network object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeader.NestingRoot">
<summary>
The unique identifier of the root network object in the nesting hierarchy.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeader.NestingKey">
<summary>
The nesting key of the network object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeader.Flags">
<summary>
The flags indicating various states or properties of the network object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeader.InputAuthority">
<summary>
The player reference who has input authority over the network object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeader.StateAuthority">
<summary>
The player reference who has state authority over the network object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeader.PlayerData">
<summary>
The unique data for each player.
</summary>
</member>
<member name="F:Fusion.NetworkObjectHeader._reserved">
<summary>
Reserved space for future use.
</summary>
</member>
<member name="P:Fusion.NetworkObjectHeader.ByteCount">
<summary>
how many bytes this headers object is
</summary>
</member>
<member name="M:Fusion.NetworkObjectHeader.GetDataPointer(Fusion.NetworkObjectHeader*)">
<summary>
Returns a pointer to the data of a NetworkObjectHeader.
</summary>
<param name="header">Pointer to the NetworkObjectHeader.</param>
<returns>Pointer to the data of the NetworkObjectHeader.</returns>
</member>
<member name="M:Fusion.NetworkObjectHeader.GetDataWordCount(Fusion.NetworkObjectHeader*)">
<summary>
Returns the count of data words in a NetworkObjectHeader.
</summary>
<param name="header">Pointer to the NetworkObjectHeader.</param>
<returns>The count of data words in the NetworkObjectHeader.</returns>
</member>
<member name="M:Fusion.NetworkObjectHeader.GetBehaviourChangedTickArray(Fusion.NetworkObjectHeader*)">
<summary>
Returns a pointer to the array of behaviour change ticks in a NetworkObjectHeader.
</summary>
<param name="header">Pointer to the NetworkObjectHeader.</param>
<returns>Pointer to the array of behaviour change ticks in the NetworkObjectHeader.</returns>
</member>
<member name="M:Fusion.NetworkObjectHeader.HasMainNetworkTRSP(Fusion.NetworkObjectHeader*)">
<summary>
Checks if a NetworkObjectHeader has a main network TRSP.
</summary>
<param name="header">Pointer to the NetworkObjectHeader.</param>
<returns>True if the NetworkObjectHeader has a main network TRSP, false otherwise.</returns>
</member>
<member name="M:Fusion.NetworkObjectHeader.GetMainNetworkTRSPData(Fusion.NetworkObjectHeader*)">
<summary>
Returns a pointer to the main network TRSP data of a NetworkObjectHeader, if it exists.
</summary>
<param name="header">Pointer to the NetworkObjectHeader.</param>
<returns>Pointer to the main network TRSP data of the NetworkObjectHeader if it exists, null otherwise.</returns>
</member>
<member name="M:Fusion.NetworkObjectHeader.ToString">
<summary>
The string representation of the NetworkObjectHeader.
</summary>
</member>
<member name="M:Fusion.NetworkObjectHeader.Equals(Fusion.NetworkObjectHeader)">
<summary>
Checks if the current instance of NetworkObjectHeader is equal to another instance of the same type.
</summary>
</member>
<member name="M:Fusion.NetworkObjectHeader.Equals(System.Object)">
<summary>
Checks if the current instance of NetworkObjectHeader is equal to another object.
</summary>
</member>
<member name="M:Fusion.NetworkObjectHeader.GetHashCode">
<summary>
Generates a hash code for the current instance of NetworkObjectHeader.
</summary>
</member>
<member name="M:Fusion.NetworkObjectHeader.op_Equality(Fusion.NetworkObjectHeader,Fusion.NetworkObjectHeader)">
<summary>
Determines if two instances of NetworkObjectHeader are equal.
</summary>
<returns>True if the instances are equal; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkObjectHeader.op_Inequality(Fusion.NetworkObjectHeader,Fusion.NetworkObjectHeader)">
<summary>
Determines if two instances of NetworkObjectHeader are not equal.
</summary>
<returns>True if the instances are not equal; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkObjectHeaderSnapshot.BuildCRC">
<summary>
Compute the CRC of this Object Snapshot
</summary>
</member>
<member name="T:Fusion.INetworkObjectInitializer">
<summary>
Interface for initializing network objects.
</summary>
</member>
<member name="M:Fusion.INetworkObjectInitializer.InitializeNetworkState(Fusion.NetworkObject)">
<summary>
Initializes the network object.
</summary>
<param name="networkObject">The network object to initialize.</param>
</member>
<member name="T:Fusion.NetworkObjectInitializerUnity">
<summary>
Initializes network objects for Unity.
</summary>
</member>
<member name="M:Fusion.NetworkObjectInitializerUnity.InitializeNetworkState(Fusion.NetworkObject)">
<summary>
Initializes the network object.
</summary>
<param name="networkObject">The network object to initialize.</param>
</member>
<member name="T:Fusion.NetworkObjectMeta">
<summary>
Meta information about a network object.
</summary>
</member>
<member name="P:Fusion.NetworkObjectMeta.Type">
<summary>Get the NetworkObjectTypeId of this object.</summary>
</member>
<member name="P:Fusion.NetworkObjectMeta.Id">
<summary>Get the NetworkId of this object.</summary>
</member>
<member name="P:Fusion.NetworkObjectMeta.StateAuthority">
<summary>Get the Player that has state authority over this object.</summary>
</member>
<member name="P:Fusion.NetworkObjectMeta.InputAuthority">
<summary>Get the Player that has input authority over this object.</summary>
</member>
<member name="T:Fusion.NetworkObjectNestingKey">
<summary>
A key used to identify a network object nesting.
</summary>
</member>
<member name="T:Fusion.NetworkObjectNestingKey.EqualityComparer">
<summary>
Implements the IEqualityComparer interface.
</summary>
</member>
<member name="M:Fusion.NetworkObjectNestingKey.EqualityComparer.Equals(Fusion.NetworkObjectNestingKey,Fusion.NetworkObjectNestingKey)">
<summary>
Determines whether two NetworkObjectNestingKey objects are equal.
</summary>
</member>
<member name="M:Fusion.NetworkObjectNestingKey.EqualityComparer.GetHashCode(Fusion.NetworkObjectNestingKey)">
<summary>
Returns a hash code for the specified NetworkObjectNestingKey.
</summary>
</member>
<member name="F:Fusion.NetworkObjectNestingKey.SIZE">
<summary>The size of the NetworkObjectNestingKey in bytes.</summary>
</member>
<member name="F:Fusion.NetworkObjectNestingKey.ALIGNMENT">
<summary>The alignment of the NetworkObjectNestingKey in bytes.</summary>
</member>
<member name="F:Fusion.NetworkObjectNestingKey.Value">
<summary>The value of the NetworkObjectNestingKey.</summary>
</member>
<member name="P:Fusion.NetworkObjectNestingKey.IsNone">
<summary>
Checks if the NetworkObjectNestingKey is none.
</summary>
<returns>True if the value of the NetworkObjectNestingKey is 0; otherwise, false.</returns>
</member>
<member name="P:Fusion.NetworkObjectNestingKey.IsValid">
<summary>
Checks if the NetworkObjectNestingKey is valid.
</summary>
<returns>True if the value of the NetworkObjectNestingKey is greater than 0; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkObjectNestingKey.#ctor(System.Int32)">
<summary>
Initializes a new instance of the NetworkObjectNestingKey struct with a specified value.
</summary>
<param name="value">The value of the NetworkObjectNestingKey.</param>
</member>
<member name="M:Fusion.NetworkObjectNestingKey.Equals(Fusion.NetworkObjectNestingKey)">
<summary>
Checks if the current instance of NetworkObjectNestingKey is equal to another instance of the same type.
</summary>
<param name="other">An instance of NetworkObjectNestingKey to compare with the current instance.</param>
<returns>True if the current instance is equal to the other parameter; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkObjectNestingKey.Equals(System.Object)">
<summary>
Checks if the current instance of NetworkObjectNestingKey is equal to another object.
</summary>
<param name="obj">An object to compare with the current instance.</param>
<returns>True if the current instance is equal to the obj parameter; otherwise, false.</returns>
</member>
<member name="M:Fusion.NetworkObjectNestingKey.GetHashCode">
<summary>
Serves as the default hash function.
</summary>
<returns>A hash code for the current object.</returns>
</member>
<member name="M:Fusion.NetworkObjectNestingKey.ToString">
<summary>
Returns a string that represents the current object.
</summary>
<returns>A string that represents the current object.</returns>
</member>
<member name="T:Fusion.INetworkObjectProvider">
<summary>
Interface which defines the handlers for <see cref="T:Fusion.NetworkRunner"/> Spawn() and Despawn() actions.
Passing an instance of this interface to <see cref="M:Fusion.NetworkRunner.StartGame(Fusion.StartGameArgs)"/>
as the <see cref="F:Fusion.StartGameArgs.ObjectProvider"/> argument value will assign that instance
as the handler for runner Spawn() and Despawn() actions.
By default (if <see cref="F:Fusion.StartGameArgs.ObjectProvider"/> == null) actions will use Instantiate(), and Despawn() actions will use Destroy().
</summary>
</member>
<member name="M:Fusion.INetworkObjectProvider.AcquirePrefabInstance(Fusion.NetworkRunner,Fusion.NetworkPrefabAcquireContext@,Fusion.NetworkObject@)">
<summary>
Acquires an instance of a prefab for a network object.
</summary>
<param name="runner">The NetworkRunner that manages the network objects.</param>
<param name="context">The context that provides information for acquiring the prefab instance.</param>
<param name="result">The acquired NetworkObject instance.</param>
<returns>A NetworkObjectAcquireResult indicating the result of the operation.</returns>
</member>
<member name="M:Fusion.INetworkObjectProvider.ReleaseInstance(Fusion.NetworkRunner,Fusion.NetworkObjectReleaseContext@)">
<summary>
Releases an instance of a network object.
</summary>
<param name="runner">The NetworkRunner that manages the network objects.</param>
<param name="context">The context that provides information for releasing the network object instance.</param>
</member>
<member name="T:Fusion.NetworkPrefabAcquireContext">
<summary>
Represents the context for acquiring a prefab instance for a network object.
This struct is unsafe because it uses pointers.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabAcquireContext.PrefabId">
<summary>
The identifier of the prefab.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabAcquireContext.Meta">
<summary>
The metadata of the network object.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabAcquireContext.IsSynchronous">
<summary>
Indicates whether the operation is synchronous.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabAcquireContext.DontDestroyOnLoad">
<summary>
Indicates whether the network object should not be destroyed on load.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabAcquireContext.#ctor(Fusion.NetworkPrefabId,Fusion.NetworkObjectMeta,System.Boolean,System.Boolean)">
<summary>
Initializes a new instance of the NetworkPrefabAcquireContext struct with the specified parameters.
</summary>
<param name="prefabId">The identifier of the prefab.</param>
<param name="meta">The metadata of the network object.</param>
<param name="isSynchronous">Indicates whether the operation is synchronous.</param>
<param name="dontDestroyOnLoad">Indicates whether the network object should not be destroyed on load.</param>
</member>
<member name="P:Fusion.NetworkPrefabAcquireContext.HasHeader">
<summary>
Checks if the Header is not null.
</summary>
<returns>True if the Header is not null; otherwise, false.</returns>
</member>
<member name="P:Fusion.NetworkPrefabAcquireContext.Data">
<summary>
Gets the data pointer to the first word of this NetworkObject's data block.
</summary>
<returns>Data pointer to the first word of this NetworkObject's data block.</returns>
<exception cref="T:System.InvalidOperationException">Thrown when the Header is null.</exception>
</member>
<member name="T:Fusion.NetworkObjectReleaseContext">
<summary>
Represents the context for releasing a network object.
This struct is unsafe because it uses pointers.
</summary>
</member>
<member name="F:Fusion.NetworkObjectReleaseContext.Object">
<summary>
The network object to be released.
</summary>
</member>
<member name="F:Fusion.NetworkObjectReleaseContext.TypeId">
<summary>
The type identifier of the network object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectReleaseContext.IsBeingDestroyed">
<summary>
Indicates whether the network object is being destroyed.
</summary>
</member>
<member name="F:Fusion.NetworkObjectReleaseContext.IsNestedObject">
<summary>
Indicates whether the network object is a nested object.
</summary>
</member>
<member name="M:Fusion.NetworkObjectReleaseContext.#ctor(Fusion.NetworkObject,Fusion.NetworkObjectTypeId,System.Boolean,System.Boolean)">
<summary>
Initializes a new instance of the NetworkObjectReleaseContext struct with the specified parameters.
</summary>
<param name="obj">The network object to be released.</param>
<param name="typeId">The type identifier of the network object.</param>
<param name="isBeingDestroyed">Indicates whether the network object is being destroyed.</param>
<param name="isNested">Indicates whether the network object is a nested object.</param>
</member>
<member name="M:Fusion.NetworkObjectReleaseContext.ToString">
<summary>
Returns a string that represents the current object.
</summary>
<returns>A string that represents the current object.</returns>
</member>
<member name="T:Fusion.NetworkObjectAcquireResult">
<summary>
Enum representing the possible results of acquiring a prefab instance for a network object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectAcquireResult.Success">
<summary>Indicates that the prefab instance was successfully acquired.</summary>
</member>
<member name="F:Fusion.NetworkObjectAcquireResult.Failed">
<summary>Indicates that the acquisition of the prefab instance failed.</summary>
</member>
<member name="F:Fusion.NetworkObjectAcquireResult.Retry">
<summary>Indicates that the acquisition of the prefab instance should be retried.</summary>
</member>
<member name="F:Fusion.NetworkObjectAcquireResult.Ignore">
<summary>Indicates that the acquisition of the prefab instance should be ignored.</summary>
</member>
<member name="T:Fusion.NetworkObjectProviderDummy">
<summary>
A dummy implementation of the INetworkObjectProvider interface.
This class is used for testing purposes and throws a NotImplementedException for all its methods.
</summary>
</member>
<member name="M:Fusion.NetworkObjectProviderDummy.AcquirePrefabInstance(Fusion.NetworkRunner,Fusion.NetworkPrefabAcquireContext@,Fusion.NetworkObject@)">
<inheritdoc cref="M:Fusion.INetworkObjectProvider.AcquirePrefabInstance(Fusion.NetworkRunner,Fusion.NetworkPrefabAcquireContext@,Fusion.NetworkObject@)"/>
</member>
<member name="M:Fusion.NetworkObjectProviderDummy.ReleaseInstance(Fusion.NetworkRunner,Fusion.NetworkObjectReleaseContext@)">
<inheritdoc cref="M:Fusion.INetworkObjectProvider.ReleaseInstance(Fusion.NetworkRunner,Fusion.NetworkObjectReleaseContext@)"/>
</member>
<member name="T:Fusion.NetworkObjectSortKeyComparer">
<summary>
This class is used to compare two NetworkObject instances based on their SortKey.
It implements the IComparer interface.
</summary>
</member>
<member name="F:Fusion.NetworkObjectSortKeyComparer.Instance">
<summary>
An instance of the NetworkObjectSortKeyComparer class.
</summary>
</member>
<member name="M:Fusion.NetworkObjectSortKeyComparer.Compare(Fusion.NetworkObject,Fusion.NetworkObject)">
<summary>
Compares two NetworkObject instances based on their SortKey.
</summary>
<param name="x">The first NetworkObject to compare.</param>
<param name="y">The second NetworkObject to compare.</param>
<returns>
A signed integer that indicates the relative values of x and y.
</returns>
</member>
<member name="T:Fusion.NetworkObjectStats">
<summary>
The NetworkObjectStats class provides statistics related to a network object.
It includes bandwidth, updates, and player count within the area of interest.
</summary>
</member>
<member name="F:Fusion.NetworkObjectStats.InBandwidth">
<summary>
Represents the inbound bandwidth of the network object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectStats.OutBandwidth">
<summary>
Represents the outbound bandwidth of the network object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectStats.InUpdates">
<summary>
Represents the inbound updates of the network object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectStats.OutUpdates">
<summary>
Represents the outbound updates of the network object.
</summary>
</member>
<member name="F:Fusion.NetworkObjectStats.AreaOfInterestPlayerCount">
<summary>
Represents the count of players within the area of interest of the network object.
</summary>
</member>
<member name="M:Fusion.NetworkObjectStats.Reset">
<summary>
Resets all the statistics of the network object to their default values.
</summary>
</member>
<member name="T:Fusion.NetworkTypeIdKind">
<summary>
Enum representing the type of a NetworkObject.
</summary>
</member>
<member name="F:Fusion.NetworkTypeIdKind.Prefab">
<summary>
Represents a NetworkObject that is a Prefab.
</summary>
</member>
<member name="F:Fusion.NetworkTypeIdKind.Custom">
<summary>
Represents a NetworkObject that is a Custom type.
</summary>
</member>
<member name="F:Fusion.NetworkTypeIdKind.InternalStruct">
<summary>
Represents a NetworkObject that is an InternalStruct.
</summary>
</member>
<member name="F:Fusion.NetworkTypeIdKind.SceneObject">
<summary>
Represents a NetworkObject that is a SceneObject.
</summary>
</member>
<member name="F:Fusion.NetworkTypeIdKind.Invalid">
<summary>
Represents an Invalid NetworkObject type.
</summary>
</member>
<member name="T:Fusion.NetworkObjectTypeId">
<summary>
ID for a <see cref="T:Fusion.NetworkObject"/> Prefab which has been cataloged in a <see cref="F:Fusion.NetworkProjectConfig.PrefabTable"/>.
</summary>
</member>
<member name="T:Fusion.NetworkObjectTypeId.EqualityComparer">
<summary>
<see cref="T:Fusion.NetworkObjectTypeId"/> Comparer
</summary>
</member>
<member name="M:Fusion.NetworkObjectTypeId.EqualityComparer.Equals(Fusion.NetworkObjectTypeId,Fusion.NetworkObjectTypeId)">
<summary>
Checks if two NetworkObjectTypeId instances are equal.
</summary>
</member>
<member name="M:Fusion.NetworkObjectTypeId.EqualityComparer.GetHashCode(Fusion.NetworkObjectTypeId)">
<summary>
Gets the hash code of a NetworkObjectTypeId instance.
</summary>
<param name="obj">The NetworkObjectTypeId instance.</param>
</member>
<member name="F:Fusion.NetworkObjectTypeId.SIZE">
<summary>Represents the size of a NetworkObjectTypeId in bytes.</summary>
</member>
<member name="F:Fusion.NetworkObjectTypeId.ALIGNMENT">
<summary>Represents the alignment of a NetworkObjectTypeId in memory.</summary>
</member>
<member name="F:Fusion.NetworkObjectTypeId.MAX_SCENE_OBJECT_INDEX">
<summary>Represents the maximum number of SceneObjects that can be represented by a NetworkObjectTypeId.</summary>
</member>
<member name="P:Fusion.NetworkObjectTypeId.Comparer">
<summary>An instance of the NetworkObjectTypeId EqualityComparer class.</summary>
</member>
<member name="P:Fusion.NetworkObjectTypeId.PlayerData">
<summary>Represents a NetworkObjectTypeId for the PlayerData.</summary>
</member>
<member name="P:Fusion.NetworkObjectTypeId.Kind">
<summary>Gets the kind of the NetworkObjectTypeId.</summary>
</member>
<member name="M:Fusion.NetworkObjectTypeId.FromSceneRefAndObjectIndex(Fusion.SceneRef,System.Int32,Fusion.NetworkSceneLoadId)">
<summary>
Creates a NetworkObjectTypeId from a SceneRef, an object index, and an optional NetworkSceneLoadId.
</summary>
<param name="sceneRef">The SceneRef to use.</param>
<param name="objIndex">The object index to use.</param>
<param name="loadId">The NetworkSceneLoadId to use. Defaults to default(NetworkSceneLoadId).</param>
<returns>
A NetworkObjectTypeId that represents a SceneObject with the given SceneRef, object index, and NetworkSceneLoadId.
</returns>
<exception cref="T:System.ArgumentException">Thrown when the provided SceneRef is not valid.</exception>
<exception cref="T:System.ArgumentOutOfRangeException">Thrown when the provided object index is out of range.</exception>
</member>
<member name="P:Fusion.NetworkObjectTypeId.AsSceneObjectId">
<summary>
Gets the NetworkSceneObjectId representation of the NetworkObjectTypeId assuming it is a SceneObject.
</summary>
<value>
The NetworkSceneObjectId representation of the NetworkObjectTypeId.
</value>
<exception cref="T:System.InvalidOperationException">Thrown when the NetworkObjectTypeId is not a SceneObject.</exception>
</member>
<member name="M:Fusion.NetworkObjectTypeId.FromPrefabId(Fusion.NetworkPrefabId)">
<summary>
Creates a NetworkObjectTypeId from a NetworkPrefabId.
</summary>
<param name="prefabId">The NetworkPrefabId to use.</param>
<returns>
A NetworkObjectTypeId that represents a Prefab with the given NetworkPrefabId.
</returns>
<exception cref="T:System.ArgumentException">Thrown when the provided NetworkPrefabId is not valid.</exception>
</member>
<member name="P:Fusion.NetworkObjectTypeId.AsPrefabId">
<summary>
Gets the NetworkPrefabId representation of the NetworkObjectTypeId assuming it is a Prefab.
</summary>
<value>
The NetworkPrefabId representation of the NetworkObjectTypeId.
</value>
<exception cref="T:System.InvalidOperationException">Thrown when the NetworkObjectTypeId is not a Prefab.</exception>
</member>
<member name="M:Fusion.NetworkObjectTypeId.FromCustom(System.UInt32)">
<summary>
Creates a NetworkObjectTypeId from a raw uint value representing a Custom type.
</summary>
<param name="raw">The raw uint value to use.</param>
<returns>
A NetworkObjectTypeId that represents a Custom type with the given raw value.
</returns>
</member>
<member name="P:Fusion.NetworkObjectTypeId.AsCustom">
<summary>
Gets the raw uint value representation of the NetworkObjectTypeId assuming it is a Custom type.
</summary>
<value>
The raw uint value representation of the NetworkObjectTypeId.
</value>
<exception cref="T:System.InvalidOperationException">Thrown when the NetworkObjectTypeId is not a Custom type.</exception>
</member>
<member name="M:Fusion.NetworkObjectTypeId.FromStruct(System.UInt16)">
<summary>
Creates a NetworkObjectTypeId from a ushort value representing an InternalStruct type.
</summary>
<param name="structId">The ushort value to use.</param>
<returns>
A NetworkObjectTypeId that represents an InternalStruct type with the given ushort value.
</returns>
</member>
<member name="P:Fusion.NetworkObjectTypeId.AsInternalStructId">
<summary>
Gets the ushort value representation of the NetworkObjectTypeId assuming it is an InternalStruct type.
</summary>
<value>
The ushort value representation of the NetworkObjectTypeId.
</value>
<exception cref="T:System.InvalidOperationException">Thrown when the NetworkObjectTypeId is not an InternalStruct type.</exception>
</member>
<member name="F:Fusion.NetworkObjectTypeId._value0">
<summary>Represents the first part of the value of a NetworkObjectTypeId.</summary>
</member>
<member name="F:Fusion.NetworkObjectTypeId._value1">
<summary>Represents the second part of the value of a NetworkObjectTypeId.</summary>
</member>
<member name="P:Fusion.NetworkObjectTypeId.IsNone">
<summary>
Checks if the NetworkObjectTypeId is invalid.
</summary>
</member>
<member name="P:Fusion.NetworkObjectTypeId.IsValid">
<summary>
Checks if the NetworkObjectTypeId is valid.
</summary>
</member>
<member name="P:Fusion.NetworkObjectTypeId.IsSceneObject">
<summary>
Checks if the NetworkObjectTypeId is a SceneObject.
</summary>
</member>
<member name="P:Fusion.NetworkObjectTypeId.IsPrefab">
<summary>
Checks if the NetworkObjectTypeId is a Prefab.
</summary>
</member>
<member name="P:Fusion.NetworkObjectTypeId.IsStruct">
<summary>
Checks if the NetworkObjectTypeId is an InternalStruct.
</summary>
</member>
<member name="P:Fusion.NetworkObjectTypeId.IsCustom">
<summary>
Checks if the NetworkObjectTypeId is a Custom type.
</summary>
</member>
<member name="M:Fusion.NetworkObjectTypeId.Equals(Fusion.NetworkObjectTypeId)">
<summary>
Checks if the current NetworkObjectTypeId instance is equal to another NetworkObjectTypeId instance.
</summary>
<param name="other">The other NetworkObjectTypeId instance to compare with the current instance.</param>
</member>
<member name="M:Fusion.NetworkObjectTypeId.GetHashCode">
<summary>
Generates a hash code for the current NetworkObjectTypeId instance.
</summary>
</member>
<member name="M:Fusion.NetworkObjectTypeId.Equals(System.Object)">
<summary>
Determines whether the specified object is equal to the current NetworkObjectTypeId instance.
</summary>
<param name="obj">The object to compare with the current NetworkObjectTypeId instance.</param>
</member>
<member name="M:Fusion.NetworkObjectTypeId.ToString">
<summary>
Returns a string that represents the current NetworkObjectTypeId instance.
</summary>
</member>
<member name="M:Fusion.NetworkObjectTypeId.op_Equality(Fusion.NetworkObjectTypeId,Fusion.NetworkObjectTypeId)">
<summary>Determines whether two NetworkObjectTypeId instances are equal.</summary>
</member>
<member name="M:Fusion.NetworkObjectTypeId.op_Inequality(Fusion.NetworkObjectTypeId,Fusion.NetworkObjectTypeId)">
<summary>Determines whether two NetworkObjectTypeId instances are not equal.</summary>
</member>
<member name="M:Fusion.NetworkObjectTypeId.op_Implicit(Fusion.NetworkPrefabId)~Fusion.NetworkObjectTypeId">
<summary>
Converts a NetworkPrefabId instance to a NetworkObjectTypeId instance.
</summary>
<param name="prefabId">The NetworkPrefabId instance to convert.</param>
<returns>
A NetworkObjectTypeId instance that represents a Prefab with the given NetworkPrefabId.
</returns>
</member>
<member name="T:Fusion.INetworkAssetSource`1">
<summary>
Interface for a network asset source.
</summary>
<typeparam name="T">Type of the network asset.</typeparam>
</member>
<member name="M:Fusion.INetworkAssetSource`1.Acquire(System.Boolean)">
<summary>
Acquires the network asset.
</summary>
<param name="synchronous">If true, the acquisition is done synchronously.</param>
</member>
<member name="M:Fusion.INetworkAssetSource`1.Release">
<summary>
Releases the network asset.
</summary>
</member>
<member name="M:Fusion.INetworkAssetSource`1.WaitForResult">
<summary>
Waits for the result of the network asset acquisition.
</summary>
<returns>The network asset.</returns>
</member>
<member name="P:Fusion.INetworkAssetSource`1.IsCompleted">
<summary>
Checks if the network asset acquisition is completed.
</summary>
</member>
<member name="P:Fusion.INetworkAssetSource`1.Description">
<summary>
Gets the description of the network asset.
</summary>
</member>
<member name="T:Fusion.INetworkPrefabSource">
<summary>
Interface for a network prefab source.
</summary>
</member>
<member name="P:Fusion.INetworkPrefabSource.AssetGuid">
<summary>
Gets the GUID of the network object asset.
</summary>
</member>
<member name="T:Fusion.NetworkObjectPrefabData">
<summary>
This class represents the data for a network object prefab.
</summary>
</member>
<member name="F:Fusion.NetworkObjectPrefabData.Guid">
<summary>
The unique identifier for the network object.
</summary>
</member>
<member name="T:Fusion.NetworkPrefabId">
<summary>
ID for a <see cref="T:Fusion.NetworkObject"/> Prefab which has been cataloged in a <see cref="F:Fusion.NetworkProjectConfig.PrefabTable"/>.
</summary>
</member>
<member name="T:Fusion.NetworkPrefabId.EqualityComparer">
<summary>
Equality comparer for NetworkPrefabId.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabId.EqualityComparer.Equals(Fusion.NetworkPrefabId,Fusion.NetworkPrefabId)">
<summary>
Checks if two NetworkPrefabId are equal.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabId.EqualityComparer.GetHashCode(Fusion.NetworkPrefabId)">
<summary>
Gets the hash code of a NetworkPrefabId.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabId.SIZE">
<summary>
The size of a NetworkPrefabId.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabId.ALIGNMENT">
<summary>
The alignment of a NetworkPrefabId.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabId.MAX_INDEX">
<summary>
The maximum index value of a NetworkPrefabId.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabId.RawValue">
<summary>
The raw value of the NetworkPrefabId.
</summary>
</member>
<member name="P:Fusion.NetworkPrefabId.IsNone">
<summary>
Checks if the NetworkPrefabId is none.
</summary>
</member>
<member name="P:Fusion.NetworkPrefabId.IsValid">
<summary>
Checks if the NetworkPrefabId is valid.
</summary>
</member>
<member name="P:Fusion.NetworkPrefabId.AsIndex">
<summary>
Converts the NetworkPrefabId to an index.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabId.FromIndex(System.Int32)">
<summary>
Creates a NetworkPrefabId from an index.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabId.FromRaw(System.UInt32)">
<summary>
Creates a NetworkPrefabId from a raw value.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabId.Equals(Fusion.NetworkPrefabId)">
<summary>
Checks if the NetworkPrefabId is equal to another NetworkPrefabId.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabId.Equals(System.Object)">
<summary>
Checks if the NetworkPrefabId is equal to another object.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabId.GetHashCode">
<summary>
Gets the hash code of the NetworkPrefabId.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabId.ToString">
<summary>
Converts the NetworkPrefabId to a string.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabId.System#IComparable#CompareTo(System.Object)">
<summary>
Compares the NetworkPrefabId to another object.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabId.ToString(System.Boolean,System.Boolean)">
<summary>
Converts the NetworkPrefabId to a string with optional brackets and prefix.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabId.op_Equality(Fusion.NetworkPrefabId,Fusion.NetworkPrefabId)">
<summary>
Checks if two NetworkPrefabId are equal.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabId.op_Inequality(Fusion.NetworkPrefabId,Fusion.NetworkPrefabId)">
<summary>
Checks if two NetworkPrefabId are not equal.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabId.CompareTo(Fusion.NetworkPrefabId)">
<summary>
Compares the NetworkPrefabId to another NetworkPrefabId.
</summary>
</member>
<member name="T:Fusion.NetworkPrefabInfo">
<summary>
Meta data for a <see cref="T:Fusion.NetworkObject"/> prefab which has been cataloged in a <see cref="F:Fusion.NetworkProjectConfig.PrefabTable"/>.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabInfo.Prefab">
<summary>
Prefab ID.
Use <see cref="M:Fusion.NetworkPrefabTable.TryAddSource(Fusion.INetworkPrefabSource,Fusion.NetworkPrefabId@)"/>
to look up the actual prefab reference in the <see cref="F:Fusion.NetworkProjectConfig.PrefabTable"/>.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabInfo.Header">
<summary>
Header data for the <see cref="T:Fusion.NetworkObject"/> prefab.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabInfo.IsSynchronous">
<summary>
Is the prefab supposed to be loaded in a synchronous way. Fusion will report an error
if this field is set to true and no prefab is returned by <see cref="T:Fusion.INetworkObjectProvider"/>.
</summary>
</member>
<member name="P:Fusion.NetworkPrefabInfo.HasHeader">
<summary>
If the Header is not null.
</summary>
</member>
<member name="P:Fusion.NetworkPrefabInfo.Data">
<summary>
Data pointer to the first word of this <see cref="T:Fusion.NetworkObject"/>'s data block.
</summary>
</member>
<member name="T:Fusion.NetworkPrefabTableGetPrefabResult">
<summary>
Enum representing the possible results of attempting to get a prefab from the NetworkPrefabTable.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabTableGetPrefabResult.Success">
<summary>
The prefab was successfully retrieved.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabTableGetPrefabResult.InProgress">
<summary>
The retrieval of the prefab is in progress.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabTableGetPrefabResult.NotFound">
<summary>
The prefab was not found in the NetworkPrefabTable.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabTableGetPrefabResult.LoadError">
<summary>
There was an error in loading the prefab.
</summary>
</member>
<member name="T:Fusion.NetworkPrefabTable">
<summary>
Class representing a table of network prefabs.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabTable.Options">
<summary>
Options for the NetworkPrefabTable.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabTable._sources">
<summary>
All prefab sources.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabTable._acquireMask">
<summary>
Acquired prefabs mask.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabTable._acquireData">
<summary>
Data about acquired prefabs. Only indices matched by <see cref="F:Fusion.NetworkPrefabTable._acquireMask"/> are valid.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabTable._guidToIndex">
<summary>
Translates guid to index in <see cref="F:Fusion.NetworkPrefabTable._sources"/>.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabTable._version">
<summary>
Incremented every time a change occurs.
</summary>
</member>
<member name="P:Fusion.NetworkPrefabTable.Prefabs">
<summary>
All prefab sources.
</summary>
</member>
<member name="P:Fusion.NetworkPrefabTable.Version">
<summary>
Prefab table version. Incremented every time a change occurs.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabTable.GetEntries">
<summary>
Returns all entries in the table.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabTable.AddSource(Fusion.INetworkPrefabSource)">
<summary>
Adds a prefab source to the table.
</summary>
<param name="source">Prefab source to add.</param>
<exception cref="T:System.ArgumentException">Thrown if a prefab source with the same guid already exists.</exception>
</member>
<member name="M:Fusion.NetworkPrefabTable.TryAddSource(Fusion.INetworkPrefabSource,Fusion.NetworkPrefabId@)">
<summary>
Tries to add a prefab source to the table.
</summary>
<param name="source">Prefab source to add.</param>
<param name="id">Id of the prefab source.</param>
<returns>True if the prefab source was added, false otherwise.</returns>
<exception cref="T:System.ArgumentNullException">Thrown if <paramref name="source"/> is null.</exception>
</member>
<member name="M:Fusion.NetworkPrefabTable.GetSource(Fusion.NetworkObjectGuid)">
<summary>
Gets a prefab source by guid.
</summary>
<param name="guid">Guid of the prefab source.</param>
<returns>The prefab source, or default if not found.</returns>
</member>
<member name="M:Fusion.NetworkPrefabTable.GetSource(Fusion.NetworkPrefabId)">
<summary>
Gets a prefab source by id.
</summary>
<param name="prefabId">Id of the prefab source.</param>
<returns>The prefab source, or default if not found.</returns>
</member>
<member name="M:Fusion.NetworkPrefabTable.GetId(Fusion.NetworkObjectGuid)">
<summary>
Gets a prefab id by guid.
</summary>
<param name="guid">Guid of the prefab source.</param>
<returns>The prefab id, or default if not found.</returns>
</member>
<member name="M:Fusion.NetworkPrefabTable.GetGuid(Fusion.NetworkPrefabId)">
<summary>
Gets a prefab guid by id.
</summary>
<param name="prefabId">Id of the prefab source.</param>
<returns>The prefab guid, or default if not found.</returns>
</member>
<member name="M:Fusion.NetworkPrefabTable.GetInstancesCount(Fusion.NetworkPrefabId)">
<summary>
Get the instance count of a prefab id.
</summary>
<param name="prefabId">Id of the prefab.</param>
<returns>The instance count, or 0 if not found.</returns>
</member>
<member name="M:Fusion.NetworkPrefabTable.AddInstance(Fusion.NetworkPrefabId)">
<summary>
Add an instance of a prefab id.
</summary>
<param name="prefabId">Id of the prefab.</param>
<returns>The new instance count, or 0 if not found.</returns>
</member>
<member name="M:Fusion.NetworkPrefabTable.RemoveInstance(Fusion.NetworkPrefabId)">
<summary>
Remove an instance of a prefab id.
</summary>
<param name="prefabId">Id of the prefab.</param>
<returns>The new instance count, or 0 if not found.</returns>
</member>
<member name="M:Fusion.NetworkPrefabTable.Contains(Fusion.NetworkPrefabId)">
<summary>
Returns true if the prefab table contains a prefab with the given id.
</summary>
<param name="prefabId">Id of the prefab.</param>
<returns>True if the prefab table contains a prefab with the given id.</returns>
</member>
<member name="M:Fusion.NetworkPrefabTable.IsAcquired(Fusion.NetworkPrefabId)">
<summary>
Signal if a prefab id has been acquired.
</summary>
<param name="prefabId">Id of the prefab.</param>
<returns>True if the prefab id has been acquired.</returns>
</member>
<member name="M:Fusion.NetworkPrefabTable.Load(Fusion.NetworkPrefabId,System.Boolean)">
<summary>
Load a prefab by id.
</summary>
<param name="prefabId">Id of the prefab.</param>
<param name="isSynchronous">If true, the load will be synchronous.</param>
<returns>The loaded prefab, or null if not found.</returns>
</member>
<member name="M:Fusion.NetworkPrefabTable.Unload(Fusion.NetworkPrefabId)">
<summary>
Unload a prefab by id.
</summary>
<param name="prefabId">Id of the prefab.</param>
<returns>True if the prefab was unloaded, false otherwise.</returns>
</member>
<member name="M:Fusion.NetworkPrefabTable.UnloadUnreferenced(System.Boolean)">
<summary>
Unload all unreferenced prefabs.
</summary>
<param name="includeIncompleteLoads">If true, incomplete loads will be unloaded as well.</param>
<returns>The number of prefabs unloaded.</returns>
</member>
<member name="M:Fusion.NetworkPrefabTable.UnloadAll">
<summary>
Unload all prefabs.
</summary>
</member>
<member name="M:Fusion.NetworkPrefabTable.Clear">
<summary>
Clear the prefab table.
</summary>
</member>
<member name="T:Fusion.NetworkPrefabTableOptions">
<summary>
Options for the NetworkPrefabTable.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabTableOptions.UnloadPrefabOnReleasingLastInstance">
<summary>
If true, prefabs will be unloaded when the last instance is released.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabTableOptions.UnloadUnusedPrefabsOnShutdown">
<summary>
If true, all prefabs will be unloaded on shutdown.
</summary>
</member>
<member name="F:Fusion.NetworkPrefabTableOptions.Default">
<summary>
Default options.
</summary>
</member>
<member name="T:Fusion.AuthorityMasks">
<summary>
Provides constants and methods for managing authority masks.
</summary>
</member>
<member name="F:Fusion.AuthorityMasks.STATE">
<summary>
Constant representing the state authority mask.
</summary>
</member>
<member name="F:Fusion.AuthorityMasks.INPUT">
<summary>
Constant representing the input authority mask.
</summary>
</member>
<member name="F:Fusion.AuthorityMasks.PROXY">
<summary>
Constant representing the proxy authority mask.
</summary>
</member>
<member name="F:Fusion.AuthorityMasks.NONE">
<summary>
Constant representing no authority.
</summary>
</member>
<member name="F:Fusion.AuthorityMasks.ALL">
<summary>
Constant representing all authorities.
</summary>
</member>
<member name="M:Fusion.AuthorityMasks.Create(System.Boolean,System.Boolean)">
<summary>
Creates an authority mask based on the provided state and input flags.
</summary>
<param name="state">If true, the state authority is included in the mask.</param>
<param name="input">If true, the input authority is included in the mask.</param>
<returns>An integer representing the created authority mask.</returns>
</member>
<member name="T:Fusion.RpcAttribute">
<summary>
Flags a method as being a networked Remote Procedure Call.
Only usable in a NetworkBehaviour.
Calls to this method (from the indicated allowed <see cref="T:Fusion.RpcSources"/>) will generate a network message,
which will execute the method remotely on the indicated <see cref="T:Fusion.RpcTargets"/>.
The RPC method can include an empty <see cref="T:Fusion.RpcInfo"/> argument, that will include meta information about the RPC on the receiving peer.
<para>Example:</para>
<code>
| [Rpc(RpcSources.All, RpcTargets.All, InvokeLocal = false, InvokeResim = false, Channel = RpcChannel.Reliable, TickAligned = true)]<br></br>
| public void RPC_Configure(NetworkObject no, string name, Color color, RpcInfo info = default) { }
</code>
To target a specific Player, use the <see cref="T:Fusion.RpcTargetAttribute"/>:
<code>
| [Rpc]
| public void RpcFoo([RpcTarget] PlayerRef targetPlayer) {}
</code>
Use <see cref="T:Fusion.RpcInvokeInfo"/> as a return value to access meta information about the RPC send attempt, such as failure to send reasons, message size, etc.
<para>
Non-static RPCs are only valid on a <see cref="T:Fusion.NetworkBehaviour"/>.
Static RPCs can be implemented on <see cref="T:Fusion.SimulationBehaviour"/>s, and do not require a <see cref="T:Fusion.NetworkObject"/> instance.
Static RPC require the first argument to be NetworkRunner.
</para>
Static RPC Example:
<code>
| [Rpc]
| public static void RPC_Configure(NetworkRunner runner) { }
</code>
</summary>
</member>
<member name="P:Fusion.RpcAttribute.Sources">
<summary>
The legal <see cref="T:Fusion.RpcSources"/> types that can trigger this Rpc. Cast to int.
Default value is (int)<see cref="F:Fusion.RpcSources.All"/>.
</summary>
</member>
<member name="P:Fusion.RpcAttribute.Targets">
<summary>
The <see cref="T:Fusion.RpcTargets"/> types that will receive and invoke this method. Cast to int.
Default value is (int)<see cref="F:Fusion.RpcTargets.All"/>.
</summary>
</member>
<member name="P:Fusion.RpcAttribute.InvokeLocal">
<summary>
Indicates if the method should be called locally (on the RPC caller). This happens immediately.
Default value is true.
</summary>
</member>
<member name="P:Fusion.RpcAttribute.Channel">
<summary>
Specifies which RpcChannel to use.
Default value is <see cref="F:Fusion.RpcChannel.Reliable"/>
</summary>
</member>
<member name="P:Fusion.RpcAttribute.TickAligned">
<summary>
Indicates if this RPC's execution will be postponed until the local simulation catches up with the sender's Tick number.
Even if set to false, the order of Rpcs is always preserved. Rpcs are deferred until all preceding Rpcs have
executed.
Default value is true.
</summary>
</member>
<member name="P:Fusion.RpcAttribute.HostMode">
<summary>
Options for when the game is run in <see cref="F:Fusion.SimulationModes.Host"/> mode and RPC is invoked by the host.
</summary>
</member>
<member name="M:Fusion.RpcAttribute.#ctor">
<summary>
Constructor for RpcAttributes.
</summary>
</member>
<member name="M:Fusion.RpcAttribute.#ctor(Fusion.RpcSources,Fusion.RpcTargets)">
<summary>
Constructor for RpcAttributes.
</summary>
<param name="sources">The legal <see cref="T:Fusion.RpcSources"/> types that can trigger this Rpc. Default is <see cref="F:Fusion.RpcSources.All"/></param>
<param name="targets">The <see cref="T:Fusion.RpcTargets"/> types that will receive and invoke this method. Default is <see cref="F:Fusion.RpcTargets.All"/></param>
</member>
<member name="F:Fusion.RpcAttribute.MaxPayloadSize">
<summary>
Maximum allowed size for the payload of the RPC message.
</summary>
</member>
<member name="T:Fusion.RpcChannel">
<summary>
Flags for the RPC channel.
</summary>
</member>
<member name="F:Fusion.RpcChannel.Reliable">
<summary>
Rpc order preserved, delivery verified, resend in case of a failed delivery.
</summary>
</member>
<member name="F:Fusion.RpcChannel.Unreliable">
<summary>
Rpc order preserved, delivery not verified, no resend attempts.
</summary>
</member>
<member name="T:Fusion.RpcHeader">
<summary>
Header for RPC messages.
</summary>
</member>
<member name="F:Fusion.RpcHeader.SIZE">
<summary>
The size of the RpcHeader structure in bytes.
</summary>
</member>
<member name="F:Fusion.RpcHeader.Object">
<summary>
The NetworkId of the object associated with the RPC message.
</summary>
</member>
<member name="F:Fusion.RpcHeader.Behaviour">
<summary>
The behaviour associated with the RPC message.
</summary>
</member>
<member name="F:Fusion.RpcHeader.Method">
<summary>
The method associated with the RPC message.
</summary>
</member>
<member name="M:Fusion.RpcHeader.Write(Fusion.RpcHeader,System.Byte*)">
<summary>
Writes the RpcHeader to the provided byte pointer.
</summary>
<param name="header">The RpcHeader to write.</param>
<param name="data">The byte pointer to write the RpcHeader to.</param>
<returns>Returns the size of the RpcHeader structure in bytes.</returns>
</member>
<member name="M:Fusion.RpcHeader.ReadSize(System.Byte*)">
<summary>
Reads the size of the RpcHeader from the provided byte pointer.
</summary>
<param name="data">The byte pointer to read the RpcHeader size from.</param>
<returns>Returns the size of the RpcHeader structure in bytes.</returns>
</member>
<member name="M:Fusion.RpcHeader.Read(System.Byte*,System.Int32@)">
<summary>
Reads the RpcHeader from the provided byte pointer.
</summary>
<param name="data">The byte pointer to read the RpcHeader from.</param>
<param name="size">The size of the RpcHeader structure in bytes.</param>
<returns>Returns the RpcHeader read from the byte pointer.</returns>
</member>
<member name="M:Fusion.RpcHeader.Create(Fusion.NetworkId,System.Int32,System.Int32)">
<summary>
Creates a new RpcHeader with the provided NetworkId, behaviour, and method.
</summary>
<param name="id">The NetworkId of the object associated with the RPC message.</param>
<param name="behaviour">The behaviour associated with the RPC message.</param>
<param name="method">The method associated with the RPC message.</param>
<returns>Returns a new RpcHeader with the provided parameters.</returns>
</member>
<member name="M:Fusion.RpcHeader.Create(System.Int32)">
<summary>
Creates a new RpcHeader with the provided staticRpcKey.
</summary>
<param name="staticRpcKey">The staticRpcKey associated with the RPC message.</param>
<returns>Returns a new RpcHeader with the provided staticRpcKey.</returns>
</member>
<member name="M:Fusion.RpcHeader.ToString">
<summary>
Returns a string that represents the current RpcHeader.
</summary>
<returns>Returns a string that represents the current RpcHeader.</returns>
</member>
<member name="T:Fusion.RpcHostMode">
<summary>
Options for when the game is run in <see cref="F:Fusion.SimulationModes.Host"/> mode and RPC is invoked by the host.
</summary>
</member>
<member name="F:Fusion.RpcHostMode.SourceIsServer">
<summary>
If host invokes RPC <see cref="F:Fusion.RpcInfo.Source"/> will be set to <see cref="P:Fusion.PlayerRef.None"/> (default).
</summary>
</member>
<member name="F:Fusion.RpcHostMode.SourceIsHostPlayer">
<summary>
If host invokes RPC <see cref="F:Fusion.RpcInfo.Source"/> will be set to the host's local player.
</summary>
</member>
<member name="T:Fusion.RpcInfo">
<summary>
RpcInfo is a struct that contains information about the RPC message.
</summary>
</member>
<member name="F:Fusion.RpcInfo.Tick">
<summary>
Represents the tick at which the RPC message was sent.
</summary>
</member>
<member name="F:Fusion.RpcInfo.Source">
<summary>
Represents the player who sent the RPC message.
</summary>
</member>
<member name="F:Fusion.RpcInfo.Channel">
<summary>
Represents the channel through which the RPC message was sent.
</summary>
</member>
<member name="F:Fusion.RpcInfo.IsInvokeLocal">
<summary>
Indicates whether the RPC message is invoked locally.
</summary>
</member>
<member name="M:Fusion.RpcInfo.FromLocal(Fusion.NetworkRunner,Fusion.RpcChannel,Fusion.RpcHostMode)">
<summary>
Creates a new RpcInfo instance for a local RPC message.
</summary>
<param name="runner">The NetworkRunner associated with the RPC message.</param>
<param name="channel">The RpcChannel through which the RPC message was sent.</param>
<param name="hostMode">The RpcHostMode of the RPC message.</param>
<returns>Returns a new RpcInfo instance with the provided parameters.</returns>
</member>
<member name="M:Fusion.RpcInfo.FromMessage(Fusion.NetworkRunner,Fusion.SimulationMessage*,Fusion.RpcHostMode)">
<summary>
Creates a new RpcInfo instance from a SimulationMessage.
</summary>
<param name="runner">The NetworkRunner associated with the RPC message.</param>
<param name="message">The SimulationMessage from which to create the RpcInfo instance.</param>
<param name="hostMode">The RpcHostMode of the RPC message.</param>
<returns>Returns a new RpcInfo instance with the provided parameters.</returns>
</member>
<member name="M:Fusion.RpcInfo.ToString">
<summary>
Returns a string that represents the current RpcInfo.
</summary>
<returns>Returns a string that represents the current RpcInfo.</returns>
</member>
<member name="T:Fusion.RpcInvokeData">
<summary>
Represents the data required to invoke an RPC message.
</summary>
</member>
<member name="F:Fusion.RpcInvokeData.Key">
<summary>Represents the key associated with the RPC message.</summary>
</member>
<member name="F:Fusion.RpcInvokeData.Sources">
<summary>Represents the sources of the RPC message.</summary>
</member>
<member name="F:Fusion.RpcInvokeData.Targets">
<summary>Represents the targets of the RPC message.</summary>
</member>
<member name="F:Fusion.RpcInvokeData.Delegate">
<summary>Represents the delegate to be invoked for the RPC message.</summary>
</member>
<member name="M:Fusion.RpcInvokeData.ToString">
<summary>
Returns a string that represents the current RpcInvokeData.
</summary>
<returns>Returns a string that represents the current RpcInvokeData.</returns>
</member>
<member name="T:Fusion.RpcInvokeDelegate">
<summary>
Represents a delegate that can be invoked by an RPC message.
</summary>
<param name="behaviour">The NetworkBehaviour associated with the RPC message.</param>
<param name="message">The SimulationMessage associated with the RPC message.</param>
<remarks>
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.
</remarks>
</member>
<member name="T:Fusion.RpcInvokeInfo">
<summary>
May be used as an optional <see cref="T:Fusion.RpcAttribute"/> return value. Contains meta data about the RPC send, such as failure to send reasons, culling, message size, etc.
<para>Example:</para>
<code>
| [Rpc]
| public RpcInvokeInfo RpcFoo(int value) {
| return default;
| }
|
| public override void FixedUpdateNetwork() {
| var info = RpcFoo();
| Debug.Log(info);
| }
</code>
</summary>
</member>
<member name="F:Fusion.RpcInvokeInfo.LocalInvokeResult">
<summary>Represents the result of the local RPC invocation.</summary>
</member>
<member name="F:Fusion.RpcInvokeInfo.SendCullResult">
<summary>Represents the result of the RPC message send operation.</summary>
</member>
<member name="F:Fusion.RpcInvokeInfo.SendResult">
<summary>Contains detailed information about the RPC send operation result.</summary>
</member>
<member name="M:Fusion.RpcInvokeInfo.ToString">
<summary>
Returns a string that represents the current RpcInvokeInfo.
</summary>
</member>
<member name="T:Fusion.RpcLocalInvokeResult">
<summary>
Results for the local RPC Invocation of the RPC method.
</summary>
</member>
<member name="F:Fusion.RpcLocalInvokeResult.Invoked">
<summary>
RPC has been invoked locally.
</summary>
</member>
<member name="F:Fusion.RpcLocalInvokeResult.NotInvokableLocally">
<summary>
Not invoked locally because <see cref="P:Fusion.RpcAttribute.InvokeLocal"/> is false.
</summary>
</member>
<member name="F:Fusion.RpcLocalInvokeResult.NotInvokableDuringResim">
<summary>
Not invoked locally because InvokeResim is false and simulation stage is <see cref="F:Fusion.SimulationStages.Resimulate"/>
</summary>
</member>
<member name="F:Fusion.RpcLocalInvokeResult.InsufficientSourceAuthority">
<summary>
Not invoked because source <see cref="T:Fusion.NetworkObject"/> current authority does not match flags set in <see cref="P:Fusion.RpcAttribute.Sources"/>
</summary>
</member>
<member name="F:Fusion.RpcLocalInvokeResult.InsufficientTargetAuthority">
<summary>
Not invoked because target player is local and this <see cref="T:Fusion.NetworkObject"/> current authority does not match flags set in <see cref="P:Fusion.RpcAttribute.Targets"/>
</summary>
</member>
<member name="F:Fusion.RpcLocalInvokeResult.TargetPlayerIsNotLocal">
<summary>
Not invoked because target player is not local.
</summary>
</member>
<member name="F:Fusion.RpcLocalInvokeResult.PayloadSizeExceeded">
<summary>
RPC is too large. See <see cref="F:Fusion.RpcAttribute.MaxPayloadSize"/> for the maximum allowed size.
</summary>
</member>
<member name="F:Fusion.RpcLocalInvokeResult.TagetPlayerIsNotLocal">
<summary>
<see cref="F:Fusion.RpcLocalInvokeResult.TargetPlayerIsNotLocal"/>
</summary>
</member>
<member name="T:Fusion.RpcSendCullResult">
<summary>
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 <see cref="F:Fusion.RpcInvokeInfo.SendResult"/>.
</summary>
</member>
<member name="F:Fusion.RpcSendCullResult.NotCulled">
<summary>
RPC has been sent. Check <see cref="F:Fusion.RpcInvokeInfo.SendResult"/> for details.
</summary>
</member>
<member name="F:Fusion.RpcSendCullResult.NotInvokableDuringResim">
<summary>
Send culled because <see cref = "P:Fusion.RpcAttribute.InvokeLocal" /> is false.
</summary>
</member>
<member name="F:Fusion.RpcSendCullResult.InsufficientSourceAuthority">
<summary>
Send culled because source <see cref="T:Fusion.NetworkObject"/> current authority does not match flags set in <see cref="P:Fusion.RpcAttribute.Sources"/>
</summary>
</member>
<member name="F:Fusion.RpcSendCullResult.NoActiveConnections">
<summary>
Send culled because there are no active connections.
</summary>
</member>
<member name="F:Fusion.RpcSendCullResult.TargetPlayerUnreachable">
<summary>
Send culled because target player does not exist.
</summary>
</member>
<member name="F:Fusion.RpcSendCullResult.TargetPlayerIsLocalButRpcIsNotInvokableLocally">
<summary>
Send culled because target player is local and <see cref="P:Fusion.RpcAttribute.InvokeLocal"/> is false.
</summary>
</member>
<member name="F:Fusion.RpcSendCullResult.PayloadSizeExceeded">
<summary>
RPC message size is too large to be sent. See <see cref="F:Fusion.RpcAttribute.MaxPayloadSize"/> for the maximum allowed size.
</summary>
</member>
<member name="T:Fusion.RpcSendResult">
<summary>
RPC send operation result information.
</summary>
</member>
<member name="F:Fusion.RpcSendResult.Result">
<summary>
Result flags for the RPC send operation.
</summary>
</member>
<member name="F:Fusion.RpcSendResult.MessageSize">
<summary>
The size of the RPC message.
</summary>
</member>
<member name="M:Fusion.RpcSendResult.ToString">
<summary>
Returns a string that represents the current RpcSendResult.
</summary>
</member>
<member name="T:Fusion.RpcSources">
<summary>
Enum representing the sources of an RPC message.
</summary>
</member>
<member name="F:Fusion.RpcSources.StateAuthority">
<summary>
Represents the state authority source of an RPC message.
</summary>
</member>
<member name="F:Fusion.RpcSources.InputAuthority">
<summary>
Represents the input authority source of an RPC message.
</summary>
</member>
<member name="F:Fusion.RpcSources.Proxies">
<summary>
Represents the proxy source of an RPC message.
</summary>
</member>
<member name="F:Fusion.RpcSources.All">
<summary>
Represents all possible sources of an RPC message.
</summary>
</member>
<member name="T:Fusion.RpcStaticInvokeDelegate">
<summary>
Represents a delegate that can be invoked by an RPC message.
</summary>
<param name="runner">The NetworkRunner associated with the RPC message.</param>
<param name="message">The SimulationMessage associated with the RPC message.</param>
<remarks>
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.
</remarks>
</member>
<member name="T:Fusion.RpcTargetAttribute">
<summary>
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:
<code>
| [Rpc]
| public void RpcFoo([RpcTarget] PlayerRef targetPlayer) { }
</code>
</summary>
</member>
<member name="M:Fusion.RpcTargetAttribute.#ctor">
<summary>RPC Attribute constructor.</summary>
</member>
<member name="T:Fusion.RpcTargets">
<summary>
Enum representing the targets of an RPC message.
</summary>
</member>
<member name="F:Fusion.RpcTargets.StateAuthority">
<summary>
Represents the state authority target of an RPC message.
</summary>
</member>
<member name="F:Fusion.RpcTargets.InputAuthority">
<summary>
Represents the input authority target of an RPC message.
</summary>
</member>
<member name="F:Fusion.RpcTargets.Proxies">
<summary>
Represents the proxy target of an RPC message.
</summary>
</member>
<member name="F:Fusion.RpcTargets.All">
<summary>
Represents all possible targets of an RPC message.
</summary>
</member>
<member name="T:Fusion.RpcTargetStatus">
<summary>
Enum representing the status of an RPC target.
</summary>
</member>
<member name="F:Fusion.RpcTargetStatus.Unreachable">
<summary>
Represents an unreachable RPC target.
</summary>
</member>
<member name="F:Fusion.RpcTargetStatus.Self">
<summary>
Represents the RPC target as self.
</summary>
</member>
<member name="F:Fusion.RpcTargetStatus.Remote">
<summary>
Represents a remote RPC target.
</summary>
</member>
<member name="T:Fusion.HostMigrationConfig">
<summary>
Project configuration settings specific to how the Host Migration behaves.
</summary>
</member>
<member name="F:Fusion.HostMigrationConfig.EnableAutoUpdate">
<summary>
Enabled the Host Migration feature
</summary>
</member>
<member name="F:Fusion.HostMigrationConfig.UpdateDelay">
<summary>
Delay between Host Migration Snapshot updates
</summary>
</member>
<member name="T:Fusion.HostMigrationToken">
<summary>
Transitory Holder with all necessary information to restart the Fusion Runner
after the Host Migration has completed
</summary>
</member>
<member name="P:Fusion.HostMigrationToken.GameMode">
<summary>
New GameMode the local peer will assume after the Host Migration
</summary>
</member>
<member name="T:Fusion.NetworkRunner">
<summary>
Host Migration related code in order to get a copy of the Simulation State
</summary>
<summary>
Host Migration related code in order to get a copy of the Simulation State
</summary>
<summary>
Represents a Server or Client Simulation.
</summary>
<summary>
All Scene related API and fields
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsResume">
<summary>
if this instance is a resume (host migration)
</summary>
</member>
<member name="M:Fusion.NetworkRunner.PushHostMigrationSnapshot">
<summary>
Compute and send a Host Migration Snapshot to the Photon Cloud
</summary>
<returns>Task with the result of the operation. True if it was successful, false otherwise.</returns>
</member>
<member name="M:Fusion.NetworkRunner.GetResumeSnapshotNetworkObjects">
<summary>
Iterate over the old NetworkObjects from the Resume Snapshot
</summary>
<returns>Iterable list of <see cref="T:Fusion.NetworkObject"/></returns>
</member>
<member name="M:Fusion.NetworkRunner.GetResumeSnapshotNetworkSceneObjects">
<summary>
Iterate over the Scene NetworkObjects from the Resume Snapshot while giving the reference of the old
Snapshot data associated with that particular Scene Object
</summary>
<returns>Iterable list of Scene <see cref="T:Fusion.NetworkObject"/> and Scene Object Header</returns>
</member>
<member name="F:Fusion.NetworkRunner._hostSnapshotTempData">
<summary>
Temporary Host Migration Snapshot data buffer
</summary>
</member>
<member name="F:Fusion.NetworkRunner.HostSnapshotTransferDataSize">
<summary>
Temporary Host Migration Snapshot Data buffer size
</summary>
</member>
<member name="M:Fusion.NetworkRunner.GetNetworkObjectFromResumeSnapshot(Fusion.NetworkObjectHeaderPtr,System.Collections.Generic.Dictionary{Fusion.NetworkId,Fusion.NetworkObjectHeaderPtr},System.Collections.Generic.Dictionary{Fusion.NetworkId,System.Collections.Generic.List{Fusion.NetworkId}})">
<summary>
Gets a temporary representation of a <see cref="T:Fusion.NetworkObject"/> from the old Server Snapshot
</summary>
</member>
<member name="M:Fusion.NetworkRunner.SetupHostMigration(Fusion.Protocol.HostMigration)">
<summary>
Setup Host Migration information
</summary>
<param name="hostMigration">Host Migration info</param>
</member>
<member name="M:Fusion.NetworkRunner.StartHostMigration(Fusion.Protocol.Snapshot)">
<summary>
Start the Host Migration process
</summary>
<param name="snapshot">Base Snapshot to be used when restarting the Host</param>
</member>
<member name="M:Fusion.NetworkRunner.InvokeHostMigration(Fusion.HostMigrationToken)">
<summary>
Signal the Host Migration process has started
</summary>
</member>
<member name="M:Fusion.NetworkRunner.SendHostMigrationSnapshot">
<summary>
Try to send a Host Snapshot to Plugin
</summary>
</member>
<member name="M:Fusion.NetworkRunner.GetServerSnapshot(System.Byte[]@,Fusion.Tick@,System.UInt32@,System.Int32@)">
<summary>
Get the Snapshot Host Migration Data
</summary>
<returns>True if the snapshot was properly captured</returns>
</member>
<member name="T:Fusion.NetworkRunner.BuildTypes">
<summary>
Enumeration of Fusion.Runtime.dll options.
</summary>
</member>
<member name="F:Fusion.NetworkRunner.BuildTypes.Debug">
<summary>
Use the Debug version of the Fusion.Runntime.dll.
</summary>
</member>
<member name="F:Fusion.NetworkRunner.BuildTypes.Release">
<summary>
Use the Debug version of the Fusion.Runntime.dll.
</summary>
</member>
<member name="T:Fusion.NetworkRunner.States">
<summary>
Initialization stages of Fusion
</summary>
</member>
<member name="F:Fusion.NetworkRunner.States.Starting">
<summary>
Runner is about to start
</summary>
</member>
<member name="F:Fusion.NetworkRunner.States.Running">
<summary>
Runner is running
</summary>
</member>
<member name="F:Fusion.NetworkRunner.States.Shutdown">
<summary>
Runner is shutdown
</summary>
</member>
<member name="P:Fusion.NetworkRunner.BuildType">
<summary>
Get Fusion.Runtime.dll build type.
</summary>
</member>
<member name="T:Fusion.NetworkRunner.OnBeforeSpawned">
<summary>
Delegate type for on before spawned callback
</summary>
</member>
<member name="T:Fusion.NetworkRunner.ObjectDelegate">
<summary>
Delegate type for object callback
</summary>
</member>
<member name="E:Fusion.NetworkRunner.ObjectAcquired">
<summary>
Event for object acquired
</summary>
</member>
<member name="T:Fusion.NetworkRunner.DeferredShutdownParams">
<summary>
Stores the Shutdown parameters used when requesting a Shutdown from inside a Runner Callback
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsSimulationUpdating">
<summary>
Is the runner updating the simulation.
</summary>
</member>
<member name="F:Fusion.NetworkRunner._initializeOperation">
<summary>
Completion Source for the startup Photon Cloud Operations
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsInitialized">
<summary>
Check if the Runner was properly Initialized
</summary>
</member>
<member name="F:Fusion.NetworkRunner.OnGameStartedInvoked">
<summary>
Signal if the OnGameStarted was invoked already
</summary>
</member>
<member name="F:Fusion.NetworkRunner._spawnedSimBehaviourQueue">
<summary>
A queue of simulation behaviours that were attached to the runner by AddGlobal and implement the ISpawned interface.
But the spawned call is delayed to when the RuntimeConfig is ready.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.ProvideInput">
<summary>
Indicates if this <see cref="T:Fusion.NetworkRunner"/> is collecting <see cref="T:Fusion.PlayerRef"/> <see cref="T:Fusion.INetworkInput"/>.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.Topology">
<summary>
The current topology used
</summary>
</member>
<member name="P:Fusion.NetworkRunner.Simulation">
<summary>
Returns the <see cref="T:Fusion.Simulation"/> for this <see cref="T:Fusion.NetworkRunner"/>.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.Mode">
<summary>
Returns the <see cref="T:Fusion.SimulationModes"/> flags for The type of network peer the associated <see cref="T:Fusion.Simulation"/> represents.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.Stage">
<summary>
Returns the current <see cref="T:Fusion.SimulationStages"/> stage of this <see cref="T:Fusion.Simulation"/>.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.DeltaTime">
<summary>
Returns the fixed tick time interval. Derived from the <see cref="F:Fusion.SimulationRuntimeConfig.TickRate"/>.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.SimulationTime">
<summary>
The time the current State represents (the most recent FixedUpdateNetwork simulation).
Use as an equivalent to Unity's Time.fixedTime.
Time is relative to Tick 0 (which represents Time 0f).
</summary>
</member>
<member name="P:Fusion.NetworkRunner.LocalRenderTime">
<summary>
The current time (current State.Time + Simulation.DeltaTime) for predicted objects (objects in the local time frame).
Use as an equivalent to Unity's Time.time.
Time is relative to Tick 0 (which represents Time 0f).
</summary>
</member>
<member name="P:Fusion.NetworkRunner.RemoteRenderTime">
<summary>
The current time (current State.Time + Simulation.DeltaTime) for non-predicted objects (objects in a remote time frame).
Use as an equivalent to Unity's Time.time.
Time is relative to Tick 0 (which represents Time 0f).
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsRunning">
<summary>
Returns if this <see cref="T:Fusion.Simulation"/> is valid and running.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsShutdown">
<summary>
If the runner is shutdown
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsShutdownDeferred">
<summary>
Has the shutdown been deferred.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsRegularShutdown">
<summary>
Are we dealing with a regular, planned shutdown.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.LocalAlpha">
<summary>
Get the local time alpha value
</summary>
</member>
<member name="P:Fusion.NetworkRunner.LatestServerTick">
<summary>
Get the latest confirmed tick of the server we are aware of
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsStarting">
<summary>
If the runner is pending to start
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsClient">
<summary>
Returns if this <see cref="T:Fusion.Simulation"/> represents a Client connection.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsConnectedToServer">
<summary>
Returns if this Client is currently connected to a Remote Server
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsServer">
<summary>
Returns if this <see cref="T:Fusion.Simulation"/> represents a Server connection.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsPlayer">
<summary>
Returns true if this runner represents a Client or Host. Dedicated servers have no local player and will return false.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsSinglePlayer">
<summary>
Returns true if this runner was started as single player (Started as <see cref="F:Fusion.SimulationModes.Host"/> with <see cref="F:Fusion.SimulationConfig.PlayerCount"/> = 1).
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsLastTick">
<summary>
If this is the last tick that is being executed this update
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsFirstTick">
<summary>
If this is the first tick that executes this update or re-simulation
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsForward">
<summary>
If this is not a re-simulation but a new forward tick
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsResimulation">
<summary>
If we are currently executing a client side prediction re-simulation.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.TickRate">
<summary>
</summary>
</member>
<member name="P:Fusion.NetworkRunner.State">
<summary>
The current state of the runner, if it's Starting, Running, Shutdown
</summary>
</member>
<member name="P:Fusion.NetworkRunner.LocalPlayer">
<summary>
Returns a <see cref="T:Fusion.PlayerRef"/> for the local simulation. For a dedicated server <see cref="P:Fusion.PlayerRef.IsRealPlayer"/> will equal false.
PlayerRefs are assigned in order from 0 to MaxPlayers-1 and are re-used as players join and leave.
The only caveat is that the server player (if one exists), always gets the last index no matter how many clients are connected.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.Tick">
<summary>
The tick associated with the current state of networked objects, or the current simulation tick being processed (when evaluated during FixedUpdateNetwork).
</summary>
</member>
<member name="P:Fusion.NetworkRunner.Config">
<summary>
Returns the <see cref="T:Fusion.NetworkProjectConfig"/> reference.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.Prefabs">
<summary>
Reference to the <see cref="T:Fusion.NetworkPrefabTable"/>.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.TicksExecuted">
<summary>
Returns how many ticks we executed last update.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.ActivePlayers">
<summary>
Returns the collection of <see cref="T:Fusion.PlayerRef"/> objects for this NetworkRunner's <see cref="T:Fusion.Simulation"/>.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.ObjectProvider">
<summary>
Returns the <see cref="T:Fusion.INetworkObjectProvider"/> instance.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.SceneManager">
<summary>
Returns the <see cref="T:Fusion.INetworkSceneManager"/> instance.
</summary>
</member>
<member name="F:Fusion.NetworkRunner.OperationsCancellationTokenSource">
<summary>
Global CancellationTokenSource for this NetworkRunner Instance
Used to control all async operations along the life cycle of the Runner
Should be used in conjunction with <see cref="T:Fusion.Async.TaskManager"/>
</summary>
</member>
<member name="P:Fusion.NetworkRunner.OperationsCancellationToken">
<summary>
Global copy of the Cancellation Token for this NetworkRunner Instance
</summary>
</member>
<member name="P:Fusion.NetworkRunner.LagCompensation">
<summary>
Returns the global instance of a lag compensation buffer <see cref="T:Fusion.HitboxManager"/>.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.Disconnect(Fusion.PlayerRef,System.Byte[])">
<summary>
Disconnects a player from the server.
</summary>
<param name="player">The player to disconnect. Must be a valid PlayerRef.</param>
<param name="token">Optional byte array. If provided, it will be used as the disconnection token.</param>
<remarks>
This method can only be called from the server. If called from a client, an error message will be logged.
</remarks>
</member>
<member name="M:Fusion.NetworkRunner.Disconnect(Fusion.Sockets.NetAddress)">
<summary>
Disconnect a client based on its NetAddress
</summary>
<param name="address">NetAddress of the client</param>
</member>
<member name="M:Fusion.NetworkRunner.Connect(Fusion.Sockets.NetAddress,System.Byte[],System.Byte[])">
<summary>
Connect this <see cref="T:Fusion.NetworkRunner"/> as a client to a Server.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.Shutdown(System.Boolean,Fusion.ShutdownReason,System.Boolean)">
<summary>
Initiates a <see cref="M:Fusion.Simulation.Dispose"/>.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.OnRuntimeConfigReady">
<summary>
Called by the simulation when the RuntimeConfig is first acknowledged.
</summary>
</member>
<member name="F:Fusion.NetworkRunner._onGameStartAction">
<summary>
OnGameStarted Callback
</summary>
</member>
<member name="M:Fusion.NetworkRunner.InvokeOnGameStartedCallback">
<summary>
Invoke OnGameStarted callback
</summary>
</member>
<member name="M:Fusion.NetworkRunner.Initialize(Fusion.NetworkRunnerInitializeArgs)">
<summary>
Starts <see cref="T:Fusion.NetworkRunner"/> using the supplied arguments.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.SinglePlayerPause">
<summary>
Pauses the game in single player
</summary>
</member>
<member name="M:Fusion.NetworkRunner.SinglePlayerContinue">
<summary>
Continues a paused game in single player
</summary>
</member>
<member name="M:Fusion.NetworkRunner.SinglePlayerPause(System.Boolean)">
<summary>
Sets the paused state in a single player
</summary>
</member>
<member name="M:Fusion.NetworkRunner.GetInterfaceListsCount(System.Type)">
<summary>
Get the number of interfaces of the desired type that are registered on the behaviour updater.
</summary>
<param name="type">The interface type</param>
<returns>The number of interfaces</returns>
</member>
<member name="M:Fusion.NetworkRunner.GetInterfaceListHead(System.Type,System.Int32,Fusion.SimulationBehaviour@)">
<summary>
Get the interface list head.
</summary>
<param name="type">The interface type</param>
<param name="index">The desired index on the list of behaviourList</param>
<param name="head">The head reference</param>
<returns>A disposable <see cref="T:Fusion.SimulationBehaviourListScope"/> to be used on an `using` scope</returns>
</member>
<member name="M:Fusion.NetworkRunner.GetInterfaceListPrev(Fusion.SimulationBehaviour)">
<summary>
Get the previous behaviour
</summary>
<param name="behaviour">The reference behaviour to get the previous one</param>
<returns>Gives the previous behaviour</returns>
</member>
<member name="M:Fusion.NetworkRunner.GetInterfaceListNext(Fusion.SimulationBehaviour)">
<summary>
Get the next behaviour
</summary>
<param name="behaviour">The reference behaviour to get the next one</param>
<returns>Gives the next behaviour</returns>
</member>
<member name="M:Fusion.NetworkRunner.GetPlayerActorId(Fusion.PlayerRef)">
<summary>
Gets Player's Actor Number (ID).
If used in Shared Mode, every client can get this information.
If used in Client Server Mode, only the Server is able to get this information.
</summary>
<param name="player">PlayerRef to get the Actor Number (ID)</param>
<returns>Actor Number associated with the PlayerRef, otherwise null.</returns>
</member>
<member name="M:Fusion.NetworkRunner.GetPlayerUserId(Fusion.PlayerRef)">
<summary>
Gets Player's UserID.
If used in Shared Mode, every client can get this information.
If used in Client Server Mode, only the Server is able to get this information.
</summary>
<param name="player">PlayerRef to get the UserID. If no PlayerRef is passed, the UserID of the local client is returned instead.</param>
<returns>UserID if valid player found, otherwise null.</returns>
</member>
<member name="M:Fusion.NetworkRunner.SetPlayerObject(Fusion.PlayerRef,Fusion.NetworkObject)">
<summary>
Sets the network object associated with this player
</summary>
<param name="player">PlayerRef to set the network object</param>
<param name="networkObject">Network object to associate with the player</param>
</member>
<member name="M:Fusion.NetworkRunner.GetPlayerObject(Fusion.PlayerRef)">
<summary>
Gets the network object associated with a specific player
</summary>
<param name="player">PlayerRef to get the network object</param>
<returns>Network object if one is associated with the player</returns>
</member>
<member name="M:Fusion.NetworkRunner.TryGetPlayerObject(Fusion.PlayerRef,Fusion.NetworkObject@)">
<summary>
Try to gets the <see cref="T:Fusion.NetworkObject"/> associated with a specific player
</summary>
<param name="player">PlayerRef to get the network object</param>
<param name="networkObject">Network object if one is associated with the player</param>
<returns>Signals if it was able to get a <see cref="T:Fusion.NetworkObject"/> for the player provided</returns>
</member>
<member name="M:Fusion.NetworkRunner.GetAllBehaviours``1">
<summary>
Get a list with all behaviours of the desired type that are registered on the <see cref="T:Fusion.NetworkRunner"/>.
</summary>
<typeparam name="T"><see cref="T:Fusion.SimulationBehaviour"/> type</typeparam>
<returns>The result list</returns>
</member>
<member name="M:Fusion.NetworkRunner.GetAllBehaviours``1(System.Collections.Generic.List{``0})">
<summary>
Add on the list all behaviours of the desired type that are registered on the <see cref="T:Fusion.NetworkRunner"/>.
Note: The list will not be cleared before adding the results.
</summary>
<param name="result">The list to add the behaviours</param>
<typeparam name="T"><see cref="T:Fusion.SimulationBehaviour"/> type</typeparam>
</member>
<member name="M:Fusion.NetworkRunner.GetPlayerRtt(Fusion.PlayerRef)">
<summary>
Returns the player round trip time (ping) in seconds
</summary>
<param name="playerRef">The player you want the round trip time for</param>
</member>
<member name="M:Fusion.NetworkRunner.SendRpc(Fusion.SimulationMessage*)">
<summary>
Sends RPC message. Not meant to be used directly, ILWeaver calls this.
</summary>
<param name="message">SimulationMessage to send</param>
</member>
<member name="M:Fusion.NetworkRunner.SendRpc(Fusion.SimulationMessage*,Fusion.RpcSendResult@)">
<summary>
Sends RPC message. Not meant to be used directly, ILWeaver calls this.
</summary>
<param name="message">SimulationMessage to send</param>
<param name="info">RpcSendResult</param>
</member>
<member name="M:Fusion.NetworkRunner.IsPlayerValid(Fusion.PlayerRef)">
<summary>
Checks if the provided player is valid in the current simulation.
</summary>
<param name="player">The player reference to be validated.</param>
<returns>Returns true if the player is valid, false otherwise.</returns>
</member>
<member name="M:Fusion.NetworkRunner.GetPlayerConnectionToken(Fusion.PlayerRef)">
<summary>
Returns a copy of the Connection Token used by a Player when connecting to this Server.
Only available on Server. It will return null if running on a Client or the Connection token is missing
</summary>
<param name="player">PlayerRef to check for a Connection Token</param>
<returns>Copy of the Connection Token</returns>
</member>
<member name="M:Fusion.NetworkRunner.GetPlayerConnectionType(Fusion.PlayerRef)">
<summary>
Return the <see cref="T:Fusion.ConnectionType"/> with a Remote <see cref="T:Fusion.PlayerRef"/>.
Valid only when invoked from a Server (<see cref="P:Fusion.NetworkRunner.IsServer"/>)
</summary>
<param name="player">Remote Player to check the <see cref="T:Fusion.ConnectionType"/></param>
<returns><see cref="T:Fusion.ConnectionType"/> with a <see cref="T:Fusion.PlayerRef"/></returns>
</member>
<member name="M:Fusion.NetworkRunner.GetAllBehaviours(System.Type)">
<summary>
Returns an array of all <see cref="T:Fusion.SimulationBehaviour"/> instances registered with this <see cref="T:Fusion.NetworkRunner"/>.
</summary>
<param name="type">The type of the behaviours to be returned.</param>
<returns>An array of <see cref="T:Fusion.SimulationBehaviour"/> instances of the specified type.</returns>
</member>
<member name="M:Fusion.NetworkRunner.TryGetBehaviourStats(System.Collections.Generic.List{System.ValueTuple{System.Type,Fusion.BehaviourStats}})">
<summary>
Populate the provided list with all registered behaviours and their BehaviourStats.
</summary>
<param name="result">The list to be populated</param>
<returns>Returns true if at least one item is added to the list</returns>
</member>
<member name="M:Fusion.NetworkRunner.AddCallbacks(Fusion.INetworkRunnerCallbacks[])">
<summary>
Register an <see cref="T:Fusion.INetworkRunnerCallbacks"/> instance for callbacks from this <see cref="T:Fusion.NetworkRunner"/>.
</summary>
<param name="callbacks">Callbacks to register</param>
</member>
<member name="M:Fusion.NetworkRunner.RemoveCallbacks(Fusion.INetworkRunnerCallbacks[])">
<summary>
Unregister an <see cref="T:Fusion.INetworkRunnerCallbacks"/> instance for callbacks from this <see cref="T:Fusion.NetworkRunner"/>.
</summary>
<param name="callbacks">Callbacks to unregister</param>
</member>
<member name="M:Fusion.NetworkRunner.RenderInternal">
<summary>
This method is meant to be called by <see cref="T:Fusion.INetworkRunnerUpdater"/>.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.SetMasterClient(Fusion.PlayerRef)">
<summary>
Promote a player to be the new master client. Only the master client is able to call this method
</summary>
<param name="player">The player to be promoted to master client</param>
</member>
<member name="M:Fusion.NetworkRunner.UpdateInternal(System.Double)">
<summary>
This method is meant to be called by <see cref="T:Fusion.INetworkRunnerUpdater"/>.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.RegisterNetworkCallbacks">
<summary>
Search on the runner object for instances of <see cref="T:Fusion.INetworkRunnerCallbacks"/> and register them for callbacks on this <see cref="T:Fusion.NetworkRunner"/>.
Disabled components are not registered.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.SendReliableDataToPlayer(Fusion.PlayerRef,Fusion.Sockets.ReliableKey,System.Byte[])">
<summary>
Sends a reliable data buffer to a target player.
</summary>
<param name="player">The player who should receive the buffer.</param>
<param name="key">The key associated with the reliable data.</param>
<param name="data">The data buffer to be sent.</param>
</member>
<member name="M:Fusion.NetworkRunner.SendReliableDataToServer(Fusion.Sockets.ReliableKey,System.Byte[])">
<summary>
Sends a reliable data buffer to the server.
</summary>
<param name="key">The key associated with the reliable data.</param>
<param name="data">The data buffer to be sent.</param>
<remarks>
If the runner is a client, the data is sent to the server (connection index 0) with the player's index.
If the runner is a server, the data is sent via the simulation callbacks.
</remarks>
</member>
<member name="M:Fusion.NetworkRunner.SetPlayerAlwaysInterested(Fusion.PlayerRef,Fusion.NetworkObject,System.Boolean)">
<summary>
Flags this player as always interested in this object. Means it does not have to be in a players area of interest to be replicated. Only the NetworkObject State Authority can set interest.
</summary>
<param name="player">The player</param>
<param name="networkObject">The object</param>
<param name="alwaysInterested">If he's always interested, or not.</param>
</member>
<member name="M:Fusion.NetworkRunner.GetInputForPlayer``1(Fusion.PlayerRef)">
<summary>
Returns the <see cref="T:Fusion.NetworkInput"/> data from player, converted to the indicated <see cref="T:Fusion.INetworkInput"/>.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.GetRawInputForPlayer(Fusion.PlayerRef)">
<summary>
Returns the unconverted unsafe <see cref="T:Fusion.NetworkInput"/> for the indicated player.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.TryGetInputForPlayer``1(Fusion.PlayerRef,``0@)">
<summary>
Outputs the <see cref="T:Fusion.NetworkInput"/> from player, translated to the indicated <see cref="T:Fusion.INetworkInput"/>.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.FindObject(Fusion.NetworkId)">
<summary>
Get the <see cref="T:Fusion.NetworkObject"/> instance for this <see cref="T:Fusion.NetworkRunner"/> from a <see cref="T:Fusion.NetworkId"/>.
</summary>
<param name="networkId">NetworkID to look forward</param>
<returns>null if object cannot be found.</returns>
</member>
<member name="M:Fusion.NetworkRunner.TryFindObject(Fusion.NetworkId,Fusion.NetworkObject@)">
<summary>
Get the <see cref="T:Fusion.NetworkObject"/> instance for this <see cref="T:Fusion.NetworkRunner"/> from a <see cref="T:Fusion.NetworkId"/>.
</summary>
<param name="objectId">Object NetworkID to look forward</param>
<param name="networkObject">NetworkObject reference, if found</param>
<returns>True if object was found.</returns>
</member>
<member name="M:Fusion.NetworkRunner.TryFindSceneObject(Fusion.NetworkObjectTypeId,Fusion.NetworkObject@)">
<summary>
Try to find an Network Scene Object based on its TypeId.
</summary>
<param name="networkObjectTypeId">Object NetworkType ID to look forward</param>
<param name="networkObject">Scene NetworkObject reference, if found</param>
<returns>True if object was found.</returns>
</member>
<member name="M:Fusion.NetworkRunner.TryFindBehaviour(Fusion.NetworkBehaviourId,Fusion.NetworkBehaviour@)">
<summary>
Get the <see cref="T:Fusion.NetworkBehaviour"/> instance for this <see cref="T:Fusion.NetworkRunner"/> from a <see cref="T:Fusion.NetworkBehaviourId"/>.
</summary>
<param name="behaviourId">NetworkBehaviourId to look forward</param>
<param name="behaviour">NetworkBehaviour reference, if found</param>
<returns>True if object was found.</returns>
</member>
<member name="M:Fusion.NetworkRunner.TryFindBehaviour``1(Fusion.NetworkBehaviourId,``0@)">
<summary>
Try to find a <see cref="T:Fusion.NetworkBehaviour"/> with the provided NetworkBehaviourId.
</summary>
<param name="id">The NetworkBehaviourId to search for</param>
<param name="behaviour">The behaviour found</param>
<typeparam name="T">A <see cref="T:Fusion.NetworkBehaviour"/> type</typeparam>
<returns>Returns true if the behaviour was found and it is alive. False otherwise</returns>
</member>
<member name="M:Fusion.NetworkRunner.TryGetNetworkedBehaviourFromNetworkedObjectRef``1(Fusion.NetworkId)">
<summary>
Tries to return the first instance of T found on the root of a <see cref="T:Fusion.NetworkObject"/>.
</summary>
<typeparam name="T">The type of the component to search for</typeparam>
<param name="networkId">NetworkId of the <see cref="T:Fusion.NetworkObject"/> to search for</param>
<returns>Returns the found component. Null if the <see cref="T:Fusion.NetworkObject"/> cannot be found, or if T cannot be found on the GameObject.</returns>
</member>
<member name="M:Fusion.NetworkRunner.TryGetObjectRefFromNetworkedBehaviour(Fusion.NetworkBehaviour)">
<summary>
Tries to return the behaviour <see cref="T:Fusion.NetworkId"/>.
</summary>
<param name="behaviour">NetworkBehaviour to get the <see cref="T:Fusion.NetworkId"/> from</param>
<returns>Returns the <see cref="T:Fusion.NetworkId"/> of the provided behaviour. Returns default if the behaviour is not alive or the <see cref="T:Fusion.NetworkObject"/> that has this behaviour is not valid.</returns>
</member>
<member name="M:Fusion.NetworkRunner.TryGetNetworkedBehaviourId(Fusion.NetworkBehaviour)">
<summary>
Tries to return a <see cref="T:Fusion.NetworkBehaviourId"/> for the <see cref="T:Fusion.NetworkBehaviour"/> provided.
</summary>
<param name="behaviour">NetworkBehaviour to get the <see cref="T:Fusion.NetworkBehaviourId"/> from</param>
<returns>Returns a <see cref="T:Fusion.NetworkBehaviourId"/> to the provided behaviour. Returns default if the behaviour is not alive or the <see cref="T:Fusion.NetworkObject"/> that has this behaviour is not valid.</returns>
</member>
<member name="M:Fusion.NetworkRunner.SetIsSimulated(Fusion.NetworkObject,System.Boolean)">
<summary>
Sets the simulation state for this object, if it takes part in the NetworkFixedUpdate, etc.
</summary>
<param name="obj">the object to change state for</param>
<param name="simulate">true if it should be simulated, false if otherwise</param>
<returns>true if the state of the object changed, false otherwise</returns>
</member>
<member name="M:Fusion.NetworkRunner.SetAreaOfInterestGrid(System.Int32,System.Int32,System.Int32)">
<summary>
Set the area of interest grid dimensions
</summary>
<param name="x">X dimension</param>
<param name="y">Y dimension</param>
<param name="z">Z dimension</param>
<exception cref="T:System.Exception">Can't change grid size in shared mode</exception>
</member>
<member name="M:Fusion.NetworkRunner.SetAreaOfInterestCellSize(System.Int32)">
<summary>
Set the area of interest cell size
</summary>
<param name="size">Size of the cell</param>
<exception cref="T:System.Exception">Can't change cell size in shared mode</exception>
</member>
<member name="M:Fusion.NetworkRunner.GetAreaOfInterestGizmoData(System.Collections.Generic.List{System.ValueTuple{UnityEngine.Vector3,UnityEngine.Vector3,System.Int32,System.Int32}})">
<summary>
Populates the provided list with data about the current Area of Interest (AOI) cells.
Each element in the list represents one AOI cell.
</summary>
<param name="result">The list to be populated with AOI cell data. Each tuple in the list contains the center of the AOI cell, its size, the count of players in the cell, and the count of objects in the cell.</param>
</member>
<member name="M:Fusion.NetworkRunner.TryGetSimulationStats(Fusion.SimulationStats@)">
<summary>
Try to get <see cref="T:Fusion.SimulationStats"/> buffer from this NetworkRunner.
</summary>
<returns>Returns false if stats were not available.</returns>
</member>
<member name="M:Fusion.NetworkRunner.TryGetPlayerStats(Fusion.PlayerRef,Fusion.SimulationConnectionStats@)">
<summary>
Try to get <see cref="T:Fusion.SimulationConnectionStats"/> buffer for a player reference from this NetworkRunner.
</summary>
<returns>Returns false if stats were not available.</returns>
</member>
<member name="M:Fusion.NetworkRunner.TryGetObjectStats(Fusion.NetworkId,Fusion.NetworkObjectStats@)">
<summary>
Try to get <see cref="T:Fusion.NetworkObjectStats"/> buffer for a <see cref="T:Fusion.NetworkObject"/> from this NetworkRunner.
</summary>
<returns>Returns false if stats were not available.</returns>
</member>
<member name="M:Fusion.NetworkRunner.Exists(Fusion.NetworkObject)">
<summary>
Returns if the <see cref="T:Fusion.Simulation"/> contains a reference to a <see cref="T:Fusion.NetworkObject"/> in the current State.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.Exists(Fusion.NetworkId)">
<summary>
Returns if the <see cref="T:Fusion.Simulation"/> contains a <see cref="T:Fusion.NetworkObject"/> with given <paramref name="id"/> in the current State.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.Despawn(Fusion.NetworkObject)">
<summary>
Destroys a NetworkObject.
</summary>
<param name="networkObject">The NetworkObject to be destroyed.</param>
<remarks>
This method checks if the local simulation has state authority over the NetworkObject.
If it does, it checks if the NetworkObject exists and has state authority.
If these conditions are met, it destroys the NetworkObject.
</remarks>
<exception cref="T:System.InvalidOperationException">Thrown when the NetworkObject does not belong to this runner.</exception>
</member>
<member name="M:Fusion.NetworkRunner.GetSingleton``1">
<summary>
Ensures that a specific <see cref="T:Fusion.SimulationBehaviour"/> component exists on this <see cref="T:Fusion.NetworkRunner"/> gameobject.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.HasSingleton``1">
<summary>
Returns if a given <see cref="T:Fusion.SimulationBehaviour"/> is present in this <see cref="T:Fusion.NetworkRunner"/> gameobject.
</summary>
<returns>Returns true if the <see cref="T:Fusion.SimulationBehaviour"/> was found</returns>
</member>
<member name="M:Fusion.NetworkRunner.DestroySingleton``1">
<summary>
Removes a specific <see cref="T:Fusion.SimulationBehaviour"/> from this <see cref="T:Fusion.NetworkRunner"/> gameobject, if it exists.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.AddGlobal(Fusion.SimulationBehaviour)">
<summary>
Add and register a <see cref="T:Fusion.SimulationBehaviour"/> to this <see cref="T:Fusion.NetworkRunner"/>.
Note: It should NOT be a <see cref="T:Fusion.NetworkBehaviour"/>
</summary>
</member>
<member name="M:Fusion.NetworkRunner.RemoveGlobal(Fusion.SimulationBehaviour)">
<summary>
Removes a specific <see cref="T:Fusion.SimulationBehaviour"/> from this <see cref="T:Fusion.NetworkObject"/> gameobject, if it exists.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.RemoveSimulationBehavior(Fusion.SimulationBehaviour)">
<summary>
Unregister a <see cref="T:Fusion.SimulationBehaviour"/> instance from the <see cref="T:Fusion.SimulationBehaviourUpdater"/> callbacks.
Invalid if NetworkRunner has not been started and initialized.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.Attach(Fusion.NetworkObject,System.Nullable{Fusion.PlayerRef},System.Boolean,System.Nullable{System.Boolean})">
<summary>
Attaches a user-created network object to the network.
</summary>
<param name="networkObject">The network object to attach. Must not be null and must have a valid NetworkTypeId.</param>
<param name="inputAuthority">Optional PlayerRef. If assigned, it will be the default input authority for this object.</param>
<param name="allocate">Optional boolean. If true, the object will be allocated in memory and attached to the scene object. Default is true.</param>
<param name="masterClientObjectOverride">Optional boolean. If provided, it will override the master client object setting. Default is null.</param>
<exception cref="T:System.ArgumentNullException">Thrown when the provided network object is null.</exception>
<exception cref="T:System.ArgumentException">Thrown when the provided network object has an invalid NetworkTypeId.</exception>
</member>
<member name="M:Fusion.NetworkRunner.AddPlayerAreaOfInterest(Fusion.PlayerRef,UnityEngine.Vector3,System.Single)">
<summary>
Call this every FixedUpdateNetwork to add an area of interest for a player.
Should only be called from the Host/Server in Server client mode.
Should only be called for the local player in shared mode.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.ClearPlayerAreaOfInterest(Fusion.PlayerRef)">
<summary>
Clears the area of interest for a player. This can only be called from the server/host
</summary>
</member>
<member name="M:Fusion.NetworkRunner.IsInterestedIn(Fusion.NetworkObject,Fusion.PlayerRef)">
<summary>
Test if a player has Interest in a <see cref="T:Fusion.NetworkObject"/>.
</summary>
<returns>Returns null if interest cannot be determined (clients without State Authority are not aware of other client's Object Interest)</returns>
</member>
<member name="M:Fusion.NetworkRunner.SetBehaviourReplicateToAll(Fusion.NetworkBehaviour,System.Boolean)">
<summary>
Controls if a specific network behaviours state is replicated to all players or not
</summary>
<param name="behaviour">The behaviour to change replication status for</param>
<param name="replicate">true = replicate, false = don't replicate</param>
</member>
<member name="M:Fusion.NetworkRunner.SetBehaviourReplicateTo(Fusion.NetworkBehaviour,Fusion.PlayerRef,System.Boolean)">
<summary>
Controls if a specific network behaviours state is replicated to a player or not
</summary>
<param name="behaviour">The behaviour to change replication status for</param>
<param name="player">The player to change replication status for</param>
<param name="replicate">true = replicate, false = don't replicate</param>
</member>
<member name="M:Fusion.NetworkRunner.Attach(Fusion.NetworkObject[],System.Nullable{Fusion.PlayerRef},System.Boolean,System.Nullable{System.Boolean})">
<summary>
Attach and assign to this <see cref="T:Fusion.NetworkRunner"/> the <see cref="T:Fusion.NetworkObject"/> provided.
Used internally from the default implementation of <see cref="T:Fusion.INetworkSceneManager"/> to register scene objects.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.RegisterSceneObjects(Fusion.SceneRef,Fusion.NetworkObject[],Fusion.NetworkSceneLoadId)">
<summary>
Registers scene objects to the network.
</summary>
<param name="scene">The scene reference. Must be valid.</param>
<param name="objects">Array of NetworkObject instances to be registered. Must not be null.</param>
<param name="loadId">Optional NetworkSceneLoadId. Default value is used if not provided.</param>
<returns>The number of objects registered.</returns>
<exception cref="T:System.ArgumentException">Thrown when the provided scene is not valid.</exception>
<exception cref="T:System.ArgumentNullException">Thrown when the provided objects array is null.</exception>
</member>
<member name="M:Fusion.NetworkRunner.GetRpcTargetStatus(Fusion.PlayerRef)">
<summary>
Return the <see cref="T:Fusion.RpcTargetStatus"/> for a specific player.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.HasAnyActiveConnections">
<inheritdoc cref="M:Fusion.Simulation.HasAnyActiveConnections"/>
</member>
<member name="M:Fusion.NetworkRunner.GetInstancesEnumerator">
<summary>
Get enumerator for the collection of all <see cref="T:Fusion.NetworkRunner"/>s. Allows
to enumerate alloc-free.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.Instances">
<summary>
A list of all <see cref="T:Fusion.NetworkRunner"/>s.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.TryGetPhysicsInfo(Fusion.NetworkPhysicsInfo@)">
<summary>
Try to get the physics info.
</summary>
<param name="info">Network physics info</param>
<returns>True if the physics info exists, otherwise false.</returns>
</member>
<member name="M:Fusion.NetworkRunner.TrySetPhysicsInfo(Fusion.NetworkPhysicsInfo)">
<summary>
Try to set the physics info.
</summary>
<param name="info">Network physics info</param>
<returns>True if the physics info was set, otherwise false.</returns>
<exception cref="T:System.InvalidOperationException">Thrown if the runner does not have the scene authority.</exception>
</member>
<member name="F:Fusion.NetworkRunner._sceneInfoInitial">
<summary>
The initial scene info that was used to start the runner. It is consumed before the first tick by the scene authority.
The way this works is a bit complex. The order of things is as follows:
first update -> BeforeFirstTick -> OnServerStart / OnClientStart (master) -> ConsumeInitialSceneInfo
Only then the initial scene info is consumed and <see cref="M:Fusion.NetworkRunner.SceneInfoUpdate"/> is invoked. Any load/unload calls
before that get queued and executed after the initial scene info is consumed.
</summary>
</member>
<member name="F:Fusion.NetworkRunner._sceneInfoChangeSource">
<summary>
What caused the scene change. This is either set in <see cref="M:Fusion.NetworkRunner.ConsumeInitialSceneInfo(System.Boolean)"/> or when <see cref="P:Fusion.NetworkId.SceneInfo"/> object is updated remotely.
</summary>
</member>
<member name="F:Fusion.NetworkRunner._sceneInfoSnapshot">
<summary>
To pretend the scene info is available before the first tick (important for shared mode), we store the copy of initial scene info
here and modify it/return it instead of the state. After scene info has been consumed, this is no longer needed.
Last used scene info. If <see cref="F:Fusion.NetworkRunner._sceneInfoChangeSource"/> is set this is compared
to the current scene info and scenes are loaded/unloaded accordingly.
</summary>
</member>
<member name="F:Fusion.NetworkRunner._sceneLoadInitialTCS">
<summary>
Completed and nullified once the initial / first remote scene info is consumed. Loads/Unloads that happen before the first tick
depend on the result of this task.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsSceneAuthority">
<summary>
Is this runner responsible for scene management.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsSceneManagerBusy">
<summary>
Signals if the <see cref="T:Fusion.INetworkSceneManager"/> instance assigned to this <see cref="T:Fusion.NetworkRunner"/> is busy
with any scene loading operation.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.TryGetSceneInfo(Fusion.NetworkSceneInfo@)">
<summary>
Tries to get the <see cref="T:Fusion.NetworkSceneInfo"/> of this <see cref="T:Fusion.NetworkRunner"/>.
</summary>
<param name="sceneInfo">The result <see cref="T:Fusion.NetworkSceneInfo"/></param>
<returns>Returns true if it was able to get the scene info </returns>
</member>
<member name="M:Fusion.NetworkRunner.GetSceneRef(System.String)">
<inheritdoc cref="M:Fusion.INetworkSceneManager.GetSceneRef(System.String)"/>
</member>
<member name="M:Fusion.NetworkRunner.GetSceneRef(UnityEngine.GameObject)">
<inheritdoc cref="M:Fusion.INetworkSceneManager.GetSceneRef(UnityEngine.GameObject)"/>
</member>
<member name="M:Fusion.NetworkRunner.MoveGameObjectToScene(UnityEngine.GameObject,Fusion.SceneRef)">
<summary>
Moves a GameObject to a specific scene
</summary>
<param name="gameObj">Game Object to move</param>
<param name="sceneRef">Scene to move the object to</param>
<returns>True if the object was moved, false otherwise</returns>
</member>
<member name="M:Fusion.NetworkRunner.MoveGameObjectToSameScene(UnityEngine.GameObject,UnityEngine.GameObject)">
<summary>
Moves a GameObject to the same scene as another GameObject
</summary>
<param name="gameObj">Game Object to move</param>
<param name="other">Game Object to move to the same scene as</param>
<returns>True if the object was moved, false otherwise</returns>
</member>
<member name="M:Fusion.NetworkRunner.LoadScene(System.String,UnityEngine.SceneManagement.LoadSceneParameters,System.Boolean)">
<summary>
Loads a scene
</summary>
<param name="sceneName">Name of the scene to load</param>
<param name="parameters">Parameters to use when loading the scene</param>
<param name="setActiveOnLoad">Should the scene be set as active when loaded</param>
<returns>Scene Load operation</returns>
</member>
<member name="M:Fusion.NetworkRunner.LoadScene(System.String,UnityEngine.SceneManagement.LoadSceneMode,UnityEngine.SceneManagement.LocalPhysicsMode,System.Boolean)">
<summary>
Loads a scene
</summary>
<param name="sceneName">Name of the scene to load</param>
<param name="loadSceneMode">Scene load mode</param>
<param name="localPhysicsMode">Scene physics mode</param>
<param name="setActiveOnLoad">Should the scene be set as active when loaded</param>
<returns>Scene Load operation</returns>
</member>
<member name="M:Fusion.NetworkRunner.LoadScene(Fusion.SceneRef,UnityEngine.SceneManagement.LoadSceneMode,UnityEngine.SceneManagement.LocalPhysicsMode,System.Boolean)">
<summary>
Loads a scene
</summary>
<param name="sceneRef">Reference to the scene to load</param>
<param name="loadSceneMode">Scene load mode</param>
<param name="localPhysicsMode">Scene physics mode</param>
<param name="setActiveOnLoad">Should the scene be set as active when loaded</param>
<returns>Scene Load operation</returns>
</member>
<member name="M:Fusion.NetworkRunner.UnloadScene(System.String)">
<summary>
Unloads a scene
</summary>
<param name="sceneName">Name of the scene to unload</param>
<returns>Scene Unload operation</returns>
</member>
<member name="M:Fusion.NetworkRunner.LoadScene(Fusion.SceneRef,UnityEngine.SceneManagement.LoadSceneParameters,System.Boolean)">
<inheritdoc cref="M:Fusion.INetworkSceneManager.LoadScene(Fusion.SceneRef,Fusion.NetworkLoadSceneParameters)"/>
</member>
<member name="M:Fusion.NetworkRunner.UnloadScene(Fusion.SceneRef)">
<inheritdoc cref="M:Fusion.INetworkSceneManager.UnloadScene(Fusion.SceneRef)"/>
</member>
<member name="M:Fusion.NetworkRunner.InvokeSceneLoadStart(Fusion.SceneRef)">
<summary>
Invoke <see cref="M:Fusion.INetworkRunnerCallbacks.OnSceneLoadStart(Fusion.NetworkRunner)"/> on all implementations
</summary>
</member>
<member name="M:Fusion.NetworkRunner.InvokeSceneLoadDone(Fusion.SceneLoadDoneArgs@)">
<summary>
Invoke <see cref="M:Fusion.INetworkRunnerCallbacks.OnSceneLoadDone(Fusion.NetworkRunner)"/> on all implementations
</summary>
</member>
<member name="P:Fusion.NetworkRunner.SimulationUnityScene">
<summary>
The main scene of the <see cref="T:Fusion.NetworkRunner"/> or default if not running.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.GetRunnerForGameObject(UnityEngine.GameObject)">
<summary>
Get the <see cref="T:Fusion.NetworkRunner"/> a GameObject instance belongs to.
</summary>
<param name="gameObject">GameObject to check for a <see cref="T:Fusion.NetworkRunner"/></param>
<returns><see cref="T:Fusion.NetworkRunner"/> reference, or null if not found</returns>
</member>
<member name="M:Fusion.NetworkRunner.GetRunnerForScene(UnityEngine.SceneManagement.Scene)">
<summary>
Get the <see cref="T:Fusion.NetworkRunner"/> from a specific Scene
</summary>
<param name="scene">Scene to check for a <see cref="T:Fusion.NetworkRunner"/></param>
<returns><see cref="T:Fusion.NetworkRunner"/> reference, or null if not found</returns>
</member>
<member name="M:Fusion.NetworkRunner.GetPhysicsScene">
<summary>
Get the 3D Physics scene being used by this Runner.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.GetPhysicsScene2D">
<summary>
Get the 2D Physics scene being used by this Runner.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.InstantiateInRunnerScene(UnityEngine.GameObject,UnityEngine.Vector3,UnityEngine.Quaternion)">
<summary>
Instantiates an object in the scene of this runner
</summary>
</member>
<member name="M:Fusion.NetworkRunner.InstantiateInRunnerScene(UnityEngine.GameObject)">
<summary>
Instantiates an object in the scene of this runner
</summary>
</member>
<member name="M:Fusion.NetworkRunner.InstantiateInRunnerScene``1(``0)">
<summary>
Instantiates an object in the scene of this runner
</summary>
</member>
<member name="M:Fusion.NetworkRunner.InstantiateInRunnerScene``1(``0,UnityEngine.Vector3,UnityEngine.Quaternion)">
<summary>
Instantiates an object in the scene of this runner
</summary>
</member>
<member name="M:Fusion.NetworkRunner.EnsureRunnerSceneIsActive(UnityEngine.SceneManagement.Scene@)">
<summary>
Ensures the scene of this runner is active and returns the previous active scene
</summary>
<param name="previousActiveScene">Previous active scene</param>
<returns>True if the scene was changed, false otherwise</returns>
</member>
<member name="M:Fusion.NetworkRunner.MoveToRunnerScene``1(``0)">
<summary>
Moves an object to the scene of this runner
</summary>
<typeparam name="T"></typeparam>
<param name="component">Component of object to move</param>
</member>
<member name="M:Fusion.NetworkRunner.MoveToRunnerScene(UnityEngine.GameObject,System.Nullable{Fusion.SceneRef})">
<summary>
Moves an object to the scene of this runner
</summary>
<param name="instance">Object to move</param>
<param name="targetSceneRef">Target scene to move the object to</param>
</member>
<member name="M:Fusion.NetworkRunner.MakeDontDestroyOnLoad(UnityEngine.GameObject)">
<summary>
Mark an object as `DontDestroyOnLoad`.
</summary>
<param name="obj">Object to mark</param>
</member>
<member name="P:Fusion.NetworkRunner.CanSpawn">
<summary>
Signal if the Network Runner can spawn a <see cref="T:Fusion.NetworkObject"/>
</summary>
</member>
<member name="M:Fusion.NetworkRunner.SpawnInternal(Fusion.NetworkRunner.SpawnArgs@)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a <see cref="T:Fusion.NetworkPrefabId"/>
Note: position and rotation values are only used locally for the instantiation of the object, and are not inherently networked.
Use <see cref="T:Fusion.NetworkTransform"/> (or any <see cref="T:Fusion.NetworkTRSP"/> derived classes) to replicate the initial transform state.
</summary>
<returns><see cref="T:Fusion.NetworkObject"/> reference, or null if it was not able to spawn the object</returns>
</member>
<member name="M:Fusion.NetworkRunner.Spawn``1(``0,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a Component type that is part of a <see cref="T:Fusion.NetworkObject"/>
</summary>
<typeparam name="T">Must be a Type derived from <see cref="T:Fusion.SimulationBehaviour"/></typeparam>
<param name="prefab"><see cref="T:Fusion.SimulationBehaviour"/> used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<returns>T reference, or null if it was not able to spawn the object</returns>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>
</member>
<member name="M:Fusion.NetworkRunner.Spawn(UnityEngine.GameObject,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a GameObject. The supplied GameObject must have a <see cref="T:Fusion.NetworkObject"/> component.
</summary>
<param name="prefab">A GameObject with a <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>
<returns><see cref="T:Fusion.NetworkObject"/> reference, or null if it was not able to spawn the object</returns>
</member>
<member name="M:Fusion.NetworkRunner.Spawn(Fusion.NetworkObject,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a <see cref="T:Fusion.NetworkObject"/> prefab.
Note: position and rotation values are only used locally for the instantiation of the object, and are not inherently networked.
Use <see cref="T:Fusion.NetworkTransform"/> (or any custom class derived from NetworkTRSP) to replicate the initial transform state.
</summary>
<param name="prefab">Prefab used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>
<returns><see cref="T:Fusion.NetworkObject"/> reference, or null if it was not able to spawn the object</returns>
</member>
<member name="M:Fusion.NetworkRunner.Spawn(Fusion.NetworkPrefabRef,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a <see cref="T:Fusion.NetworkPrefabRef"/>.
Note: position and rotation values are only used locally for the instantiation of the object, and are not inherently networked.
Use <see cref="T:Fusion.NetworkTransform"/> (or any custom class derived from NetworkTRSP) to replicate the initial transform state.
</summary>
<param name="prefabRef">Prefab Ref used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>
<returns><see cref="T:Fusion.NetworkObject"/> reference, or null if it was not able to spawn the object</returns>
</member>
<member name="M:Fusion.NetworkRunner.Spawn(Fusion.NetworkObjectGuid,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a <see cref="T:Fusion.NetworkObjectGuid"/>
Note: position and rotation values are only used locally for the instantiation of the object, and are not inherently networked.
Use <see cref="T:Fusion.NetworkTransform"/> (or any custom class derived from NetworkTRSP) to replicate the initial transform state.
</summary>
<param name="prefabGuid">Object Guid used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>
<returns><see cref="T:Fusion.NetworkObject"/> reference, or null if it was not able to spawn the object</returns>
</member>
<member name="M:Fusion.NetworkRunner.Spawn(Fusion.NetworkPrefabId,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a <see cref="T:Fusion.NetworkPrefabId"/>
Note: position and rotation values are only used locally for the instantiation of the object, and are not inherently networked.
Use <see cref="T:Fusion.NetworkTransform"/> (or any custom class derived from NetworkTRSP) to replicate the initial transform state.
</summary>
<param name="typeId">Prefab ID used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>
<returns><see cref="T:Fusion.NetworkObject"/> reference, or null if it was not able to spawn the object</returns>
</member>
<member name="M:Fusion.NetworkRunner.TrySpawn``1(``0,``0@,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a Component type that is part of a <see cref="T:Fusion.NetworkObject"/>
</summary>
<typeparam name="T">Must be a Type derived from <see cref="T:Fusion.SimulationBehaviour"/></typeparam>
<param name="prefab"><see cref="T:Fusion.SimulationBehaviour"/> used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<returns>T reference, or null if it was not able to spawn the object</returns>
<param name="obj">Spawned <see cref="T:Fusion.NetworkObject"/> reference</param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>
</member>
<member name="M:Fusion.NetworkRunner.TrySpawn(UnityEngine.GameObject,Fusion.NetworkObject@,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a GameObject. The supplied GameObject must have a <see cref="T:Fusion.NetworkObject"/> component.
</summary>
<param name="prefab">A GameObject with a <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>
<param name="obj">Spawned <see cref="T:Fusion.NetworkObject"/> reference</param>
<returns><see cref="T:Fusion.NetworkSpawnStatus"/> reference, or null if it was not able to spawn the object</returns>
</member>
<member name="M:Fusion.NetworkRunner.TrySpawn(Fusion.NetworkObject,Fusion.NetworkObject@,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a <see cref="T:Fusion.NetworkObject"/> prefab.
Note: position and rotation values are only used locally for the instantiation of the object, and are not inherently networked.
Use <see cref="T:Fusion.NetworkTransform"/> (or any custom class derived from NetworkTRSP) to replicate the initial transform state.
</summary>
<param name="prefab">Prefab used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>
<param name="obj">Spawned <see cref="T:Fusion.NetworkObject"/> reference</param>
<returns><see cref="T:Fusion.NetworkSpawnStatus"/> reference, or null if it was not able to spawn the object</returns>
</member>
<member name="M:Fusion.NetworkRunner.TrySpawn(Fusion.NetworkPrefabRef,Fusion.NetworkObject@,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a <see cref="T:Fusion.NetworkPrefabRef"/>.
Note: position and rotation values are only used locally for the instantiation of the object, and are not inherently networked.
Use <see cref="T:Fusion.NetworkTransform"/> (or any custom class derived from NetworkTRSP) to replicate the initial transform state.
</summary>
<param name="prefabRef">Prefab Ref used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>
<param name="obj">Spawned <see cref="T:Fusion.NetworkObject"/> reference</param>
<returns><see cref="T:Fusion.NetworkSpawnStatus"/> reference, or null if it was not able to spawn the object</returns>
</member>
<member name="M:Fusion.NetworkRunner.TrySpawn(Fusion.NetworkObjectGuid,Fusion.NetworkObject@,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a <see cref="T:Fusion.NetworkObjectGuid"/>
Note: position and rotation values are only used locally for the instantiation of the object, and are not inherently networked.
Use <see cref="T:Fusion.NetworkTransform"/> (or any custom class derived from NetworkTRSP) to replicate the initial transform state.
</summary>
<param name="prefabGuid">Object Guid used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>
<param name="obj">Spawned <see cref="T:Fusion.NetworkObject"/> reference</param>
<returns><see cref="T:Fusion.NetworkSpawnStatus"/> reference, or null if it was not able to spawn the object</returns>
</member>
<member name="M:Fusion.NetworkRunner.TrySpawn(Fusion.NetworkPrefabId,Fusion.NetworkObject@,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a <see cref="T:Fusion.NetworkPrefabId"/>
Note: position and rotation values are only used locally for the instantiation of the object, and are not inherently networked.
Use <see cref="T:Fusion.NetworkTransform"/> (or any custom class derived from NetworkTRSP) to replicate the initial transform state.
</summary>
<param name="typeId">Prefab ID used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>
<param name="obj">Spawned <see cref="T:Fusion.NetworkObject"/> reference</param>
<returns><see cref="T:Fusion.NetworkSpawnStatus"/> reference, or null if it was not able to spawn the object</returns>
</member>
<member name="M:Fusion.NetworkRunner.SpawnAsync``1(``0,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags,Fusion.NetworkObjectSpawnDelegate)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a Component type that is part of a <see cref="T:Fusion.NetworkObject"/>
</summary>
<typeparam name="T">Must be a Type derived from <see cref="T:Fusion.SimulationBehaviour"/></typeparam>
<param name="prefab"><see cref="T:Fusion.SimulationBehaviour"/> used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<returns>T reference, or null if it was not able to spawn the object</returns>
<param name="onCompleted">A callback to fire once the spawn is done.</param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>
</member>
<member name="M:Fusion.NetworkRunner.SpawnAsync(UnityEngine.GameObject,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags,Fusion.NetworkObjectSpawnDelegate)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a GameObject. The supplied GameObject must have a <see cref="T:Fusion.NetworkObject"/> component.
</summary>
<param name="prefab">A GameObject with a <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>,
<param name="onCompleted">A callback to fire once the spawn is done.</param>
</member>
<member name="M:Fusion.NetworkRunner.SpawnAsync(Fusion.NetworkObject,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags,Fusion.NetworkObjectSpawnDelegate)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a <see cref="T:Fusion.NetworkObject"/> prefab.
Note: position and rotation values are only used locally for the instantiation of the object, and are not inherently networked.
Use <see cref="T:Fusion.NetworkTransform"/> (or any custom class derived from NetworkTRSP) to replicate the initial transform state.
</summary>
<param name="prefab">Prefab used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>,
<param name="onCompleted">A callback to fire once the spawn is done.</param>
</member>
<member name="M:Fusion.NetworkRunner.SpawnAsync(Fusion.NetworkPrefabRef,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags,Fusion.NetworkObjectSpawnDelegate)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a <see cref="T:Fusion.NetworkPrefabRef"/>.
Note: position and rotation values are only used locally for the instantiation of the object, and are not inherently networked.
Use <see cref="T:Fusion.NetworkTransform"/> (or any custom class derived from NetworkTRSP) to replicate the initial transform state.
</summary>
<param name="prefabRef">Prefab Ref used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>,
<param name="onCompleted">A callback to fire once the spawn is done.</param>
</member>
<member name="M:Fusion.NetworkRunner.SpawnAsync(Fusion.NetworkObjectGuid,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags,Fusion.NetworkObjectSpawnDelegate)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a <see cref="T:Fusion.NetworkObjectGuid"/>
Note: position and rotation values are only used locally for the instantiation of the object, and are not inherently networked.
Use <see cref="T:Fusion.NetworkTransform"/> (or any custom class derived from NetworkTRSP) to replicate the initial transform state.
</summary>
<param name="prefabGuid">Object Guid used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>,
<param name="onCompleted">A callback to fire once the spawn is done.</param>
</member>
<member name="M:Fusion.NetworkRunner.SpawnAsync(Fusion.NetworkPrefabId,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags,Fusion.NetworkObjectSpawnDelegate)">
<summary>
Attempts to network instantiate a <see cref="T:Fusion.NetworkObject"/> using a <see cref="T:Fusion.NetworkPrefabId"/>
Note: position and rotation values are only used locally for the instantiation of the object, and are not inherently networked.
Use <see cref="T:Fusion.NetworkTransform"/> (or any custom class derived from NetworkTRSP) to replicate the initial transform state.
</summary>
<param name="typeId">Prefab ID used to spawn the <see cref="T:Fusion.NetworkObject"/></param>
<param name="position">Spawn Position</param>
<param name="rotation">Spawn Rotation</param>
<param name="inputAuthority">Player Input Authority</param>
<param name="onBeforeSpawned"><see cref="T:Fusion.NetworkRunner.OnBeforeSpawned"/> reference</param>
<param name="flags">Spawn flags</param>,
<param name="onCompleted">A callback to fire once the spawn is done.</param>
</member>
<member name="P:Fusion.NetworkRunner.IsCloudReady">
<summary>
Signal if the Local Peer is connected to Photon Cloud and is able to Create/Join Room but also receive Lobby Updates
</summary>
</member>
<member name="P:Fusion.NetworkRunner.UserId">
<summary>
Photon Client UserID
</summary>
<remarks>Returns null if Peer is not connected to Photon Cloud</remarks>
</member>
<member name="P:Fusion.NetworkRunner.AuthenticationValues">
<summary>
<see cref="P:Fusion.NetworkRunner.AuthenticationValues"/> used by this Runner to Authenticate the local peer.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.GameMode">
<summary>
Current Game Mode active on the Fusion Simulation
</summary>
</member>
<member name="P:Fusion.NetworkRunner.SessionInfo">
<summary>
Stores information about the current running session
</summary>
</member>
<member name="P:Fusion.NetworkRunner.LobbyInfo">
<summary>
Signal if the local peer is already inside a Lobby
</summary>
</member>
<member name="F:Fusion.NetworkRunner._alreadyInitialized">
<summary>
Signal if the runner was already initialized. Used to avoid recycling of NetworkRunners.
</summary>
</member>
<member name="P:Fusion.NetworkRunner.CurrentConnectionType">
<summary>
Check the current Connection Type with the Remote Server
</summary>
</member>
<member name="P:Fusion.NetworkRunner.NATType">
<summary>
Exposes the current NAT Type from the local Peer
</summary>
</member>
<member name="P:Fusion.NetworkRunner.IsSharedModeMasterClient">
<summary>
Signal if the Local Peer is in a Room and is the Room Master Client
</summary>
</member>
<member name="F:Fusion.NetworkRunner._startGameOperation">
<summary>
Completion Source for the startup Photon Cloud Operations
</summary>
</member>
<member name="F:Fusion.NetworkRunner._cloudServices">
<summary>
Responsible to manage the Photon Cloud related Services
</summary>
</member>
<member name="F:Fusion.NetworkRunner._cachedRegionSummary">
<summary>
The cached region summary for the local player. Initially empty but populated after the first connection.
</summary>
</member>
<member name="M:Fusion.NetworkRunner.JoinSessionLobby(Fusion.SessionLobby,System.String,Fusion.Photon.Realtime.AuthenticationValues,Fusion.Photon.Realtime.FusionAppSettings,System.Nullable{System.Boolean},System.Threading.CancellationToken,System.Boolean)">
<summary>
Join the Peer to a specific Lobby, either a prebuild or a custom one.
More about matchmaking:
https://doc.photonengine.com/en-us/fusion/current/manual/matchmaking
</summary>
<param name="sessionLobby">Lobby Type to Join</param>
<param name="lobbyID">Lobby ID</param>
<param name="authentication">Authentication Values used to authenticate this peer</param>
<param name="customAppSettings">Custom Photon Application Settings</param>
<param name="useDefaultCloudPorts">Signal if the LoadBalancingClient should use the Default or Alternative Ports</param>
<param name="cancellationToken">Optional Cancellation Token</param>
<param name="useCachedRegions">Signal if the cached regions ping should be used to speed up connection</param>
<returns>Async Task to Join a Session Lobby. Can be used to wait for the process to be finished.</returns>
</member>
<member name="M:Fusion.NetworkRunner.StartGame(Fusion.StartGameArgs)">
<summary>
Starts the local Fusion Runner and takes care of all major setup necessary
More about matchmaking:
https://doc.photonengine.com/en-us/fusion/current/manual/matchmaking
</summary>
<param name="args">Custom arguments used to setup the Fusion Simulation</param>
<returns>Task that can be awaited to chain actions</returns>
</member>
<member name="M:Fusion.NetworkRunner.ConnectToCloud(Fusion.Photon.Realtime.AuthenticationValues,Fusion.Photon.Realtime.FusionAppSettings,Fusion.CloudCommunicator,System.Threading.CancellationToken,System.Nullable{System.Boolean},System.Boolean)">
<summary>
Connect the local peer to Photon Cloud using an async process.
</summary>
<param name="authentication">Authentication Values used to authenticate this peer</param>
<param name="customAppSettings">Custom Photon Application Settings</param>
<param name="externalCommunicator">External Communicator that will be reused on restart</param>
<param name="externalCancellationToken">External CancellationToken</param>
<param name="useDefaultCloudPorts">Signal if the LoadBalancingClient should use the Default or Alternative Ports</param>
<param name="useCachedRegions">Signal if the cached regions ping should be used to speed up connection</param>
<returns>Async Task of the connect to Photon Cloud process. Can be used to wait for the process to be finished.</returns>
</member>
<member name="M:Fusion.NetworkRunner.DisconnectFromCloud">
<summary>
Disconnect the Peer from Photon Cloud
If the Cloud Services were not initialized, it just returns immediately
</summary>
<returns>Async Task of the disconnect from Photon Cloud process. Can be used to wait for the process to be finished.</returns>
</member>
<member name="M:Fusion.NetworkRunner.StartGameModeSinglePlayer(Fusion.StartGameArgs)">
<summary>
Start Fusion in Single Player Mode
</summary>
<param name="args">Initialization Arguments</param>
<returns>A running Task of the initialization process</returns>
</member>
<member name="M:Fusion.NetworkRunner.StartGameModeCloud(Fusion.StartGameArgs)">
<summary>
Start Fusion in one of the Cloud Game Modes
</summary>
<param name="args">Initialization Arguments</param>
<returns>A running Task of the initialization process</returns>
</member>
<member name="M:Fusion.NetworkRunner.ShutdownAndBuildResult(System.Exception)">
<summary>
Shutdown the Fusion Runner based on a arbitrary Exception
</summary>
<param name="e">Exception used as base for the Shutdown procedure</param>
<returns>Awaitable Task of the Shutdown procedure</returns>
</member>
<member name="M:Fusion.NetworkRunner.InvokeSessionListUpdated(System.Collections.Generic.List{Fusion.SessionInfo})">
<summary>
Signal an update on the list of <see cref="P:Fusion.NetworkRunner.SessionInfo"/>
</summary>
<param name="sessionList">New Session Info</param>
</member>
<member name="M:Fusion.NetworkRunner.InvokeCustomAuthenticationResponse(System.Collections.Generic.Dictionary{System.String,System.Object})">
<summary>
Signal an update on the list of <see cref="P:Fusion.NetworkRunner.SessionInfo"/>
</summary>
<param name="data">Custom Authentication Response</param>
</member>
<member name="T:Fusion.INetworkRunnerUpdater">
<summary>
Interface which defines the handlers for <see cref="T:Fusion.NetworkRunner"/> Updates. An implementation
is responsible for calling <see cref="M:Fusion.NetworkRunner.UpdateInternal(System.Double)"/> and <see cref="M:Fusion.NetworkRunner.RenderInternal"/>
periodically.
An instance of this interface can be passed to <see cref="M:Fusion.NetworkRunner.StartGame(Fusion.StartGameArgs)"/>
as the <see cref="F:Fusion.StartGameArgs.Updater"/>. By default (if <see cref="F:Fusion.StartGameArgs.Updater"/> == null)
Fusion will use <see cref="T:Fusion.NetworkRunnerUpdaterDefault"/>, which invokes <see cref="M:Fusion.NetworkRunner.UpdateInternal(System.Double)"/> before
script's Update and <see cref="M:Fusion.NetworkRunner.RenderInternal"/> before LateUpdate.
</summary>
</member>
<member name="M:Fusion.INetworkRunnerUpdater.Initialize(Fusion.NetworkRunner)">
<summary>
Called when the <see cref="T:Fusion.NetworkRunner"/> is started.
</summary>
<param name="runner">The <see cref="T:Fusion.NetworkRunner"/> instance.</param>
</member>
<member name="M:Fusion.INetworkRunnerUpdater.Shutdown(Fusion.NetworkRunner)">
<summary>
Called when the <see cref="T:Fusion.NetworkRunner"/> is stopped.
</summary>
<param name="runner">The <see cref="T:Fusion.NetworkRunner"/> instance.</param>
</member>
<member name="T:Fusion.NetworkDelegates">
<summary>
Network Runner Callbacks Delegates
</summary>
</member>
<member name="F:Fusion.NetworkDelegates.OnPlayerJoined">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnPlayerJoined(Fusion.NetworkRunner,Fusion.PlayerRef)"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnPlayerLeft">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnPlayerLeft(Fusion.NetworkRunner,Fusion.PlayerRef)"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnInput">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnInput(Fusion.NetworkRunner,Fusion.NetworkInput)"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnInputMissing">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnInputMissing(Fusion.NetworkRunner,Fusion.PlayerRef,Fusion.NetworkInput)"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnShutdown">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnShutdown(Fusion.NetworkRunner,Fusion.ShutdownReason)"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnConnectedToServer">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnConnectedToServer(Fusion.NetworkRunner)"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnDisconnectedFromServer">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnDisconnectedFromServer(Fusion.NetworkRunner,Fusion.Sockets.NetDisconnectReason)"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnSceneLoadDone">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnSceneLoadDone(Fusion.NetworkRunner)"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnSceneLoadStart">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnSceneLoadStart(Fusion.NetworkRunner)"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnConnectRequest">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnConnectRequest(Fusion.NetworkRunner,Fusion.NetworkRunnerCallbackArgs.ConnectRequest,System.Byte[])"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnConnectFailed">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnConnectFailed(Fusion.NetworkRunner,Fusion.Sockets.NetAddress,Fusion.Sockets.NetConnectFailedReason)"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnUserSimulationMessage">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnUserSimulationMessage(Fusion.NetworkRunner,Fusion.SimulationMessagePtr)"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnSessionListUpdated">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnSessionListUpdated(Fusion.NetworkRunner,System.Collections.Generic.List{Fusion.SessionInfo})"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnCustomAuthenticationResponse">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnCustomAuthenticationResponse(Fusion.NetworkRunner,System.Collections.Generic.Dictionary{System.String,System.Object})"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnHostMigration">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnHostMigration(Fusion.NetworkRunner,Fusion.HostMigrationToken)"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnReliableDataReceived">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnReliableDataReceived(Fusion.NetworkRunner,Fusion.PlayerRef,Fusion.Sockets.ReliableKey,System.ArraySegment{System.Byte})"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnReliableDataProgress">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnReliableDataProgress(Fusion.NetworkRunner,Fusion.PlayerRef,Fusion.Sockets.ReliableKey,System.Single)"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnObjectExitAOI">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnObjectExitAOI(Fusion.NetworkRunner,Fusion.NetworkObject,Fusion.PlayerRef)"/>
</member>
<member name="F:Fusion.NetworkDelegates.OnObjectEnterAOI">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnObjectEnterAOI(Fusion.NetworkRunner,Fusion.NetworkObject,Fusion.PlayerRef)"/>
</member>
<member name="T:Fusion.NetworkEvents">
<summary>
Companion component for <see cref="T:Fusion.NetworkRunner"/>. Exposes <see cref="T:Fusion.INetworkRunnerCallbacks"/> as UnityEvents,
which can be wired up to other components in the inspector.
</summary>
</member>
<member name="T:Fusion.NetworkEvents.InputEvent">
<summary>
UnityEvent for NetworkInput
</summary>
</member>
<member name="T:Fusion.NetworkEvents.InputPlayerEvent">
<summary>
UnityEvent for NetworkInput with PlayerRef
</summary>
</member>
<member name="T:Fusion.NetworkEvents.ConnectRequestEvent">
<summary>
UnityEvent for ConnectRequest
</summary>
</member>
<member name="T:Fusion.NetworkEvents.ConnectFailedEvent">
<summary>
UnityEvent for ConnectFailed
</summary>
</member>
<member name="T:Fusion.NetworkEvents.DisconnectFromServerEvent">
<summary>
UnityEvent for DisconnectFromServer
</summary>
</member>
<member name="T:Fusion.NetworkEvents.ShutdownEvent">
<summary>
UnityEvent for Shutdown
</summary>
</member>
<member name="T:Fusion.NetworkEvents.PlayerEvent">
<summary>
UnityEvent for PlayerRef
</summary>
</member>
<member name="T:Fusion.NetworkEvents.RunnerEvent">
<summary>
UnityEvent for NetworkRunner
</summary>
</member>
<member name="T:Fusion.NetworkEvents.SimulationMessageEvent">
<summary>
UnityEvent for SimulationMessage
</summary>
</member>
<member name="T:Fusion.NetworkEvents.SessionListUpdateEvent">
<summary>
UnityEvent for SessionInfo List
</summary>
</member>
<member name="T:Fusion.NetworkEvents.CustomAuthenticationResponse">
<summary>
UnityEvent for Custom Authentication
</summary>
</member>
<member name="T:Fusion.NetworkEvents.HostMigrationEvent">
<summary>
UnityEvent for HostMigration
</summary>
</member>
<member name="T:Fusion.NetworkEvents.ReliableDataEvent">
<summary>
UnityEvent for Reliable Data
</summary>
</member>
<member name="T:Fusion.NetworkEvents.ReliableProgressEvent">
<summary>
UnityEvent for Reliable Data Progress
</summary>
</member>
<member name="T:Fusion.NetworkEvents.ObjectEvent">
<summary>
UnityEvent for NetworkObject
</summary>
</member>
<member name="T:Fusion.NetworkEvents.ObjectPlayerEvent">
<summary>
UnityEvent for NetworkObject with PlayerRef
</summary>
</member>
<member name="F:Fusion.NetworkEvents.OnInput">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnInput(Fusion.NetworkRunner,Fusion.NetworkInput)"/>
</member>
<member name="F:Fusion.NetworkEvents.OnInputMissing">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnInputMissing(Fusion.NetworkRunner,Fusion.PlayerRef,Fusion.NetworkInput)"/>
</member>
<member name="F:Fusion.NetworkEvents.OnConnectedToServer">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnConnectedToServer(Fusion.NetworkRunner)"/>
</member>
<member name="F:Fusion.NetworkEvents.OnDisconnectedFromServer">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnDisconnectedFromServer(Fusion.NetworkRunner,Fusion.Sockets.NetDisconnectReason)"/>
</member>
<member name="F:Fusion.NetworkEvents.OnConnectRequest">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnConnectRequest(Fusion.NetworkRunner,Fusion.NetworkRunnerCallbackArgs.ConnectRequest,System.Byte[])"/>
</member>
<member name="F:Fusion.NetworkEvents.OnConnectFailed">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnConnectFailed(Fusion.NetworkRunner,Fusion.Sockets.NetAddress,Fusion.Sockets.NetConnectFailedReason)"/>
</member>
<member name="F:Fusion.NetworkEvents.PlayerJoined">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnPlayerJoined(Fusion.NetworkRunner,Fusion.PlayerRef)"/>
</member>
<member name="F:Fusion.NetworkEvents.PlayerLeft">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnPlayerLeft(Fusion.NetworkRunner,Fusion.PlayerRef)"/>
</member>
<member name="F:Fusion.NetworkEvents.OnSimulationMessage">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnUserSimulationMessage(Fusion.NetworkRunner,Fusion.SimulationMessagePtr)"/>
</member>
<member name="F:Fusion.NetworkEvents.OnShutdown">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnShutdown(Fusion.NetworkRunner,Fusion.ShutdownReason)"/>
</member>
<member name="F:Fusion.NetworkEvents.OnSessionListUpdate">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnSessionListUpdated(Fusion.NetworkRunner,System.Collections.Generic.List{Fusion.SessionInfo})"/>
</member>
<member name="F:Fusion.NetworkEvents.OnCustomAuthenticationResponse">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnCustomAuthenticationResponse(Fusion.NetworkRunner,System.Collections.Generic.Dictionary{System.String,System.Object})"/>
</member>
<member name="F:Fusion.NetworkEvents.OnHostMigration">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnHostMigration(Fusion.NetworkRunner,Fusion.HostMigrationToken)"/>
</member>
<member name="F:Fusion.NetworkEvents.OnSceneLoadDone">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnSceneLoadDone(Fusion.NetworkRunner)"/>
</member>
<member name="F:Fusion.NetworkEvents.OnSceneLoadStart">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnSceneLoadStart(Fusion.NetworkRunner)"/>
</member>
<member name="F:Fusion.NetworkEvents.OnReliableData">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnReliableDataReceived(Fusion.NetworkRunner,Fusion.PlayerRef,Fusion.Sockets.ReliableKey,System.ArraySegment{System.Byte})"/>
</member>
<member name="F:Fusion.NetworkEvents.OnReliableProgress">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnReliableDataProgress(Fusion.NetworkRunner,Fusion.PlayerRef,Fusion.Sockets.ReliableKey,System.Single)"/>
</member>
<member name="F:Fusion.NetworkEvents.OnObjectEnterAOI">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnObjectExitAOI(Fusion.NetworkRunner,Fusion.NetworkObject,Fusion.PlayerRef)"/>
</member>
<member name="F:Fusion.NetworkEvents.OnObjectExitAOI">
<inheritdoc cref="M:Fusion.INetworkRunnerCallbacks.OnObjectEnterAOI(Fusion.NetworkRunner,Fusion.NetworkObject,Fusion.PlayerRef)"/>
</member>
<member name="T:Fusion.NetworkProjectConfig">
<summary>
The core Fusion config file that is shared with all peers at startup.
</summary>
</member>
<member name="T:Fusion.NetworkProjectConfig.PeerModes">
<summary>
Options for running one or multiple peers in one Unity instance.
Multiple is useful for testing multiple players/clients inside of the Unity editor without needing to build executables.
Each peer is assigned its own independent physics scene and <see cref="T:Fusion.NetworkRunner"/> instance.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.PeerModes.Single">
<summary>
This is the normal use case, where every build and the editor run a single server, host or client peer.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.PeerModes.Multiple">
<summary>
This is the optional use case, which allows running multiple peers in the Unity editor, or in a build.
</summary>
</member>
<member name="T:Fusion.NetworkProjectConfig.ReplicationFeatures">
<summary>
<para>Eventual Consistency <see cref="T:Fusion.NetworkObject"/> state replication options.</para>
<para>Scheduling enables automatic prioritization of objects when culling occurs
(when Object's are not replicated due to exceeding per tick data limits, they increase in priority on the following Tick).</para>
<para>Interest Management enables NetworkObject Area Of Interest and Explicit Interest features.</para>
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.ReplicationFeatures.None">
<summary>
No special replication handling. This setting is ideal if your project never exceeds per tick data limits during gameplay.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.ReplicationFeatures.Scheduling">
<summary>
When changed Network Objects are not replicated by the server to a client due to culling (data per tick limit was reached)
the server increases the priority of that Network Object for the next outgoing Tick update to that client.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.ReplicationFeatures.SchedulingAndInterestManagement">
<summary>
In addition to scheduling, Interest Management features are also enabled (Area Of Interest and Explicit Interest).
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.DefaultResourceName">
<summary>
Default file name for the <see cref="T:Fusion.NetworkProjectConfig"/> asset
</summary>
</member>
<member name="P:Fusion.NetworkProjectConfig.Global">
<summary>
Reference for the default <see cref="T:Fusion.NetworkProjectConfig"/>. By default, loads a resource named "NetworkProjectConfig". This behaviour
can be changed with an attribute <see cref="T:Fusion.FusionGlobalScriptableObjectLoaderMethodAttribute"/>.
</summary>
</member>
<member name="M:Fusion.NetworkProjectConfig.UnloadGlobal">
<summary>
Unloads <see cref="P:Fusion.NetworkProjectConfig.Global"/>, if already loaded. If loading <see cref="P:Fusion.NetworkProjectConfig.Global"/> has faulted, resets the state
and next call to the <see cref="P:Fusion.NetworkProjectConfig.Global"/> accessor will attempt to load the config again.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.CurrentTypeId">
<summary>
Current <see cref="T:Fusion.NetworkProjectConfig"/> Type ID
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.CurrentVersion">
<summary>
Current <see cref="T:Fusion.NetworkProjectConfig"/> version
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.Version">
<summary>
Current <see cref="T:Fusion.NetworkProjectConfig"/> version
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.TypeId">
<summary>
Current <see cref="T:Fusion.NetworkProjectConfig"/> Type ID
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.PeerMode">
<summary>
Setting for whether multiple peers can run per Unity instance (typically to allow easy testing of multiple peers inside of the editor).
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.LagCompensation">
<summary>
Advanced lag compensation buffer settings.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.EnqueueIncompleteSynchronousSpawns">
<summary>
This flag changes the behaviour of <see cref="M:Fusion.NetworkRunner.Spawn``1(``0,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags)"/> to return null (instead of throwing an exception) and <see cref="M:Fusion.NetworkRunner.TrySpawn``1(``0,``0@,System.Nullable{UnityEngine.Vector3},System.Nullable{UnityEngine.Quaternion},System.Nullable{Fusion.PlayerRef},Fusion.NetworkRunner.OnBeforeSpawned,Fusion.NetworkSpawnFlags)"/>) to return <see cref="F:Fusion.NetworkSpawnStatus.Queued"/>
if Fusion was unable to load a prefab synchronously (e.g. because it was Addressable). Fusion will enqueue the spawn and attempt to perform it the next frame, until successful.
Useful for transition from Fusion 1.x.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.InvokeRenderInBatchMode">
<summary>
Signal if the <see cref="M:Fusion.SimulationBehaviour.Render"/> callbacks should be invoked in Batch Mode.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.NetworkIdIsObjectName">
<summary>
Signal if the <see cref="T:Fusion.NetworkId"/> of the <see cref="T:Fusion.NetworkObject"/> should be included on the name of the <see cref="T:UnityEngine.GameObject"/>.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.HideNetworkObjectInactivityGuard">
<summary>
Inactive <see cref="T:Fusion.NetworkObject"/> need special handling in case they get destroyed without ever being activated. This is achieved
with adding a nested GameObject called "NetworkObjectInactivityGuard" that tracks the OnDestroy message. <see cref="F:Fusion.NetworkProjectConfig.HideNetworkObjectInactivityGuard"/>
can be used to control whether these guards are visible in the hierarchy or not.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.PrefabTable">
<summary>
Reference to the <see cref="T:Fusion.NetworkPrefabTable"/> instance for this <see cref="T:Fusion.NetworkProjectConfig"/>.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.Simulation">
<summary>
Reference to <see cref="T:Fusion.SimulationConfig"/> settings for this <see cref="T:Fusion.NetworkProjectConfig"/>.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.TimeSynchronizationOverride">
<summary>
this can be used to override the time synchronization from code
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.Network">
<summary>
Reference to <see cref="T:Fusion.NetworkConfiguration"/> settings for this <see cref="T:Fusion.NetworkProjectConfig"/>.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.HostMigration">
<summary>
Reference to <see cref="F:Fusion.NetworkProjectConfig.HostMigration"/> settings for this <see cref="T:Fusion.NetworkProjectConfig"/>
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.EncryptionConfig">
<summary>
Reference to <see cref="F:Fusion.NetworkProjectConfig.EncryptionConfig"/> settings for this <see cref="T:Fusion.NetworkProjectConfig"/>
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.NetworkConditions">
<summary>
Settings for simulating network conditions of latency and loss.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.Heap">
<summary>
Heap Settings
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.AssembliesToWeave">
<summary>
Names of assemblies Fusion is going to weave. Not case sensitive.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.UseSerializableDictionary">
<summary>
Use Fusion.SerializableDictionary to store [Networked] dictionary properties initial value. If unchecked,
the weaver will emit System.Generic.Dictionary instead - a type that's not Unity-serializable, but custom
serializers (e.g. Odin) may support it.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.NullChecksForNetworkedProperties">
<summary>
If set, the weaver will add a check to all [Networked] properties on each <see cref="T:Fusion.NetworkBehaviour"/>
to verify if owing <see cref="T:Fusion.NetworkObject"/> has been attached to.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.CheckRpcAttributeUsage">
<summary>
If set, the weaver will check if <see cref="T:Fusion.RpcAttribute"/> is used in types that do not support it. This requires
all types to be scanned and can increase weaving duration.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfig.CheckNetworkedPropertiesBeingEmpty">
<summary>
If set, the weaver will check if <see cref="T:Fusion.NetworkedAttribute"/> properties getters and setters are empty.
</summary>
</member>
<member name="M:Fusion.NetworkProjectConfig.GetExecutionOrder(System.Type)">
<summary>
Get the execution order for a given type. If the type is registered, returns null.
</summary>
<param name="type">Type to check for the execution order.</param>
<returns>Execution order for the type, or null if not registered.</returns>
</member>
<member name="M:Fusion.NetworkProjectConfig.Copy">
<summary>
Make a copy of the <see cref="T:Fusion.NetworkProjectConfig"/>.
</summary>
</member>
<member name="M:Fusion.NetworkProjectConfig.ToString">
<summary>
ToString() implementation.
</summary>
</member>
<member name="P:Fusion.NetworkProjectConfig.FusionVersionInfo">
<summary>
Get the version information for the Fusion.Runntime.dll.
</summary>
</member>
<member name="M:Fusion.NetworkProjectConfig.Serialize(Fusion.NetworkProjectConfig)">
<summary>
Serialize a <see cref="T:Fusion.NetworkProjectConfig"/> into a JSON string.
</summary>
<param name="config">NetworkProjectConfig reference</param>
<returns>JSON String</returns>
</member>
<member name="M:Fusion.NetworkProjectConfig.Deserialize(System.String)">
<summary>
De-serialize a <see cref="T:Fusion.NetworkProjectConfig"/> from a JSON string (typically sent by the Room's Creator).
</summary>
<param name="data">JSON string of a serialized NetworkProjectConfig</param>
<returns>NetworkProjectConfig reference de-serialized from JSON string</returns>
</member>
<member name="M:Fusion.NetworkProjectConfig.SerializeMinimal(Fusion.NetworkProjectConfig)">
<summary>
Remove unnecessary data from serialized version of <see cref="T:Fusion.NetworkProjectConfig"/>.
</summary>
</member>
<member name="T:Fusion.NetworkProjectConfigAsset">
<summary>
Manages and references the current instance of <see cref="T:Fusion.NetworkProjectConfig"/>
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfigAsset.Config">
<summary>
The current <see cref="T:Fusion.NetworkProjectConfig"/> instance.
</summary>
</member>
<member name="P:Fusion.NetworkProjectConfigAsset.Global">
<summary>
The current <see cref="T:Fusion.NetworkProjectConfig"/> instance.
</summary>
</member>
<member name="M:Fusion.NetworkProjectConfigAsset.TryGetGlobal(Fusion.NetworkProjectConfigAsset@)">
<summary>
Try to get the current <see cref="T:Fusion.NetworkProjectConfig"/> instance.
</summary>
<param name="global"><see cref="T:Fusion.NetworkProjectConfig"/> instance if it exists, otherwise null.</param>
<returns>True if the <see cref="T:Fusion.NetworkProjectConfig"/> instance exists, otherwise false.</returns>
</member>
<member name="P:Fusion.NetworkProjectConfigAsset.IsGlobalLoaded">
<summary>
True if the <see cref="T:Fusion.NetworkProjectConfig"/> instance exists, otherwise false.
</summary>
</member>
<member name="M:Fusion.NetworkProjectConfigAsset.UnloadGlobal">
<summary>
Unload the current <see cref="T:Fusion.NetworkProjectConfig"/> instance.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfigAsset.Prefabs">
<summary>
An auto-generated list containing source information (e.g. Resource path, address, static reference) for all the prefabs that can be spawned, i.e. the ones with <see cref="T:Fusion.NetworkObject"/>
component and <see cref="P:Fusion.NetworkObject.IsSpawnable"/> enabled.
<br/>
Additional prefabs can registered at runtime with <see cref="M:Fusion.NetworkPrefabTable.TryAddSource(Fusion.INetworkPrefabSource,Fusion.NetworkPrefabId@)"/>.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfigAsset.PrefabOptions">
<summary>
Options for the <see cref="T:Fusion.NetworkPrefabTable"/>.
</summary>
</member>
<member name="T:Fusion.NetworkProjectConfigAsset.SerializableSimulationBehaviourMeta">
<summary>
An auto-generated list containing meta information about all the <see cref="T:Fusion.SimulationBehaviour"/>s in the project, e.g. execution order.
</summary>
</member>
<member name="F:Fusion.NetworkProjectConfigAsset.SerializableSimulationBehaviourMeta.Type">
<summary>The type of the <see cref="T:Fusion.SimulationBehaviour"/>.</summary>
</member>
<member name="F:Fusion.NetworkProjectConfigAsset.SerializableSimulationBehaviourMeta.ExecutionOrder">
<summary>The execution order of the <see cref="T:Fusion.SimulationBehaviour"/>.</summary>
</member>
<member name="F:Fusion.NetworkProjectConfigAsset.BehaviourMeta">
<summary>
An auto-generated list containing meta information about all the <see cref="T:Fusion.SimulationBehaviour"/>s in the project, e.g. execution order.
</summary>
</member>
<member name="T:Fusion.NetworkSpawnStatus">
<summary>
Network Spawn Status
</summary>
</member>
<member name="F:Fusion.NetworkSpawnStatus.Queued">
<summary>Spawn is queued and will be spawned when the prefab is loaded.</summary>
</member>
<member name="F:Fusion.NetworkSpawnStatus.Spawned">
<summary>Spawned successfully.</summary>
</member>
<member name="F:Fusion.NetworkSpawnStatus.FailedToLoadPrefabSynchronously">
<summary>Failed to Load Prefab Synchronously.</summary>
</member>
<member name="F:Fusion.NetworkSpawnStatus.FailedToCreateInstance">
<summary>Failed to create instance.</summary>
</member>
<member name="F:Fusion.NetworkSpawnStatus.FailedClientCantSpawn">
<summary>Failed to spawn because the client can't spawn.</summary>
</member>
<member name="F:Fusion.NetworkSpawnStatus.FailedLocalPlayerNotYetSet">
<summary>Failed to spawn because the local player is not yet set.</summary>
</member>
<member name="T:Fusion.NetworkSpawnFlags">
<summary>
Network Spawn Flags
</summary>
</member>
<member name="F:Fusion.NetworkSpawnFlags.DontDestroyOnLoad">
<summary>
Object get spawned as DontDestroyOnLoad on all clients.
</summary>
</member>
<member name="F:Fusion.NetworkSpawnFlags.SharedModeStateAuthMasterClient">
<summary>
In shared mode, override the state authority to <see cref="P:Fusion.PlayerRef.MasterClient"/>.
</summary>
</member>
<member name="F:Fusion.NetworkSpawnFlags.SharedModeStateAuthLocalPlayer">
<summary>
In shared mode, override the state authority to local player.
</summary>
</member>
<member name="T:Fusion.NetworkSpawnOp">
<summary>
Spawn Operation
</summary>
</member>
<member name="F:Fusion.NetworkSpawnOp.Runner">
<summary>Network Runner Reference</summary>
</member>
<member name="P:Fusion.NetworkSpawnOp.Object">
<summary>Get the spawned Network Object</summary>
</member>
<member name="P:Fusion.NetworkSpawnOp.Status">
<summary>Get the Spawn Operation Status</summary>
</member>
<member name="P:Fusion.NetworkSpawnOp.IsSpawned">
<summary>Returns true if the object has been spawned.</summary>
</member>
<member name="P:Fusion.NetworkSpawnOp.IsQueued">
<summary>Returns true if the object is still queued for spawning.</summary>
</member>
<member name="P:Fusion.NetworkSpawnOp.IsFailed">
<summary>Returns true if the object has failed to spawn.</summary>
</member>
<member name="M:Fusion.NetworkSpawnOp.GetAwaiter">
<summary>Get this Spawn Operation <see cref="T:Fusion.NetworkSpawnOp.Awaiter"/></summary>
</member>
<member name="T:Fusion.NetworkSpawnOp.Awaiter">
<summary>
Awaiter for <see cref="T:Fusion.NetworkSpawnOp"/>
</summary>
</member>
<member name="M:Fusion.NetworkSpawnOp.Awaiter.#ctor(Fusion.NetworkSpawnOp@)">
<summary>
Awaiter Constructor
</summary>
<param name="op">Spawn Operation</param>
</member>
<member name="P:Fusion.NetworkSpawnOp.Awaiter.IsCompleted">
<summary>Returns true if the Spawn Operation is completed</summary>
</member>
<member name="M:Fusion.NetworkSpawnOp.Awaiter.GetResult">
<summary>
Get the result of the Spawn Operation
</summary>
<returns>Spawned Network Object</returns>
<exception cref="T:Fusion.NetworkObjectSpawnException">Thrown if the Spawn Operation failed</exception>
</member>
<member name="M:Fusion.NetworkSpawnOp.Awaiter.OnCompleted(System.Action)">
<summary>
Awaiter OnCompleted Callback
</summary>
<param name="continuation">Continuation Action</param>
<exception cref="T:System.NotSupportedException">Thrown if the Spawn Operation is not supported</exception>
</member>
<member name="T:Fusion.NetworkObjectSpawnDelegate">
<summary>
Network Object Spawn Delegate
</summary>
</member>
<member name="T:Fusion.NetworkObjectSpawnException">
<summary>
Network Object Spawn Exception
</summary>
</member>
<member name="M:Fusion.NetworkObjectSpawnException.#ctor(Fusion.NetworkSpawnStatus,System.Nullable{Fusion.NetworkObjectTypeId})">
<summary>
Network Object Spawn Exception Constructor
</summary>
<param name="status">Network Spawn Status</param>
<param name="id">Network Object Type Id</param>
</member>
<member name="P:Fusion.NetworkObjectSpawnException.TypeId">
<summary>Network Object Type Id</summary>
</member>
<member name="P:Fusion.NetworkObjectSpawnException.Status">
<summary>Network Spawn Status</summary>
</member>
<member name="P:Fusion.NetworkObjectSpawnException.Message">
<summary>Exception Message</summary>
</member>
<member name="T:Fusion.NetworkRunnerCallbackArgs">
<summary>
Stores data types used on the <see cref="T:Fusion.INetworkRunnerCallbacks"/> interface
</summary>
</member>
<member name="T:Fusion.NetworkRunnerCallbackArgs.ConnectRequest">
<summary>
Data holder of a Connection Request from a remote client
</summary>
</member>
<member name="P:Fusion.NetworkRunnerCallbackArgs.ConnectRequest.RemoteAddress">
<summary>
Address of the remote client
</summary>
</member>
<member name="M:Fusion.NetworkRunnerCallbackArgs.ConnectRequest.Accept">
<summary>
Accepts the Request
</summary>
</member>
<member name="M:Fusion.NetworkRunnerCallbackArgs.ConnectRequest.Refuse">
<summary>
Refuses the Request
</summary>
</member>
<member name="M:Fusion.NetworkRunnerCallbackArgs.ConnectRequest.Waiting">
<summary>
Refuses the Request
</summary>
</member>
<member name="T:Fusion.ShutdownReason">
<summary>
Describes a list of Reason why the Fusion Runner was Shutdown
</summary>
</member>
<member name="F:Fusion.ShutdownReason.Ok">
<summary>
OK Reason means Fusion was Shutdown by request
</summary>
</member>
<member name="F:Fusion.ShutdownReason.Error">
<summary>
Shutdown was caused by some internal error
</summary>
</member>
<member name="F:Fusion.ShutdownReason.IncompatibleConfiguration">
<summary>
Raised when the peer tries to Join a Room with a mismatching type between ClientServer Mode and Shared Mode.
</summary>
</member>
<member name="F:Fusion.ShutdownReason.ServerInRoom">
<summary>
Raised when the local peer started as a Server and tried to join a Room that already has a Server peer.
</summary>
</member>
<member name="F:Fusion.ShutdownReason.DisconnectedByPluginLogic">
<summary>
Raised when the Peer is disconnected or kicked by a Plugin Logic.
</summary>
</member>
<member name="F:Fusion.ShutdownReason.GameClosed">
<summary>
Raised when the Game the Peer is trying to Join is Closed
</summary>
</member>
<member name="F:Fusion.ShutdownReason.GameNotFound">
<summary>
Raised when the Game the Peer is trying to Join does not exist
</summary>
</member>
<member name="F:Fusion.ShutdownReason.MaxCcuReached">
<summary>
Raised when all CCU available for the Photon Application are in use
</summary>
</member>
<member name="F:Fusion.ShutdownReason.InvalidRegion">
<summary>
Raised when the peer is trying to connect to an unavailable or non-existent Region
</summary>
</member>
<member name="F:Fusion.ShutdownReason.GameIdAlreadyExists">
<summary>
Raised when a Session with the same name was already created
</summary>
</member>
<member name="F:Fusion.ShutdownReason.GameIsFull">
<summary>
Raised when a peer is trying to join a Room with already the max capacity of players
</summary>
</member>
<member name="F:Fusion.ShutdownReason.InvalidAuthentication">
<summary>
Raised when the Authentication Values are invalid
</summary>
</member>
<member name="F:Fusion.ShutdownReason.CustomAuthenticationFailed">
<summary>
Raised when the Custom Authentication has failed for some other reason
</summary>
</member>
<member name="F:Fusion.ShutdownReason.AuthenticationTicketExpired">
<summary>
Raised when the Authentication Ticket has expired
</summary>
</member>
<member name="F:Fusion.ShutdownReason.PhotonCloudTimeout">
<summary>
Timeout on the Connection with the Photon Cloud
</summary>
</member>
<member name="F:Fusion.ShutdownReason.AlreadyRunning">
<summary>
Raised when Fusion is already running and the StartGame is invoked again
</summary>
</member>
<member name="F:Fusion.ShutdownReason.InvalidArguments">
<summary>
Raised when any of the StartGame arguments does not meet the requirements
</summary>
</member>
<member name="F:Fusion.ShutdownReason.HostMigration">
<summary>
Signal this Runner is shutting down because of a Host Migration is about to happen
</summary>
</member>
<member name="F:Fusion.ShutdownReason.ConnectionTimeout">
<summary>
Connection with a remote server failed by timeout
</summary>
</member>
<member name="F:Fusion.ShutdownReason.ConnectionRefused">
<summary>
Connection with a remote server failed because it was refused
</summary>
</member>
<member name="F:Fusion.ShutdownReason.OperationTimeout">
<summary>
The current operation has timed out
</summary>
</member>
<member name="F:Fusion.ShutdownReason.OperationCanceled">
<summary>
The current operation was canceled
</summary>
</member>
<member name="T:Fusion.INetworkRunnerCallbacks">
<summary>
Interface for <see cref="T:Fusion.NetworkRunner"/> callbacks.
Register a class/struct instance which implements this interface with <see cref="M:Fusion.NetworkRunner.AddCallbacks(Fusion.INetworkRunnerCallbacks[])"/>.
</summary>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnObjectExitAOI(Fusion.NetworkRunner,Fusion.NetworkObject,Fusion.PlayerRef)">
<summary>
Callback from a <see cref="T:Fusion.NetworkRunner"/> when a new <see cref="T:Fusion.NetworkObject"/> has exit the Area of Interest
</summary>
<param name="runner">NetworkRunner reference</param>
<param name="obj">NetworkObject reference</param>
<param name="player">PlayerRef reference</param>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnObjectEnterAOI(Fusion.NetworkRunner,Fusion.NetworkObject,Fusion.PlayerRef)">
<summary>
Callback from a <see cref="T:Fusion.NetworkRunner"/> when a new <see cref="T:Fusion.NetworkObject"/> has entered the Area of Interest
</summary>
<param name="runner">NetworkRunner reference</param>
<param name="obj">NetworkObject reference</param>
<param name="player">PlayerRef reference</param>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnPlayerJoined(Fusion.NetworkRunner,Fusion.PlayerRef)">
<summary>
Callback from a <see cref="T:Fusion.NetworkRunner"/> when a new player has joined.
</summary>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnPlayerLeft(Fusion.NetworkRunner,Fusion.PlayerRef)">
<summary>
Callback from a <see cref="T:Fusion.NetworkRunner"/> when a player has disconnected.
</summary>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnInput(Fusion.NetworkRunner,Fusion.NetworkInput)">
<summary>
Callback from <see cref="T:Fusion.NetworkRunner"/> that polls for user inputs.
The <see cref="T:Fusion.NetworkInput"/> that is supplied expects:
<code>
input.Set(new CustomINetworkInput() { /* your values */ });
</code>
</summary>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnInputMissing(Fusion.NetworkRunner,Fusion.PlayerRef,Fusion.NetworkInput)">
<summary>
Callback from <see cref="T:Fusion.NetworkRunner"/> when an input is missing.
</summary>
<param name="runner">NetworkRunner reference</param>
<param name="player">PlayerRef reference which the input is missing from</param>
<param name="input">NetworkInput reference which is missing</param>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnShutdown(Fusion.NetworkRunner,Fusion.ShutdownReason)">
<summary>
Called when the runner is shutdown
</summary>
<param name="runner">The runner being shutdown</param>
<param name="shutdownReason">Describes the reason Fusion was Shutdown</param>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnConnectedToServer(Fusion.NetworkRunner)">
<summary>
Callback when <see cref="T:Fusion.NetworkRunner"/> successfully connects to a server or host.
</summary>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnDisconnectedFromServer(Fusion.NetworkRunner,Fusion.Sockets.NetDisconnectReason)">
<summary>
Callback when <see cref="T:Fusion.NetworkRunner"/> disconnects from a server or host.
</summary>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnConnectRequest(Fusion.NetworkRunner,Fusion.NetworkRunnerCallbackArgs.ConnectRequest,System.Byte[])">
<summary>
Callback when <see cref="T:Fusion.NetworkRunner"/> receives a Connection Request from a Remote Client
</summary>
<param name="runner">Local NetworkRunner</param>
<param name="request">Request information</param>
<param name="token">Request Token</param>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnConnectFailed(Fusion.NetworkRunner,Fusion.Sockets.NetAddress,Fusion.Sockets.NetConnectFailedReason)">
<summary>
Callback when <see cref="T:Fusion.NetworkRunner"/> fails to connect to a server or host.
</summary>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnUserSimulationMessage(Fusion.NetworkRunner,Fusion.SimulationMessagePtr)">
<summary>
This callback is invoked when a manually dispatched simulation message is received from a remote peer
</summary>
<param name="runner">The runner this message is for</param>
<param name="message">The message pointer</param>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnSessionListUpdated(Fusion.NetworkRunner,System.Collections.Generic.List{Fusion.SessionInfo})">
<summary>
This callback is invoked when a new List of Sessions is received from Photon Cloud
</summary>
<param name="runner">The runner this object exists on</param>
<param name="sessionList">Updated list of Session</param>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnCustomAuthenticationResponse(Fusion.NetworkRunner,System.Collections.Generic.Dictionary{System.String,System.Object})">
<summary>
Callback is invoked when the Authentication procedure returns a response from the Authentication Server
</summary>
<param name="runner">The runner this object exists on</param>
<param name="data">Custom Authentication Reply Values</param>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnHostMigration(Fusion.NetworkRunner,Fusion.HostMigrationToken)">
<summary>
Callback is invoked when the Host Migration process has started
</summary>
<param name="runner">The runner this object exists on</param>
<param name="hostMigrationToken">Migration Token that stores all necessary information to restart the Fusion Runner</param>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnReliableDataReceived(Fusion.NetworkRunner,Fusion.PlayerRef,Fusion.Sockets.ReliableKey,System.ArraySegment{System.Byte})">
<summary>
Callback is invoked when a Reliable Data Stream has been received
</summary>
<param name="runner">NetworkRunner reference</param>
<param name="player">Which PlayerRef the stream was sent from</param>
<param name="key">ReliableKey reference that identifies the data stream</param>
<param name="data">Data received</param>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnReliableDataProgress(Fusion.NetworkRunner,Fusion.PlayerRef,Fusion.Sockets.ReliableKey,System.Single)">
<summary>
Callback is invoked when a Reliable Data Stream is being received, reporting its progress
</summary>
<param name="runner">NetworkRunner reference</param>
<param name="player">Which PlayerRef the stream is being sent from</param>
<param name="key">ReliableKey reference that identifies the data stream</param>
<param name="progress">Progress of the stream</param>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnSceneLoadDone(Fusion.NetworkRunner)">
<summary>
Callback is invoked when a Scene Load has finished
</summary>
<param name="runner">NetworkRunner reference</param>
</member>
<member name="M:Fusion.INetworkRunnerCallbacks.OnSceneLoadStart(Fusion.NetworkRunner)">
<summary>
Callback is invoked when a Scene Load has started
</summary>
<param name="runner">NetworkRunner reference</param>
</member>
<member name="T:Fusion.NetworkRunnerUpdaterDefault">
<summary>
Default implementation of <see cref="T:Fusion.INetworkRunnerUpdater"/> that uses the Unity PlayerLoop.
</summary>
</member>
<member name="F:Fusion.NetworkRunnerUpdaterDefault.UpdateSettings">
<summary>
Default settings for the NetworkRunner Update Loop.
</summary>
</member>
<member name="F:Fusion.NetworkRunnerUpdaterDefault.RenderSettings">
<summary>
Default settings for the NetworkRunner Render Loop.
</summary>
</member>
<member name="M:Fusion.NetworkRunnerUpdaterDefault.RegisterInPlayerLoop(Fusion.NetworkRunnerUpdaterDefaultInvokeSettings,Fusion.NetworkRunnerUpdaterDefaultInvokeSettings)">
<summary>
Registers in the PlayerLoop.
</summary>
<param name="updateSettings">Update settings.</param>
<param name="renderSettings">Render settings.</param>
<returns>True if registered, false if already registered with the same settings.</returns>
</member>
<member name="M:Fusion.NetworkRunnerUpdaterDefault.UnregisterFromPlayerLoop">
<summary>
Unregisters from the PlayerLoop.
</summary>
<returns>True if unregistered, false if not registered.</returns>
</member>
<member name="M:Fusion.NetworkRunnerUpdaterDefault.InvokeUpdate">
<summary>
Invokes <see cref="M:Fusion.NetworkRunner.UpdateInternal(System.Double)"/> for all the runners
and stores them for upcoming <see cref="M:Fusion.NetworkRunner.RenderInternal"/>.
</summary>
</member>
<member name="M:Fusion.NetworkRunnerUpdaterDefault.InvokeRender">
<summary>
Invokes <see cref="M:Fusion.NetworkRunner.RenderInternal"/> for all the runners
that have been updated with the last <see cref="M:Fusion.NetworkRunnerUpdaterDefault.InvokeUpdate"/>.
</summary>
</member>
<member name="T:Fusion.NetworkRunnerUpdaterDefault.NetworkRunnerUpdate">
<summary>
Used to invoke <see cref="M:Fusion.NetworkRunner.UpdateInternal(System.Double)"/> in the PlayerLoop.
</summary>
</member>
<member name="T:Fusion.NetworkRunnerUpdaterDefault.NetworkRunnerRender">
<summary>
Used to invoke <see cref="M:Fusion.NetworkRunner.RenderInternal"/> in the PlayerLoop.
</summary>
</member>
<member name="T:Fusion.NetworkRunnerUpdaterDefaultInvokeSettings">
<summary>
Settings for the <see cref="T:Fusion.NetworkRunnerUpdaterDefault"/>.
</summary>
</member>
<member name="F:Fusion.NetworkRunnerUpdaterDefaultInvokeSettings.ReferencePlayerLoopSystem">
<summary>
Reference to the PlayerLoopSystem to add the NetworkRunner to.
</summary>
</member>
<member name="F:Fusion.NetworkRunnerUpdaterDefaultInvokeSettings.AddMode">
<summary>
Add mode for the PlayerLoopSystem.
</summary>
</member>
<member name="M:Fusion.NetworkRunnerUpdaterDefaultInvokeSettings.Equals(Fusion.NetworkRunnerUpdaterDefaultInvokeSettings)">
<summary>
Checks if the settings are equal.
</summary>
<param name="other">Settings to check for equality.</param>
<returns>True if equal, false otherwise.</returns>
</member>
<member name="M:Fusion.NetworkRunnerUpdaterDefaultInvokeSettings.Equals(System.Object)">
<summary>
Checks if the settings are equal.
</summary>
<param name="obj">Settings to check for equality.</param>
<returns>True if equal, false otherwise.</returns>
</member>
<member name="M:Fusion.NetworkRunnerUpdaterDefaultInvokeSettings.GetHashCode">
<summary>
Gets the hash code of the settings.
</summary>
<returns>Hash code.</returns>
</member>
<member name="M:Fusion.NetworkRunnerUpdaterDefaultInvokeSettings.ToString">
<summary>
Returns a string representation of the settings.
</summary>
<returns>String representation.</returns>
</member>
<member name="M:Fusion.NetworkRunnerUpdaterDefaultInvokeSettings.op_Equality(Fusion.NetworkRunnerUpdaterDefaultInvokeSettings,Fusion.NetworkRunnerUpdaterDefaultInvokeSettings)">
<summary>
Checks if the settings are equal.
</summary>
<param name="left">Settings to check for equality.</param>
<param name="right">Settings to check for equality.</param>
<returns>True if equal, false otherwise.</returns>
</member>
<member name="M:Fusion.NetworkRunnerUpdaterDefaultInvokeSettings.op_Inequality(Fusion.NetworkRunnerUpdaterDefaultInvokeSettings,Fusion.NetworkRunnerUpdaterDefaultInvokeSettings)">
<summary>
Checks if the settings are not equal.
</summary>
<param name="left">Settings to check for equality.</param>
<param name="right">Settings to check for equality.</param>
<returns>True if not equal, false otherwise.</returns>
</member>
<member name="T:Fusion.GameMode">
<summary>
Fusion Game Mode.
Used to select how the local simulation will act.
</summary>
</member>
<member name="F:Fusion.GameMode.Single">
<summary>
Single Player Mode: it works very similar to <see cref="F:Fusion.GameMode.Host"/> Mode, but don't accept any connections.
</summary>
</member>
<member name="F:Fusion.GameMode.Shared">
<summary>
Shared Mode: starts a Game Client, which will connect to a Game Server running in the Photon Cloud using the Fusion Plugin.
</summary>
</member>
<member name="F:Fusion.GameMode.Server">
<summary>
Server Mode: starts a Dedicated Game Server with no local player.
</summary>
</member>
<member name="F:Fusion.GameMode.Host">
<summary>
Host Mode: starts a Game Server and allows a local player.
</summary>
</member>
<member name="F:Fusion.GameMode.Client">
<summary>
Client Mode: starts a Game Client, which will connect to a peer in either <see cref="F:Fusion.GameMode.Server"/> or <see cref="F:Fusion.GameMode.Host"/> Modes.
</summary>
</member>
<member name="F:Fusion.GameMode.AutoHostOrClient">
<summary>
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.
</summary>
</member>
<member name="T:Fusion.StartGameArgs">
<summary>
Fusion Start Arguments, used to configure the simulation mode and other settings
More about matchmaking:
https://doc.photonengine.com/en-us/fusion/current/manual/matchmaking
</summary>
</member>
<member name="F:Fusion.StartGameArgs.GameMode">
<summary>
<see cref="T:Fusion.GameMode"/> in which this peer will start
</summary>
</member>
<member name="F:Fusion.StartGameArgs.SessionName">
<summary>
Photon Cloud Session Name used either to Create or Join a Session.
Default: null (random session matching)
</summary>
</member>
<member name="F:Fusion.StartGameArgs.SessionNameGenerator">
<summary>
Used to generate a new Session Name when creating a Session.
Default: null (a random session name is generated based on a GUID)
</summary>
</member>
<member name="F:Fusion.StartGameArgs.Address">
<summary>
Peer Binding Address
Default: <see cref="M:Fusion.Sockets.NetAddress.Any(System.UInt16)"/>
</summary>
</member>
<member name="F:Fusion.StartGameArgs.CustomPublicAddress">
<summary>
Custom Public Reflexive Address
Default: null
</summary>
</member>
<member name="F:Fusion.StartGameArgs.ObjectProvider">
<summary>
Object pool to use
Default: null
</summary>
</member>
<member name="F:Fusion.StartGameArgs.SceneManager">
<summary>
See <see cref="T:Fusion.INetworkSceneManager"/>.
Default: null
More about Scene Loading:
https://doc.photonengine.com/en-us/fusion/current/manual/scene-loading
</summary>
</member>
<member name="F:Fusion.StartGameArgs.Updater">
<summary>
See <see cref="T:Fusion.INetworkRunnerUpdater"/>
</summary>
</member>
<member name="F:Fusion.StartGameArgs.ObjectInitializer">
<summary>
See <see cref="T:Fusion.INetworkRunnerUpdater"/>
</summary>
</member>
<member name="F:Fusion.StartGameArgs.Config">
<summary>
Custom <see cref="T:Fusion.NetworkProjectConfig"/> used to start the simulation
Default: Global NetworkProjectConfig
More about NetworkProjectConfig:
https://doc.photonengine.com/en-us/fusion/current/manual/network-project-config
</summary>
</member>
<member name="F:Fusion.StartGameArgs.PlayerCount">
<summary>
Number of players allowed to connect to this peer, when running in Server/Host Mode
Default: DefaultPlayers from the Global NetworkProjectConfig
</summary>
</member>
<member name="F:Fusion.StartGameArgs.Scene">
<summary>
Scene that will be set as the starting Scene when running in Server/Host Mode
Default: null (no scene set)
</summary>
</member>
<member name="F:Fusion.StartGameArgs.OnGameStarted">
<summary>
Callback that is invoked when the Fusion has fully started
Default: null
</summary>
</member>
<member name="F:Fusion.StartGameArgs.DisableNATPunchthrough">
<summary>
Flag to disable the NAT Punchthrough implementation and connect only via Relay
Default: false
</summary>
</member>
<member name="F:Fusion.StartGameArgs.CustomCallbackInterfaces">
<summary>
User defined callback interfaces we will provide O(1) constant time lookup for
Default: null
</summary>
</member>
<member name="F:Fusion.StartGameArgs.ConnectionToken">
<summary>
Connection token sent by client to server. Not used in shared mode.
Default: null (empty connection token)
</summary>
</member>
<member name="F:Fusion.StartGameArgs.SessionProperties">
<summary>
Custom Session Properties.
This dictionary can be used to either setup the initial Session Properties when creating a Session
but also to set the matchmaking filters when joining a Random Session.
Default: null (empty custom properties)
</summary>
</member>
<member name="F:Fusion.StartGameArgs.IsOpen">
<summary>
Session should be created Open or Closed to accept joins
Default: true
</summary>
</member>
<member name="F:Fusion.StartGameArgs.IsVisible">
<summary>
Session should be Visible or not in the Session Lobby list
Default: true
</summary>
</member>
<member name="F:Fusion.StartGameArgs.MatchmakingMode">
<summary>
Session Join Matchmaking Mode when joining a Session.
For more information, check <see cref="T:Fusion.Photon.Realtime.MatchmakingMode"/>
Default: <see cref="F:Fusion.Photon.Realtime.MatchmakingMode.FillRoom"/>
</summary>
</member>
<member name="F:Fusion.StartGameArgs.UseDefaultPhotonCloudPorts">
<summary>
Signal if the internal Realtime Client should use the Default Photon ports to connect to the Photon Cloud.
By default, Fusion uses ports: 27000, 27001 and 27002.
Set this to True to use ports: 5058, 5055 and 5056.
<seealso href="http://doc.photonengine.com/fusion/current/connection-and-authentication/tcp-and-udp-port-numbers"/>
Default: false (uses ports 27000, 27001 and 27002)
</summary>
</member>
<member name="F:Fusion.StartGameArgs.CustomLobbyName">
<summary>
Session Custom Lobby to be published in
Default: null (default Lobby for each Session Type, LobbyClientServer or LobbyShared)
</summary>
</member>
<member name="F:Fusion.StartGameArgs.CustomSTUNServer">
<summary>
Specify a Custom STUN Server used to Resolve the peer Reflexive Addresses
Default: null (no custom STUN Server)
</summary>
</member>
<member name="F:Fusion.StartGameArgs.AuthValues">
<summary>
Custom Authentication Data
Default: null (default authentication values)
</summary>
</member>
<member name="F:Fusion.StartGameArgs.CustomPhotonAppSettings">
<summary>
Custom Photon Application Settings
Default: null (Global PhotonAppSettings)
</summary>
</member>
<member name="F:Fusion.StartGameArgs.EnableClientSessionCreation">
<summary>
Enables the Session creation when starting a Client with an specific Session Name
Default: false (clients *can not* create new Sessions)
</summary>
</member>
<member name="F:Fusion.StartGameArgs.HostMigrationToken">
<summary>
Host Migration Token used when restarting the Fusion Simulation
Default: null
</summary>
</member>
<member name="F:Fusion.StartGameArgs.HostMigrationResume">
<summary>
Callback invoked when the new Host is migrating from the old Host state
Default: null
</summary>
</member>
<member name="F:Fusion.StartGameArgs.StartGameCancellationToken">
<summary>
Optional CancellationToken used to cancel the NetworkRunner start up process and shutdown
Defaults: null
</summary>
</member>
<member name="F:Fusion.StartGameArgs.UseCachedRegions">
<summary>
Enables the usage of the previous cached regions pings. This speeds up the region ping process and the runner startup process.
Defaults: false
</summary>
</member>
<member name="M:Fusion.StartGameArgs.ToString">
<summary>
StartGameArgs ToString()
</summary>
</member>
<member name="T:Fusion.StartGameException">
<summary>
Describe an Exception that Occurred while starting the Fusion Simulation
</summary>
</member>
<member name="P:Fusion.StartGameException.ShutdownReason">
<summary>
ShutdownReason that caused this exception
</summary>
</member>
<member name="M:Fusion.StartGameException.ToString">
<summary>
StartGameException to String
</summary>
</member>
<member name="T:Fusion.StartGameResult">
<summary>
Represents the result of starting the Fusion Simulation
</summary>
</member>
<member name="P:Fusion.StartGameResult.Ok">
<summary>
Signal if the Start was OK
</summary>
</member>
<member name="P:Fusion.StartGameResult.ShutdownReason">
<summary>
Start Game Shutdown Reason
</summary>
</member>
<member name="P:Fusion.StartGameResult.ErrorMessage">
<summary>
Custom Error Message filled with data about the Shutdown.
Usually used to store custom data when the StartGame fails.
</summary>
</member>
<member name="P:Fusion.StartGameResult.StackTrace">
<summary>
Optional Exception StackTrace
</summary>
</member>
<member name="M:Fusion.StartGameResult.ToString">
<summary>
String representation of the StartGameResult
</summary>
</member>
<member name="M:Fusion.StartGameResult.BuildGameResultFromException(System.Exception)">
<summary>
Convert arbitrary Exceptions into a StartGameException to public use
</summary>
<param name="e">Exception to be converted</param>
<returns>Reference to a StartGameException holding a ShutdownReason</returns>
</member>
<member name="T:Fusion.INetworkSceneManager">
<summary>
Interface for a <see cref="T:Fusion.NetworkRunner"/> scene manager.
A scene manager is responsible for loading and unloading scenes
</summary>
</member>
<member name="M:Fusion.INetworkSceneManager.Initialize(Fusion.NetworkRunner)">
<summary>
Callback for initialization
</summary>
</member>
<member name="M:Fusion.INetworkSceneManager.Shutdown">
<summary>
Callback for shutdown and clean up
</summary>
</member>
<member name="P:Fusion.INetworkSceneManager.IsBusy">
<summary>
Signals if the <see cref="T:Fusion.INetworkSceneManager"/> instance is busy with any scene loading operations
</summary>
</member>
<member name="P:Fusion.INetworkSceneManager.MainRunnerScene">
<summary>
The main scene of the <see cref="T:Fusion.NetworkRunner"/>. Mostly used for Multipeer logic
</summary>
</member>
<member name="M:Fusion.INetworkSceneManager.IsRunnerScene(UnityEngine.SceneManagement.Scene)">
<summary>
Signals if the given scene is the main runner scene. Mostly used for Multipeer logic
</summary>
</member>
<member name="M:Fusion.INetworkSceneManager.TryGetPhysicsScene2D(UnityEngine.PhysicsScene2D@)">
<summary>
Tries to get the physics scene 2D.
</summary>
<returns>Returns true if the operation was successfully</returns>
</member>
<member name="M:Fusion.INetworkSceneManager.TryGetPhysicsScene3D(UnityEngine.PhysicsScene@)">
<summary>
Tries to get the physics scene 3D.
</summary>
<returns>Returns true if the operation was successfully</returns>
</member>
<member name="M:Fusion.INetworkSceneManager.MakeDontDestroyOnLoad(UnityEngine.GameObject)">
<summary>
Mark an object as `DontDestroyOnLoad`.
</summary>
</member>
<member name="M:Fusion.INetworkSceneManager.MoveGameObjectToScene(UnityEngine.GameObject,Fusion.SceneRef)">
<summary>
Move a <see cref="T:UnityEngine.GameObject"/> to a desired scene.
</summary>
<returns>Return true if the operation was successfully</returns>
</member>
<member name="M:Fusion.INetworkSceneManager.LoadScene(Fusion.SceneRef,Fusion.NetworkLoadSceneParameters)">
<summary>
Loads a given scene with the specified parameters.
</summary>
<returns>Returns a <see cref="T:Fusion.NetworkSceneAsyncOp"/> that can be waited</returns>
</member>
<member name="M:Fusion.INetworkSceneManager.UnloadScene(Fusion.SceneRef)">
<summary>
Unloads a given scene.
</summary>
<returns>Returns a <see cref="T:Fusion.NetworkSceneAsyncOp"/> that can be waited</returns>
</member>
<member name="M:Fusion.INetworkSceneManager.GetSceneRef(UnityEngine.GameObject)">
<summary>
Gets a <see cref="T:Fusion.SceneRef"/> for the scene that the given <see cref="T:UnityEngine.GameObject"/> belongs to.
</summary>
</member>
<member name="M:Fusion.INetworkSceneManager.GetSceneRef(System.String)">
<summary>
Gets a <see cref="T:Fusion.SceneRef"/> for the given scene name or path.
</summary>
</member>
<member name="M:Fusion.INetworkSceneManager.OnSceneInfoChanged(Fusion.NetworkSceneInfo,Fusion.NetworkSceneInfoChangeSource)">
<summary>
Implement this method and return true if you want to handle scene info changes manually. Return false if
the default scene info change handling should be done by the <see cref="T:Fusion.NetworkRunner"/> instead.
</summary>
<returns>Return true if a custom handling is provided, false otherwise to use the default one</returns>
</member>
<member name="T:Fusion.NetworkSceneAsyncOp">
<summary>
A wrapper for async scene operations.
</summary>
</member>
<member name="F:Fusion.NetworkSceneAsyncOp.SceneRef">
<summary>The scene reference of the operation</summary>
</member>
<member name="P:Fusion.NetworkSceneAsyncOp.IsValid">
<summary>Signals if the operation is valid</summary>
</member>
<member name="P:Fusion.NetworkSceneAsyncOp.IsDone">
<summary>Signals if the operation is done</summary>
</member>
<member name="P:Fusion.NetworkSceneAsyncOp.Error">
<summary>
Attached error to the operation
</summary>
</member>
<member name="M:Fusion.NetworkSceneAsyncOp.FromAsyncOperation(Fusion.SceneRef,UnityEngine.AsyncOperation)">
<summary>
Creates a <see cref="T:Fusion.NetworkSceneAsyncOp"/> from a <see cref="T:UnityEngine.AsyncOperation"/>
</summary>
<param name="sceneRef">Scene reference</param>
<param name="asyncOp">Async operation reference</param>
<returns>Returns a <see cref="T:Fusion.NetworkSceneAsyncOp"/> instance</returns>
<exception cref="T:System.ArgumentNullException">Thrown if <paramref name="asyncOp"/> is null</exception>
</member>
<member name="M:Fusion.NetworkSceneAsyncOp.FromCoroutine(Fusion.SceneRef,Fusion.ICoroutine)">
<summary>
Creates a <see cref="T:Fusion.NetworkSceneAsyncOp"/> from a <see cref="T:Fusion.ICoroutine"/>
</summary>
<param name="sceneRef">Scene reference</param>
<param name="coroutine">Coroutine reference</param>
<returns>Returns a <see cref="T:Fusion.NetworkSceneAsyncOp"/> instance</returns>
<exception cref="T:System.ArgumentNullException">Thrown if <paramref name="coroutine"/> is null</exception>
</member>
<member name="M:Fusion.NetworkSceneAsyncOp.FromTask(Fusion.SceneRef,System.Threading.Tasks.Task)">
<summary>
Creates a <see cref="T:Fusion.NetworkSceneAsyncOp"/> from a <see cref="T:System.Threading.Tasks.Task"/>
</summary>
<param name="sceneRef">Scene reference</param>
<param name="task">Task reference</param>
<returns>Returns a <see cref="T:Fusion.NetworkSceneAsyncOp"/> instance</returns>
<exception cref="T:System.ArgumentNullException">Thrown if <paramref name="task"/> is null</exception>
</member>
<member name="M:Fusion.NetworkSceneAsyncOp.FromError(Fusion.SceneRef,System.Exception)">
<summary>
Creates a <see cref="T:Fusion.NetworkSceneAsyncOp"/> from a <see cref="T:System.Exception"/>
</summary>
<param name="sceneRef">Scene reference</param>
<param name="error">Exception reference</param>
<returns>Returns a <see cref="T:Fusion.NetworkSceneAsyncOp"/> instance</returns>
<exception cref="T:System.ArgumentNullException">Thrown if <paramref name="error"/> is null</exception>
</member>
<member name="M:Fusion.NetworkSceneAsyncOp.FromCompleted(Fusion.SceneRef)">
<summary>
Creates a completed <see cref="T:Fusion.NetworkSceneAsyncOp"/>
</summary>
<param name="sceneRef">Scene reference</param>
<returns>Returns a <see cref="T:Fusion.NetworkSceneAsyncOp"/> instance</returns>
</member>
<member name="M:Fusion.NetworkSceneAsyncOp.AddOnCompleted(System.Action{Fusion.NetworkSceneAsyncOp})">
<summary>
Adds a callback to be called when the operation is completed
</summary>
<param name="action">The callback to be called</param>
</member>
<member name="M:Fusion.NetworkSceneAsyncOp.GetAwaiter">
<summary>
Gets the awaiter for the operation
</summary>
</member>
<member name="T:Fusion.NetworkSceneAsyncOp.Awaiter">
<summary>
Awaiter for <see cref="T:Fusion.NetworkSceneAsyncOp"/>
</summary>
</member>
<member name="M:Fusion.NetworkSceneAsyncOp.Awaiter.#ctor(Fusion.NetworkSceneAsyncOp@)">
<summary>
Creates a new <see cref="T:Fusion.NetworkSceneAsyncOp.Awaiter"/> instance
</summary>
<param name="op">The operation to await</param>
</member>
<member name="P:Fusion.NetworkSceneAsyncOp.Awaiter.IsCompleted">
<summary>
Signals if the operation is completed
</summary>
</member>
<member name="M:Fusion.NetworkSceneAsyncOp.Awaiter.GetResult">
<summary>
Gets the result of the operation
</summary>
</member>
<member name="M:Fusion.NetworkSceneAsyncOp.Awaiter.OnCompleted(System.Action)">
<summary>
Adds a callback to be called when the operation is completed
</summary>
<param name="continuation">The callback to be called</param>
</member>
<member name="T:Fusion.NetworkSceneLoadId">
<summary>
A unique identifier for a scene load operation.
</summary>
</member>
<member name="F:Fusion.NetworkSceneLoadId.Value">
<summary>
The value of the id
</summary>
</member>
<member name="M:Fusion.NetworkSceneLoadId.#ctor(System.Byte)">
<summary>
Creates a new <see cref="T:Fusion.NetworkSceneLoadId"/> with the given value
</summary>
<param name="value">The value of the id</param>
</member>
<member name="M:Fusion.NetworkSceneLoadId.Equals(Fusion.NetworkSceneLoadId)">
<summary>
Compares two <see cref="T:Fusion.NetworkSceneLoadId"/> for equality
</summary>
<param name="other">The other <see cref="T:Fusion.NetworkSceneLoadId"/></param>
<returns>Returns true if the two <see cref="T:Fusion.NetworkSceneLoadId"/> are equal</returns>
</member>
<member name="M:Fusion.NetworkSceneLoadId.Equals(System.Object)">
<summary>
Compares two <see cref="T:Fusion.NetworkSceneLoadId"/> for equality
</summary>
<param name="obj">The other object to check</param>
<returns>Returns true if the two <see cref="T:Fusion.NetworkSceneLoadId"/> are equal</returns>
</member>
<member name="M:Fusion.NetworkSceneLoadId.GetHashCode">
<summary>
Returns the hash code of the <see cref="T:Fusion.NetworkSceneLoadId"/>
</summary>
</member>
<member name="T:Fusion.NetworkLoadSceneParameters">
<summary>
Parameters for loading a scene
</summary>
</member>
<member name="F:Fusion.NetworkLoadSceneParameters.LoadId">
<summary>
The unique id of the scene load operation
</summary>
</member>
<member name="P:Fusion.NetworkLoadSceneParameters.LoadSceneMode">
<summary>
The <see cref="P:Fusion.NetworkLoadSceneParameters.LoadSceneMode"/> to use when loading the scene
</summary>
</member>
<member name="P:Fusion.NetworkLoadSceneParameters.LocalPhysicsMode">
<summary>
The <see cref="P:Fusion.NetworkLoadSceneParameters.LocalPhysicsMode"/> to use when loading the scene
</summary>
</member>
<member name="P:Fusion.NetworkLoadSceneParameters.LoadSceneParameters">
<summary>
The <see cref="P:Fusion.NetworkLoadSceneParameters.LoadSceneParameters"/> to use when loading the scene
</summary>
</member>
<member name="P:Fusion.NetworkLoadSceneParameters.IsActiveOnLoad">
<summary>
Signals if the scene should be active on load
</summary>
</member>
<member name="P:Fusion.NetworkLoadSceneParameters.IsSingleLoad">
<summary>
Signals if the scene should be single loaded
</summary>
</member>
<member name="P:Fusion.NetworkLoadSceneParameters.IsLocalPhysics2D">
<summary>
Signals if the scene should have local 2D physics
</summary>
</member>
<member name="P:Fusion.NetworkLoadSceneParameters.IsLocalPhysics3D">
<summary>
Signals if the scene should have local 3D physics
</summary>
</member>
<member name="M:Fusion.NetworkLoadSceneParameters.Equals(Fusion.NetworkLoadSceneParameters)">
<summary>
Compares two <see cref="T:Fusion.NetworkLoadSceneParameters"/> for equality
</summary>
<param name="other">The other <see cref="T:Fusion.NetworkLoadSceneParameters"/></param>
<returns>Returns true if the two <see cref="T:Fusion.NetworkLoadSceneParameters"/> are equal</returns>
</member>
<member name="M:Fusion.NetworkLoadSceneParameters.Equals(System.Object)">
<summary>
Compares two <see cref="T:Fusion.NetworkLoadSceneParameters"/> for equality
</summary>
<param name="obj">The other <see cref="T:Fusion.NetworkLoadSceneParameters"/></param>
<returns>Returns true if the two <see cref="T:Fusion.NetworkLoadSceneParameters"/> are equal</returns>
</member>
<member name="M:Fusion.NetworkLoadSceneParameters.GetHashCode">
<summary>
Returns the hash code of the <see cref="T:Fusion.NetworkLoadSceneParameters"/>
</summary>
</member>
<member name="M:Fusion.NetworkLoadSceneParameters.op_Equality(Fusion.NetworkLoadSceneParameters,Fusion.NetworkLoadSceneParameters)">
<summary>
Compares two <see cref="T:Fusion.NetworkLoadSceneParameters"/> for equality
</summary>
<param name="left">Left <see cref="T:Fusion.NetworkLoadSceneParameters"/></param>
<param name="right">Right <see cref="T:Fusion.NetworkLoadSceneParameters"/></param>
<returns>Returns true if the two <see cref="T:Fusion.NetworkLoadSceneParameters"/> are equal</returns>
</member>
<member name="M:Fusion.NetworkLoadSceneParameters.op_Inequality(Fusion.NetworkLoadSceneParameters,Fusion.NetworkLoadSceneParameters)">
<summary>
Compares two <see cref="T:Fusion.NetworkLoadSceneParameters"/> for inequality
</summary>
<param name="left">Left <see cref="T:Fusion.NetworkLoadSceneParameters"/></param>
<param name="right">Right <see cref="T:Fusion.NetworkLoadSceneParameters"/></param>
<returns>Returns true if the two <see cref="T:Fusion.NetworkLoadSceneParameters"/> are not equal</returns>
</member>
<member name="M:Fusion.NetworkLoadSceneParameters.ToString">
<summary>
Returns a string representation of the <see cref="T:Fusion.NetworkLoadSceneParameters"/>
</summary>
</member>
<member name="T:Fusion.NetworkSceneInfoDefaultFlags">
<summary>
Network Scene Info Default Flags
</summary>
</member>
<member name="F:Fusion.NetworkSceneInfoDefaultFlags.SceneCountMask">
<summary>The scene count mask</summary>
</member>
<member name="F:Fusion.NetworkSceneInfoDefaultFlags.ConterMask">
<summary>The counter mask</summary>
</member>
<member name="T:Fusion.NetworkSceneInfo">
<summary>
Can store up to 8 active scenes and allows for duplicates.
Each write increases <see cref="P:Fusion.NetworkSceneInfo.Version"/> which can be used to generate unique scene objects ids
for when a scene is supposed to be reloaded.
</summary>
</member>
<member name="F:Fusion.NetworkSceneInfo.WORD_COUNT">
<summary>The size of the struct in words </summary>
</member>
<member name="F:Fusion.NetworkSceneInfo.SIZE">
<summary>The size of the struct in bytes </summary>
</member>
<member name="F:Fusion.NetworkSceneInfo.MaxScenes">
<summary>Max number of scenes that can be stored</summary>
</member>
<member name="P:Fusion.NetworkSceneInfo.Scenes">
<summary>The scenes list</summary>
</member>
<member name="P:Fusion.NetworkSceneInfo.SceneParams">
<summary>The scenes load parameters list</summary>
</member>
<member name="M:Fusion.NetworkSceneInfo.IndexOf(Fusion.SceneRef,Fusion.NetworkLoadSceneParameters)">
<summary>
Gets the index of the given scene
</summary>
<param name="sceneRef">SceneRef to look for</param>
<param name="sceneParams">Scene parameters to look for</param>
<returns>Returns the index of the scene or -1 if not found</returns>
</member>
<member name="M:Fusion.NetworkSceneInfo.IndexOf(System.ValueTuple{Fusion.SceneRef,Fusion.NetworkLoadSceneParameters})">
<inheritdoc cref="M:Fusion.NetworkSceneInfo.IndexOf(Fusion.SceneRef,Fusion.NetworkLoadSceneParameters)"/>
</member>
<member name="P:Fusion.NetworkSceneInfo.SceneCount">
<summary>
Total Scene Count
</summary>
</member>
<member name="P:Fusion.NetworkSceneInfo.Version">
<summary>
Version number
</summary>
</member>
<member name="M:Fusion.NetworkSceneInfo.AddSceneRef(Fusion.SceneRef,UnityEngine.SceneManagement.LoadSceneMode,UnityEngine.SceneManagement.LocalPhysicsMode,System.Boolean)">
<summary>
Adds a scene to the list
</summary>
<param name="sceneRef">Scene to add</param>
<param name="loadSceneMode">Load scene mode</param>
<param name="localPhysicsMode">Local physics mode</param>
<param name="activeOnLoad">Signals if the scene should be active on load</param>
<returns>Returns the index of the scene or -1 if the scene could not be added</returns>
</member>
<member name="M:Fusion.NetworkSceneInfo.RemoveSceneRef(Fusion.SceneRef)">
<summary>
Removes a scene from the list
</summary>
<param name="sceneRef">Scene to remove</param>
<returns>Returns true if the scene was removed</returns>
</member>
<member name="M:Fusion.NetworkSceneInfo.ToString">
<summary>
String representation of the <see cref="T:Fusion.NetworkSceneInfo"/>
</summary>
</member>
<member name="M:Fusion.NetworkSceneInfo.Equals(Fusion.NetworkSceneInfo)">
<summary>
Compares two <see cref="T:Fusion.NetworkSceneInfo"/> for equality
</summary>
<param name="other">The other <see cref="T:Fusion.NetworkSceneInfo"/></param>
<returns>Returns true if the two <see cref="T:Fusion.NetworkSceneInfo"/> are equal</returns>
</member>
<member name="M:Fusion.NetworkSceneInfo.Equals(System.Object)">
<summary>
Compares two <see cref="T:Fusion.NetworkSceneInfo"/> for equality
</summary>
<param name="obj">The other <see cref="T:Fusion.NetworkSceneInfo"/></param>
<returns>Returns true if the two <see cref="T:Fusion.NetworkSceneInfo"/> are equal</returns>
</member>
<member name="M:Fusion.NetworkSceneInfo.GetHashCode">
<summary>
Get the hash code of the <see cref="T:Fusion.NetworkSceneInfo"/>
</summary>
<returns>Hast code of the <see cref="T:Fusion.NetworkSceneInfo"/></returns>
</member>
<member name="M:Fusion.NetworkSceneInfo.op_Implicit(Fusion.SceneRef)~Fusion.NetworkSceneInfo">
<summary>
Implicit conversion to <see cref="T:Fusion.NetworkSceneInfo"/>
</summary>
<param name="sceneRef">SceneRef to convert</param>
<returns>Returns a <see cref="T:Fusion.NetworkSceneInfo"/> instance</returns>
</member>
<member name="T:Fusion.NetworkSceneInfoChangeSource">
<summary>
What has contributed to the observed change in the scene info.
</summary>
</member>
<member name="F:Fusion.NetworkSceneInfoChangeSource.None">
<summary>
No change.
</summary>
</member>
<member name="F:Fusion.NetworkSceneInfoChangeSource.Initial">
<summary>
The initial local scene has changed.
</summary>
</member>
<member name="F:Fusion.NetworkSceneInfoChangeSource.Remote">
<summary>
The remove scene has changed.
</summary>
</member>
<member name="T:Fusion.NetworkSceneObjectId">
<summary>
A unique identifier for a scene object.
</summary>
</member>
<member name="F:Fusion.NetworkSceneObjectId.Scene">
<summary>
Identifies the scene in which the object is located.
</summary>
</member>
<member name="F:Fusion.NetworkSceneObjectId.ObjectId">
<summary>
Index of the object in the scene or any other form of unique identifier.
</summary>
</member>
<member name="F:Fusion.NetworkSceneObjectId.SceneLoadId">
<summary>
Unique identifier of a specific scene load. Needs to be used when loading multiple scenes with the same <see cref="T:Fusion.SceneRef"/> or reloading a scene.
For example, <see cref="T:Fusion.NetworkSceneInfo"/> increments its internal LoadId every time a new scene is added.
</summary>
</member>
<member name="P:Fusion.NetworkSceneObjectId.IsValid">
<summary>
Signal if the <see cref="T:Fusion.NetworkSceneObjectId"/> is valid.
</summary>
</member>
<member name="M:Fusion.NetworkSceneObjectId.ToString">
<summary>
String representation of the <see cref="T:Fusion.NetworkSceneObjectId"/>.
</summary>
</member>
<member name="M:Fusion.NetworkSceneObjectId.Equals(Fusion.NetworkSceneObjectId)">
<summary>
Check if two <see cref="T:Fusion.NetworkSceneObjectId"/> are equal.
</summary>
<param name="other">Another <see cref="T:Fusion.NetworkSceneObjectId"/> to check for equality</param>
<returns>Returns true if the two <see cref="T:Fusion.NetworkSceneObjectId"/> are equal</returns>
</member>
<member name="M:Fusion.NetworkSceneObjectId.Equals(System.Object)">
<summary>
Check if two <see cref="T:Fusion.NetworkSceneObjectId"/> are equal.
</summary>
<param name="obj">Another <see cref="T:Fusion.NetworkSceneObjectId"/> to check for equality</param>
<returns>Returns true if the two <see cref="T:Fusion.NetworkSceneObjectId"/> are equal</returns>
</member>
<member name="M:Fusion.NetworkSceneObjectId.GetHashCode">
<summary>
Get the hash code of the <see cref="T:Fusion.NetworkSceneObjectId"/>.
</summary>
</member>
<member name="T:Fusion.RenderTimeframe">
<summary>
Indicates which point in time (or "timeframe") networked properties should be rendered in.
</summary>
</member>
<member name="F:Fusion.RenderTimeframe.Auto">
<summary>
The timeframe will be chosen automatically.
</summary>
</member>
<member name="F:Fusion.RenderTimeframe.Local">
<summary>
The default timeframe for owned and predicted objects.
</summary>
</member>
<member name="F:Fusion.RenderTimeframe.Remote">
<summary>
The default timeframe for proxied objects.
</summary>
</member>
<member name="T:Fusion.RenderSource">
<summary>
Indicates how available snapshot data should be used to render networked properties
(in the chosen <see cref="T:Fusion.RenderTimeframe"/>).
</summary>
</member>
<member name="F:Fusion.RenderSource.Interpolated">
<summary>
The rendered value will come from interpolating the values at <see cref="F:Fusion.RenderSource.From"/>
and <see cref="F:Fusion.RenderSource.To"/> to the desired point in time.
</summary>
</member>
<member name="F:Fusion.RenderSource.From">
<summary>
The rendered value will come from the nearest available snapshot at or before the
point in time being rendered.
</summary>
</member>
<member name="F:Fusion.RenderSource.To">
<summary>
The rendered value will come from the nearest available snapshot ahead of the
point in time being rendered.
</summary>
</member>
<member name="F:Fusion.RenderSource.Latest">
<summary>
The rendered value will come from the latest snapshot.
</summary>
</member>
<member name="T:Fusion.RenderTimeline">
<summary>
Can be used to acquire interpolated data for different points in time.
</summary>
</member>
<member name="M:Fusion.RenderTimeline.GetRenderBuffers(Fusion.NetworkBehaviour,Fusion.NetworkBehaviourBuffer@,Fusion.NetworkBehaviourBuffer@,System.Single@)">
<summary>
Get the render data for the given <see cref="T:Fusion.NetworkBehaviour"/>.
</summary>
<param name="behaviour">Network behaviour to get render data for.</param>
<param name="from">Render data for the previous point in time.</param>
<param name="to">Render data for the next point in time.</param>
<param name="alpha">Interpolation alpha.</param>
</member>
<member name="T:Fusion.Timeline">
<summary>
Information used to observe an object in remote time.
</summary>
</member>
<member name="T:Fusion.Simulation">
<summary>
Main simulation class
</summary>
</member>
<member name="M:Fusion.Simulation.GetAreaOfInterestGizmoData(System.Collections.Generic.List{System.ValueTuple{UnityEngine.Vector3,UnityEngine.Vector3,System.Int32,System.Int32}})">
<summary>
Clears the provided list and populates it with data about the current Area of Interest (AOI) cells.
Each tuple in the list represents one AOI cell, containing its center, size, player count, and object count.
</summary>
<param name="result">The list to be populated with AOI cell data.</param>
</member>
<member name="M:Fusion.Simulation.GetObjectsAndPlayersInAreaOfInterestCell(System.Int32,System.Collections.Generic.List{Fusion.PlayerRef},System.Collections.Generic.List{Fusion.NetworkId})">
<summary>
Used by RunnerAOIGizmos component. Supplies data about current active AOI cells.
</summary>
</member>
<member name="T:Fusion.Simulation.AreaOfInterest">
<summary>
Area of Interest Definition
</summary>
</member>
<member name="F:Fusion.Simulation.AreaOfInterest.CELL_SIZE">
<summary>
Size of each cell in the AOI grid.
</summary>
</member>
<member name="M:Fusion.Simulation.AreaOfInterest.GetGridSize">
<summary>
Get the size of the AOI grid.
</summary>
<returns>The size of the AOI grid.</returns>
</member>
<member name="M:Fusion.Simulation.AreaOfInterest.GetCellSize">
<summary>
Get the size of each cell in the AOI grid.
</summary>
<returns>The size of each cell in the AOI grid.</returns>
</member>
<member name="M:Fusion.Simulation.AreaOfInterest.SphereToCells(UnityEngine.Vector3,System.Single,System.Collections.Generic.HashSet{System.Int32})">
<summary>
Convert a sphere into a set of AOI cells.
</summary>
<param name="position">Sphere center</param>
<param name="radius">Sphere radius</param>
<param name="cells">Resulting set of cells</param>
</member>
<member name="M:Fusion.Simulation.AreaOfInterest.ToCellCoords(UnityEngine.Vector3)">
<summary>
Convert a position into the respective cell coordinate.
</summary>
<param name="position">Position</param>
<returns>Cell coordinate</returns>
</member>
<member name="M:Fusion.Simulation.AreaOfInterest.ToCellCoords(System.Int32)">
<summary>
Converts a cell index into its corresponding cell coordinates.
</summary>
<param name="index">The index of the cell to be converted.</param>
<returns>A tuple containing the x, y, and z coordinates of the cell.</returns>
</member>
<member name="M:Fusion.Simulation.AreaOfInterest.ToCellCenter(System.Int32)">
<summary>
Convert a cell index into the respective cell center position.
</summary>
<param name="index">Cell index</param>
<returns>Cell center position</returns>
</member>
<member name="M:Fusion.Simulation.AreaOfInterest.ToCell(UnityEngine.Vector3)">
<summary>
Convert a position into the respective cell index.
</summary>
<param name="position">Position</param>
<returns>Cell index</returns>
</member>
<member name="M:Fusion.Simulation.AreaOfInterest.ToCell(System.Int32,System.Int32,System.Int32)">
<summary>
Convert a cell coordinate into the respective cell index.
</summary>
<param name="x">X coordinate</param>
<param name="y">Y coordinate</param>
<param name="z">Z coordinate</param>
<returns>Cell index</returns>
</member>
<member name="M:Fusion.Simulation.AreaOfInterest.ClampCellCoords(System.Int32,System.Int32,System.Int32)">
<summary>
Clamp cell coordinates to the valid range.
</summary>
<param name="x">X coordinate</param>
<param name="y">Y coordinate</param>
<param name="z">Z coordinate</param>
<returns>Clamped cell coordinates</returns>
</member>
<member name="P:Fusion.Simulation.LatestServerTick">
<summary>
latest tick on server we are aware of
</summary>
</member>
<member name="P:Fusion.Simulation.Client.LatestServerTick">
<summary>
latest tick on server we are aware of
</summary>
</member>
<member name="F:Fusion.Simulation._stats">
<summary>
Simulation Stats
</summary>
</member>
<member name="P:Fusion.Simulation.TickStride">
<summary>
How large the ticks the current simulation takes are
</summary>
</member>
<member name="P:Fusion.Simulation.TickRate">
<summary>
The current tick rate of the simulation
</summary>
</member>
<member name="P:Fusion.Simulation.TickDeltaDouble">
<summary>
The delta time of each tick as a double
</summary>
</member>
<member name="P:Fusion.Simulation.TickDeltaFloat">
<summary>
The delta time of each tick as a float
</summary>
</member>
<member name="P:Fusion.Simulation.SendRate">
<summary>
The packet send rate
</summary>
</member>
<member name="P:Fusion.Simulation.SendDelta">
<summary>
The packet send delta time
</summary>
</member>
<member name="P:Fusion.Simulation.DeltaTime">
<summary>
Gets the fixed tick time interval. Derived from the <see cref="F:Fusion.SimulationRuntimeConfig.TickRate"/>.
</summary>
</member>
<member name="P:Fusion.Simulation.IsShutdown">
<summary>
</summary>
</member>
<member name="P:Fusion.Simulation.LocalAlpha">
<summary>
</summary>
</member>
<member name="P:Fusion.Simulation.IsResimulation">
<summary>
Use inside of FixedUpdateNetwork to determine if the tick currently being simulated has previously been simulated locally.
Resimulation occurs in client prediction when new states arrive from the StateAuthority.
Networked objects are set to the most current authority state tick, and simulations are repeated from that tick to the local current tick.
</summary>
</member>
<member name="P:Fusion.Simulation.IsLastTick">
<summary>
Use in conjunction with IsResimulation/IsForward inside of FixedUpdateNetwork to determine if the current tick being simulated
is the last tick of the resimulation or forward phase of the simulation loop.
<para>
'Resimulation' describes simulating a tick that has been previously been simulated.<br></br>
'Forward' describes simulating a tick that is being simulated for the first time locally.<br></br>
'Prediction' describes simulating ticks higher than the most current known StateAuthority snapshot tick.
</para>
</summary>
</member>
<member name="P:Fusion.Simulation.IsFirstTick">
<summary>
Use in conjunction with IsResimulation/IsForward inside of FixedUpdateNetwork to determine if the current tick being simulated
is the first tick of the resimulation or forward phase of the simulation loop.
<para>
'Resimulation' describes simulating a tick that has been previously been simulated.<br></br>
'Forward' describes simulating a tick that is being simulated for the first time locally.<br></br>
'Prediction' describes simulating ticks higher than the most current known StateAuthority snapshot tick.
</para>
</summary>
</member>
<member name="P:Fusion.Simulation.IsForward">
<summary>
Use inside of FixedUpdateNetwork to determine if the tick currently being simulated has NOT previously been simulated locally.
</summary>
</member>
<member name="P:Fusion.Simulation.IsLocalPlayerFirstExecution">
<summary>
True if the current stage of the simulation loop is Forward. False during resimulations.
<para>
'Resimulation' describes simulating a tick that has been previously been simulated.<br></br>
'Forward' describes simulating a tick that is being simulated for the first time locally.<br></br>
'Prediction' describes simulating ticks higher than the most current known StateAuthority snapshot tick.
</para>
</summary>
</member>
<member name="P:Fusion.Simulation.Tick">
<summary>
The tick associated with the current state of networked objects, or the current simulation tick being processed (when evaluated during FixedUpdateNetwork).
</summary>
</member>
<member name="P:Fusion.Simulation.TickPrevious">
<summary>
The previous tick
</summary>
</member>
<member name="P:Fusion.Simulation.Time">
<summary>
The current simulation time in seconds
</summary>
</member>
<member name="P:Fusion.Simulation.InputCount">
<summary>
The current input collection size
</summary>
</member>
<member name="P:Fusion.Simulation.Topology">
<summary>
Indicates if a Server/Client or Shared Mode (relay server) topology is being used.
</summary>
</member>
<member name="P:Fusion.Simulation.Mode">
<summary>
Gets the <see cref="T:Fusion.SimulationModes"/> flags for The type of network peer this simulation represents.
</summary>
</member>
<member name="P:Fusion.Simulation.Stage">
<summary>
Gets the current <see cref="T:Fusion.SimulationStages"/> value.
</summary>
</member>
<member name="P:Fusion.Simulation.Config">
<summary>
The <see cref="T:Fusion.SimulationConfig"/> file used by this <see cref="T:Fusion.Simulation"/>.
</summary>
</member>
<member name="P:Fusion.Simulation.ProjectConfig">
<summary>
The <see cref="T:Fusion.NetworkProjectConfig"/> file used by this <see cref="T:Fusion.Simulation"/>.
</summary>
</member>
<member name="P:Fusion.Simulation.RemoteAlpha">
<summary>
Remote Interpolation Alpha
</summary>
</member>
<member name="P:Fusion.Simulation.RemoteTickPrevious">
<summary>
Remote previous Tick
</summary>
</member>
<member name="P:Fusion.Simulation.RemoteTick">
<summary>
Remote Tick
</summary>
</member>
<member name="P:Fusion.Simulation.IsClient">
<summary>
If this peer is a client. True for client peers in Server/Client topologies, and true for all peers in Shared Mode.
</summary>
</member>
<member name="P:Fusion.Simulation.IsServer">
<summary>
If this peer is the server. True for the Server or Host peer in Server/Client topologies, and always false for all peers in Shared Mode (the relay is the server).
</summary>
</member>
<member name="P:Fusion.Simulation.IsPlayer">
<summary>
True for any peer that represents a human player. This is true for all peers except a dedicated server.
</summary>
</member>
<member name="P:Fusion.Simulation.IsSinglePlayer">
<summary>
Indicates that this simulation is operating in Single Player mode, which is a Host that accepts no connections.
</summary>
</member>
<member name="P:Fusion.Simulation.IsMasterClient">
<summary>
Only valid in Shared Mode. Indicates if this peer is flagged as the MasterClient, which means it is default StateAuthority
</summary>
</member>
<member name="P:Fusion.Simulation.ActivePlayers">
<summary>
List of Active players in the Simulation
</summary>
</member>
<member name="P:Fusion.Simulation.IsRunning">
<summary>
Signal if the Simulation is currently running
</summary>
</member>
<member name="P:Fusion.Simulation.LocalAddress">
<summary>
Bound Address of the internal socket
</summary>
</member>
<member name="P:Fusion.Simulation.NetConfigPointer">
<summary>
Current <see cref="T:Fusion.Sockets.NetConfig"/>
</summary>
</member>
<member name="P:Fusion.Simulation.LocalPlayer">
<summary>
Get LocalPlayer PlayerRef
</summary>
</member>
<member name="M:Fusion.Simulation.AfterUpdate">
<summary>
Callback invoked After the Simulation Update
</summary>
</member>
<member name="M:Fusion.Simulation.NetworkConnected(Fusion.Sockets.NetConnection*)">
<summary>
Callback invoked on the Connected
</summary>
<param name="connection">Connection that was connected</param>
</member>
<member name="M:Fusion.Simulation.NetworkDisconnected(Fusion.Sockets.NetConnection*,Fusion.Sockets.NetDisconnectReason)">
<summary>
Callback invoked on the Disconnected
</summary>
<param name="connection">Connection that was disconnected</param>
<param name="reason">Reason for the disconnection</param>
</member>
<member name="M:Fusion.Simulation.NetworkReceiveDone">
<summary>
Callback invoked when the Network Receive is completed
</summary>
</member>
<member name="M:Fusion.Simulation.NoSimulation">
<summary>
Callback invoked when there is no simulation
</summary>
</member>
<member name="M:Fusion.Simulation.BeforeSimulation">
<summary>
Callback invoked before the Simulation Loop
</summary>
<returns>Total number of re-simulations</returns>
</member>
<member name="M:Fusion.Simulation.BeforeFirstTick">
<summary>
Callback invoked before the First Tick
</summary>
</member>
<member name="M:Fusion.Simulation.SetPlayerAlwaysInterested(Fusion.PlayerRef,Fusion.NetworkId,System.Boolean)">
<summary>
Add or remove specific player interest in a NetworkObject.
</summary>
</member>
<member name="M:Fusion.Simulation.TryGetHostPlayer(Fusion.PlayerRef@)">
<summary>
Try to get the Host Player
</summary>
<param name="player">Host Player</param>
<returns>True if the Host Player was found, false otherwise</returns>
</member>
<member name="M:Fusion.Simulation.IsInterestedIn(Fusion.NetworkObject,Fusion.PlayerRef)">
<summary>
Check if a NetworkObject is interested by a specific Player
</summary>
<param name="obj">NetworkObject to check</param>
<param name="player">Player to check</param>
<returns>True if the Player is interested in the NetworkObject, false otherwise</returns>
</member>
<member name="M:Fusion.Simulation.IsInputAuthority(Fusion.NetworkObject,Fusion.PlayerRef)">
<summary>
Check if a Player is the Input Authority over an NetworkObject
</summary>
<param name="networkObject">NetworkObject to check</param>
<param name="playerRef">Player to check</param>
<returns>True if the Player is the Input Authority over the NetworkObject, false otherwise</returns>
</member>
<member name="M:Fusion.Simulation.IsStateAuthority(Fusion.PlayerRef,Fusion.PlayerRef)">
<summary>
Check if a Player is the State Authority in relation to another Player
</summary>
<param name="stateSource">State Source Player</param>
<param name="playerRef">Player to check</param>
<returns>True if the Player is the State Authority, false otherwise</returns>
</member>
<member name="M:Fusion.Simulation.IsStateAuthority(Fusion.NetworkObject,Fusion.PlayerRef)">
<summary>
Check if a Player is the State Authority over a NetworkObject
</summary>
<param name="networkObject">NetworkObject to check</param>
<param name="playerRef">Player to check</param>
<returns>True if the Player is the State Authority, false otherwise</returns>
</member>
<member name="M:Fusion.Simulation.IsStateAuthority(Fusion.NetworkObjectMeta,Fusion.PlayerRef)">
<summary>
Check if a Player is the State Authority over a NetworkObject
</summary>
<param name="networkObject">NetworkObject to check</param>
<param name="playerRef">Player to check</param>
<returns>True if the Player is the State Authority, false otherwise</returns>
</member>
<member name="M:Fusion.Simulation.IsLocalSimulationStateOrInputSource(Fusion.NetworkObject)">
<summary>
Check if the Local Player is the State Authority or Input Authority over a NetworkObject
</summary>
<param name="obj">NetworkObject to check</param>
<returns>True if the Player is the State Authority or Input Authority, false otherwise</returns>
</member>
<member name="M:Fusion.Simulation.IsLocalSimulationInputAuthority(Fusion.NetworkObject)">
<summary>
Check if the Local Player is the Input Authority over a NetworkObject
</summary>
<param name="obj">NetworkObject to check</param>
<returns>True if the Player is the Input Authority, false otherwise</returns>
</member>
<member name="M:Fusion.Simulation.IsLocalSimulationStateAuthority(Fusion.NetworkObject)">
<summary>
Check if the Local Player is the State Authority over a NetworkObject
</summary>
<param name="obj">NetworkObject to check</param>
<returns>True if the Player is the State Authority, false otherwise</returns>
</member>
<member name="M:Fusion.Simulation.IsLocalSimulationStateAuthority(Fusion.NetworkId)">
<summary>
Check if a Player is the State Authority over a NetworkObject by NetworkId
</summary>
<param name="id">NetworkId of the NetworkObject to check</param>
<returns>True if the Player is the State Authority, false otherwise</returns>
</member>
<member name="M:Fusion.Simulation.GetInputAuthority(Fusion.NetworkObject)">
<summary>
Get the Input Authority PlayerRef for a NetworkObject
</summary>
<param name="networkObject">NetworkObject to check</param>
<returns>PlayerRef of the Input Authority for the NetworkObject</returns>
</member>
<member name="M:Fusion.Simulation.GetStateAuthority(Fusion.NetworkObject)">
<summary>
Get the State Authority PlayerRef for a NetworkObject
</summary>
<param name="networkObject">NetworkObject to check</param>
<returns>PlayerRef of the State Authority for the NetworkObject</returns>
</member>
<member name="M:Fusion.Simulation.GetPlayerConnectionToken(Fusion.PlayerRef)">
<summary>
Return a copy if a Player's Connection Token
</summary>
<param name="player">Player to check for the Connection Token</param>
<returns>Connection Token Copy</returns>
</member>
<member name="M:Fusion.Simulation.GetPlayerAddress(Fusion.PlayerRef)">
<summary>
Return the Address of a remote Player
</summary>
<param name="player">Player to check for the NetAddress</param>
<returns>NetAddress of a specific player</returns>
</member>
<member name="M:Fusion.Simulation.GetPlayerUniqueId(Fusion.PlayerRef)">
<summary>
Return the UniqueId as a long from a specific Player
</summary>
<param name="player">Player to check for the UniqueId</param>
<returns>UniqueId of a specific Player</returns>
</member>
<member name="M:Fusion.Simulation.GetInputForPlayer(Fusion.PlayerRef)">
<summary>
Get the Simulation Input for a specific Player
</summary>
<param name="player">Player to check for the Simulation Input</param>
<returns>Simulation Input for a specific Player</returns>
</member>
<member name="M:Fusion.Simulation.HasAnyActiveConnections">
<summary>
Signal if the Server has any Active Connection with any number of Clients.
</summary>
<returns>True, if at least one connection is active, false otherwise.</returns>
</member>
<member name="M:Fusion.Simulation.BeforeUpdate">
<summary>
Callback invoked before the Simulation Update
</summary>
</member>
<member name="M:Fusion.Simulation.AfterSimulation">
<summary>
Callback invoked after the Simulation Update
</summary>
</member>
<member name="M:Fusion.Simulation.Update(System.Double)">
<summary>
Forwards the Simulation based on the Delta Time
</summary>
<param name="dt">Delta Time used to forward the simulation</param>
<returns>How many Ticks executed on this Update</returns>
</member>
<member name="P:Fusion.Simulation.ObjectCount">
<summary>Returns the number of objects in the simulation.</summary>
</member>
<member name="P:Fusion.Simulation.Objects">
<summary> Returns a map of all objects in the simulation.</summary>
</member>
<member name="M:Fusion.Simulation.SendMessageInternal(Fusion.SimulationMessage*,Fusion.Sockets.NetConnection*)">
<summary>
Enqueue a <see cref="T:Fusion.SimulationMessage"/> on the Out Message List for a specific <see cref="T:Fusion.Sockets.NetConnection"/>
</summary>
<param name="message">Message to enqueue</param>
<param name="netConnection">Target Connection</param>
</member>
<member name="M:Fusion.Simulation.Server.Disconnect(Fusion.Sockets.NetAddress)">
<summary>
Disconnect a client based on it's NetAddress
</summary>
<param name="address">Client Adress to Disconnect</param>
</member>
<member name="M:Fusion.Simulation.Server.DisposeHostMigration">
<summary>
Dispose Host Migration data
</summary>
</member>
<member name="M:Fusion.Simulation.Server.ProcessHostMigrationData(System.Byte[],System.Collections.Generic.Dictionary{Fusion.NetworkId,Fusion.NetworkObjectHeaderSnapshot},Fusion.Allocator*)">
<summary>
Process the serialized data from the bytebuffer into a organized Dictionary of NetIDs=NO Snapshots
</summary>
<param name="data">Data buffer to read the data from</param>
<param name="networkObjectMap">Target dictionary that will be filled with NetworkObjects data</param>
<param name="allocator">Allocator used to create new <see cref="T:Fusion.NetworkObjectHeaderSnapshot"/></param>
</member>
<member name="T:Fusion.RpcSendMessageResult">
<summary>
Result flags for the RPC message send operation.
</summary>
</member>
<member name="F:Fusion.RpcSendMessageResult.None">
<summary>
Invalid result.
</summary>
</member>
<member name="F:Fusion.RpcSendMessageResult.SentToServerForForwarding">
<summary>
Client sent to the server, server will send to the target client.
</summary>
</member>
<member name="F:Fusion.RpcSendMessageResult.SentToTargetClient">
<summary>
Server sent to a specific client (a targeted message).
</summary>
</member>
<member name="F:Fusion.RpcSendMessageResult.SentBroadcast">
<summary>
Server attempted to send to all the clients and at least one succeeded.
</summary>
</member>
<member name="F:Fusion.RpcSendMessageResult.NotSentTargetObjectNotConfirmed">
<summary>
Target object not confirmed on the client.
</summary>
</member>
<member name="F:Fusion.RpcSendMessageResult.NotSentTargetObjectNotInPlayerInterest">
<summary>
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.
</summary>
</member>
<member name="F:Fusion.RpcSendMessageResult.NotSentTargetClientNotAvailable">
<summary>
Target client not connected (a targeted message).
</summary>
</member>
<member name="F:Fusion.RpcSendMessageResult.NotSentBroadcastNoActiveConnections">
<summary>
Server attempted to send to all the clients, but none was connected.
</summary>
</member>
<member name="F:Fusion.RpcSendMessageResult.NotSentBroadcastNoConfirmedNorInterestedClients">
<summary>
Server attempted to send to all the clients, but the target object is not confirmed/not in Object Interest for all target clients.
</summary>
</member>
<member name="F:Fusion.RpcSendMessageResult.MaskSent">
<summary>Mask for sent messages.</summary>
</member>
<member name="F:Fusion.RpcSendMessageResult.MaskNotSent">
<summary>Mask for not sent messages.</summary>
</member>
<member name="F:Fusion.RpcSendMessageResult.MaskBroadcast">
<summary>Mask for broadcast messages.</summary>
</member>
<member name="F:Fusion.RpcSendMessageResult.MaskCulled">
<summary>Mask for culled messages.</summary>
</member>
<member name="T:Fusion.Topologies">
<summary>
</summary>
</member>
<member name="F:Fusion.Topologies.ClientServer">
<summary>
Classic server and client model
</summary>
</member>
<member name="F:Fusion.Topologies.Shared">
<summary>
Relay based shared world model
</summary>
</member>
<member name="T:Fusion.SimulationConfig">
<summary>
Project configuration settings specific to how the Simulation class behaves.
</summary>
</member>
<member name="T:Fusion.SimulationConfig.InputTransferModes">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConfig.InputTransferModes.Redundancy">
<summary>
Send delta compressed and redundant input, used for most games
</summary>
</member>
<member name="F:Fusion.SimulationConfig.InputTransferModes.RedundancyUncompressed">
<summary>
Send redundant input, use for games with small input structs (like fps games) and high player count
</summary>
</member>
<member name="F:Fusion.SimulationConfig.InputTransferModes.LatestState">
<summary>
Only send latest input state, useful for VR, etc.
</summary>
</member>
<member name="T:Fusion.SimulationConfig.DataConsistency">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConfig.DataConsistency.Full">
<summary>
<para>
When a <see cref="T:Fusion.NetworkBehaviour"/>'s data changes, the server will send all properties
whose changes have not been acknowledged.
</para>
<para>
This option consumes more bandwidth, but guarantees that each <see cref="T:Fusion.NetworkBehaviour"/>
has consistent state.
</para>
</summary>
</member>
<member name="F:Fusion.SimulationConfig.DataConsistency.Eventual">
<summary>
<para>
When a <see cref="T:Fusion.NetworkBehaviour"/>'s data changes, the server will only send the newly
changed properties.
</para>
<para>
This option consumes less bandwidth, but a <see cref="T:Fusion.NetworkBehaviour"/> may have
inconsistent state at times (some properties up-to-date but not others).
</para>
</summary>
</member>
<member name="F:Fusion.SimulationConfig.InputDataWordCount">
<summary>Input Data Word Count</summary>
</member>
<member name="F:Fusion.SimulationConfig.ReplicationFeatures">
<summary>Features to enabled to replication such as area of interest, etc.</summary>
</member>
<member name="P:Fusion.SimulationConfig.SchedulingEnabled">
<summary>Signal if scheduling is enabled</summary>
</member>
<member name="P:Fusion.SimulationConfig.AreaOfInterestEnabled">
<summary>Signal if AOI is enabled</summary>
</member>
<member name="P:Fusion.SimulationConfig.SchedulingWithoutAOI">
<summary>Signal if scheduling is running without AOI</summary>
</member>
<member name="F:Fusion.SimulationConfig.InputTransferMode">
<summary>
The way which input is transferred
</summary>
</member>
<member name="F:Fusion.SimulationConfig.ObjectDataConsistency">
<summary>
How the server chooses to send <see cref="T:Fusion.NetworkObject"/> updates to balance consistency and bandwidth consumption.
</summary>
</member>
<member name="F:Fusion.SimulationConfig.PlayerCount">
<summary>
The default number of players allowed to join a game instance. Can also be changed in code when starting Fusion.
</summary>
</member>
<member name="F:Fusion.SimulationConfig.TickRateSelection">
<summary>
The default tick rate to use. Can also be changed in code when starting Fusion.
</summary>
</member>
<member name="F:Fusion.SimulationConfig.Topology">
<summary>
The topology used
</summary>
</member>
<member name="F:Fusion.SimulationConfig.HostMigration">
<summary>
If, in host mode, we should allow host migration if the current host leaves.
</summary>
</member>
<member name="P:Fusion.SimulationConfig.InputTotalWordCount">
<summary>
</summary>
</member>
<member name="M:Fusion.SimulationConfig.Init(System.Nullable{System.Int32},System.Nullable{System.Int32})">
<summary>
</summary>
</member>
<member name="T:Fusion.HeapConfiguration">
<summary>
Memory Heap Settings
</summary>
</member>
<member name="F:Fusion.HeapConfiguration.PageShift">
<summary>
Default size of each Heap Page
</summary>
</member>
<member name="F:Fusion.HeapConfiguration.PageCount">
<summary>
Default number of Heap Pages
</summary>
</member>
<member name="F:Fusion.HeapConfiguration.GlobalsSize">
<summary>
Heap Global Size
</summary>
</member>
<member name="M:Fusion.HeapConfiguration.Init(System.Int32)">
<summary>
Initializes and creates a new <see cref="T:Fusion.HeapConfiguration"/> based on the Global Size
</summary>
</member>
<member name="M:Fusion.HeapConfiguration.ToString">
<summary>
ToString
</summary>
</member>
<member name="T:Fusion.NetworkConfiguration">
<summary>
Main network configuration class.
</summary>
</member>
<member name="T:Fusion.NetworkConfiguration.ReliableDataTransfers">
<summary>
Flag for allowed Reliable Data transfer modes.
</summary>
</member>
<member name="F:Fusion.NetworkConfiguration.ReliableDataTransfers.ClientToServer">
<summary>
Allow Client to Server.
</summary>
</member>
<member name="F:Fusion.NetworkConfiguration.ReliableDataTransfers.ClientToClientWithServerProxy">
<summary>
Allow Client to Client using Server as Proxy.
</summary>
</member>
<member name="P:Fusion.NetworkConfiguration.SocketSendBufferSize">
<summary>
Size in Kilobytes of the underlying socket send buffer.
</summary>
</member>
<member name="P:Fusion.NetworkConfiguration.SocketRecvBufferSize">
<summary>
Size in Kilobytes of the underlying socket receive buffer.
</summary>
</member>
<member name="P:Fusion.NetworkConfiguration.ConnectAttempts">
<summary>
Max number of connection attempts that a Client will run when trying to connect to a remote Server.
</summary>
</member>
<member name="P:Fusion.NetworkConfiguration.ConnectInterval">
<summary>
Interval in seconds between each connection attempt from a Client.
</summary>
</member>
<member name="P:Fusion.NetworkConfiguration.ConnectionDefaultRtt">
<summary>
Default assumed RTT in seconds for new connections (before actual RTT has been determined). The real RTT is calculated over time once the connection is established.
</summary>
</member>
<member name="F:Fusion.NetworkConfiguration.ConnectionTimeout">
<summary>
Max allowed time in seconds that the local peer can run without receiving any update from a remote peer.
If a client does not receive any update from the server within this period, it will disconnect itself.
If a server does not receive any update from a remote client within this period, it will disconnect that particular client.
</summary>
</member>
<member name="P:Fusion.NetworkConfiguration.ConnectionPingInterval">
<summary>
Interval in seconds between PING messages sent to a remote connection, in order to keep that connection alive.
</summary>
<remarks>Currently unused.</remarks>
</member>
<member name="F:Fusion.NetworkConfiguration.ConnectionShutdownTime">
<summary>
Default delay between connection changes status to Shutdown (disconnected/invalid), and it actually being released (freeing all references to that particular connection).
</summary>
</member>
<member name="P:Fusion.NetworkConfiguration.MtuDefault">
<summary>
Max number of bytes that can be used by Fusion to fill up a UDP package.
</summary>
</member>
<member name="F:Fusion.NetworkConfiguration.ReliableDataTransferModes">
<summary>
Current <see cref="F:Fusion.NetworkConfiguration.ReliableDataTransferModes"/> mode.
</summary>
</member>
<member name="M:Fusion.NetworkConfiguration.Init">
<summary>
Initializes and creates a copy of this <see cref="T:Fusion.NetworkProjectConfig"/>.
</summary>
<returns>A copy of this <see cref="T:Fusion.NetworkProjectConfig"/>.</returns>
</member>
<member name="M:Fusion.NetworkConfiguration.ToNetConfig(Fusion.Sockets.NetAddress)">
<summary>
Convert this <see cref="T:Fusion.NetworkProjectConfig"/> into a <see cref="T:Fusion.Sockets.NetConfig"/> using the <see cref="T:Fusion.Sockets.NetAddress"/> as reference.
</summary>
</member>
<member name="T:Fusion.NetworkSimulationConfiguration">
<summary>
Configuration for network conditions simulation (induced latency and loss).
</summary>
</member>
<member name="F:Fusion.NetworkSimulationConfiguration.Enabled">
<summary>
If adverse network conditions are being simulated.
</summary>
</member>
<member name="F:Fusion.NetworkSimulationConfiguration.DelayShape">
<summary>
The pattern used to oscillate between <see cref="F:Fusion.NetworkSimulationConfiguration.DelayMin"/> and <see cref="F:Fusion.NetworkSimulationConfiguration.DelayMax"/> values.
</summary>
</member>
<member name="F:Fusion.NetworkSimulationConfiguration.DelayMin">
<summary>
The lowest packet delay value returned from the <see cref="F:Fusion.NetworkSimulationConfiguration.DelayShape"/> oscillator.
</summary>
</member>
<member name="F:Fusion.NetworkSimulationConfiguration.DelayMax">
<summary>
The highest packet delay value returned from the <see cref="F:Fusion.NetworkSimulationConfiguration.DelayShape"/> oscillator.
</summary>
</member>
<member name="F:Fusion.NetworkSimulationConfiguration.DelayPeriod">
<summary>
The period of the <see cref="F:Fusion.NetworkSimulationConfiguration.DelayShape"/> oscillator (the rate at which delay oscillates in seconds).
</summary>
</member>
<member name="F:Fusion.NetworkSimulationConfiguration.DelayThreshold">
<summary>
The <see cref="F:Fusion.NetworkSimulationConfiguration.DelayShape"/> oscillates between 0 and 1. Values below this threshold are reduced to zero, resulting in a value equal to <see cref="F:Fusion.NetworkSimulationConfiguration.DelayMin"/>.
</summary>
</member>
<member name="F:Fusion.NetworkSimulationConfiguration.AdditionalJitter">
<summary>
After the delay value from the <see cref="F:Fusion.NetworkSimulationConfiguration.DelayShape"/> oscillator is determined, random 0 to this value of additional seconds be added to the packet latency.
</summary>
</member>
<member name="F:Fusion.NetworkSimulationConfiguration.LossChanceShape">
<summary>
The pattern used to oscillate between <see cref="F:Fusion.NetworkSimulationConfiguration.LossChanceMin"/> and <see cref="F:Fusion.NetworkSimulationConfiguration.LossChanceMax"/> values.
</summary>
</member>
<member name="F:Fusion.NetworkSimulationConfiguration.LossChanceMin">
<summary>
The lowest loss chance value the <see cref="F:Fusion.NetworkSimulationConfiguration.LossChanceShape"/> oscillator will produce. 0 = 0% chance of being lost. 1 = 100% chance of being lost.
</summary>
</member>
<member name="F:Fusion.NetworkSimulationConfiguration.LossChanceMax">
<summary>
The highest loss chance value the <see cref="F:Fusion.NetworkSimulationConfiguration.LossChanceShape"/> oscillator will produce. 0 = 0% chance of being lost. 1 = 100% chance of being lost.
</summary>
</member>
<member name="F:Fusion.NetworkSimulationConfiguration.LossChanceThreshold">
<summary>
The <see cref="F:Fusion.NetworkSimulationConfiguration.LossChanceShape"/> wave oscillates between 0 and 1. Values below this threshold are reduced to zero, resulting in a value equal to <see cref="F:Fusion.NetworkSimulationConfiguration.LossChanceMin"/>.
</summary>
</member>
<member name="F:Fusion.NetworkSimulationConfiguration.LossChancePeriod">
<summary>
The period of the <see cref="F:Fusion.NetworkSimulationConfiguration.LossChanceShape"/> oscillator (the rate at which delay oscillates between <see cref="F:Fusion.NetworkSimulationConfiguration.LossChanceMin"/> and <see cref="F:Fusion.NetworkSimulationConfiguration.LossChanceMax"/>).
</summary>
</member>
<member name="F:Fusion.NetworkSimulationConfiguration.AdditionalLoss">
<summary>
After the <see cref="F:Fusion.NetworkSimulationConfiguration.LossChanceShape"/> oscillation loss chance is calculated, an additional random value of 0 to this (normalized) percentage of loss chance is added.
</summary>
</member>
<member name="M:Fusion.NetworkSimulationConfiguration.Clone">
<summary>Creates a copy of this <see cref="T:Fusion.NetworkSimulationConfiguration"/>.</summary>
</member>
<member name="M:Fusion.NetworkSimulationConfiguration.Create">
<summary>
Creates a new <see cref="T:Fusion.Sockets.NetConfigSimulation"/> based on the current configuration.
</summary>
<returns>A new <see cref="T:Fusion.Sockets.NetConfigSimulation"/> based on the current configuration.</returns>
</member>
<member name="T:Fusion.TimeSyncConfiguration">
<summary>
Time Synchronization Configuration
</summary>
</member>
<member name="F:Fusion.TimeSyncConfiguration.SampleWindowSeconds">
<summary>
<para>How big of a window the client looks at to evaluate the latest network conditions.</para>
<para>Increasing this makes the client slower to adapt to changes.</para>
</summary>
</member>
<member name="F:Fusion.TimeSyncConfiguration.MaxLateInputs">
<summary>
<para>The maximum percentage of inputs that should ever arrive late because of jitter.</para>
<para>Decreasing this increases the client's simulation offset.</para>
</summary>
</member>
<member name="F:Fusion.TimeSyncConfiguration.MaxLateSnapshots">
<summary>
<para>The maximum percentage of snapshots that should ever arrive late because of jitter.</para>
<para>Decreasing this increases the client's interpolation delay.</para>
</summary>
</member>
<member name="F:Fusion.TimeSyncConfiguration.RedundantInputs">
<summary>
<para>The number of consecutive, additional chances each input should have to reach the server before it's needed.</para>
<para>Increasing this increases the client's simulation offset.</para>
</summary>
</member>
<member name="F:Fusion.TimeSyncConfiguration.RedundantSnapshots">
<summary>
<para>The number of consecutive snapshots a client should be able to miss without disrupting their interpolation.</para>
<para>Increasing this increases the client's interpolation delay.</para>
</summary>
</member>
<member name="P:Fusion.TimeSyncConfiguration.MaxSimSpeedAdjust">
<summary>
<para>
The maximum percentage the client's simulation can speed up or slow down
to maintain its target simulation offset.
</para>
</summary>
</member>
<member name="P:Fusion.TimeSyncConfiguration.MaxInterpSpeedAdjust">
<summary>
<para>
The maximum percentage the client's interpolation can speed up or slow down
to maintain its target interpolation delay.
</para>
</summary>
</member>
<member name="T:Fusion.SimulationConnectionStats">
<summary>Simulation Connection Statistics</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.RoundTripTime">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.InPacketsRecv">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.InPacketsBandwidth">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.OutPacketsSent">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.OutPacketsLost">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.OutPacketsDelivered">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.OutPacketsBandwidth">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.InObjectBandwidth">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.InObjectUpdatesPerPacket">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.InObjectDestroysPerPacket">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.OutObjectBandwidth">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.OutObjectUpdatesPerPacket">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.OutObjectDestroysPerPacket">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.InMessagesBandwidth">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.InMessagesPerPacket">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.OutMessagesBandwidth">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.OutMessagesPerPacket">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.InputsBandwidth">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.InputsPerPacket">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.InputsMissing">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.InReliableDataBandwidth">
<summary>
</summary>
</member>
<member name="F:Fusion.SimulationConnectionStats.OutReliableDataBandwidth">
<summary>
</summary>
</member>
<member name="T:Fusion.SimulationInput">
<summary>
Simulation Input
</summary>
</member>
<member name="T:Fusion.SimulationInput.Buffer">
<summary>
Buffer for <see cref="T:Fusion.SimulationInput"/>s.
</summary>
</member>
<member name="P:Fusion.SimulationInput.Buffer.Count">
<summary>Number of inputs in the buffer.</summary>
</member>
<member name="P:Fusion.SimulationInput.Buffer.Full">
<summary>Whether the buffer is full.</summary>
</member>
<member name="M:Fusion.SimulationInput.Buffer.#ctor(Fusion.NetworkProjectConfig)">
<summary>
Creates a new <see cref="T:Fusion.SimulationInput.Buffer"/>.
</summary>
<param name="cfg">Network project configuration.</param>
</member>
<member name="M:Fusion.SimulationInput.Buffer.Clear">
<summary>Clears the buffer.</summary>
</member>
<member name="M:Fusion.SimulationInput.Buffer.CopySortedTo(Fusion.SimulationInput[])">
<summary>
Copies the buffer to an array and sorts it.
</summary>
<param name="array">Array to copy to.</param>
<returns>Number of elements copied.</returns>
</member>
<member name="M:Fusion.SimulationInput.Buffer.Contains(Fusion.Tick)">
<summary>
Whether the buffer contains an input for <paramref name="tick"/>.
</summary>
<param name="tick">Tick to check.</param>
<returns>Whether the buffer contains an input for <paramref name="tick"/>.</returns>
</member>
<member name="M:Fusion.SimulationInput.Buffer.Remove(Fusion.Tick,Fusion.SimulationInput@)">
<summary>
Removes an input for <paramref name="tick"/> from the buffer.
</summary>
<param name="tick">Tick to remove.</param>
<param name="removed">Removed input.</param>
<returns>Whether an input was removed.</returns>
</member>
<member name="M:Fusion.SimulationInput.Buffer.GetInsertTime(Fusion.Tick)">
<summary>
Gets the insert time for <paramref name="tick"/>.
</summary>
<param name="tick">Tick to get insert time for.</param>
<returns>Insert time for <paramref name="tick"/>.</returns>
</member>
<member name="M:Fusion.SimulationInput.Buffer.Get(Fusion.Tick)">
<summary>
Gets the input for <paramref name="tick"/>.
</summary>
<param name="tick">Tick to get input for.</param>
<returns>Input for <paramref name="tick"/>.</returns>
</member>
<member name="M:Fusion.SimulationInput.Buffer.GetLastUsedInputHeader">
<summary>
Retrieves the last used input header data.
</summary>
<returns>The last used input header data.</returns>
</member>
<member name="M:Fusion.SimulationInput.Buffer.Add(Fusion.SimulationInput,System.Nullable{System.Double})">
<summary>
Adds an input to the buffer.
</summary>
<param name="input">Input to add.</param>
<param name="insertTime">Insert time for <paramref name="input"/>.</param>
<returns>Whether the input was added.</returns>
</member>
<member name="P:Fusion.SimulationInput.Player">
<summary>
Player that owns this input.
</summary>
</member>
<member name="P:Fusion.SimulationInput.Header">
<summary>
Header for this input.
</summary>
</member>
<member name="P:Fusion.SimulationInput.Data">
<summary>
Data for this input.
</summary>
</member>
<member name="P:Fusion.SimulationInput.Sent">
<summary>
Simulation input sent count.
</summary>
</member>
<member name="M:Fusion.SimulationInput.Clear(System.Int32)">
<summary>
Clear a total of <paramref name="wordCount"/> words from this input.
</summary>
<param name="wordCount">Word count to clear.</param>
</member>
<member name="M:Fusion.SimulationInput.CopyFrom(Fusion.SimulationInput,System.Int32)">
<summary>
Copy <paramref name="wordCount"/> words from <paramref name="source"/> to this input.
</summary>
<param name="source">Input to copy from.</param>
<param name="wordCount">Word count to copy.</param>
</member>
<member name="T:Fusion.SimulationInputHeader">
<summary>
Simulation Input Header
</summary>
</member>
<member name="F:Fusion.SimulationInputHeader.WORD_COUNT">
<summary>Word count of the header.</summary>
</member>
<member name="F:Fusion.SimulationInputHeader.SIZE">
<summary>Size of the header.</summary>
</member>
<member name="F:Fusion.SimulationInputHeader.Tick">
<summary>Tick of the input.</summary>
</member>
<member name="F:Fusion.SimulationInputHeader.InterpAlpha">
<summary>Interpolation alpha of the input.</summary>
</member>
<member name="F:Fusion.SimulationInputHeader.InterpFrom">
<summary>Interpolation from tick of the input.</summary>
</member>
<member name="F:Fusion.SimulationInputHeader.InterpTo">
<summary>Interpolation to tick of the input.</summary>
</member>
<member name="T:Fusion.SimulationMessage">
<summary>
Simulation Message
</summary>
</member>
<member name="F:Fusion.SimulationMessage.SIZE">
<summary>SimulationMessage size in bytes.</summary>
</member>
<member name="F:Fusion.SimulationMessage.MAX_PAYLOAD_SIZE">
<summary>Max user message size in bytes.</summary>
</member>
<member name="F:Fusion.SimulationMessage.FLAG_USER_MESSAGE">
<summary>Flag for user messages.</summary>
</member>
<member name="F:Fusion.SimulationMessage.FLAG_REMOTE">
<summary>Flag for remote messages.</summary>
</member>
<member name="F:Fusion.SimulationMessage.FLAG_STATIC">
<summary>Flag for static messages.</summary>
</member>
<member name="F:Fusion.SimulationMessage.FLAG_UNRELIABLE">
<summary>Flag for unreliable messages.</summary>
</member>
<member name="F:Fusion.SimulationMessage.FLAG_TARGET_PLAYER">
<summary>Flag for targeted messages to a player.</summary>
</member>
<member name="F:Fusion.SimulationMessage.FLAG_TARGET_SERVER">
<summary>Flag for targeted messages to the server.</summary>
</member>
<member name="F:Fusion.SimulationMessage.FLAG_INTERNAL">
<summary>Flag for internal messages.</summary>
</member>
<member name="F:Fusion.SimulationMessage.FLAG_NOT_TICK_ALIGNED">
<summary>Flag for messages that are not tick aligned.</summary>
</member>
<member name="F:Fusion.SimulationMessage.FLAG_DUMMY">
<summary>Flag for dummy messages.</summary>
</member>
<member name="F:Fusion.SimulationMessage.FLAG_USER_FLAGS_START">
<summary>Flag for user flags.</summary>
</member>
<member name="F:Fusion.SimulationMessage.FLAGS_RESERVED">
<summary>Flag for reserved flags.</summary>
</member>
<member name="F:Fusion.SimulationMessage.FLAGS_RESERVED_BITS">
<summary>Flag for reserved bits.</summary>
</member>
<member name="F:Fusion.SimulationMessage.Tick">
<summary>
Tick of this <see cref="T:Fusion.SimulationMessage"/>
</summary>
</member>
<member name="F:Fusion.SimulationMessage.Source">
<summary>
Source Player of this <see cref="T:Fusion.SimulationMessage"/>
</summary>
</member>
<member name="F:Fusion.SimulationMessage.Capacity">
<summary>
Capacity in Bits of this <see cref="T:Fusion.SimulationMessage"/>
</summary>
</member>
<member name="F:Fusion.SimulationMessage.Offset">
<summary>
Current offset in Bits
</summary>
</member>
<member name="F:Fusion.SimulationMessage.References">
<summary>
Reference Count
</summary>
</member>
<member name="F:Fusion.SimulationMessage.Flags">
<summary>
Flags
</summary>
</member>
<member name="F:Fusion.SimulationMessage.Target">
<summary>
Target Player of this <see cref="T:Fusion.SimulationMessage"/>
</summary>
</member>
<member name="M:Fusion.SimulationMessage.ReferenceCountAdd">
<summary>
Add a reference to this <see cref="T:Fusion.SimulationMessage"/>
</summary>
</member>
<member name="M:Fusion.SimulationMessage.ReferenceCountSub">
<summary>
Subtract a reference from this <see cref="T:Fusion.SimulationMessage"/>
</summary>
<returns>True if the reference count is now 0</returns>
</member>
<member name="M:Fusion.SimulationMessage.SetTarget(Fusion.PlayerRef)">
<summary>
Set the player target of this <see cref="T:Fusion.SimulationMessage"/>
</summary>
<param name="target">Target Player</param>
</member>
<member name="M:Fusion.SimulationMessage.SetStatic">
<summary>
Set this <see cref="T:Fusion.SimulationMessage"/> as Static
</summary>
</member>
<member name="M:Fusion.SimulationMessage.SetUnreliable">
<summary>
Set this <see cref="T:Fusion.SimulationMessage"/> as Unreliable
</summary>
</member>
<member name="M:Fusion.SimulationMessage.SetNotTickAligned">
<summary>
Set this <see cref="T:Fusion.SimulationMessage"/> as Not Tick Aligned
</summary>
</member>
<member name="M:Fusion.SimulationMessage.SetDummy">
<summary>
Set this <see cref="T:Fusion.SimulationMessage"/> as Dummy
</summary>
</member>
<member name="M:Fusion.SimulationMessage.GetFlag(System.Int32)">
<summary>
Get if a flag is set on this <see cref="T:Fusion.SimulationMessage"/>
</summary>
<param name="flag">Flag to check</param>
<returns>True if the flag is set</returns>
</member>
<member name="M:Fusion.SimulationMessage.IsTargeted">
<summary>
Signal if this <see cref="T:Fusion.SimulationMessage"/> is Targeted
</summary>
<returns>True if this <see cref="T:Fusion.SimulationMessage"/> is Targeted</returns>
</member>
<member name="P:Fusion.SimulationMessage.IsUnreliable">
<summary>
Signal if this <see cref="T:Fusion.SimulationMessage"/> is Unreliable
</summary>
</member>
<member name="M:Fusion.SimulationMessage.Clone(Fusion.Simulation,Fusion.SimulationMessage*)">
<summary>
Create a copy of a <see cref="T:Fusion.SimulationMessage"/>
</summary>
<param name="sim"><see cref="T:Fusion.Simulation"/> to allocate from</param>
<param name="message"><see cref="T:Fusion.SimulationMessage"/> to copy</param>
<returns>Copy of the <see cref="T:Fusion.SimulationMessage"/></returns>
</member>
<member name="M:Fusion.SimulationMessage.WriteNetworkedObjectRef(Fusion.SimulationMessage*,Fusion.NetworkId)">
<summary>
Write a NetworkId to a <see cref="T:Fusion.SimulationMessage"/>
</summary>
<param name="message">SimulationMessage to write to</param>
<param name="value">NetworkId to write</param>
</member>
<member name="M:Fusion.SimulationMessage.ReadNetworkedObjectRef(Fusion.SimulationMessage*)">
<summary>
Read a NetworkId from a <see cref="T:Fusion.SimulationMessage"/>
</summary>
<param name="message">SimulationMessage to read from</param>
<returns>NetworkId read</returns>
</member>
<member name="M:Fusion.SimulationMessage.WriteVector3(Fusion.SimulationMessage*,UnityEngine.Vector3)">
<summary>
Write a Vector3 to a <see cref="T:Fusion.SimulationMessage"/>
</summary>
<param name="message">SimulationMessage to write to</param>
<param name="value">Vector3 to write</param>
</member>
<member name="M:Fusion.SimulationMessage.ReadVector3(Fusion.SimulationMessage*)">
<summary>
Read a Vector3 from a <see cref="T:Fusion.SimulationMessage"/>
</summary>
<param name="message">SimulationMessage to read from</param>
<returns>Vector3 read</returns>
</member>
<member name="M:Fusion.SimulationMessage.WriteInt(Fusion.SimulationMessage*,System.Int32)">
<summary>
Write a int to a <see cref="T:Fusion.SimulationMessage"/>
</summary>
<param name="message">SimulationMessage to write to</param>
<param name="value">int to write</param>
</member>
<member name="M:Fusion.SimulationMessage.ReadInt(Fusion.SimulationMessage*)">
<summary>
Read a int from a <see cref="T:Fusion.SimulationMessage"/>
</summary>
<param name="message">SimulationMessage to read from</param>
<returns>int read</returns>
</member>
<member name="M:Fusion.SimulationMessage.GetData(Fusion.SimulationMessage*)">
<summary>
Get the byte pointer content of a <see cref="T:Fusion.SimulationMessage"/>
</summary>
<param name="message">SimulationMessage to get the byte pointer of</param>
<returns>Byte pointer of the <see cref="T:Fusion.SimulationMessage"/></returns>
</member>
<member name="M:Fusion.SimulationMessage.Allocate(Fusion.Simulation,System.Int32)">
<summary>
Allocate a new <see cref="T:Fusion.SimulationMessage"/>
</summary>
<param name="sim">Simulation to get the Memory from</param>
<param name="capacityInBytes">Size in bytes of the new <see cref="T:Fusion.SimulationMessage"/></param>
<returns>Pointer to the new <see cref="T:Fusion.SimulationMessage"/></returns>
</member>
<member name="M:Fusion.SimulationMessage.CanAllocateUserPayload(System.Int32)">
<summary>
Checks if a message with given size can be allocated.
</summary>
</member>
<member name="M:Fusion.SimulationMessage.ToString">
<summary>Simulation Message ToString</summary>
</member>
<member name="M:Fusion.SimulationMessage.ToString(System.Boolean)">
<summary>Simulation Message ToString</summary>
</member>
<member name="T:Fusion.SimulationMessagePtr">
<summary>
Simulation Message Pointer
</summary>
</member>
<member name="F:Fusion.SimulationMessagePtr.Message">
<summary>
Pointer to the message.
</summary>
</member>
<member name="T:Fusion.SimulationModes">
<summary>
Flags for The type of network peer a simulation represents.
</summary>
</member>
<member name="F:Fusion.SimulationModes.Server">
<summary>
Simulation represents a server peer, with no local player.
</summary>
</member>
<member name="F:Fusion.SimulationModes.Host">
<summary>
Simulation represents a server peer, with a local player.
</summary>
</member>
<member name="F:Fusion.SimulationModes.Client">
<summary>
Simulation represents a client peer, with a local player.
</summary>
</member>
<member name="T:Fusion.SimulationRuntimeConfig">
<summary>
Stores the runtime configuration of the simulation
</summary>
</member>
<member name="F:Fusion.SimulationRuntimeConfig.TickRate">
<summary>
Current tick rates and send rates for server and client
</summary>
</member>
<member name="F:Fusion.SimulationRuntimeConfig.ServerMode">
<summary>
Current Simulation Mode
</summary>
</member>
<member name="F:Fusion.SimulationRuntimeConfig.PlayerMaxCount">
<summary>
Current player count
</summary>
</member>
<member name="F:Fusion.SimulationRuntimeConfig.MasterClient">
<summary>
Current master client (in shared mode)
</summary>
</member>
<member name="F:Fusion.SimulationRuntimeConfig.HostPlayer">
<summary>
Current master client (in shared mode)
</summary>
</member>
<member name="F:Fusion.SimulationRuntimeConfig.Topology">
<summary>
Current master client (in shared mode)
</summary>
</member>
<member name="T:Fusion.SimulationStages">
<summary>
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.
</summary>
</member>
<member name="F:Fusion.SimulationStages.Forward">
<summary>
Currently simulating a tick for the first time.
</summary>
</member>
<member name="F:Fusion.SimulationStages.Resimulate">
<summary>
Currently simulating a previously simulated tick again, with state corrections.
</summary>
</member>
<member name="T:Fusion.SimulationStats">
<summary>
Simulation Stats
</summary>
</member>
<member name="F:Fusion.SimulationStats.TimeResets">
<summary>Time Resets</summary>
</member>
<member name="F:Fusion.SimulationStats.Resimulations">
<summary>The number of re-simulations per Fusion simulation loop cycle.</summary>
</member>
<member name="F:Fusion.SimulationStats.ForwardSteps">
<summary>The number of forward simulation steps</summary>
</member>
<member name="F:Fusion.SimulationStats.EngineDelta">
<summary>Engine Delta</summary>
</member>
<member name="F:Fusion.SimulationStats.SpawnQueueSize">
<summary>Engine Spawn Queue Size</summary>
</member>
<member name="F:Fusion.SimulationStats.RoundTripTime">
<summary>Round Trip Time</summary>
</member>
<member name="F:Fusion.SimulationStats.PlayersCount">
<summary>Player Count</summary>
</member>
<member name="F:Fusion.SimulationStats.OutPackets">
<summary>Output Packets</summary>
</member>
<member name="F:Fusion.SimulationStats.OutBandwidth">
<summary>Output Bandwidth</summary>
</member>
<member name="F:Fusion.SimulationStats.InPackets">
<summary>Input Packets</summary>
</member>
<member name="F:Fusion.SimulationStats.InBandwidth">
<summary>Input Bandwidth</summary>
</member>
<member name="F:Fusion.SimulationStats.ObjectsCount">
<summary>Objects Count</summary>
</member>
<member name="F:Fusion.SimulationStats.ObjectsGlobalCount">
<summary>Object Global Count</summary>
</member>
<member name="F:Fusion.SimulationStats.ObjectsPredictedCount">
<summary>Object Predicted Count</summary>
</member>
<member name="F:Fusion.SimulationStats.SimulationSpeed">
<summary>Simulation Speed</summary>
</member>
<member name="F:Fusion.SimulationStats.SimulationTimeOffset">
<summary>Simulation Time Offset</summary>
</member>
<member name="F:Fusion.SimulationStats.SimulationTimeOffsetTarget">
<summary>Simulation Time Offset Target</summary>
</member>
<member name="F:Fusion.SimulationStats.SimulationTimeOffsetDeviation">
<summary>Simulation Time Offset Deviation</summary>
</member>
<member name="F:Fusion.SimulationStats.InputReceiveDelta">
<summary>Input Receive Delta</summary>
</member>
<member name="F:Fusion.SimulationStats.InputReceiveDeltaDeviation">
<summary>Input Receive Delta Deviation</summary>
</member>
<member name="F:Fusion.SimulationStats.StateReceiveDelta">
<summary>State Receive Delta</summary>
</member>
<member name="F:Fusion.SimulationStats.StateReceiveDeltaDeviation">
<summary>State Receive Delta Deviation</summary>
</member>
<member name="F:Fusion.SimulationStats.InterpolationSpeed">
<summary>Interpolation Speed</summary>
</member>
<member name="F:Fusion.SimulationStats.InterpolationOffset">
<summary>Interpolation Offset</summary>
</member>
<member name="F:Fusion.SimulationStats.InterpolationOffsetTarget">
<summary>Interpolation Offset Target</summary>
</member>
<member name="F:Fusion.SimulationStats.InterpolationOffsetDeviation">
<summary>Interpolation Offset Deviation</summary>
</member>
<member name="T:Fusion.FixedFeedback">
<summary>
Reduces errors at a constant rate using an on-off controller.
</summary>
</member>
<member name="T:Fusion.VariableFeedback">
<summary>
Reduces errors at a variable rate using a PID controller.
</summary>
</member>
<member name="T:Fusion.NetworkPhysicsInfo">
<summary>
Network Physics <see cref="T:Fusion.INetworkStruct"/>
</summary>
</member>
<member name="F:Fusion.NetworkPhysicsInfo.WORD_COUNT">
<summary>
<see cref="T:Fusion.NetworkPhysicsInfo"/> Word Count
</summary>
</member>
<member name="F:Fusion.NetworkPhysicsInfo.SIZE">
<summary>
<see cref="T:Fusion.NetworkPhysicsInfo"/> Total Size
</summary>
</member>
<member name="F:Fusion.NetworkPhysicsInfo.TimeScale">
<summary>
<see cref="T:Fusion.NetworkPhysicsInfo"/> Time Scale
</summary>
</member>
<member name="T:Fusion.INetworkStruct">
<summary>
Base interface for all Fusion Network Structs
</summary>
</member>
<member name="T:Fusion.NetworkInputUtils">
<summary>
Utility methods for <see cref="T:Fusion.NetworkInput"/>
</summary>
</member>
<member name="M:Fusion.NetworkInputUtils.GetMaxWordCount">
<summary>
Get the max word count from all registered types
</summary>
</member>
<member name="M:Fusion.NetworkInputUtils.GetWordCount(System.Type)">
<summary>
Get Type Word Count if it is of type <see cref="T:Fusion.NetworkInput"/>
</summary>
<param name="type">Type to check for word count</param>
<returns>Number of words for the <see cref="T:Fusion.NetworkInput"/></returns>
</member>
<member name="M:Fusion.NetworkInputUtils.GetTypeKey(System.Type)">
<summary>
Get the Key associate with the argument Type
</summary>
<param name="type">Type to check for the key</param>
<returns>Associated Type Key, or an exception if not found</returns>
</member>
<member name="M:Fusion.NetworkInputUtils.GetType(System.Int32)">
<summary>
Get the Type based on its associate Key
</summary>
<param name="typeKey">Key associated with a Type</param>
<returns>Type associated with the Key, or null otherwise</returns>
</member>
<member name="T:Fusion.NetworkInput">
<summary>
NetworkInput Struct
</summary>
</member>
<member name="P:Fusion.NetworkInput.WordCount">
<summary>
Number of Words for the <see cref="T:Fusion.NetworkInput"/>
</summary>
</member>
<member name="P:Fusion.NetworkInput.Data">
<summary>
Data pointer of the <see cref="T:Fusion.NetworkInput"/>
</summary>
</member>
<member name="P:Fusion.NetworkInput.IsValid">
<summary>
Signal if the <see cref="T:Fusion.NetworkInput"/> is valid or not
</summary>
</member>
<member name="P:Fusion.NetworkInput.Type">
<summary>
Get the Type associated with this <see cref="T:Fusion.NetworkInput"/>
</summary>
</member>
<member name="M:Fusion.NetworkInput.TryGet``1(``0@)">
<summary>
Tries to export data as the indicated T <see cref="T:Fusion.INetworkInput"/> struct.
</summary>
</member>
<member name="M:Fusion.NetworkInput.TrySet``1(``0)">
<summary>
Tries to import data from a <see cref="T:Fusion.INetworkInput"/> struct.
</summary>
</member>
<member name="M:Fusion.NetworkInput.Get``1">
<summary>
Gets the content of this <see cref="T:Fusion.INetworkInput"/> as another type
</summary>
</member>
<member name="M:Fusion.NetworkInput.Set``1(``0)">
<summary>
Sets the content of this <see cref="T:Fusion.INetworkInput"/> to another type
</summary>
</member>
<member name="M:Fusion.NetworkInput.Convert``1">
<summary>
Converts the Type of this <see cref="T:Fusion.INetworkInput"/> to another type
</summary>
</member>
<member name="M:Fusion.NetworkInput.Convert(System.Type)">
<inheritdoc cref="M:Fusion.NetworkInput.Convert``1"/>
</member>
<member name="M:Fusion.NetworkInput.Is``1">
<summary>
Checks if this <see cref="T:Fusion.INetworkInput"/> is of a certain type
</summary>
</member>
<member name="T:Fusion.NetworkStructUtils">
<summary>
Utility methods for <see cref="T:Fusion.INetworkStruct"/>
</summary>
</member>
<member name="M:Fusion.NetworkStructUtils.GetWordCount``1">
<summary>
Get <see cref="T:Fusion.INetworkStruct"/> Word Count
</summary>
<typeparam name="T"><see cref="T:Fusion.INetworkStruct"/> type reference</typeparam>
<returns>Number of Words necessary for this specific <see cref="T:Fusion.INetworkStruct"/></returns>
</member>
<member name="M:Fusion.NetworkStructUtils.GetWordCount(System.Type)">
<inheritdoc cref="M:Fusion.NetworkStructUtils.GetWordCount``1"/>
</member>
</members>
</doc>