UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
IPrimitiveComponent Class Referenceabstract

#include <ComponentInterfaces.h>

+ Inheritance diagram for IPrimitiveComponent:

Public Member Functions

virtual bool IsRenderStateCreated () const =0
 
virtual bool IsRenderStateDirty () const =0
 
virtual bool ShouldCreateRenderState () const =0
 
virtual bool IsRegistered () const =0
 
virtual bool IsUnreachable () const =0
 
virtual UWorldGetWorld () const =0
 
virtual FSceneInterfaceGetScene () const =0
 
virtual FPrimitiveSceneProxyGetSceneProxy () const =0
 
virtual void GetUsedMaterials (TArray< UMaterialInterface * > &OutMaterials, bool bGetDebugMaterials=false) const =0
 
virtual void MarkRenderStateDirty ()=0
 
virtual void DestroyRenderState ()=0
 
virtual void CreateRenderState (FRegisterComponentContext *Context)=0
 
virtual FString GetName () const =0
 
virtual FString GetFullName () const =0
 
virtual FTransform GetTransform () const =0
 
virtual FBoxSphereBounds GetBounds () const =0
 
virtual float GetLastRenderTimeOnScreen () const =0
 
virtual void GetPrimitiveStats (FPrimitiveStats &PrimitiveStats) const =0
 
virtual UObjectGetUObject ()=0
 
virtual const UObjectGetUObject () const =0
 
virtual void PrecachePSOs ()=0
 
template<class T >
const T * GetUObject () const
 
template<class T >
T * GetUObject ()
 
virtual UObjectGetOwner () const =0
 
template<class T >
T * GetOwner ()
 
virtual FString GetOwnerName () const =0
 
virtual FPrimitiveSceneProxyCreateSceneProxy ()=0
 
virtual void GetStreamableRenderAssetInfo (TArray< struct FStreamingRenderAssetPrimitiveInfo > &StreamableRenderAssets) const =0
 
virtual HHitProxyCreatePrimitiveHitProxies (TArray< TRefCountPtr< HHitProxy > > &OutHitProxies)=0
 

Static Public Member Functions

static ENGINE_API void AddImplementer (const FComponentInterfaceImplementation &Implementer)
 
static ENGINE_API void RemoveImplementer (const UClass *ImplementerClass)
 

Static Protected Attributes

static ENGINE_API TArray< FComponentInterfaceImplementationImplementers
 

Friends

template<class T >
class TComponentInterfaceIterator
 

Member Function Documentation

◆ AddImplementer()

void IPrimitiveComponent::AddImplementer ( const FComponentInterfaceImplementation Implementer)
static

◆ CreatePrimitiveHitProxies()

virtual HHitProxy * IPrimitiveComponent::CreatePrimitiveHitProxies ( TArray< TRefCountPtr< HHitProxy > > &  OutHitProxies)
pure virtual

◆ CreateRenderState()

virtual void IPrimitiveComponent::CreateRenderState ( FRegisterComponentContext Context)
pure virtual

◆ CreateSceneProxy()

virtual FPrimitiveSceneProxy * IPrimitiveComponent::CreateSceneProxy ( )
pure virtual

◆ DestroyRenderState()

virtual void IPrimitiveComponent::DestroyRenderState ( )
pure virtual

◆ GetBounds()

virtual FBoxSphereBounds IPrimitiveComponent::GetBounds ( ) const
pure virtual

◆ GetFullName()

virtual FString IPrimitiveComponent::GetFullName ( ) const
pure virtual

◆ GetLastRenderTimeOnScreen()

virtual float IPrimitiveComponent::GetLastRenderTimeOnScreen ( ) const
pure virtual

◆ GetName()

virtual FString IPrimitiveComponent::GetName ( ) const
pure virtual

◆ GetOwner() [1/2]

template<class T >
T * IPrimitiveComponent::GetOwner ( )
inline

◆ GetOwner() [2/2]

virtual UObject * IPrimitiveComponent::GetOwner ( ) const
pure virtual

◆ GetOwnerName()

virtual FString IPrimitiveComponent::GetOwnerName ( ) const
pure virtual

◆ GetPrimitiveStats()

virtual void IPrimitiveComponent::GetPrimitiveStats ( FPrimitiveStats PrimitiveStats) const
pure virtual

◆ GetScene()

virtual FSceneInterface * IPrimitiveComponent::GetScene ( ) const
pure virtual

◆ GetSceneProxy()

virtual FPrimitiveSceneProxy * IPrimitiveComponent::GetSceneProxy ( ) const
pure virtual

◆ GetStreamableRenderAssetInfo()

virtual void IPrimitiveComponent::GetStreamableRenderAssetInfo ( TArray< struct FStreamingRenderAssetPrimitiveInfo > &  StreamableRenderAssets) const
pure virtual

◆ GetTransform()

virtual FTransform IPrimitiveComponent::GetTransform ( ) const
pure virtual

◆ GetUObject() [1/4]

template<class T >
T * IPrimitiveComponent::GetUObject ( )
inline

◆ GetUObject() [2/4]

template<class T >
const T * IPrimitiveComponent::GetUObject ( ) const
inline

◆ GetUObject() [3/4]

virtual const UObject * IPrimitiveComponent::GetUObject ( ) const
pure virtual

◆ GetUObject() [4/4]

virtual UObject * IPrimitiveComponent::GetUObject ( )
pure virtual

◆ GetUsedMaterials()

virtual void IPrimitiveComponent::GetUsedMaterials ( TArray< UMaterialInterface * > &  OutMaterials,
bool  bGetDebugMaterials = false 
) const
pure virtual

◆ GetWorld()

virtual UWorld * IPrimitiveComponent::GetWorld ( ) const
pure virtual

◆ IsRegistered()

virtual bool IPrimitiveComponent::IsRegistered ( ) const
pure virtual

◆ IsRenderStateCreated()

virtual bool IPrimitiveComponent::IsRenderStateCreated ( ) const
pure virtual

◆ IsRenderStateDirty()

virtual bool IPrimitiveComponent::IsRenderStateDirty ( ) const
pure virtual

◆ IsUnreachable()

virtual bool IPrimitiveComponent::IsUnreachable ( ) const
pure virtual

◆ MarkRenderStateDirty()

virtual void IPrimitiveComponent::MarkRenderStateDirty ( )
pure virtual

◆ PrecachePSOs()

virtual void IPrimitiveComponent::PrecachePSOs ( )
pure virtual

◆ RemoveImplementer()

void IPrimitiveComponent::RemoveImplementer ( const UClass ImplementerClass)
static

◆ ShouldCreateRenderState()

virtual bool IPrimitiveComponent::ShouldCreateRenderState ( ) const
pure virtual

Friends And Related Symbol Documentation

◆ TComponentInterfaceIterator

template<class T >
friend class TComponentInterfaceIterator
friend

Member Data Documentation

◆ Implementers

TArray< FComponentInterfaceImplementation > IPrimitiveComponent::Implementers
staticprotected

The documentation for this class was generated from the following files: