Skip to content

Mirror::NetworkProximityChecker

Component that controls visibility of networked objects for players. More...

Inherits from NetworkVisibility, NetworkBehaviour, MonoBehaviour

Public Functions

Name
virtual override void OnStartServer()
This is invoked for NetworkBehaviour objects when they become active on the server.
virtual override void OnStopServer()
Invoked on the server when the object is unspawned
virtual override bool OnCheckObserver(NetworkConnection conn)
Callback used by the visibility system to determine if an observer (player) can see this object.
virtual override void OnRebuildObservers(HashSet< NetworkConnection > observers, bool initialize)
Callback used by the visibility system to (re)construct the set of observers that can see this object.

Public Attributes

Name
int visRange
The maximim range that objects will be visible at.
float visUpdateInterval
How often (in seconds) that this object should update the list of observers that can see it.
bool forceHidden
Flag to force this object to be hidden for players.

Additional inherited members

Public Functions inherited from NetworkVisibility

Name
virtual void OnSetHostVisibility(bool visible)
Callback used by the visibility system for objects on a host.

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()
virtual 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 void OnDeserialize(NetworkReader reader, bool initialState)
Virtual function to override to receive custom serialization data. The corresponding function to send serialization data is OnSerialize().
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 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

Detailed Description

class Mirror::NetworkProximityChecker;

Component that controls visibility of networked objects for players.

Any object with this component on it will not be visible to players more than a (configurable) distance away.

Public Functions Documentation

function OnStartServer

inline virtual override void OnStartServer()

This is invoked for NetworkBehaviour objects when they become active on the server.

Reimplements: Mirror::NetworkBehaviour::OnStartServer

This could be triggered by NetworkServer.Listen() for objects in the scene, or by NetworkServer.Spawn() for objects that are dynamically created.

This will be called for objects on a "host" as well as for object on a dedicated server.

function OnStopServer

inline virtual override void OnStopServer()

Invoked on the server when the object is unspawned

Reimplements: Mirror::NetworkBehaviour::OnStopServer

Useful for saving object data in persistant storage

function OnCheckObserver

inline virtual override bool OnCheckObserver(
    NetworkConnection conn
)

Callback used by the visibility system to determine if an observer (player) can see this object.

Parameters:

  • conn Network connection of a player.

Return: True if the player can see this object.

Reimplements: Mirror::NetworkVisibility::OnCheckObserver

If this function returns true, the network connection will be added as an observer.

function OnRebuildObservers

inline virtual override void OnRebuildObservers(
    HashSet< NetworkConnection > observers,
    bool initialize
)

Callback used by the visibility system to (re)construct the set of observers that can see this object.

Parameters:

  • observers The new set of observers for this object.
  • initialize True if the set of observers is being built for the first time.

Reimplements: Mirror::NetworkVisibility::OnRebuildObservers

Implementations of this callback should add network connections of players that can see this object to the observers set.

Public Attributes Documentation

variable visRange

int visRange = 10;

The maximim range that objects will be visible at.

variable visUpdateInterval

float visUpdateInterval = 1;

How often (in seconds) that this object should update the list of observers that can see it.

variable forceHidden

bool forceHidden;

Flag to force this object to be hidden for players.

If this object is a player object, it will not be hidden for that player.


Updated on 20 January 2021 at 20:00:01 UTC