Navigation
API > API/Runtime > API/Runtime/Engine
| Name | FInstancedStaticMeshSceneProxy |
| Type | class |
| Header File | /Engine/Source/Runtime/Engine/Classes/Engine/InstancedStaticMesh.h |
| Include Path | #include "Engine/InstancedStaticMesh.h" |
Syntax
class FInstancedStaticMeshSceneProxy : public FStaticMeshSceneProxy
Inheritance Hierarchy
- FPrimitiveSceneProxy → FStaticMeshSceneProxy → FInstancedStaticMeshSceneProxy
Derived Classes
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FInstancedStaticMeshSceneProxy
(
UInstancedStaticMeshComponent* InComponent, |
Initialization constructor. | Engine/InstancedStaticMesh.h | |
FInstancedStaticMeshSceneProxy
(
const FInstancedStaticMeshSceneProxyDesc& InDesc, |
Initialization constructor. | Engine/InstancedStaticMesh.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
~FInstancedStaticMeshSceneProxy() |
Engine/InstancedStaticMesh.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bAnySegmentUsesWorldPositionOffset | bool | Engine/InstancedStaticMesh.h | ||
| bUseGpuLodSelection | bool | Engine/InstancedStaticMesh.h |
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| InstanceDataSceneProxy | TSharedPtr< FInstanceDataSceneProxy, ESPMode::ThreadSafe > | Engine/InstancedStaticMesh.h | ||
| LODLooseUniformBuffers | TMap< uint32, FInstancedStaticMeshVFLooseUniformShaderParametersRef > | Stores a loose uniform buffer per LOD, used for static view relevance. | Engine/InstancedStaticMesh.h |
Functions
Public
Overridden from FStaticMeshSceneProxy
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void GetDistanceFieldAtlasData
(
const FDistanceFieldVolumeData*& OutDistanceFieldData, |
Engine/InstancedStaticMesh.h | ||
virtual bool GetMeshElement
(
int32 LODIndex, |
Sets up a FMeshBatch for a specific LOD and element. | Engine/InstancedStaticMesh.h | |
virtual int32 GetNumMeshBatches() |
Gets the number of mesh batches required to represent the proxy, aside from section needs. | Engine/InstancedStaticMesh.h | |
virtual bool GetShadowMeshElement
(
int32 LODIndex, |
Sets up a shadow FMeshBatch for a specific LOD. | Engine/InstancedStaticMesh.h | |
virtual bool GetWireframeMeshElement
(
int32 LODIndex, |
Sets up a wireframe FMeshBatch for a specific LOD. | Engine/InstancedStaticMesh.h |
Overridden from FPrimitiveSceneProxy
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual HHitProxy * CreateHitProxies
(
UPrimitiveComponent* Component, |
All FPrimitiveSceneProxy derived classes can decide to fully override the HHitProxy creation, or add their own and call any of their base classes to add theirs. | Engine/InstancedStaticMesh.h | |
virtual HHitProxy * CreateHitProxies
(
IPrimitiveComponent* Component, |
Creates the hit proxies are used when DrawDynamicElements is called. Called in the game thread. | Engine/InstancedStaticMesh.h | |
virtual void CreateRenderThreadResources
(
FRHICommandListBase& RHICmdList |
Called when the rendering thread adds the proxy to the scene. | Engine/InstancedStaticMesh.h | |
virtual void DestroyRenderThreadResources () |
Called when the rendering thread removes the proxy from the scene. | Engine/InstancedStaticMesh.h | |
virtual void GetDynamicMeshElements
(
const TArray< const FSceneView* >& Views, |
Gathers the primitive's dynamic mesh elements. | Engine/InstancedStaticMesh.h | |
virtual float GetGpuLodInstanceRadius () |
Returns the instance radius to use for per instance GPU LOD calculation. | Engine/InstancedStaticMesh.h | |
virtual FInstanceDataUpdateTaskInfo * GetInstanceDataUpdateTaskInfo () |
Return a pointer to a class that can be used to guard access to instance data that is being updated by a task. | Engine/InstancedStaticMesh.h | |
virtual bool GetInstanceDrawDistanceMinMax
(
FVector2f& OutDistanceMinMax |
Retrieves the instance draw distance range (mostly only used by objects whose instances are culled on the GPU) | Engine/InstancedStaticMesh.h | |
virtual void GetLightRelevance
(
const FLightSceneProxy* LightSceneProxy, |
Determines the relevance of this primitive's elements to the given light. | Engine/InstancedStaticMesh.h | |
virtual float GetLodScreenSizeScale() |
Returns a scale to apply to ScreenSize used in LOD calculation. | Engine/InstancedStaticMesh.h | |
virtual SIZE_T GetTypeHash() |
Return a type (or subtype) specific hash for sorting purposes | Engine/InstancedStaticMesh.h | |
virtual FPrimitiveViewRelevance GetViewRelevance
(
const FSceneView* View |
Determines the relevance of this primitive's elements to the given view. | Engine/InstancedStaticMesh.h | |
virtual bool IsDetailMesh () |
Returns whether this proxy should be considered a "detail mesh". | Engine/InstancedStaticMesh.h | |
virtual void SetInstanceCullDistance_RenderThread
(
float StartCullDistance, |
Engine/InstancedStaticMesh.h | ||
virtual void UpdateInstances_RenderThread
(
FRHICommandListBase& RHICmdList, |
Engine/InstancedStaticMesh.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FInstancedStaticMeshVFLooseUniformShaderParametersRef CreateLooseUniformBuffer
(
const FSceneView* View, |
Engine/InstancedStaticMesh.h | ||
void SetupInstancedMeshBatch
(
int32 LODIndex, |
Common path for the Get*MeshElement functions | Engine/InstancedStaticMesh.h |