Implementation of the INetworkTime interface. More...
#include <NetworkTime.h>
Inherits Multiplayer::INetworkTime.
Public Member Functions | |
bool | IsTimeRewound () const override |
HostFrameId | GetHostFrameId () const override |
HostFrameId | GetUnalteredHostFrameId () const override |
void | IncrementHostFrameId () override |
Increments the hosts current frameId. | |
AZ::TimeMs | GetHostTimeMs () const override |
float | GetHostBlendFactor () const override |
AzNetworking::ConnectionId | GetRewindingConnectionId () const override |
void | ForceSetTime (HostFrameId frameId, AZ::TimeMs timeMs) override |
void | AlterTime (HostFrameId frameId, AZ::TimeMs timeMs, float blendFactor, AzNetworking::ConnectionId rewindConnectionId) override |
void | SyncEntitiesToRewindState (const AZ::Aabb &rewindVolume) override |
void | ClearRewoundEntities () override |
Restores all rewound entities to the current application time. | |
Public Member Functions inherited from Multiplayer::INetworkTime | |
AZ_RTTI (INetworkTime, "{7D468063-255B-4FEE-86E1-6D750EEDD42A}") | |
virtual bool | IsTimeRewound () const =0 |
virtual HostFrameId | GetHostFrameId () const =0 |
virtual HostFrameId | GetUnalteredHostFrameId () const =0 |
virtual void | IncrementHostFrameId ()=0 |
Increments the hosts current frameId. | |
virtual AZ::TimeMs | GetHostTimeMs () const =0 |
virtual float | GetHostBlendFactor () const =0 |
virtual AzNetworking::ConnectionId | GetRewindingConnectionId () const =0 |
virtual void | ForceSetTime (HostFrameId frameId, AZ::TimeMs timeMs)=0 |
virtual void | AlterTime (HostFrameId frameId, AZ::TimeMs timeMs, float blendFactor, AzNetworking::ConnectionId rewindConnectionId)=0 |
virtual void | SyncEntitiesToRewindState (const AZ::Aabb &rewindVolume)=0 |
virtual void | ClearRewoundEntities ()=0 |
Restores all rewound entities to the current application time. | |
AZ_DISABLE_COPY_MOVE (INetworkTime) | |
Implementation of the INetworkTime interface.
|
overridevirtual |
Alters the current HostFrameId and binds that alteration to the provided ConnectionId.
frameId | the new HostFrameId to use |
timeMs | the new HostTimeMs to use |
blendFactor | the factor used to blend between values at the current and previous HostFrameId |
rewindConnectionId | the rewinding ConnectionId |
Implements Multiplayer::INetworkTime.
|
overridevirtual |
Restores all rewound entities to the current application time.
Implements Multiplayer::INetworkTime.
|
overridevirtual |
Forcibly sets the current network time to the provided frameId and game time in milliseconds.
frameId | the new HostFrameId to use |
timeMs | the new HostTimeMs to use |
Implements Multiplayer::INetworkTime.
|
overridevirtual |
Retrieves the hosts current blend factor (may be rewound on the server during backward reconciliation).
Implements Multiplayer::INetworkTime.
|
overridevirtual |
Retrieves the hosts current frameId (may be rewound on the server during backward reconciliation).
Implements Multiplayer::INetworkTime.
|
overridevirtual |
Retrieves the hosts current timeMs (may be rewound on the server during backward reconciliation).
Implements Multiplayer::INetworkTime.
|
overridevirtual |
Get the controlling connection that may be currently altering global game time. Note this abstraction is required at a relatively high level to allow for 'don't rewind the shooter' semantics
Implements Multiplayer::INetworkTime.
|
overridevirtual |
Retrieves the unaltered hosts current frameId.
Implements Multiplayer::INetworkTime.
|
overridevirtual |
Increments the hosts current frameId.
Implements Multiplayer::INetworkTime.
|
overridevirtual |
INetworkTime overrides.
Implements Multiplayer::INetworkTime.
|
overridevirtual |
Syncs all entities contained within a volume to the current rewind state.
rewindVolume | the volume to rewind entities within (needed for physics entities) |
Implements Multiplayer::INetworkTime.