Skip to content

Mirror::NetworkTransformBase

Inherits from NetworkBehaviour, MonoBehaviour

Inherited by NetworkTransform, NetworkTransformChild

Public Classes

Name
class DataPoint

Public Functions

Name
void SerializeIntoWriter(NetworkWriter writer, Vector3 position, Quaternion rotation, Vector3 scale)
virtual override bool OnSerialize(NetworkWriter writer, bool initialState)
Virtual function to override to send custom serialization data. The corresponding function to send serialization data is OnDeserialize().
virtual override void OnDeserialize(NetworkReader reader, bool initialState)
Virtual function to override to receive custom serialization data. The corresponding function to send serialization data is OnSerialize().
void ServerTeleport(Vector3 position)
Server side teleportation. This method will override this GameObject's current Transform.Position to the Vector3 you have provided and send it to all other Clients to override it at their side too.
void ServerTeleport(Vector3 position, Quaternion rotation)
Server side teleportation. This method will override this GameObject's current Transform.Position and Transform.Rotation to the Vector3 you have provided and send it to all other Clients to override it at their side too.

Protected Properties

Name
abstract Transform targetComponent

Public Attributes

Name
bool clientAuthority
float localPositionSensitivity
float localRotationSensitivity
float localScaleSensitivity

Additional inherited members

Public Functions inherited from NetworkBehaviour

Name
void SetDirtyBit(ulong dirtyBit)
Used to set the behaviour as dirty, so that a network update will be sent for the object. these are masks, not bit numbers, ie. 0x004 not 2
void ClearAllDirtyBits()
This clears all the dirty bits that were set on this script by SetDirtyBits();
bool IsDirty()
bool SerializeObjectsAll(NetworkWriter writer)
bool SerializeObjectsDelta(NetworkWriter writer)
virtual void OnStopClient()
This is invoked on clients when the server has caused this object to be destroyed.
virtual void OnStartServer()
This is invoked for NetworkBehaviour objects when they become active on the server.
virtual void OnStopServer()
Invoked on the server when the object is unspawned
virtual void OnStartClient()
Called on every NetworkBehaviour when it is activated on a client.
virtual void OnStartLocalPlayer()
Called when the local player object has been set up.
virtual void OnStartAuthority()
This is invoked on behaviours that have authority, based on context and NetworkIdentity.hasAuthority.
virtual void OnStopAuthority()
This is invoked on behaviours when authority is removed.

Protected Functions inherited from NetworkBehaviour

Name
bool getSyncVarHookGuard(ulong dirtyBit)
void setSyncVarHookGuard(ulong dirtyBit, bool value)
void InitSyncObject(SyncObject syncObject)
void SendCommandInternal(Type invokeClass, string cmdName, NetworkWriter writer, int channelId, bool ignoreAuthority =false)
void SendRPCInternal(Type invokeClass, string rpcName, NetworkWriter writer, int channelId, bool excludeOwner)
void SendTargetRPCInternal(NetworkConnection conn, Type invokeClass, string rpcName, NetworkWriter writer, int channelId)
bool SyncVarGameObjectEqual(GameObject newGameObject, uint netIdField)
void SetSyncVarGameObject(GameObject newGameObject, ref GameObject gameObjectField, ulong dirtyBit, ref uint netIdField)
GameObject GetSyncVarGameObject(uint netId, ref GameObject gameObjectField)
bool SyncVarNetworkIdentityEqual(NetworkIdentity newIdentity, uint netIdField)
void SetSyncVarNetworkIdentity(NetworkIdentity newIdentity, ref NetworkIdentity identityField, ulong dirtyBit, ref uint netIdField)
NetworkIdentity GetSyncVarNetworkIdentity(uint netId, ref NetworkIdentity identityField)
bool SyncVarEqual< T >(T value, ref T fieldValue)
void SetSyncVar< T >(T value, ref T fieldValue, ulong dirtyBit)
virtual bool SerializeSyncVars(NetworkWriter writer, bool initialState)
virtual void DeserializeSyncVars(NetworkReader reader, bool initialState)

Public Properties inherited from NetworkBehaviour

Name
NetworkIdentity netIdentity
Returns the NetworkIdentity of this object
int ComponentIndex
Returns the index of the component on this object

Protected Properties inherited from NetworkBehaviour

Name
ulong syncVarDirtyBits

Public Attributes inherited from NetworkBehaviour

Name
SyncMode syncMode
sync mode for OnSerialize
float syncInterval
sync interval for OnSerialize (in seconds)
bool isServer
Returns true if this object is active on an active server.
bool isClient
Returns true if running as a client and this object was spawned by a server.
bool isLocalPlayer
This returns true if this object is the one that represents the player on the local machine.
bool isServerOnly
True if this object only exists on the server
bool isClientOnly
True if this object exists on a client that is not also acting as a server
bool hasAuthority
This returns true if this object is the authoritative version of the object in the distributed network application.
uint netId
The unique network Id of this object.
NetworkConnection connectionToServer
The NetworkConnection associated with this NetworkIdentity. This is only valid for player objects on the client.
NetworkConnection connectionToClient
The NetworkConnection associated with this NetworkIdentity. This is only valid for player objects on the server.

Protected Attributes inherited from NetworkBehaviour

Name
readonly List< SyncObject > syncObjects
objects that can synchronize themselves, such as synclists

Public Functions Documentation

function SerializeIntoWriter

static inline void SerializeIntoWriter(
    NetworkWriter writer,
    Vector3 position,
    Quaternion rotation,
    Vector3 scale
)

function OnSerialize

inline virtual override bool OnSerialize(
    NetworkWriter writer,
    bool initialState
)

Virtual function to override to send custom serialization data. The corresponding function to send serialization data is OnDeserialize().

Parameters:

  • writer Writer to use to write to the stream.
  • initialState If this is being called to send initial state.

Return: True if data was written.

Reimplements: Mirror::NetworkBehaviour::OnSerialize

The initialState flag is useful to differentiate between the first time an object is serialized and when incremental updates can be sent. The first time an object is sent to a client, it must include a full state snapshot, but subsequent updates can save on bandwidth by including only incremental changes. Note that SyncVar hook functions are not called when initialState is true, only for incremental updates.

If a class has SyncVars, then an implementation of this function and OnDeserialize() are added automatically to the class. So a class that has SyncVars cannot also have custom serialization functions.

The OnSerialize function should return true to indicate that an update should be sent. If it returns true, then the dirty bits for that script are set to zero, if it returns false then the dirty bits are not changed. This allows multiple changes to a script to be accumulated over time and sent when the system is ready, instead of every frame.

function OnDeserialize

inline virtual override void OnDeserialize(
    NetworkReader reader,
    bool initialState
)

Virtual function to override to receive custom serialization data. The corresponding function to send serialization data is OnSerialize().

Parameters:

  • reader Reader to read from the stream.
  • initialState True if being sent initial state.

Reimplements: Mirror::NetworkBehaviour::OnDeserialize

function ServerTeleport

inline void ServerTeleport(
    Vector3 position
)

Server side teleportation. This method will override this GameObject's current Transform.Position to the Vector3 you have provided and send it to all other Clients to override it at their side too.

Parameters:

  • position Where to teleport this GameObject

function ServerTeleport

inline void ServerTeleport(
    Vector3 position,
    Quaternion rotation
)

Server side teleportation. This method will override this GameObject's current Transform.Position and Transform.Rotation to the Vector3 you have provided and send it to all other Clients to override it at their side too.

Parameters:

  • position Where to teleport this GameObject
  • rotation Which rotation to set this GameObject

Protected Property Documentation

property targetComponent

abstract Transform targetComponent;

Public Attributes Documentation

variable clientAuthority

bool clientAuthority;

variable localPositionSensitivity

float localPositionSensitivity = .01f;

variable localRotationSensitivity

float localRotationSensitivity = .01f;

variable localScaleSensitivity

float localScaleSensitivity = .01f;

Updated on 25 January 2021 at 01:28:46 UTC