UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
PrimitiveComponent.cpp File Reference
#include "Components/PrimitiveComponent.h"
#include "Chaos/ChaosEngineInterface.h"
#include "Chaos/PhysicsObjectCollisionInterface.h"
#include "ChaosInterfaceWrapperCore.h"
#include "Collision/CollisionConversions.h"
#include "Engine/HitResult.h"
#include "Engine/Level.h"
#include "Engine/OverlapResult.h"
#include "Engine/Texture.h"
#include "GameFramework/DamageType.h"
#include "EngineStats.h"
#include "GameFramework/Pawn.h"
#include "HLOD/HLODBatchingPolicy.h"
#include "HLOD/HLODSetup.h"
#include "PSOPrecache.h"
#include "AI/NavigationSystemBase.h"
#include "AI/Navigation/NavigationRelevantData.h"
#include "GameFramework/PlayerController.h"
#include "GameFramework/PhysicsVolume.h"
#include "GameFramework/WorldSettings.h"
#include "Components/SkeletalMeshComponent.h"
#include "Engine/CollisionProfile.h"
#include "Engine/SkeletalMesh.h"
#include "HitProxies.h"
#include "Materials/MaterialInstanceDynamic.h"
#include "ContentStreaming.h"
#include "PropertyPairsMap.h"
#include "UnrealEngine.h"
#include "PhysicsEngine/BodySetup.h"
#include "Logging/MessageLog.h"
#include "Misc/UObjectToken.h"
#include "Misc/MapErrors.h"
#include "CollisionDebugDrawingPublic.h"
#include "GameFramework/CheatManager.h"
#include "PhysicsEngine/PhysicsObjectExternalInterface.h"
#include "RenderingThread.h"
#include "Streaming/TextureStreamingHelpers.h"
#include "PrimitiveSceneProxy.h"
#include "SceneInterface.h"
#include "UObject/FortniteMainBranchObjectVersion.h"
#include "UObject/UE5SpecialProjectStreamObjectVersion.h"
#include "UObject/ObjectSaveContext.h"
#include "UObject/Package.h"
#include "Engine/DamageEvents.h"
#include "MeshUVChannelInfo.h"
#include "PrimitiveSceneDesc.h"
#include "PSOPrecacheMaterial.h"
#include "MaterialCachedData.h"
#include "MaterialShared.h"
#include "MarkActorRenderStateDirtyTask.h"
#include "Chaos/Serialization/SerializationUtils.h"
#include "Physics/Experimental/PhysScene_Chaos.h"
#include "PhysicsProxy/SingleParticlePhysicsProxy.h"
#include "PrimitiveComponentHelper.h"
#include "Materials/MaterialInterface.h"
#include "Components/InstancedStaticMeshComponent.h"
#include "Chaos/Serialization/SerializedDataBuffer.h"
#include "Chaos/Serialization/SerializedMultiPhysicsState.h"

Classes

struct  FPredicateFilterCanOverlap
 
struct  FPredicateFilterCannotOverlap
 

Namespaces

namespace  PrimitiveComponentStatics
 
namespace  PrimitiveComponentCVars
 
namespace  PhysicsReplicationCVars
 
namespace  PhysicsReplicationCVars::PredictiveInterpolationCVars
 

Macros

#define LOCTEXT_NAMESPACE   "PrimitiveComponent"
 
#define PERF_MOVECOMPONENT_STATS   0
 

Typedefs

typedef TArray< const FOverlapInfo *, TInlineAllocator< 8 > > TInlineOverlapPointerArray
 

Functions

 CSV_DEFINE_CATEGORY (PrimitiveComponent, false)
 
 DEFINE_LOG_CATEGORY_STATIC (LogPrimitiveComponent, Log, All)
 
 DEFINE_STAT (STAT_BeginComponentOverlap)
 
 DEFINE_STAT (STAT_MoveComponent_FastOverlap)
 
 DECLARE_CYCLE_STAT (TEXT("EndComponentOverlap"), STAT_EndComponentOverlap, STATGROUP_Game)
 
 DECLARE_CYCLE_STAT (TEXT("PrimComp DispatchBlockingHit"), STAT_DispatchBlockingHit, STATGROUP_Game)
 
template<class AllocatorType >
FORCEINLINE_DEBUGGABLE int32 IndexOfOverlapFast (const TArray< FOverlapInfo, AllocatorType > &OverlapArray, const FOverlapInfo &SearchItem)
 
template<class AllocatorType >
FORCEINLINE_DEBUGGABLE int32 IndexOfOverlapFast (const TArray< const FOverlapInfo *, AllocatorType > &OverlapPtrArray, const FOverlapInfo *SearchItem)
 
template<class AllocatorType >
FORCEINLINE_DEBUGGABLE void AddUniqueOverlapFast (TArray< FOverlapInfo, AllocatorType > &OverlapArray, FOverlapInfo &NewOverlap)
 
template<class AllocatorType >
FORCEINLINE_DEBUGGABLE void AddUniqueOverlapFast (TArray< FOverlapInfo, AllocatorType > &OverlapArray, FOverlapInfo &&NewOverlap)
 
bool SetPrimitiveData (FCustomPrimitiveData &PrimitiveData, int32 DataIndex, TConstArrayView< float > Values)
 
bool IsActorValidToNotify (AActor *Actor)
 
bool IsPrimCompValidAndAlive (UPrimitiveComponent *PrimComp)
 
bool AreActorsOverlapping (const AActor &A, const AActor &B)
 

Variables

int32 CVarShowInitialOverlaps = 0
 
FAutoConsoleVariableRef CVarRefShowInitialOverlaps (TEXT("p.ShowInitialOverlaps"), CVarShowInitialOverlaps, TEXT(" 0:off, otherwise on"), ECVF_Cheat)
 
 PRAGMA_DISABLE_DEPRECATION_WARNINGS
 
 PRAGMA_ENABLE_DEPRECATION_WARNINGS
 
float DebugLineLifetime
 

Macro Definition Documentation

◆ LOCTEXT_NAMESPACE

#define LOCTEXT_NAMESPACE   "PrimitiveComponent"

◆ PERF_MOVECOMPONENT_STATS

#define PERF_MOVECOMPONENT_STATS   0

Typedef Documentation

◆ TInlineOverlapPointerArray

Function Documentation

◆ AddUniqueOverlapFast() [1/2]

template<class AllocatorType >
FORCEINLINE_DEBUGGABLE void AddUniqueOverlapFast ( TArray< FOverlapInfo, AllocatorType > &  OverlapArray,
FOverlapInfo &&  NewOverlap 
)

◆ AddUniqueOverlapFast() [2/2]

template<class AllocatorType >
FORCEINLINE_DEBUGGABLE void AddUniqueOverlapFast ( TArray< FOverlapInfo, AllocatorType > &  OverlapArray,
FOverlapInfo NewOverlap 
)

◆ AreActorsOverlapping()

bool AreActorsOverlapping ( const AActor A,
const AActor B 
)

◆ CSV_DEFINE_CATEGORY()

CSV_DEFINE_CATEGORY ( PrimitiveComponent  ,
false   
)

◆ DECLARE_CYCLE_STAT() [1/2]

DECLARE_CYCLE_STAT ( TEXT("EndComponentOverlap")  ,
STAT_EndComponentOverlap  ,
STATGROUP_Game   
)

◆ DECLARE_CYCLE_STAT() [2/2]

DECLARE_CYCLE_STAT ( TEXT("PrimComp DispatchBlockingHit" ,
STAT_DispatchBlockingHit  ,
STATGROUP_Game   
)

◆ DEFINE_LOG_CATEGORY_STATIC()

DEFINE_LOG_CATEGORY_STATIC ( LogPrimitiveComponent  ,
Log  ,
All   
)

◆ DEFINE_STAT() [1/2]

DEFINE_STAT ( STAT_BeginComponentOverlap  )

◆ DEFINE_STAT() [2/2]

DEFINE_STAT ( STAT_MoveComponent_FastOverlap  )

◆ IndexOfOverlapFast() [1/2]

template<class AllocatorType >
FORCEINLINE_DEBUGGABLE int32 IndexOfOverlapFast ( const TArray< const FOverlapInfo *, AllocatorType > &  OverlapPtrArray,
const FOverlapInfo SearchItem 
)

◆ IndexOfOverlapFast() [2/2]

template<class AllocatorType >
FORCEINLINE_DEBUGGABLE int32 IndexOfOverlapFast ( const TArray< FOverlapInfo, AllocatorType > &  OverlapArray,
const FOverlapInfo SearchItem 
)

◆ IsActorValidToNotify()

bool IsActorValidToNotify ( AActor Actor)
extern

Used to determine if it is ok to call a notification on this object

◆ IsPrimCompValidAndAlive()

bool IsPrimCompValidAndAlive ( UPrimitiveComponent *  PrimComp)

Util to check if prim comp pointer is valid and still alive

◆ SetPrimitiveData()

bool SetPrimitiveData ( FCustomPrimitiveData PrimitiveData,
int32  DataIndex,
TConstArrayView< float Values 
)

Attempt to set the primitive data and return true if successful

Variable Documentation

◆ CVarRefShowInitialOverlaps

FAutoConsoleVariableRef CVarRefShowInitialOverlaps(TEXT("p.ShowInitialOverlaps"), CVarShowInitialOverlaps, TEXT(" 0:off, otherwise on"), ECVF_Cheat) ( TEXT("p.ShowInitialOverlaps")  ,
CVarShowInitialOverlaps  ,
TEXT(" 0:off, otherwise on" ,
ECVF_Cheat   
)

◆ CVarShowInitialOverlaps

int32 CVarShowInitialOverlaps = 0

◆ DebugLineLifetime

float DebugLineLifetime
extern

◆ PRAGMA_DISABLE_DEPRECATION_WARNINGS

PRAGMA_DISABLE_DEPRECATION_WARNINGS

◆ PRAGMA_ENABLE_DEPRECATION_WARNINGS

PRAGMA_ENABLE_DEPRECATION_WARNINGS