| UObjectBase
|
Module |
|
Header |
/Engine/Source/Runtime/Engine/Classes/Engine/DemoNetDriver.h |
Include |
#include "Engine/DemoNetDriver.h" |
class UDemoNetDriver : public UNetDriver
Simulated network driver for recording and playing back game sessions.
Name | Description | ||
---|---|---|---|
|
double |
AccumulatedRecordTime |
Internal debug timing/tracking |
|
bChannelsArePaused |
True if as have paused all of the channels |
|
|
bIsLocalReplay |
||
|
bIsWaitingForHeaderDownload |
||
|
bIsWaitingForStream |
||
|
bRecordMapChanges |
||
|
CurrentLevelIndex |
Index of LevelNames that is currently loaded |
|
|
DeletedNetStartupActorGUIDs |
Keeps track of NetGUIDs that were deleted, so we can skip them when saving checkpoints. |
|
|
DeletedNetStartupActors |
Net startup actors that need to be destroyed after checkpoints are loaded |
|
|
float |
DemoCurrentTime |
Current record/playback position in seconds |
|
DemoFrameNum |
Current record/playback frame number |
|
|
DemoTotalFrames |
Total number of frames in the demo |
|
|
float |
DemoTotalTime |
Total time of demo in seconds |
|
ExternalDataToObjectMap |
ExternalDataToObjectMap is used to map a FNetworkGUID to the proper FReplayExternalDataArray |
|
|
double |
LastCheckpointTime |
|
|
double |
LastRecordAvgFlush |
|
|
MaxArchiveReadPos |
||
|
double |
MaxRecordTime |
|
|
NewStreamingLevelsThisFrame |
During recording, streaming levels waiting to be saved next frame. |
|
|
float |
OldDemoCurrentTime |
Old current record/playback position in seconds (so we can restore on checkpoint failure) |
|
OnDemoFinishPlaybackDelegate |
Delegate for external systems to be notified when demo playback ends |
|
|
OnDemoFinishRecordingDelegate |
Public Delegate for external systems to be notified when replay recording is about to finish. |
|
|
OnGotoTimeDelegate |
Public delegate for external systems to be notified when scrubbing is complete. |
|
|
OnPauseChannelsDelegate |
Delegate for external systems to be notified when channels are paused during playback, usually waiting for data to be available. |
|
|
PlaybackPackets |
PlaybackPackets are used to buffer packets up when we read a demo frame, which we can then process when the time is right |
|
|
QueuedPacketsBeforeTravel |
||
|
RecordCountSinceFlush |
||
|
TSharedPtr< cla... |
ReplayStreamer |
Our network replay streamer |
|
RollbackNetStartupActors |
Net startup actors that need to be rolled back during scrubbing by being destroyed and re-spawned NOTE - DeletedNetStartupActors will take precedence here, and destroy the actor instead |
|
|
SpectatorController |
This is the main spectator controller that is used to view the demo world from |
|
|
UniqueStreamingLevels |
During recording, all unique streaming levels since recording started. |
Name | Description | |
---|---|---|
|
UDemoNetDriver ( |
|
|
UDemoNetDriver ( |
Name | Description | |
---|---|---|
|
~UDemoNetDriver() |
Name | Description | ||
---|---|---|---|
|
AddEvent |
||
|
AddNonQueuedActorForScrubbing ( |
If a channel is associated with Actor, adds the channel's GUID to the list of GUIDs excluded from queuing bunches during scrubbing. |
|
|
AddNonQueuedGUIDForScrubbing ( |
Adds the channel's GUID to the list of GUIDs excluded from queuing bunches during scrubbing. |
|
|
AddOrUpdateEvent |
||
|
AddReplayTask ( |
||
|
AddUserToReplay ( |
Adds a join-in-progress user to the set of users associated with the currently recording replay (if any) |
|
|
CacheNetGuids() |
||
|
ClearReplayTasks() |
||
|
ComparePropertyState ( |
Compares the values of replicated properties stored in State with the current values of the object replicators. |
|
|
ConditionallyProcessPlaybackPackets() |
||
|
ConditionallyReadDemoFrameIntoPlaybackPackets ( |
||
|
ContinueListen ( |
Called when we are already recording but have traveled to a new map to start recording again |
|
|
DemoReplicateActor ( |
||
|
EnumerateEvents ( |
||
|
EnumerateEventsForActiveReplay ( |
In most cases, this is desirable over EnumerateEvents because it will explicitly use ActiveReplayName instead of letting the streamer decide. |
|
|
EnumerateEventsForActiveReplay ( |
In most cases, this is desirable over EnumerateEvents because it will explicitly use ActiveReplayName instead of letting the streamer decide. |
|
|
FinalizeFastForward ( |
||
|
const FStrin... |
GetActiveReplayName() |
Gets the actively recording or playback replay (stream) name. |
|
float |
GetDemoCurrentTime() |
Current record/playback position in seconds |
|
GetDemoCurrentTimeInMS() |
||
|
GetDemoPath() |
||
|
const FStrin... |
GetDemoSessionID() |
|
|
float |
GetDemoTotalTime() |
Total time of demo in seconds |
|
GetDemoURL() |
||
|
FReplayExter... |
GetExternalDataArrayForObject ( |
|
|
float |
GetLastReplayFrameFidelity() |
Replay frame fidelity. |
|
const TArray... |
GetLevelNameAndTimeList() |
|
|
GetNextQueuedTaskName() |
||
|
GetPlaybackDemoVersion() |
||
|
GotoTimeInSeconds ( |
Scrubs playback to the given time. |
|
|
HasDeltaCheckpoints() |
Returns whether or not this replay was recorded / is playing with delta checkpoints. |
|
|
HasGameSpecificFrameData() |
Returns whether or not this replay was recorded / is playing with the game specific per frame data feature. |
|
|
HasLevelStreamingFixes() |
Returns whether or not this replay was recorded / is playing with Level Streaming fixes. |
|
|
InitConnectInternal ( |
||
|
IsAnyTaskPending() |
||
|
IsFastForwarding() |
||
|
IsFinalizingFastForward() |
||
|
IsLoadingCheckpoint() |
||
|
IsNamedTaskInQueue ( |
||
|
IsPlaying() |
||
|
IsPlayingClientReplay() |
||
|
IsRecording() |
||
|
IsRecordingPaused() |
||
|
IsSavingCheckpoint() |
Returns true if we're in the process of saving a checkpoint. |
|
|
JumpToEndOfLiveReplay() |
||
|
LoadExternalData ( |
||
|
NotifyDemoPlaybackFailure ( |
||
|
NotifyGotoTimeFinished ( |
Called when a "go to time" operation is completed. |
|
|
OnSeamlessTravelStartDuringRecording ( |
Called when seamless travel begins when recording a replay. |
|
|
PauseChannels ( |
||
|
PauseRecording ( |
||
|
PendingNetGameLoadMapCompleted() |
Read the streaming level information from the metadata after the level is loaded |
|
|
ProcessAllPlaybackPackets() |
||
|
ProcessGameSpecificDemoHeader |
Allows subclasses to read game specific data from demo return false to cancel playback |
|
|
ProcessPacket |
||
|
ProcessPacket ( |
||
|
ProcessReplayTasks() |
||
|
ProcessSeamlessTravel ( |
||
|
QueueNetStartupActorForRollbackViaDeletion ( |
Call this function during playback to track net startup actors that need a hard reset when scrubbing, which is done by destroying and then re-spawning |
|
|
ReadDemoFrameIntoPlaybackPackets ( |
||
|
ReadDemoFrameIntoPlaybackPackets ( |
||
|
ReadPlaybackDemoHeader ( |
||
|
RemoveSplitscreenViewer ( |
Removes a splitscreen demo viewer and cleans up its connection. |
|
|
ReplayStreamingReady ( |
||
|
RequestEventData ( |
||
|
RequestEventDataForActiveReplay ( |
In most cases, this is desirable over RequestEventData because it will explicitly use ActiveReplayName instead of letting the streamer decide. |
|
|
RequestEventDataForActiveReplay ( |
In most cases, this is desirable over RequestEventData because it will explicitly use ActiveReplayName instead of letting the streamer decide. |
|
|
RequestEventGroupDataForActiveReplay ( |
Retrieve data for all events matching the requested group, and call the passed in delegate on completion. |
|
|
RequestEventGroupDataForActiveReplay ( |
Retrieve data for all events matching the requested group, and call the passed in delegate on completion. |
|
|
ResetDemoState() |
||
|
RespawnNecessaryNetStartupActors |
||
|
RestoreConnectionPostScrub ( |
Restores the given player controller so that it properly points to the given NetConnection after scrubbing when viewing a replay. |
|
|
SaveCheckpoint() |
||
|
SaveExternalData ( |
||
|
FDemoSavedPr... |
SavePropertyState() |
Returns the replicated state of every object on a current actor channel. |
|
SerializeGuidCache ( |
||
|
SetActorPrioritizationEnabled ( |
Enable or disable prioritization of actors for recording. |
|
|
SetCheckpointSaveMaxMSPerFrame ( |
Sets CheckpointSaveMaxMSPerFrame. |
|
|
SetMaxDesiredRecordTimeMS ( |
Sets the desired maximum recording time in milliseconds. |
|
|
SetPlayingPlaylist ( |
||
|
SetSpectatorController ( |
Sets the main spectator controller to be used and adds them to the spectator control array |
|
|
SetViewerOverride ( |
Sets the controller to use as the viewpoint for recording prioritization purposes. |
|
|
ShouldSaveCheckpoint() |
||
|
ShouldTickFlushAsyncEndOfFrame() |
Returns true if TickFlush can be called in parallel with the Slate tick. |
|
|
SkipTime ( |
||
|
SkipTimeInternal |
||
|
SpawnDemoRecSpectator ( |
||
|
SpawnSplitscreenViewer ( |
Creates a new splitscreen replay viewer. |
|
|
StopDemo() |
||
|
TickCheckpoint() |
||
|
TickDemoPlayback ( |
||
|
TickDemoRecord ( |
||
|
TickFlushAsyncEndOfFrame ( |
Called by a task thread if the engine is doing async end of frame tasks in parallel with Slate. |
|
|
WriteDemoFrameFromQueuedDemoPackets ( |
||
|
WriteGameSpecificDemoHeader |
Allows subclasses to write game specific data to demo header which is then handled by ProcessGameSpecificDemoHeader |
|
|
WriteNetworkDemoHeader ( |
||
|
WritePacket |
Name | Description | ||
---|---|---|---|
|
ForceNetUpdate ( |
Game code API for updating server Actor Replication State |
|
|
AActor * |
GetActorForGUID ( |
Returns the actor that corresponds to InGUID, if one can be found. |
|
GetGUIDForActor ( |
Returns the existing FNetworkGUID of InActor, if it has one. |
|
|
InitBase ( |
Common initialization between server and client connection setup |
|
|
InitConnect ( |
Initialize the net driver in client mode |
|
|
InitDestroyedStartupActors() |
Initialize the list of destroyed net startup actors from the current World |
|
|
InitListen ( |
Initialize the network driver in server mode (listener) |
|
|
UChannel ... |
InternalCreateChannelByName ( |
Subclasses may override this to customize channel creation. |
|
IsAvailable() |
Returns true if this net driver is valid for the current configuration. |
|
|
IsLevelInitializedForActor ( |
Returns true if this actor is considered to be in a loaded level |
|
|
IsNetResourceValid() |
||
|
IsServer() |
||
|
LowLevelGetNetworkNumber() |
||
|
NotifyActorChannelCleanedUp ( |
Called when an actor channel is cleaned up foor an actor. |
|
|
NotifyActorChannelOpen ( |
Called when an actor channel is remotely opened for an actor. |
|
|
NotifyActorDestroyed |
Called when a spawned actor is destroyed. |
|
|
NotifyActorLevelUnloaded ( |
Called when an actor is being unloaded during a seamless travel or do due level streaming The main point is that it calls the normal NotifyActorDestroyed to destroy the channel on the server but also removes the Actor reference, sets broken flag, and cleans up actor class references on clients. |
|
|
NotifyStreamingLevelUnload ( |
||
|
ProcessLocalClientPackets() |
Process any local talker packets that need to be sent to the server |
|
|
ProcessLocalServerPackets() |
Process any local talker packets that need to be sent to clients |
|
|
ProcessRemoteFunction |
Process a remote function call on some actor destined for a remote location |
|
|
SetAnalyticsProvider ( |
Sets the analytics provider |
|
|
ShouldClientDestroyTearOffActors() |
Returns true if the client should destroy immediately any actor that becomes torn-off |
|
|
ShouldIgnoreRPCs() |
Returns whether or not RPCs processed by this driver should be ignored. |
|
|
ShouldQueueBunchesForActorGUID ( |
Returns true if actor channels with InGUID should queue up bunches, even if they wouldn't otherwise be queued. |
|
|
ShouldReceiveRepNotifiesForObject ( |
Returns true if RepNotifies should be checked and generated when receiving properties for the given object. |
|
|
ShouldReplicateActor ( |
Returns true if this network driver will replicate the given actor. |
|
|
ShouldReplicateFunction |
Returns true if this network driver will handle the remote function call for the given actor. |
|
|
ShouldSkipRepNotifies() |
Returns whether or not properties that are replicating using this driver should not call RepNotify functions. |
|
|
TickDispatch ( |
Handle time update: read and process packets |
|
|
TickFlush ( |
ReplicateActors and Flush |
Name |
Description |
|
---|---|---|
|
ECheckpointSaveState |
|
|
EReadPacketMode |
|
|
EReadPacketState |
Possible values returned by ReadPacket. |
Name |
Description |
---|---|
FArchivePos |
The type we use to store offsets in the archive. |
Name |
Description |
---|---|
OnDemoFailedToStart |
Public delegate to be notified when a replay failed to start. |
OnDemoStarted |
Public delegate for external systems to be notified when a replay begins. |
Name | Description | ||
---|---|---|---|
|
WriteDemoFrameFromQueuedDemoPackets ( |
WriteDemoFrameFromQueuedDemoPackets now takes an additional flag value |