ParallelSort
class ParallelSort依赖项: NumKeys
公共接口
构造函数
ParallelSort
inline ParallelSort()属性: inline
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 48 行, 第 5 列)
析构函数
~ParallelSort
~ParallelSort()来源: framework/rendermodules/gpuparticle/parallelsort.h (第 49 行, 第 5 列)
公共函数
初始化
void Init(uint32_t maxEntries, bool bHasPayload, bool bIndirect)参数
| 名称 | 类型 | 默认 |
|---|---|---|
maxEntries | uint32_t | “ |
bHasPayload | bool | “ |
bIndirect | bool | “ |
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 51 行, 第 10 列)
执行
void Execute(cauldron::CommandList *pCmdList, NumKeys numKeysToSort, const cauldron::Buffer *pKeyBuffer, const cauldron::Buffer *pPayloadBuffer=nullptr)参数
| 名称 | 类型 | 默认 |
|---|---|---|
pCmdList | cauldron::CommandList * | “ |
numKeysToSort | NumKeys | “ |
pKeyBuffer | const cauldron::Buffer * | “ |
pPayloadBuffer | const cauldron::Buffer * | nullptr |
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 53 行, 第 10 列)
私有接口
私有成员
uint32_t m_maxEntries
uint32_t m_maxEntries = = 0属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 56 行, 第 14 列)
bool m_bHasPayload
bool m_bHasPayload = = false属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 57 行, 第 14 列)
bool m_bIndirect
bool m_bIndirect = = false属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 58 行, 第 14 列)
cauldron::RootSignature * m_pSetupIndirectArgsRootSignature
cauldron::RootSignature * m_pSetupIndirectArgsRootSignature = = nullptr属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 60 行, 第 29 列)
cauldron::RootSignature * m_pCountRootSignature
cauldron::RootSignature * m_pCountRootSignature = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 61 行, 第 29 列)
cauldron::RootSignature * m_pCountReduceRootSignature
cauldron::RootSignature * m_pCountReduceRootSignature = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 62 行, 第 29 列)
cauldron::RootSignature * m_pScanRootSignature
cauldron::RootSignature * m_pScanRootSignature = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 63 行, 第 29 列)
cauldron::RootSignature * m_pScanAddRootSignature
cauldron::RootSignature * m_pScanAddRootSignature = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 64 行, 第 29 列)
cauldron::RootSignature * m_pScatterRootSignature
cauldron::RootSignature * m_pScatterRootSignature = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 65 行, 第 29 列)
cauldron::PipelineObject * m_pSetupIndirectArgsPipelineObj
cauldron::PipelineObject * m_pSetupIndirectArgsPipelineObj = = nullptr属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 67 行, 第 30 列)
cauldron::PipelineObject * m_pCountPipelineObj
cauldron::PipelineObject * m_pCountPipelineObj = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 68 行, 第 30 列)
cauldron::PipelineObject * m_pCountReducePipelineObj
cauldron::PipelineObject * m_pCountReducePipelineObj = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 69 行, 第 30 列)
cauldron::PipelineObject * m_pScanPipelineObj
cauldron::PipelineObject * m_pScanPipelineObj = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 70 行, 第 30 列)
cauldron::PipelineObject * m_pScanAddPipelineObj
cauldron::PipelineObject * m_pScanAddPipelineObj = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 71 行, 第 30 列)
cauldron::PipelineObject * m_pScatterPipelineObj
cauldron::PipelineObject * m_pScatterPipelineObj = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 72 行, 第 30 列)
cauldron::ParameterSet * m_pSetupIndirectArgsParameters
cauldron::ParameterSet * m_pSetupIndirectArgsParameters = = nullptr属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 74 行, 第 28 列)
cauldron::ParameterSet * m_pCountParameters
cauldron::ParameterSet * m_pCountParameters = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 75 行, 第 28 列)
cauldron::ParameterSet * m_pCountReduceParameters
cauldron::ParameterSet * m_pCountReduceParameters = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 76 行, 第 28 列)
cauldron::ParameterSet * m_pScanParameters
cauldron::ParameterSet * m_pScanParameters = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 77 行, 第 28 列)
cauldron::ParameterSet * m_pScanAddParameters
cauldron::ParameterSet * m_pScanAddParameters = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 78 行, 第 28 列)
cauldron::ParameterSet * m_pScatterParameters
cauldron::ParameterSet * m_pScatterParameters = = {}属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 79 行, 第 28 列)
const cauldron::Buffer * m_pSortScratchBuffer
const cauldron::Buffer * m_pSortScratchBuffer = = nullptr属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 81 行, 第 28 列)
const cauldron::Buffer * m_pPayloadScratchBuffer
const cauldron::Buffer * m_pPayloadScratchBuffer = = nullptr属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 82 行, 第 28 列)
const cauldron::Buffer * m_pScratchBuffer
const cauldron::Buffer * m_pScratchBuffer = = nullptr属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 83 行, 第 28 列)
const cauldron::Buffer * m_pReducedScratchBuffer
const cauldron::Buffer * m_pReducedScratchBuffer = = nullptr属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 84 行, 第 28 列)
const cauldron::Buffer * m_pIndirectCountScatterArgsBuffer
const cauldron::Buffer * m_pIndirectCountScatterArgsBuffer = = nullptr属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 85 行, 第 28 列)
const cauldron::Buffer * m_pIndirectReduceScanArgsBuffer
const cauldron::Buffer * m_pIndirectReduceScanArgsBuffer = = nullptr属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 86 行, 第 28 列)
const cauldron::Buffer * m_pIndirectConstantBuffer
const cauldron::Buffer * m_pIndirectConstantBuffer = = nullptr属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 87 行, 第 28 列)
cauldron::IndirectWorkload * m_pIndirectWorkload
cauldron::IndirectWorkload * m_pIndirectWorkload = = nullptr属性: private
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 89 行, 第 32 列)
来源: framework/rendermodules/gpuparticle/parallelsort.h (第 45 行, 第 1 列)