Navigation
API > API/Runtime > API/Runtime/Engine
| Name | FParticleSystemSceneProxy |
| Type | class |
| Header File | /Engine/Source/Runtime/Engine/Public/ParticleSystemSceneProxy.h |
| Include Path | #include "ParticleSystemSceneProxy.h" |
Syntax
class FParticleSystemSceneProxy : public FPrimitiveSceneProxy
Inheritance Hierarchy
- FPrimitiveSceneProxy → FParticleSystemSceneProxy
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
FParticleSystemSceneProxy
(
const FParticleSystemSceneProxyDesc& Desc |
Initialization constructor. | ParticleSystemSceneProxy.h |
Destructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual ~FParticleSystemSceneProxy() |
ParticleSystemSceneProxy.h |
Variables
Public
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| MeshEmitterLODIndices | TArray< int32 > | Persistent proxy storage for mesh emitter LODs; need to store these here, because GDME needs to calc the index, but VF needs to be init'ed with the correct LOD, and DynamicData goes away every frame | ParticleSystemSceneProxy.h |
Protected
| Name | Type | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|---|
| bCanBeOccluded | uint8 | ParticleSystemSceneProxy.h | ||
| bHasCustomOcclusionBounds | uint8 | ParticleSystemSceneProxy.h | ||
| OcclusionBounds | FBoxSphereBounds | Bounds for occlusion rendering. | ParticleSystemSceneProxy.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void DetermineLODDistance
(
const FSceneView* View, |
ParticleSystemSceneProxy.h | ||
uint32 GetAllocatedSize() |
ParticleSystemSceneProxy.h | ||
bool GetCastShadow() |
ParticleSystemSceneProxy.h | ||
const FColoredMaterialRenderProxy * GetDeselectedWireframeMatInst() |
ParticleSystemSceneProxy.h | ||
FParticleDynamicData * GetDynamicData() |
ParticleSystemSceneProxy.h | ||
ERHIFeatureLevel::Type GetFeatureLevel() |
ParticleSystemSceneProxy.h | ||
FParticleDynamicData * GetLastDynamicData() |
ParticleSystemSceneProxy.h | ||
const FMaterialRelevance & GetMaterialRelevance() |
ParticleSystemSceneProxy.h | ||
void GetObjectPositionAndScale
(
const FSceneView& View, |
Object position in post projection space. | ParticleSystemSceneProxy.h | |
float GetPendingLODDistance() |
ParticleSystemSceneProxy.h | ||
FMeshBatch * GetPooledMeshBatch() |
Gets a mesh batch from the pool. | ParticleSystemSceneProxy.h | |
int32 GetVisualizeLODIndex() |
ParticleSystemSceneProxy.h | ||
FRHIUniformBuffer * GetWorldSpacePrimitiveUniformBuffer() |
ParticleSystemSceneProxy.h | ||
FMatrix GetWorldToLocal () |
While this isn't good OO design, access to everything is made public. | ParticleSystemSceneProxy.h | |
void ReleaseRenderThreadResources() |
Called when the rendering thread removes the dynamic data from the scene. | ParticleSystemSceneProxy.h | |
void SetLastDynamicData
(
FParticleDynamicData* InLastDynamicData |
ParticleSystemSceneProxy.h | ||
void SetVisualizeLODIndex
(
int32 InVisualizeLODIndex |
ParticleSystemSceneProxy.h | ||
void UpdateData
(
FParticleDynamicData* NewDynamicData |
ParticleSystemSceneProxy.h | ||
void UpdateData_RenderThread
(
FParticleDynamicData* NewDynamicData |
ParticleSystemSceneProxy.h | ||
void UpdateWorldSpacePrimitiveUniformBuffer
(
FRHICommandListBase& RHICmdList |
Called by dynamic emitter data during initialization to make sure the world space primitive uniform buffer is up-to-date. | ParticleSystemSceneProxy.h |
Overridden from FPrimitiveSceneProxy
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual bool CanBeOccluded() |
ParticleSystemSceneProxy.h | ||
virtual void CreateRenderThreadResources
(
FRHICommandListBase& RHICmdList |
Called when the rendering thread adds the proxy to the scene. | ParticleSystemSceneProxy.h | |
virtual void GatherSimpleLights
(
const FSceneViewFamily& ViewFamily, |
Gathers simple lights for this emitter. | ParticleSystemSceneProxy.h | |
virtual FBoxSphereBounds GetCustomOcclusionBounds() |
Return the custom occlusion bounds for this scene proxy. | ParticleSystemSceneProxy.h | |
virtual void GetDynamicMeshElements
(
const TArray< const FSceneView* >& Views, |
Gathers the primitive's dynamic mesh elements. | ParticleSystemSceneProxy.h | |
virtual uint32 GetMemoryFootprint() |
Every derived class should override these functions | ParticleSystemSceneProxy.h | |
virtual SIZE_T GetTypeHash() |
Return a type (or subtype) specific hash for sorting purposes | ParticleSystemSceneProxy.h | |
virtual FPrimitiveViewRelevance GetViewRelevance
(
const FSceneView* View |
ParticleSystemSceneProxy.h | ||
virtual bool HasCustomOcclusionBounds() |
Returns whether the proxy utilizes custom occlusion bounds or not | ParticleSystemSceneProxy.h | |
virtual void OnTransformChanged
(
FRHICommandListBase& RHICmdList |
Called to notify the proxy when its transform has been updated. | ParticleSystemSceneProxy.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void CreateRenderThreadResourcesForEmitterData() |
Allows dynamic emitter data to create render thread resources. | ParticleSystemSceneProxy.h | |
void ReleaseRenderThreadResourcesForEmitterData() |
Allows dynamic emitter data to release render thread resources. | ParticleSystemSceneProxy.h |