ID3D12Device::CreateCommandQueue 方法 (d3d12.h)

创建命令队列。

另请参阅 ID3D12Device9::CreateCommandQueue1

语法

HRESULT CreateCommandQueue(
  const D3D12_COMMAND_QUEUE_DESC *pDesc,
  REFIID                         riid,
  void                           **ppCommandQueue
);

参数

pDesc

类型:[in] const D3D12_COMMAND_QUEUE_DESC*

指定描述命令队列的 D3D12_COMMAND_QUEUE_DESC

riid

类型: REFIID

命令队列接口的全局唯一标识符 (GUID) 。 请参阅备注。 一个输入参数。

ppCommandQueue

类型:[out] void**

指向内存块的指针,该内存块接收指向命令队列的 ID3D12CommandQueue 接口的指针。

返回值

类型: HRESULT

如果内存不足,无法创建命令队列,此方法将返回 E_OUTOFMEMORY 。 有关其他可能的返回值,请参阅 Direct3D 12 返回代码

备注

可以使用 __uuidof () 宏获取命令队列接口的 REFIIDGUID。 例如,__uuidof (ID3D12CommandQueue) 将获取命令队列接口的 GUID

示例

D3D12HelloTriangle 示例使用 ID3D12Device::CreateCommandQueue,如下所示:

D3D12_COMMAND_QUEUE_DESC queueDesc{};
queueDesc.Flags = D3D12_COMMAND_QUEUE_FLAG_NONE;
queueDesc.Type = D3D12_COMMAND_LIST_TYPE_DIRECT;

ThrowIfFailed(m_device->CreateCommandQueue(&queueDesc, IID_PPV_ARGS(&m_commandQueue)));

请参阅 D3D12 参考中的示例代码

要求

   
目标平台 Windows
标头 d3d12.h
Library D3D12.lib
DLL D3D12.dll

另请参阅