#include <MeshRenderBufferSet.h>
FMeshRenderBufferSet stores a set of RenderBuffers for a mesh
◆ FMeshRenderBufferSet()
◆ ~FMeshRenderBufferSet()
| virtual FMeshRenderBufferSet::~FMeshRenderBufferSet |
( |
| ) |
|
|
inlinevirtual |
◆ DestroyRenderBufferSet()
Enqueue a command on the Render Thread to destroy the passed in buffer set. At this point the buffer set should be considered invalid.
◆ InitOrUpdateResource()
Initializes a render resource, or update it if already initialized.
- Warning
- This function can only be called on the Render Thread
◆ InvalidateRayTracingData()
| void FMeshRenderBufferSet::InvalidateRayTracingData |
( |
| ) |
|
|
inline |
◆ TransferVertexUpdateToGPU()
Fast path to update various vertex buffers. This path does not support changing the size/counts of any of the sub-buffers, a direct memcopy from the CPU-side buffer to the RHI buffer is used.
- Warning
- This can only be called on the Rendering Thread.
◆ UpdateRaytracingGeometryIfEnabled()
| void FMeshRenderBufferSet::UpdateRaytracingGeometryIfEnabled |
( |
| ) |
|
|
inlineprotected |
◆ Upload()
| void FMeshRenderBufferSet::Upload |
( |
| ) |
|
------------— FMeshRenderBuffferSet ---------------— ///
Upload initialized mesh buffers.
- Warning
- This can only be called on the Rendering Thread.
◆ UploadIndexBufferUpdate()
| void FMeshRenderBufferSet::UploadIndexBufferUpdate |
( |
| ) |
|
|
inline |
Fast path to only update the primary and secondary index buffers. This can be used when (eg) the secondary index buffer is being used to highlight/hide a subset of triangles.
- Warning
- This can only be called on the Rendering Thread.
◆ UploadVertexUpdate()
| void FMeshRenderBufferSet::UploadVertexUpdate |
( |
bool |
bPositions, |
|
|
bool |
bMeshAttribs, |
|
|
bool |
bColors |
|
) |
| |
Fast path to only update vertex buffers. This path rebuilds all the resources and reconfigures the vertex factory, so the counts/etc could be modified.
- Warning
- This can only be called on the Rendering Thread.
◆ ValidateRayTracingData()
| void FMeshRenderBufferSet::ValidateRayTracingData |
( |
| ) |
|
|
inline |
◆ bEnableRaytracing
| bool FMeshRenderBufferSet::bEnableRaytracing = false |
configure whether raytracing should be enabled for this RenderBufferSet
◆ bEnableSecondaryIndexBuffer
| bool FMeshRenderBufferSet::bEnableSecondaryIndexBuffer = false |
If secondary index buffer is enabled, we populate this index buffer with additional triangles indexing into the same vertex buffers
◆ BuffersLock
In situations where we want to update the existing Vertex or Index buffers, we need to synchronize access between the Game and Render threads. We use this lock to do that.
◆ ColorVertexBuffer
The buffer containing the vertex color data.
◆ IndexBuffer
◆ Material
Material to draw this mesh with
◆ PositionVertexBuffer
The buffer containing the position vertex data.
◆ SecondaryIndexBuffer
partition or subset of IndexBuffer that indexes into same vertex buffers
◆ StaticMeshVertexBuffer
The buffer containing vertex data.
◆ TriangleCount
| int FMeshRenderBufferSet::TriangleCount = 0 |
Number of triangles in this renderbuffer set. Note that triangles may be split between IndexBuffer and SecondaryIndexBuffer.
◆ Triangles
Optional list of triangles stored in this buffer. Storing this allows us to rebuild the buffers if vertex data changes.
◆ VertexFactory
The documentation for this class was generated from the following files: