> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CreateCommandQueue1 (XBOX Series consoles)

> Creates a command queue with a creator ID.

Creates a command queue with a creator ID.

Also see [ID3D12Device::CreateCommandQueue](/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_createcommandqueue_public).

## Syntax

```cpp theme={null}
HRESULT CreateCommandQueue1(
    const D3D12_COMMAND_QUEUE_DESC  pDesc,
    const IID & CreatorID,
    const IID & riid,
    void  ppCommandQueue
)
```

### Parameters

*pDesc*\
Type: const D3D12\_COMMAND\_QUEUE\_DESC \*

Specifies a **D3D12\_COMMAND\_QUEUE\_DESC** that describes the command queue.

*CreatorID*\
Type: const IID &

A creator ID. See **Remarks**.

*riid*\
Type: const IID &

The globally unique identifier (GUID) for the command queue interface.

*ppCommandQueue*\
Type: void \*\*

A pointer to a memory block that receives a pointer to the [ID3D12CommandQueue](/reference/graphics/d3d12_xs/interfaces/ID3D12CommandQueue/id3d12commandqueue_xs) interface for the command queue.

### Return value

Type: HRESULT

Returns **E\_OUTOFMEMORY** if there's insufficient memory to create the command queue; otherwise **S\_OK**. See [Direct3D 12 return codes](https://learn.microsoft.com/en-us/windows/win32/direct3d12/d3d12-graphics-reference-returnvalues) for other possible return values.

## Remarks

When multiple components in the same process are sharing a single Direct3D 12 device, often they will end up with separate workloads on independent command queues. In some hardware implementations, independent queues can run in parallel only with specific other command queues.

Direct3D 12 applies a first-come, first-serve grouping for queues, which might not work well for all application or component designs. To help inform Direct3D 12's grouping of queues, you can specify a *creator ID* (which is unique per component) that restricts the grouping to other queues with the same ID. When possible, a component should choose the same unique ID for all of its queues. Microsoft has reserved a few well-known creator IDs for use by Microsoft-developed implementations of APIs on top of Direct3D 12.

## Requirements

**Header:** d3d12\_xs.h\
**Library:** d3d12\_xs.lib\
**Supported Platforms**: XBOX Series consoles

## See Also

* [ID3D12Device::CreateCommandQueue](/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_createcommandqueue_public)


## Related topics

- [CreateCommandList1 (XBOX Series consoles)](/reference/graphics/d3d12/interfaces/id3d12device4/methods/id3d12device4_createcommandlist1_public.md)
- [CreateMetaCommand (XBOX Series consoles)](/reference/graphics/d3d12/interfaces/id3d12device5/methods/id3d12device5_createmetacommand_public.md)
- [CreateCommittedResource1 (XBOX Series consoles)](/reference/graphics/d3d12/interfaces/id3d12device4/methods/id3d12device4_createcommittedresource1_public.md)
- [InitializeMetaCommand (XBOX Series consoles)](/reference/graphics/d3d12/interfaces/id3d12graphicscommandlist4/methods/id3d12graphicscommandlist4_initializemetacommand_public.md)
- [EnumerateMetaCommands (XBOX Series consoles)](/reference/graphics/d3d12/interfaces/id3d12device5/methods/id3d12device5_enumeratemetacommands_public.md)
