UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
FSkinWeightLookupVertexBuffer Class Reference

#include <SkinWeightVertexBuffer.h>

+ Inheritance diagram for FSkinWeightLookupVertexBuffer:

Public Member Functions

ENGINE_API FSkinWeightLookupVertexBuffer ()
 
ENGINE_API FSkinWeightLookupVertexBuffer (const FSkinWeightLookupVertexBuffer &Other)
 
ENGINE_API ~FSkinWeightLookupVertexBuffer ()
 
ENGINE_API FSkinWeightLookupVertexBufferoperator= (const FSkinWeightLookupVertexBuffer &Other)
 
ENGINE_API void CleanUp ()
 
bool IsLookupDataValid () const
 
const uint8GetLookupData () const
 
uint8GetLookupData ()
 
void Init (uint32 InNumVertices)
 
void SerializeMetaData (FArchive &Ar)
 
ENGINE_API void SetMetaData (uint32 InNumVertices)
 
void CopyMetaData (const FSkinWeightLookupVertexBuffer &Other)
 
virtual void InitRHI (FRHICommandListBase &RHICmdList) override
 
virtual void ReleaseRHI () override
 
virtual FString GetFriendlyName () const override
 
uint32 GetNumVertices () const
 
uint32 GetStride () const
 
uint32 GetVertexDataSize () const
 
FRHIShaderResourceViewGetSRV () const
 
void SetNeedsCPUAccess (bool bInNeedsCPUAccess)
 
bool GetNeedsCPUAccess () const
 
FBufferRHIRef CreateRHIBuffer (FRHICommandListBase &RHICmdList)
 
void InitRHIForStreaming (FRHIBuffer *IntermediateBuffer, FRHIResourceReplaceBatcher &Batcher)
 
void ReleaseRHIForStreaming (FRHIResourceReplaceBatcher &Batcher)
 
void GetWeightOffsetAndInfluenceCount (uint32 VertexIndex, uint32 &OutWeightOffset, uint32 &OutInfluenceCount) const
 
void SetWeightOffsetAndInfluenceCount (uint32 VertexIndex, uint32 WeightOffset, uint32 InfluenceCount)
 
- Public Member Functions inherited from FVertexBuffer
RENDERCORE_API FVertexBuffer ()
 
RENDERCORE_API FVertexBuffer (const FVertexBuffer &)
 
RENDERCORE_API FVertexBufferoperator= (const FVertexBuffer &Other)
 
virtual RENDERCORE_API ~FVertexBuffer ()
 
const FBufferRHIRefGetRHI () const
 
RENDERCORE_API void SetRHI (const FBufferRHIRef &BufferRHI)
 
- Public Member Functions inherited from FRenderResource
RENDERCORE_API FRenderResource ()
 
RENDERCORE_API FRenderResource (ERHIFeatureLevel::Type InFeatureLevel)
 
RENDERCORE_API FRenderResource (const FRenderResource &)
 
RENDERCORE_API FRenderResource (FRenderResource &&)
 
RENDERCORE_API FRenderResourceoperator= (const FRenderResource &Other)
 
RENDERCORE_API FRenderResourceoperator= (FRenderResource &&Other)
 
virtual RENDERCORE_API ~FRenderResource ()
 
virtual RENDERCORE_API void InitResource (FRHICommandListBase &RHICmdList)
 
virtual RENDERCORE_API void ReleaseResource ()
 
RENDERCORE_API void UpdateRHI (FRHICommandListBase &RHICmdList)
 
bool IsInitialized () const
 
int32 GetListIndex () const
 
EInitPhase GetInitPhase () const
 
void SetOwnerName (FName InOwnerName)
 
FName GetOwnerName () const
 
void SetResourceName (FName InResourceName)
 
FName GetResourceName () const
 

Protected Attributes

FShaderResourceViewRHIRef SRVValue
 

Friends

FArchiveoperator<< (FArchive &Ar, FSkinWeightLookupVertexBuffer &VertexBuffer)
 

Additional Inherited Members

- Public Types inherited from FRenderResource
enum class  EInitPhase : uint8 { Pre , Default , MAX }
 
- Static Public Member Functions inherited from FRenderResource
static RENDERCORE_API void ReleaseRHIForAllResources ()
 
static RENDERCORE_API void InitPreRHIResources ()
 
static RENDERCORE_API void ChangeFeatureLevel (ERHIFeatureLevel::Type NewFeatureLevel)
 
static RENDERCORE_API FName SetScopeName (FName Name)
 
- Public Attributes inherited from FVertexBuffer
FBufferRHIRef VertexBufferRHI
 
- Public Attributes inherited from FRenderResource
ERenderResourceState ResourceState = ERenderResourceState::Default
 
- Protected Member Functions inherited from FRenderResource
void SetFeatureLevel (const FStaticFeatureLevel InFeatureLevel)
 
const FStaticFeatureLevel GetFeatureLevel () const
 
bool HasValidFeatureLevel () const
 
template<typename T >
FBufferRHIRef CreateRHIBuffer (FRHICommandListBase &RHICmdList, T &InOutResourceObject, uint32 ResourceCount, EBufferUsageFlags InBufferUsageFlags, const TCHAR *InDebugName)
 
void SetInitPhase (EInitPhase InInitPhase)
 
- Static Protected Member Functions inherited from FRenderResource
static RENDERCORE_API FRHICommandListBaseGetImmediateCommandList ()
 

Detailed Description

A lookup vertex buffer storing skin weight stream offset / influence count. Only used for unlimited bone influences.

Constructor & Destructor Documentation

◆ FSkinWeightLookupVertexBuffer() [1/2]

FSkinWeightLookupVertexBuffer::FSkinWeightLookupVertexBuffer ( )

Default constructor.

◆ FSkinWeightLookupVertexBuffer() [2/2]

FSkinWeightLookupVertexBuffer::FSkinWeightLookupVertexBuffer ( const FSkinWeightLookupVertexBuffer Other)

Constructor (copy)

◆ ~FSkinWeightLookupVertexBuffer()

FSkinWeightLookupVertexBuffer::~FSkinWeightLookupVertexBuffer ( )

Destructor.

Member Function Documentation

◆ CleanUp()

void FSkinWeightLookupVertexBuffer::CleanUp ( )

Delete existing resources

◆ CopyMetaData()

void FSkinWeightLookupVertexBuffer::CopyMetaData ( const FSkinWeightLookupVertexBuffer Other)

◆ CreateRHIBuffer()

FBufferRHIRef FSkinWeightLookupVertexBuffer::CreateRHIBuffer ( FRHICommandListBase RHICmdList)

Create an RHI vertex buffer with CPU data. CPU data may be discarded after creation (see TResourceArray::Discard)

◆ GetFriendlyName()

virtual FString FSkinWeightLookupVertexBuffer::GetFriendlyName ( ) const
inlineoverridevirtual
Returns
The resource's friendly name. Typically a UObject name.

Reimplemented from FVertexBuffer.

◆ GetLookupData() [1/2]

uint8 * FSkinWeightLookupVertexBuffer::GetLookupData ( )
inline

◆ GetLookupData() [2/2]

const uint8 * FSkinWeightLookupVertexBuffer::GetLookupData ( ) const
inline

◆ GetNeedsCPUAccess()

bool FSkinWeightLookupVertexBuffer::GetNeedsCPUAccess ( ) const
inline

◆ GetNumVertices()

uint32 FSkinWeightLookupVertexBuffer::GetNumVertices ( ) const
inline
Returns
number of vertices in this vertex buffer

◆ GetSRV()

FRHIShaderResourceView * FSkinWeightLookupVertexBuffer::GetSRV ( ) const
inline

◆ GetStride()

uint32 FSkinWeightLookupVertexBuffer::GetStride ( ) const
inline
Returns
cached stride for vertex data type for this vertex buffer

◆ GetVertexDataSize()

uint32 FSkinWeightLookupVertexBuffer::GetVertexDataSize ( ) const
inline
Returns
total size of data in resource array

◆ GetWeightOffsetAndInfluenceCount()

void FSkinWeightLookupVertexBuffer::GetWeightOffsetAndInfluenceCount ( uint32  VertexIndex,
uint32 OutWeightOffset,
uint32 OutInfluenceCount 
) const

◆ Init()

void FSkinWeightLookupVertexBuffer::Init ( uint32  InNumVertices)

◆ InitRHI()

void FSkinWeightLookupVertexBuffer::InitRHI ( FRHICommandListBase RHICmdList)
overridevirtual

Initializes the RHI resources used by this resource. Called when entering the state where both the resource and the RHI have been initialized. This is only called by the rendering thread.

Reimplemented from FRenderResource.

◆ InitRHIForStreaming()

void FSkinWeightLookupVertexBuffer::InitRHIForStreaming ( FRHIBuffer IntermediateBuffer,
FRHIResourceReplaceBatcher Batcher 
)

Similar to Init/ReleaseRHI but only update existing SRV so references to the SRV stays valid

◆ IsLookupDataValid()

bool FSkinWeightLookupVertexBuffer::IsLookupDataValid ( ) const
Returns
true is LookupData is valid

◆ operator=()

FSkinWeightLookupVertexBuffer & FSkinWeightLookupVertexBuffer::operator= ( const FSkinWeightLookupVertexBuffer Other)

Assignment. Assumes that vertex buffer will be rebuilt

◆ ReleaseRHI()

void FSkinWeightLookupVertexBuffer::ReleaseRHI ( )
overridevirtual

Releases the RHI resources used by this resource. Called when leaving the state where both the resource and the RHI have been initialized. This is only called by the rendering thread.

Reimplemented from FVertexBuffer.

◆ ReleaseRHIForStreaming()

void FSkinWeightLookupVertexBuffer::ReleaseRHIForStreaming ( FRHIResourceReplaceBatcher Batcher)

◆ SerializeMetaData()

void FSkinWeightLookupVertexBuffer::SerializeMetaData ( FArchive Ar)

◆ SetMetaData()

void FSkinWeightLookupVertexBuffer::SetMetaData ( uint32  InNumVertices)

◆ SetNeedsCPUAccess()

void FSkinWeightLookupVertexBuffer::SetNeedsCPUAccess ( bool  bInNeedsCPUAccess)
inline

Set if the CPU needs access to this vertex buffer

◆ SetWeightOffsetAndInfluenceCount()

void FSkinWeightLookupVertexBuffer::SetWeightOffsetAndInfluenceCount ( uint32  VertexIndex,
uint32  WeightOffset,
uint32  InfluenceCount 
)

Friends And Related Symbol Documentation

◆ operator<<

FArchive & operator<< ( FArchive Ar,
FSkinWeightLookupVertexBuffer VertexBuffer 
)
friend

Member Data Documentation

◆ SRVValue

FShaderResourceViewRHIRef FSkinWeightLookupVertexBuffer::SRVValue
protected

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