Diligent Engine
 
Loading...
Searching...
No Matches
Diligent::TopLevelASDesc Struct Reference

Top-level AS description. More...

#include <TopLevelAS.h>

Inheritance diagram for Diligent::TopLevelASDesc:
Diligent::DeviceObjectAttribs

Public Attributes

Uint32 MaxInstanceCount = 0
 Allocate space for specified number of instances.
 
RAYTRACING_BUILD_AS_FLAGS Flags = RAYTRACING_BUILD_AS_NONE
 Ray tracing build flags, see Diligent::RAYTRACING_BUILD_AS_FLAGS.
 
Uint64 CompactedSize = 0
 
Uint64 ImmediateContextMask = 1
 Defines which immediate contexts are allowed to execute commands that use this TLAS.
 
- Public Attributes inherited from Diligent::DeviceObjectAttribs
const Char * Name = nullptr
 Object name.
 

Detailed Description

Top-level AS description.

Member Data Documentation

◆ CompactedSize

Uint64 Diligent::TopLevelASDesc::CompactedSize = 0

The size returned by IDeviceContext::WriteTLASCompactedSize(), if this acceleration structure is going to be the target of a compacting copy command (IDeviceContext::CopyTLAS() with Diligent::COPY_AS_MODE_COMPACT).

◆ ImmediateContextMask

Uint64 Diligent::TopLevelASDesc::ImmediateContextMask = 1

Defines which immediate contexts are allowed to execute commands that use this TLAS.

When ImmediateContextMask contains a bit at position n, the acceleration structure may be used in the immediate context with index n directly (see DeviceContextDesc::ContextId). It may also be used in a command list recorded by a deferred context that will be executed through that immediate context.

Remarks
Only specify these bits that will indicate those immediate contexts where the TLAS will actually be used. Do not set unnecessary bits as this will result in extra overhead.