Class GlobalSurfaceAtlasPass
Global Surface Atlas rendering pass. Captures scene geometry into a single atlas texture which contains surface diffuse color, normal vector, emission light, and calculates direct+indirect lighting. Used by Global Illumination and Reflections.
Assembly: FlaxEngine.dll
File: Engine/Renderer/GI/GlobalSurfaceAtlasPass.h
Syntax
public class GlobalSurfaceAtlasPass : public RendererPass
Constructors
GPU_CB_STRUCT(ConstantsData { Float3 ViewPos;float Padding0;float Padding1;float Resolution;float ChunkSize;uint32 ObjectsCount;})
Declaration
public GPU_CB_STRUCT(ConstantsData { Float3 ViewPos;float Padding0;float Padding1;float Resolution;float ChunkSize;uint32 ObjectsCount;})
Parameters
ConstantsData { Float3 ViewPos;float Padding0;float Padding1;float Resolution;float ChunkSize;uint32 ObjectsCount;}
GlobalSurfaceAtlasPass_GPU_CB_STRUCT_ConstantsData___Float3_ViewPos_float_Padding0_float_Padding1_float_Resolution_float_ChunkSize_uint32_ObjectsCount___
|
Methods
Dispose()
Cleanup service data.
Declaration
public virtual void Dispose() override
Overrides
Get(const RenderBuffers* buffers, BindingData& result)
Gets the Global Surface Atlas (only if enabled in Graphics Settings).
Declaration
public bool Get(const RenderBuffers* buffers, BindingData& result)
Parameters
RenderBuffers
buffers
The rendering context buffers. |
BindingData
result
The result Global Surface Atlas data for binding to the shaders. |
Returns
bool
True if there is no valid Global Surface Atlas rendered during this frame, otherwise false. |
GetCullingData(Vector4& cullingPosDistance)
Declaration
public void GetCullingData(Vector4& cullingPosDistance) const
Parameters
Vector4
cullingPosDistance
|
GetCurrentActorObject()
Declaration
public void* GetCurrentActorObject() const
Returns
void
|
Init()
Initialize service.
Declaration
public virtual bool Init() override
Returns
bool
|
Overrides
OnCollectDrawCalls(RenderContextBatch& renderContextBatch)
Calls drawing scene objects in async early in the frame.
Declaration
public void OnCollectDrawCalls(RenderContextBatch& renderContextBatch)
Parameters
RenderContextBatch
renderContextBatch
The rendering context batch. |
RasterizeActor(Actor* actor, void* actorObject, const BoundingSphere& actorObjectBounds, const Transform& localToWorld, const BoundingBox& localBounds, uint32 tilesMask=MAX_uint32, bool useVisibility=true, float qualityScale=1.0f)
Declaration
public void RasterizeActor(Actor* actor, void* actorObject, const BoundingSphere& actorObjectBounds, const Transform& localToWorld, const BoundingBox& localBounds, uint32 tilesMask=MAX_uint32, bool useVisibility=true, float qualityScale=1.0f)
Parameters
Actor
actor
|
void
actorObject
|
BoundingSphere
actorObjectBounds
|
Transform
localToWorld
|
BoundingBox
localBounds
|
uint32
tilesMask
|
bool
useVisibility
|
float
qualityScale
|
Render(RenderContext& renderContext, GPUContext* context, BindingData& result)
Renders the Global Surface Atlas.
Declaration
public bool Render(RenderContext& renderContext, GPUContext* context, BindingData& result)
Parameters
RenderContext
renderContext
The rendering context. |
GPUContext
context
The GPU context. |
BindingData
result
The result Global Surface Atlas data for binding to the shaders. |
Returns
bool
True if failed to render (platform doesn't support it, out of video memory, disabled feature or effect is not ready), otherwise false. |
RenderDebug(RenderContext& renderContext, GPUContext* context, GPUTexture* output)
Renders the debug view.
Declaration
public void RenderDebug(RenderContext& renderContext, GPUContext* context, GPUTexture* output)
Parameters
RenderContext
renderContext
The rendering context. |
GPUContext
context
The GPU context. |
GPUTexture
output
The output buffer. |
setupResources()
Declaration
protected virtual bool setupResources() override
Returns
bool
|
Overrides
ToString()
Gets the string representation of this object.
Declaration
public virtual String ToString() const override
Returns
String
|