在 Win32 API 的 Direct3D 12 中,D3D12_COMMAND_LIST_SUPPORT_FLAGS 枚举用于描述命令列表(Command List)支持的一些特性。以下是该枚举的定义:
typedef enum D3D12_COMMAND_LIST_SUPPORT_FLAGS {
  D3D12_COMMAND_LIST_SUPPORT_FLAG_NONE                        = 0,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT                       = 0x1,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_BUNDLE                       = 0x2,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_COMPUTE                     = 0x4,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_COPY                        = 0x8,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_VIDEO_DECODE                = 0x10,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_VIDEO_PROCESS               = 0x20,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_VIDEO_ENCODE                = 0x40,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_RAYTRACING                  = 0x80,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_META_COMMANDS               = 0x100,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_VIDEO_DECODE_WITH_SUBMIT    = 0x200,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_RASTERIZER_ORDERED_VIEWS    = 0x400,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT_ASYNC_COMMANDS       = 0x800,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_VIDEO_ENCODE_WITH_SUBMIT    = 0x1000,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_RAYTRACING_RESERVE_RESOURCES = 0x4000,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_SHADING_RATE                = 0x10000,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_MESH_SHADER                 = 0x20000,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_RAYTRACING_PIPELINE_STATISTICS = 0x40000,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_VIDEO_ENCODE_HOLD_RESOURCE  = 0x80000,
  D3D12_COMMAND_LIST_SUPPORT_FLAG_CAPTURE                    = 0x100000
} D3D12_COMMAND_LIST_SUPPORT_FLAGS;

这个枚举包含了一系列成员,每个成员表示一个命令列表支持的特性。以下是一些常见的成员:

  •  D3D12_COMMAND_LIST_SUPPORT_FLAG_DIRECT:表示命令列表支持直接执行(Direct Command Lists)。


  •  D3D12_COMMAND_LIST_SUPPORT_FLAG_BUNDLE:表示命令列表支持捆绑(Bundle Command Lists)。


  •  D3D12_COMMAND_LIST_SUPPORT_FLAG_COMPUTE:表示命令列表支持计算操作。


  •  D3D12_COMMAND_LIST_SUPPORT_FLAG_COPY:表示命令列表支持拷贝操作。


  •  D3D12_COMMAND_LIST_SUPPORT_FLAG_RAYTRACING:表示命令列表支持光线追踪操作。


  •  D3D12_COMMAND_LIST_SUPPORT_FLAG_META_COMMANDS:表示命令列表支持元命令(Meta Commands)。


  •  D3D12_COMMAND_LIST_SUPPORT_FLAG_SHADING_RATE:表示命令列表支持着色率控制。


  •  D3D12_COMMAND_LIST_SUPPORT_FLAG_MESH_SHADER:表示命令列表支持网格着色器。


  •  D3D12_COMMAND_LIST_SUPPORT_FLAG_CAPTURE:表示命令列表支持捕获(Capture)操作。


这些标志用于查询和检测命令列表支持的特性,以便在创建命令列表时选择适当的配置。


转载请注明出处:http://www.zyzy.cn/article/detail/26046/Win32 API/D3d12.h/D3D12_COMMAND_LIST_SUPPORT_FLAGS