在 Windows API 的 Direct3D 12 中,D3D12_INFO_QUEUE_FILTER_DESC 结构是用于配置信息队列(Info Queue)过滤器的描述结构。该结构通常与调试设备(ID3D12DebugDevice2)中的 SetDebugParameter 方法一起使用。

以下是结构的定义:
typedef struct D3D12_INFO_QUEUE_FILTER_DESC
{
    UINT NumCategories;
    D3D12_MESSAGE_CATEGORY* pCategoryList;
    UINT NumSeverities;
    D3D12_MESSAGE_SEVERITY* pSeverityList;
    UINT NumIDs;
    D3D12_MESSAGE_ID* pIDList;
} D3D12_INFO_QUEUE_FILTER_DESC;

结构包含以下字段:

1. NumCategories:指定 pCategoryList 数组中的元素数量。

2. pCategoryList:一个指向 D3D12_MESSAGE_CATEGORY 枚举值数组的指针,表示允许或拒绝的消息类别。

3. NumSeverities:指定 pSeverityList 数组中的元素数量。

4. pSeverityList:一个指向 D3D12_MESSAGE_SEVERITY 枚举值数组的指针,表示允许或拒绝的消息严重性级别。

5. NumIDs:指定 pIDList 数组中的元素数量。

6. pIDList:一个指向 D3D12_MESSAGE_ID 枚举值数组的指针,表示允许或拒绝的消息 ID。

这些过滤条件用于在信息队列中选择性地捕获或忽略特定类型的消息。你可以使用这些条件来集中关注特定的问题,以便更容易地调试和分析应用程序的行为。

请注意,这些信息队列过滤条件主要用于开发和调试目的,不应该在生产环境中启用。在发布应用程序之前,请确保禁用这些调试设置。同样,这些信息可能随着时间的推移而有所变化,建议查阅最新的 Microsoft 文档以获取详细信息。


转载请注明出处:http://www.zyzy.cn/article/detail/26147/Win32 API/D3d12sdklayers.h/D3D12_INFO_QUEUE_FILTER_DESC