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
Namespace: Unity.Netcode
Assembly: Unity.Netcode.Runtime.dll
Syntax
public struct NetworkTime
Constructors
NetworkTime(uint)
Creates a new instance of the NetworkTime struct.
Declaration
public NetworkTime(uint tickRate)
Parameters
Type | Name | Description |
---|---|---|
uint | tickRate | The tickrate. |
NetworkTime(uint, double)
Creates a new instance of the NetworkTime struct.
Declaration
public NetworkTime(uint tickRate, double timeSec)
Parameters
Type | Name | Description |
---|---|---|
uint | tickRate | The tickrate. |
double | timeSec | The time value as a float. |
NetworkTime(uint, int, double)
Creates a new instance of the NetworkTime struct.
Declaration
public NetworkTime(uint tickRate, int tick, double tickOffset = 0)
Parameters
Type | Name | Description |
---|---|---|
uint | tickRate | The tickrate. |
int | tick | The time will be created with a value where this many tick have already passed. |
double | tickOffset | Can 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 fixedUnscaledTime There is no equivalent to deltaTime.
Declaration
public float FixedDeltaTime { get; }
Property Value
Type | Description |
---|---|
float |
FixedTime
Gets he current fixed network time. This is the time value of the last network tick. Similar to fixedUnscaledTime.
Declaration
public double FixedTime { get; }
Property Value
Type | Description |
---|---|
double |
Tick
Gets the amount of network ticks which have passed until reaching the current time value.
Declaration
public int Tick { get; }
Property Value
Type | Description |
---|---|
int |
TickOffset
Gets the amount of time which has passed since the last network tick.
Declaration
public double TickOffset { get; }
Property Value
Type | Description |
---|---|
double |
TickRate
Gets the tickrate of the system of this NetworkTime. Ticks per second.
Declaration
public uint TickRate { get; }
Property Value
Type | Description |
---|---|
uint |
TickWithPartial
Gets the tick, including partial tick value passed since it started.
Declaration
public double TickWithPartial { get; }
Property Value
Type | Description |
---|---|
double |
Time
Gets the current time. This is a non fixed time value and similar to time.
Declaration
public double Time { get; }
Property Value
Type | Description |
---|---|
double |
TimeAsFloat
Gets the current time as a float.
Declaration
public float TimeAsFloat { get; }
Property Value
Type | Description |
---|---|
float |
Methods
TimeTicksAgo(int, float)
Returns the time a number of ticks in the past.
Declaration
public NetworkTime TimeTicksAgo(int ticks, float offset = 0)
Parameters
Type | Name | Description |
---|---|---|
int | ticks | The number of ticks ago we're querying the time |
float | offset |
Returns
Type | Description |
---|---|
NetworkTime |
ToFixedTime()
Converts the network time into a fixed time value.
Declaration
public NetworkTime ToFixedTime()
Returns
Type | Description |
---|---|
NetworkTime | A NetworkTime where Time is the FixedTime value of this instance. |
Operators
operator +(NetworkTime, double)
Computes the time a number of seconds later
Declaration
public static NetworkTime operator +(NetworkTime a, double b)
Parameters
Type | Name | Description |
---|---|---|
NetworkTime | a | The start time |
double | b | The number of seconds to add |
Returns
Type | Description |
---|---|
NetworkTime | The resulting time |
operator +(NetworkTime, NetworkTime)
Computes the sum of two times
Declaration
public static NetworkTime operator +(NetworkTime a, NetworkTime b)
Parameters
Type | Name | Description |
---|---|---|
NetworkTime | a | First time |
NetworkTime | b | Second time |
Returns
Type | Description |
---|---|
NetworkTime | The sum of the two times passed in |
operator -(NetworkTime, double)
Computes the time a number of seconds before
Declaration
public static NetworkTime operator -(NetworkTime a, double b)
Parameters
Type | Name | Description |
---|---|---|
NetworkTime | a | The start time |
double | b | The number of seconds to remove |
Returns
Type | Description |
---|---|
NetworkTime | The resulting time |
operator -(NetworkTime, NetworkTime)
Computes the time difference between two ticks
Declaration
public static NetworkTime operator -(NetworkTime a, NetworkTime b)
Parameters
Type | Name | Description |
---|---|---|
NetworkTime | a | End time |
NetworkTime | b | Start time |
Returns
Type | Description |
---|---|
NetworkTime | The time difference between start and end |