UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
StaticMeshResources.h File Reference

Go to the source code of this file.

Classes

class  FStaticMeshLODGroup
 
class  FStaticMeshLODSettings
 
struct  FStaticMeshSection
 
struct  FStaticMeshSectionAreaWeightedTriangleSampler
 
struct  FStaticMeshAreaWeightedSectionSampler
 
class  FStaticMeshSectionAreaWeightedTriangleSamplerBuffer
 
struct  FStaticMeshVertexBuffers
 
struct  FAdditionalStaticMeshIndexBuffers
 
class  FStaticMeshSectionArray
 
struct  TIsZeroConstructType< FStaticMeshSectionArray >
 
struct  TIsContiguousContainer< FStaticMeshSectionArray >
 
struct  FStaticMeshLODResources
 
struct  FStaticMeshVertexFactories
 
struct  FStaticMeshRayTracingProxyLOD
 
struct  FStaticMeshRayTracingProxy
 
class  FStaticMeshRenderData
 
class  FStaticMeshComponentRecreateRenderStateContext
 
class  FStaticMeshComponentBulkReregisterContext
 
class  FStaticMeshInstanceData
 

Macros

#define MAX_STATIC_MESH_LODS   8
 

Typedefs

typedef TArray< FStaticMeshSectionAreaWeightedTriangleSampler, FMemoryImageAllocatorFStaticMeshSectionAreaWeightedTriangleSamplerArray
 
using FStaticMeshLODResourcesArray = TIndirectArray< FStaticMeshLODResources >
 
using FStaticMeshVertexFactoriesArray = TArray< FStaticMeshVertexFactories >
 
using FStaticMeshRayTracingProxyLODArray = TIndirectArray< FStaticMeshRayTracingProxyLOD >
 

Enumerations

enum class  EBulkReregister { Component , RenderState }
 

Macro Definition Documentation

◆ MAX_STATIC_MESH_LODS

#define MAX_STATIC_MESH_LODS   8

The maximum number of static mesh LODs allowed.

Typedef Documentation

◆ FStaticMeshLODResourcesArray

◆ FStaticMeshRayTracingProxyLODArray

◆ FStaticMeshSectionAreaWeightedTriangleSamplerArray

◆ FStaticMeshVertexFactoriesArray

Enumeration Type Documentation

◆ EBulkReregister

enum class EBulkReregister
strong

FStaticMeshComponentBulkReregisterContext - More efficiently handles bulk reregistering of static mesh components, by removing and adding scene and physics debug render data in bulk render commands, rather than one at a time. A significant fraction of the cost of reregistering components is the synchronization cost of issuing commands to the render thread. Bulk render commands means you only pay this cost once, rather than per component, potentially providing up to a 4x speedup.

When a context is active, the bBulkReregister flag is set on the primitive component. This disables calls to SendRenderDebugPhysics, AddPrimitive, RemovePrimitive, and ReleasePrimitive, where they would otherwise occur during re-registration, with the assumption that the constructor and destructor of the context handles those tasks. To allow the optimization to be applied to re-created components, "AddSimpleConstructionScript" can be called to register simple construction scripts, so any components they create get added to the context as well. It's not a problem if re-reated components are missed by the context, they'll just lose performance by going through the slower individual component code path.

Enumerator
Component 
RenderState