Skip to main content

Struct NetworkTime

A struct to represent a point of time in a networked game. Time is stored as a combination of amount of passed ticks + a duration offset. This struct is meant to replace the Unity Time API for multiplayer gameplay.

Inherited Members

System.ValueType.Equals(System.Object)

System.ValueType.GetHashCode()

System.ValueType.ToString()

System.Object.Equals(System.Object, System.Object)

System.Object.GetType()

System.Object.ReferenceEquals(System.Object, System.Object)

Namespace: Unity.Netcode
Assembly: MLAPI.dll
Syntax
public struct NetworkTime

Constructors

NetworkTime(UInt32)

Creates a new instance of the NetworkTime struct.

Declaration
public NetworkTime(uint tickRate)
Parameters
TypeNameDescription
System.UInt32tickRateThe tickrate.

NetworkTime(UInt32, Double)

Creates a new instance of the NetworkTime struct.

Declaration
public NetworkTime(uint tickRate, double timeSec)
Parameters
TypeNameDescription
System.UInt32tickRateThe tickrate.
System.DoubletimeSecThe time value as a float.

NetworkTime(UInt32, Int32, Double)

Creates a new instance of the NetworkTime struct.

Declaration
public NetworkTime(uint tickRate, int tick, double tickOffset = 0)
Parameters
TypeNameDescription
System.UInt32tickRateThe tickrate.
System.Int32tickThe time will be created with a value where this many tick have already passed.
System.DoubletickOffsetCan be used to create a NetworkTime with a non fixed time value by adding an offset to the given tick value.

Properties

FixedDeltaTime

Gets the fixed delta time. This value is based on the TickRate and stays constant. Similar to There is no equivalent to

Declaration
public readonly float FixedDeltaTime { get; }
Property Value
TypeDescription
System.Single

FixedTime

Gets he current fixed network time. This is the time value of the last network tick. Similar to

Declaration
public readonly double FixedTime { get; }
Property Value
TypeDescription
System.Double

Tick

Gets the amount of network ticks which have passed until reaching the current time value.

Declaration
public readonly int Tick { get; }
Property Value
TypeDescription
System.Int32

TickOffset

Gets the amount of time which has passed since the last network tick.

Declaration
public readonly double TickOffset { get; }
Property Value
TypeDescription
System.Double

TickRate

Gets the tickrate of the system of this NetworkTime. Ticks per second.

Declaration
public readonly uint TickRate { get; }
Property Value
TypeDescription
System.UInt32

Time

Gets the current time. This is a non fixed time value and similar to

Declaration
public readonly double Time { get; }
Property Value
TypeDescription
System.Double

TimeAsFloat

Gets the current time as a float.

Declaration
public readonly float TimeAsFloat { get; }
Property Value
TypeDescription
System.Single

Methods

TimeTicksAgo(Int32)

Returns the time a number of ticks in the past.

Declaration
public NetworkTime TimeTicksAgo(int ticks)
Parameters
TypeNameDescription
System.Int32ticksThe number of ticks ago we're querying the time
Returns
TypeDescription
NetworkTime

ToFixedTime()

Converts the network time into a fixed time value.

Declaration
public NetworkTime ToFixedTime()
Returns
TypeDescription
NetworkTimeA NetworkTime where Time is the FixedTime value of this instance.

Operators

Addition(NetworkTime, Double)

Computes the time a number of seconds later

Declaration
public static NetworkTime operator +(NetworkTime a, double b)
Parameters
TypeNameDescription
NetworkTimeaThe start time
System.DoublebThe number of seconds to add
Returns
TypeDescription
NetworkTimeThe resulting time

Addition(NetworkTime, NetworkTime)

Computes the sum of two times

Declaration
public static NetworkTime operator +(NetworkTime a, NetworkTime b)
Parameters
TypeNameDescription
NetworkTimeaFirst time
NetworkTimebSecond time
Returns
TypeDescription
NetworkTimeThe sum of the two times passed in

Subtraction(NetworkTime, Double)

Computes the time a number of seconds before

Declaration
public static NetworkTime operator -(NetworkTime a, double b)
Parameters
TypeNameDescription
NetworkTimeaThe start time
System.DoublebThe number of seconds to remove
Returns
TypeDescription
NetworkTimeThe resulting time

Subtraction(NetworkTime, NetworkTime)

Computes the time difference between two ticks

Declaration
public static NetworkTime operator -(NetworkTime a, NetworkTime b)
Parameters
TypeNameDescription
NetworkTimeaEnd time
NetworkTimebStart time
Returns
TypeDescription
NetworkTimeThe time difference between start and end