XII Release 0.1.0
Loading...
Searching...
No Matches
xiiGALDrawIndexedIndirectDescription Struct Reference

Describes parameters for issuing indirect indexed draw calls. More...

#include <CommandList.h>

Public Member Functions

XII_ALWAYS_INLINE xiiGALDrawIndexedIndirectDescription ()=default
 Default-initialized indexed indirect draw description.
 
XII_ALWAYS_INLINE xiiGALDrawIndexedIndirectDescription (xiiEnum< xiiGALValueType > indexType, xiiSharedPtr< xiiGALBuffer > pBuffer, xiiUInt32 uiDrawCount=1U, xiiUInt64 uiDrawArgumentOffset=0U, xiiUInt32 uiDrawArgumentStride=20U, xiiEnum< xiiGALStateTransitionMode > bufferStateTransition=xiiGALStateTransitionMode::None, xiiSharedPtr< xiiGALBuffer > pCounterBuffer=nullptr, xiiUInt64 uiCounterOffset=0U, xiiEnum< xiiGALStateTransitionMode > counterBufferStateTransition=xiiGALStateTransitionMode::None)
 Constructs an indexed indirect draw description with specified parameters.
 

Public Attributes

xiiEnum< xiiGALValueTypem_IndexType = xiiGALValueType::Undefined
 Type of index data.
 
xiiSharedPtr< xiiGALBufferm_pBuffer = nullptr
 Buffer containing draw arguments.
 
xiiUInt64 m_uiDrawArgumentOffset = 0U
 Byte offset to the first draw argument.
 
xiiUInt32 m_uiDrawCount = 1U
 Number of draws to execute.
 
xiiUInt32 m_uiDrawArgumentStride = 20U
 Stride between draw arguments in bytes.
 
xiiEnum< xiiGALStateTransitionModem_BufferStateTransition = xiiGALStateTransitionMode::None
 State transition mode.
 
xiiSharedPtr< xiiGALBufferm_pCounterBuffer = nullptr
 Optional buffer containing draw count.
 
xiiUInt64 m_uiCounterOffset = 0U
 Byte offset to the draw count value.
 
xiiEnum< xiiGALStateTransitionModem_CounterBufferStateTransition = xiiGALStateTransitionMode::None
 State transition mode.
 

Detailed Description

Describes parameters for issuing indirect indexed draw calls.

Used to issue multiple indexed draw calls from a GPU buffer containing draw arguments. Supports optional counter buffer and index type specification.

See also
xiiGALCommandList::DrawIndexedIndirect

Constructor & Destructor Documentation

◆ xiiGALDrawIndexedIndirectDescription()

XII_ALWAYS_INLINE xiiGALDrawIndexedIndirectDescription::xiiGALDrawIndexedIndirectDescription ( xiiEnum< xiiGALValueType > indexType,
xiiSharedPtr< xiiGALBuffer > pBuffer,
xiiUInt32 uiDrawCount = 1U,
xiiUInt64 uiDrawArgumentOffset = 0U,
xiiUInt32 uiDrawArgumentStride = 20U,
xiiEnum< xiiGALStateTransitionMode > bufferStateTransition = xiiGALStateTransitionMode::None,
xiiSharedPtr< xiiGALBuffer > pCounterBuffer = nullptr,
xiiUInt64 uiCounterOffset = 0U,
xiiEnum< xiiGALStateTransitionMode > counterBufferStateTransition = xiiGALStateTransitionMode::None )
inline

Constructs an indexed indirect draw description with specified parameters.

Parameters
indexType- Type of index data (e.g., 16-bit or 32-bit).
pBuffer- Buffer containing draw arguments.
uiDrawCount- Number of draws to execute.
uiDrawArgumentOffset- Byte offset to the first draw argument.
uiDrawArgumentStride- Stride between draw arguments in bytes.
bufferStateTransition- Resource state transition mode for the draw buffer.
pCounterBuffer- Optional buffer containing draw count.
uiCounterOffset- Byte offset to the draw count value.
counterBufferStateTransition- Resource state transition mode for the counter buffer.

The documentation for this struct was generated from the following file: