|
| enum class | ERemoteFunctionMode { None
, Receiving
, Sending
} |
| |
| enum class | EMemberPropertyTraits : uint32 {
None = 0U
, InitOnly = 1U << 0U
, HasLifetimeConditionals = InitOnly << 1U
, RepNotifyOnChanged = HasLifetimeConditionals << 1U
,
RepNotifyAlways = RepNotifyOnChanged << 1U
, NeedPreviousState = RepNotifyAlways << 1U
, HasDynamicState = NeedPreviousState << 1U
, HasObjectReference = HasDynamicState << 1U
,
HasCustomObjectReference = HasObjectReference << 1U
, IsSourceTriviallyConstructible = HasCustomObjectReference << 1U
, IsSourceTriviallyDestructible = IsSourceTriviallyConstructible << 1U
, IsTArray = IsSourceTriviallyDestructible << 1U
,
IsFastArray = IsTArray << 1U
, IsNativeFastArray = IsFastArray << 1U
, IsFastArrayWithExtraProperties = IsNativeFastArray << 1U
, IsFastArrayItem = IsFastArrayWithExtraProperties << 1U
,
IsInvalidFastArray = IsFastArrayItem << 1U
, HasConnectionSpecificSerialization = IsInvalidFastArray << 1U
, HasPushBasedDirtiness = HasConnectionSpecificSerialization << 1U
, UseSerializerIsEqual = HasPushBasedDirtiness << 1U
} |
| |
| enum class | EStructNetSerializerType : unsigned { Struct
, Custom
, DerivedFromCustom
} |
| |
| enum class | ENetObjectAttachmentType : uint32 { Normal
, OutOfBand
, HugeObject
, InternalCount
} |
| |
| enum class | EAttachmentWriteStatus : unsigned { Success
, NoAttachments
, ReliableWindowFull
, BitstreamOverflow
} |
| |
| enum class | ENetObjectGroupTraits : uint32 { None = 0x0000
, IsExclusionFiltering = 0x0001
, IsInclusionFiltering = 0x0002
} |
| |
| enum class | EAddSubObjectFlags : uint32 {
None = 0U
, WarnIfAlreadySubObject = 1U
, SkipIfAlreadySubObject = WarnIfAlreadySubObject << 1U
, DestroyWithOwner = SkipIfAlreadySubObject << 1U
,
ReplicateWithSubObject = DestroyWithOwner << 1U
, InsertAtStart = ReplicateWithSubObject << 1U
, Default = WarnIfAlreadySubObject | DestroyWithOwner
} |
| |
| enum class | ERemoveDependentObjectFlags : uint32 { None = 0U
, RemoveFromDependentParentObjects = 1U
, RemoveFromParentDependentObjects = RemoveFromDependentParentObjects << 1U
, All = RemoveFromDependentParentObjects | RemoveFromParentDependentObjects
} |
| |
| enum | EReplicationDataStreamDebugFeatures : uint32 { None = 0U
, BatchSizePerObject = 1U << 0U
, Sentinels = 1U << 1U
} |
| |
| enum class | ENetObjectAttachmentDispatchFlags : uint32 { None = 0
, Reliable = 1U << 0U
, Unreliable = Reliable << 1U
} |
| |
| enum | EReplicatedDestroyHeaderFlags : uint32 {
ReplicatedDestroyHeaderFlags_None = 0U
, ReplicatedDestroyHeaderFlags_TearOff = 1U << 0U
, ReplicatedDestroyHeaderFlags_EndReplication = ReplicatedDestroyHeaderFlags_TearOff << 1U
, ReplicatedDestroyHeaderFlags_DestroyInstance = ReplicatedDestroyHeaderFlags_EndReplication << 1U
,
ReplicatedDestroyHeaderFlags_BitCount = 3U
} |
| |
|
| FGuid | GetEngineNetworkVersionGuid () |
| |
| FGuid | GetGameNetworkVersionGuid () |
| |
| FCustomVersionContainer & | GetNetworkCustomVersions () |
| |
| FCustomVersionContainer & | GetCompatibleNetworkCustomVersions () |
| |
| template<int32 ScaleFactor, int32 MaxBitsPerComponent> |
| bool | LegacyReadPackedVector (FVector3f &Value, FArchive &Ar) |
| |
| bool | IsActorValidForIrisReplication (const AActor *Actor) |
| |
| void | ActorReplicationBridgePreUpdateFunction (TArrayView< UObject * > Instances, const UObjectReplicationBridge *Bridge) |
| |
| bool | ShouldIncludeRootObjectInLevelGroups (const UObject *RootObject) |
| |
| EActorNetSpawnInfoFlags | GetSpawnInfoFlags () |
| |
| bool | DoesTypeMatch (FReplicationSystemUtil::EType Type, UReplicationSystem *System) |
| |
| TArray< UE::Net::Private::FAutoDestructProperty > | CopyOutParametersToLocalParameters (UFunction *Function, FOutParmRec *OutParms, void *LocalParms, UObject *TargetObj) |
| |
| void | ApplyReplicationSystemConfig (const FNetDriverReplicationSystemConfig &ReplicationSystemConfig, UReplicationSystem::FReplicationSystemParams &OutParams) |
| |
| bool | IsGuidInOuterChain (const FNetGUIDCache &GuidCache, const FNetGuidCacheObject *CacheObj, FNetworkGUID GuidMatch) |
| |
| constexpr int32 | PingTypeToIdx (EPingType PingType) |
| |
| void | NetResultToString (FString &OutResultStr, const TCHAR *LexResult, const FString &ErrorContext, ENetResultString ConversionType) |
| |
| uint32 | GetBitsNeeded (const int32 Value) |
| |
| uint32 | GetBitsNeeded (const int64 Value) |
| |
| int32 | RoundFloatToInt (float F) |
| |
| int64 | RoundFloatToInt (double F) |
| |
| template<class T > |
| bool | WriteQuantizedVector (const int32 Scale, const T &Value, FArchive &Ar) |
| |
| template<class T > |
| bool | ReadQuantizedVector (const int32 Scale, T &Value, FArchive &Ar) |
| |
| template<class T > |
| T | QuantizeVector (const int32 Scale, const T &Value) |
| |
| | UE_NET_IMPLEMENT_SIMPLE_NETSERIALIZER_INFO (FInt8Property, FInt8NetSerializer) |
| |
| | UE_NET_IMPLEMENT_SIMPLE_NETSERIALIZER_INFO (FInt16Property, FInt16NetSerializer) |
| |
| | UE_NET_IMPLEMENT_SIMPLE_NETSERIALIZER_INFO (FIntProperty, FPackedInt32NetSerializer) |
| |
| | UE_NET_IMPLEMENT_SIMPLE_NETSERIALIZER_INFO (FInt64Property, FInt64NetSerializer) |
| |
| | UE_NET_IMPLEMENT_SIMPLE_NETSERIALIZER_INFO (FUInt16Property, FUint16NetSerializer) |
| |
| | UE_NET_IMPLEMENT_SIMPLE_NETSERIALIZER_INFO (FUInt32Property, FPackedUint32NetSerializer) |
| |
| | UE_NET_IMPLEMENT_SIMPLE_NETSERIALIZER_INFO (FUInt64Property, FUint64NetSerializer) |
| |
| | UE_NET_IMPLEMENT_SIMPLE_NETSERIALIZER_INFO (FFloatProperty, FFloatNetSerializer) |
| |
| | UE_NET_IMPLEMENT_SIMPLE_NETSERIALIZER_INFO (FDoubleProperty, FDoubleNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NETSERIALIZER_INFO (FObjectPropertyNetSerializerInfo) |
| |
| | UE_NET_IMPLEMENT_NETSERIALIZER_INFO (FObjectPtrPropertyNetSerializerInfo) |
| |
| | UE_NET_IMPLEMENT_NETSERIALIZER_INFO (FWeakObjectPtrPropertyNetSerializerInfo) |
| |
| | UE_NET_IMPLEMENT_SIMPLE_NETSERIALIZER_INFO (FSoftObjectProperty, FSoftObjectNetSerializer) |
| |
| | UE_NET_IMPLEMENT_SIMPLE_NETSERIALIZER_INFO (FSoftClassProperty, FSoftObjectNetSerializer) |
| |
| | UE_NET_IMPLEMENT_SIMPLE_NETSERIALIZER_INFO (FFieldPathProperty, FFieldPathNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (PropertyNetSerializerRegistry_NAME_SoftObjectPath, FSoftObjectPathNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (PropertyNetSerializerRegistry_NAME_SoftClassPath, FSoftClassPathNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (PropertyNetSerializerRegistry_NAME_RemoteObjectReference, FRemoteObjectReferenceNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (PropertyNetSerializerRegistry_NAME_RemoteServerId, FRemoteServerIdNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (PropertyNetSerializerRegistry_NAME_RemoteObjectId, FRemoteObjectIdNetSerializer) |
| |
| | UE_NET_IMPLEMENT_SIMPLE_NETSERIALIZER_INFO (FStrProperty, FStringNetSerializer) |
| |
| | UE_NET_IMPLEMENT_SIMPLE_NETSERIALIZER_INFO (FNameProperty, FNameAsNetTokenNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (PropertyNetSerializerRegistry_NAME_Guid, FGuidNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (NAME_Vector, FVectorNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (NAME_Vector3f, FVector3fNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (NAME_Vector3d, FVector3dNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (NAME_Rotator, FRotatorNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (NAME_Rotator3f, FRotator3fNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (NAME_Rotator3d, FRotator3dNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (NAME_Quat, FUnitQuatNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (NAME_Quat4f, FUnitQuat4fNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (NAME_Quat4d, FUnitQuat4dNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (PropertyNetSerializerRegistry_NAME_Vector_NetQuantize100, FVectorNetQuantize100NetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (PropertyNetSerializerRegistry_NAME_Vector_NetQuantize10, FVectorNetQuantize10NetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (PropertyNetSerializerRegistry_NAME_Vector_NetQuantize, FVectorNetQuantizeNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (PropertyNetSerializerRegistry_NAME_Vector_NetQuantizeNormal, FVectorNetQuantizeNormalNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NAMED_STRUCT_NETSERIALIZER_INFO (PropertyNetSerializerRegistry_NAME_DateTime, FDateTimeNetSerializer) |
| |
| | UE_NET_IMPLEMENT_NETSERIALIZER_INFO (FUint8PropertyNetSerializerInfo) |
| |
| | UE_NET_IMPLEMENT_NETSERIALIZER_INFO (FNativeBoolPropertyNetSerializerInfo) |
| |
| | UE_NET_IMPLEMENT_NETSERIALIZER_INFO (FBitFieldPropertyNetSerializerInfo) |
| |
| | UE_NET_IMPLEMENT_NETSERIALIZER_INFO (FScriptInterfacePropertyNetSerializerInfo) |
| |
| | UE_NET_IMPLEMENT_NETSERIALIZER_INFO (FTextPropertyNetSerializerInfo) |
| |
| void | RegisterDefaultPropertyNetSerializerInfos () |
| |
| | UE_NET_IMPLEMENT_NETSERIALIZER_INFO (FEnumAsBytePropertyNetSerializerInfo) |
| |
| | UE_NET_IMPLEMENT_NETSERIALIZER_INFO (FNetRoleNetSerializerInfo) |
| |
| | UE_NET_IMPLEMENT_NETSERIALIZER_INFO (FEnumPropertyNetSerializerInfo) |
| |
| | UE_NET_DECLARE_NETSERIALIZER_INFO (FEnumPropertyNetSerializerInfo) |
| |
| | UE_NET_DECLARE_NETSERIALIZER_INFO (FNetRoleNetSerializerInfo) |
| |
| void | InitReplicationStateInternals (uint8 *StateBuffer, const FReplicationStateDescriptor *Descriptor) |
| |
| void | CopyPropertyReplicationStateInternals (uint8 *RESTRICT DstStateBuffer, uint8 *RESTRICT SrcStateBuffer, const FReplicationStateDescriptor *Descriptor, bool bOverwriteChangeMask=true) |
| |
| void | ConstructPropertyReplicationState (uint8 *StateBuffer, const FReplicationStateDescriptor *Descriptor) |
| |
| void | DestructPropertyReplicationState (uint8 *StateBuffer, const FReplicationStateDescriptor *Descriptor) |
| |
| void | CopyPropertyReplicationState (uint8 *RESTRICT DstStateBuffer, uint8 *RESTRICT SrcStateBuffer, const FReplicationStateDescriptor *Descriptor) |
| |
| void | CopyDirtyMembers (uint8 *RESTRICT DstStateBuffer, uint8 *RESTRICT SrcStateBuffer, const FReplicationStateDescriptor *Descriptor) |
| |
| bool | InternalCompareMember (const FReplicationStateDescriptor *Descriptor, uint32 MemberIndex, const void *RESTRICT ValueA, const void *RESTRICT ValueB) |
| |
| bool | InternalCompareStructProperty (const FReplicationStateDescriptor *StructDescriptor, const void *RESTRICT ValueA, const void *RESTRICT ValueB) |
| |
| void | InternalApplyStructProperty (const FReplicationStateDescriptor *StructDescriptor, void *RESTRICT Dst, const void *RESTRICT Src) |
| |
| void | InternalApplyPropertyValue (const FReplicationStateDescriptor *Descriptor, uint32 MemberIndex, void *RESTRICT Dst, const void *RESTRICT Src) |
| |
| void | InternalCopyStructProperty (const FReplicationStateDescriptor *StructDescriptor, void *RESTRICT Dst, const void *RESTRICT Src) |
| |
| void | InternalCopyPropertyValue (const FReplicationStateDescriptor *Descriptor, uint32 MemberIndex, void *RESTRICT Dst, const void *RESTRICT Src) |
| |
| bool | InternalCompareAndCopyArrayWithElementChangeMask (const FReplicationStateDescriptor *Descriptor, uint32 MemberIndex, const void *RESTRICT DstArray, const void *RESTRICT SrcArray, UE::Net::FNetBitArrayView &ChangeMask) |
| |
| | ENUM_CLASS_FLAGS (EMemberPropertyTraits) |
| |
| bool | IsDeltaCompressionEnabled () |
| |
| void | MarkNetObjectStateDirty (uint32 ReplicationSystemId, FInternalNetRefIndex NetObjectIndex) |
| |
| void | ForceNetUpdate (uint32 ReplicationSystemId, FInternalNetRefIndex NetObjectIndex) |
| |
| | ENUM_CLASS_FLAGS (ENetObjectGroupTraits) |
| |
| FName | GetStaticFilterName (FNetObjectFilterHandle Filter) |
| |
| constexpr bool | IsIrisPushModelEnabled (bool=false) |
| |
| | ENUM_CLASS_FLAGS (EAddSubObjectFlags) |
| |
| | ENUM_CLASS_FLAGS (ERemoveDependentObjectFlags) |
| |
| void | CallRegisterReplicationFragments (UObject *Object, FFragmentRegistrationContext &Context, EFragmentRegistrationFlags RegistrationFlags) |
| |
| | ENUM_CLASS_FLAGS (EReplicationDataStreamDebugFeatures) |
| |
| void | WriteReplicationDataStreamDebugFeatures (FNetBitStreamWriter *Writer, EReplicationDataStreamDebugFeatures Features) |
| |
| EReplicationDataStreamDebugFeatures | ReadReplicationDataStreamDebugFeatures (FNetBitStreamReader *Reader) |
| |
| | ENUM_CLASS_FLAGS (ENetObjectAttachmentDispatchFlags) |
| |
| template<> |
| void | FReplicationWriter::HandleDroppedRecord< FReplicationWriter::EReplicatedObjectState::WaitOnCreateConfirmation > (FReplicationWriter::EReplicatedObjectState CurrentState, const FReplicationRecord::FRecordInfo &RecordInfo, FReplicationInfo &Info, const FNetObjectAttachmentsWriter::FReliableReplicationRecord &AttachmentRecord) |
| |
| template<> |
| void | FReplicationWriter::HandleDroppedRecord< FReplicationWriter::EReplicatedObjectState::Created > (FReplicationWriter::EReplicatedObjectState CurrentState, const FReplicationRecord::FRecordInfo &RecordInfo, FReplicationInfo &Info, const FNetObjectAttachmentsWriter::FReliableReplicationRecord &AttachmentRecord) |
| |
| template<> |
| void | FReplicationWriter::HandleDroppedRecord< FReplicationWriter::EReplicatedObjectState::WaitOnDestroyConfirmation > (FReplicationWriter::EReplicatedObjectState CurrentState, const FReplicationRecord::FRecordInfo &RecordInfo, FReplicationInfo &Info, const FNetObjectAttachmentsWriter::FReliableReplicationRecord &AttachmentRecord) |
| |
| uint32 | FloatAsUint32 (float Value) |
| |
| float | Uint32AsFloat (uint32 Value) |
| |
| bool | InitEnumNetSerializerConfig (FEnumInt8NetSerializerConfig &OutConfig, const UEnum *Enum) |
| |
| bool | InitEnumNetSerializerConfig (FEnumInt16NetSerializerConfig &OutConfig, const UEnum *Enum) |
| |
| bool | InitEnumNetSerializerConfig (FEnumInt32NetSerializerConfig &OutConfig, const UEnum *Enum) |
| |
| bool | InitEnumNetSerializerConfig (FEnumInt64NetSerializerConfig &OutConfig, const UEnum *Enum) |
| |
| bool | InitEnumNetSerializerConfig (FEnumUint8NetSerializerConfig &OutConfig, const UEnum *Enum) |
| |
| bool | InitEnumNetSerializerConfig (FEnumUint16NetSerializerConfig &OutConfig, const UEnum *Enum) |
| |
| bool | InitEnumNetSerializerConfig (FEnumUint32NetSerializerConfig &OutConfig, const UEnum *Enum) |
| |
| bool | InitEnumNetSerializerConfig (FEnumUint64NetSerializerConfig &OutConfig, const UEnum *Enum) |
| |
| template<typename GetDataFunc , typename WriteSparseUint32Func > |
| void | WriteSparseBitArray (FNetBitStreamWriter *Writer, const uint32 *Data, uint32 BitCount, GetDataFunc &&GetDataFunction, WriteSparseUint32Func &&WriteSparseUint32Function) |
| |
| template<typename GetDataFunc , typename ReadSparseUint32Func > |
| void | ReadSparseBitArray (FNetBitStreamReader *Reader, uint32 *OutData, uint32 BitCount, GetDataFunc &&GetDataFunction, ReadSparseUint32Func &&ReadSparseUint32Function) |
| |
| template<typename WriteSparseUint32Func > |
| void | WriteSparseBitArrayDelta (FNetBitStreamWriter *Writer, const uint32 *Data, const uint32 *OldData, uint32 BitCount, WriteSparseUint32Func &&WriteSparseUint32Function) |
| |
| template<typename ReadSparseUint32Func > |
| void | ReadSparseBitArrayDelta (FNetBitStreamReader *Reader, uint32 *OutData, const uint32 *OldData, uint32 BitCount, ReadSparseUint32Func &&ReadSparseUint32Function) |
| |
| | CSV_DEFINE_CATEGORY (IrisPreUpdateMS, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisPreUpdateCount, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisPollMS, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisPollCount, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisPollWasteMS, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisPollWasteCount, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisQuantizeMS, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisQuantizeCount, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisWriteMS, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisWriteCount, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisWriteKBytes, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisWriteWasteMS, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisWriteWasteCount, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisWriteWasteKBytes, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisWriteCreationInfoCount, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisWriteCreationInfoKBytes, WITH_SERVER_CODE) |
| |
| | CSV_DEFINE_CATEGORY (IrisWriteExportsCount, WITH_SERVER_CODE) |
| |
| constexpr uint32 | GetInternalMemberOffset (const FReplicationStateMemberDescriptor *MemberDescriptors, const FInternalTypeInfo *InternalTypeInfo, uint32 MemberIndex) |
| |
| template<typename T > |
| constexpr uint32 | GetInternalStateSize (const T &MemberDescriptors, const FInternalTypeInfo *InternalTypeInfo) |
| |
| template<typename T > |
| constexpr uint16 | GetInternalStateAlignment (const T &MemberDescriptors, const FInternalTypeInfo *InternalTypeInfo) |
| |
| template<typename T > |
| constexpr uint32 | GetMemberChangeMaskSize (const T &MemberChangeMaskDescriptors) |
| |
| UE::Net::FReplicationStateHeader & | GetReplicationStateHeader (void *StateBuffer, const FReplicationStateDescriptor *Descriptor) |
| |
| bool | IsReplicationStateBound (void *StateBuffer, const FReplicationStateDescriptor *Descriptor) |
| |
| FNetBitArrayView | GetMemberChangeMask (uint8 *StateBuffer, const FReplicationStateDescriptor *Descriptor) |
| |
| FNetBitArrayView | GetMemberConditionalChangeMask (uint8 *StateBuffer, const FReplicationStateDescriptor *Descriptor) |
| |
| FNetBitArrayView | GetMemberPollMask (uint8 *StateBuffer, const FReplicationStateDescriptor *Descriptor) |
| |
| void | ResetMemberPollMask (uint8 *StateBuffer, const FReplicationStateDescriptor *Descriptor) |
| |
| void | MarkDirty (UE::Net::FReplicationStateHeader &InternalState, FNetBitArrayView &MemberChangeMask, const FReplicationStateMemberChangeMaskDescriptor &ChangeMaskInfo) |
| |
|
| bool | bTrackDormantObjectsByLevel = false |
| |
| int32 | SendDormantDestructionOnRemoval = 1 |
| |
| bool | bUpdateReplicationSystemWithNoConnections = true |
| |
| FAutoConsoleCommandWithWorld | DumpActiveNetActorsCommand (TEXT("net.DumpActiveNetActors"), TEXT("Dumps all of the active net actors in the replication system."), FConsoleCommandWithWorldDelegate::CreateStatic(DumpActiveNetActors)) |
| |
| FAutoConsoleCommand | PrintNetConnectionInfoCommand (TEXT("net.PrintNetConnections"), TEXT("Prints information on all net connections of a NetDriver. Defaults to the GameNetDriver. Choose a different driver via NetDriverName= or NetDriverDefinition="), FConsoleCommandWithArgsDelegate::CreateLambda([](const TArray< FString > &Args) { FName NetDriverName;FName NetDriverDef=NAME_GameNetDriver;if(const FString *DriverNameStr=Args.FindByPredicate([](const FString &Str) { return Str.Contains(TEXT("NetDriverName="));})) { FParse::Value(**DriverNameStr, TEXT("NetDriverName="), NetDriverName);} else if(const FString *DriverDefStr=Args.FindByPredicate([](const FString &Str) { return Str.Contains(TEXT("NetDriverDef="));})) { FParse::Value(**DriverDefStr, TEXT("NetDriverDef="), NetDriverDef);} auto PrintNetConnections=[](UNetDriver *NetDriver) { if(NetDriver->ServerConnection) { UE_LOG(LogNet, Display, TEXT("Printing Server Connection for: %s (Definition=%s)"), *NetDriver->NetDriverName.ToString(), *NetDriver->GetNetDriverDefinition().ToString());UE_LOG(LogNet, Display, TEXT("\tServerConnection: ConnectionId=%u ViewTarget=%s FullDescription=%s Child=false"), NetDriver->ServerConnection->GetConnectionHandle().GetParentConnectionId(), *GetNameSafe(NetDriver->ServerConnection->ViewTarget), *NetDriver->ServerConnection->Describe());for(UNetConnection *ChildNetConnection :NetDriver->ServerConnection->Children) { UE_LOG(LogNet, Display, TEXT("\tServerConnection: ConnectionId=%u ViewTarget=%s FullDescription=%s Child=true"), ChildNetConnection->GetConnectionHandle().GetParentConnectionId(), *GetNameSafe(ChildNetConnection->ViewTarget), *ChildNetConnection->Describe());} } else { UE_LOG(LogNet, Display, TEXT("Printing Client Connections (%u) for: %s (Definition=%s)"), NetDriver->ClientConnections.Num(), *NetDriver->NetDriverName.ToString(), *NetDriver->GetNetDriverDefinition().ToString());for(UNetConnection *NetConnection :NetDriver->ClientConnections) { UE_LOG(LogNet, Display, TEXT("\tClientConnection: ConnectionId=%u ViewTarget=%s NetId=%s FullDescription=%s Child=false"), NetConnection->GetConnectionHandle().GetParentConnectionId(), *GetNameSafe(NetConnection->ViewTarget), *NetConnection->PlayerId.ToDebugString(), *NetConnection->Describe());for(UNetConnection *ChildNetConnection :NetConnection->Children) { UE_LOG(LogNet, Display, TEXT("\tClientConnection: ConnectionId=%u ViewTarget=%s NetId=%s FullDescription=%s Child=true"), ChildNetConnection->GetConnectionHandle().GetParentConnectionId(), *GetNameSafe(ChildNetConnection->ViewTarget), *ChildNetConnection->PlayerId.ToDebugString(), *ChildNetConnection->Describe());} } } };for(TObjectIterator< UNetDriver > It;It;++It) { if(UNetDriver *NetDriver= *It) { if(NetDriverName !=NAME_None) { if(NetDriver->NetDriverName==NetDriverName) { PrintNetConnections(NetDriver);} } else if(NetDriverDef !=NAME_None) { if(NetDriver->GetNetDriverDefinition()==NetDriverDef) { PrintNetConnections(NetDriver);} } else { PrintNetConnections(NetDriver);} } } })) |
| |
| bool | bRemapStableSubobjects = true |
| |
| UE::Net::Private::FNopNetSerializerInfo | NopNetSerializerInfo |
| |
| constexpr DeltaCompressionBaselineStateInfoIndexType | InvalidDeltaCompressionBaselineStateInfoIndex = 0 |
| |
| bool | bCVarRepFilterCullNonRelevant = true |
| |
| bool | bCVarRepFilterValidateNoSubObjectInScopeWithFilteredOutRootObject = false |
| |
| bool | bIsFactoryRegistrationAllowed = true |
| |
| FAutoConsoleVariableRef | CVarIrisAllowAsyncLoading (TEXT("net.iris.AllowAsyncLoading"), bIrisAllowAsyncLoading, TEXT("Flag to allow or disallow async loading when using iris replication. Note: net.allowAsyncLoading must also be enabled."), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarIrisAsyncLoadingFailPackageName (TEXT("net.Iris.AsyncLoading.FailPackageName"), IrisAsyncLoadingFailPackageName, TEXT("Always fail loading the specified package name. For debugging purposes."), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarIrisAsyncLoadingFailNextLoad (TEXT("net.Iris.AsyncLoading.FailNextLoad"), bIrisAsyncLoadingFailNextLoad, TEXT("Simulate failing the next async loading request. For debugging purposes."), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarIrisAsyncLoadingFailAllLoads (TEXT("net.Iris.AsyncLoading.FailAllLoads"), bIrisAsyncLoadingFailAllLoads, TEXT("Simulate failing all async loading requests. For debugging purposes."), ECVF_Default) |
| |
| FAutoConsoleVariableRef | CVarIrisEnableRemoveReferenceFallbackPath (TEXT("net.iris.ObjectReferenceCache.EnableRemoveReferenceFallbackPath"), bIrisEnableRemoveReferenceFallbackPath, TEXT("Whether to enable the slow fallback path or not when ObjectReferenceCache::RemoveReference is passed a null pointer object."), ECVF_Default) |
| |
| bool | bReplicationDataStreamDebugBatchSizePerObjectEnabled |
| |
| bool | bReplicationDataStreamDebugSentinelsEnabled |
| |
| constexpr uint32 | SerializeSparseArrayMaxBitCount = 1024U |
| |
| constexpr uint32 | SerializeSparseArrayMaxWordCount = SerializeSparseArrayMaxBitCount / 32U |
| |
| const uint32 | SparseUint32UsingIndices_MaxEncodedIndexBits = 3U |
| |
| const uint32 | SparseUint32UsingIndices_EncodedIndexBitsHeaderSize = GetBitsNeeded(SparseUint32UsingIndices_MaxEncodedIndexBits) |
| |
===================== NetSerialize and NetDeltaSerialize customization. =====================
The main purpose of this file it to hold custom methods for NetSerialization and NetDeltaSerialization. A longer explanation on how this all works is covered below. For quick reference however, this is how to customize net serialization for structs.
To define your own NetSerialize and NetDeltaSerialize on a structure: (of course you don't need to define both! Usually you only want to define one, but for brevity Im showing both at once) Everything related to Fast TArray Replication has been moved to "Net/Serialization/FastArraySerializer.h" ===================== Vector NetSerialization customization. ===================== Provides custom NetSerilization for FVectors.
There are two types of net quantization available:
Fixed Quantization (SerializeFixedVector) -Fixed number of bits -Max Value specified as template parameter
Serialized value is scaled based on num bits and max value. Precision is determined by MaxValue and NumBits (if 2^NumBits is > MaxValue, you will have room for extra precision).
This format is good for things like normals, where the magnitudes are often similar. For example normal values may often be in the 0.1f - 1.f range. In a packed format, the overhead in serializing num of bits per component would outweigh savings from serializing very small ( < 0.1f ) values.
It is also good for performance critical sections since you can guarantee byte alignment if that is important.
Packed Quantization (SerializePackedVector) -Scaling factor (usually 10, 100, etc) -Max number of bits per component (this is maximum, not a constant)
The format is <num of bits per component> <N bits for X> <N bits for Y> <N bits for Z>
The advantages to this format are that packed nature. You may support large magnitudes and have as much precision as you want. All while having small magnitudes take less space.
The trade off is that there is overhead in serializing how many bits are used for each component, and byte alignment is almost always thrown off.