Win32 API:D3D12_GRAPHICS_PIPELINE_STATE_DESC 结构(D3d12.h)
D3D12_GRAPHICS_PIPELINE_STATE_DESC 结构是 Direct3D 12 中用于描述图形管线状态的结构体。以下是该结构的定义:typedef struct D3D12_GRAPHICS_PIPELINE_STATE_DESC { ID3D12RootSignature *pRootSignature; D3D12_SHADER_BYTECODE VS; D3D12_SHADER_BYTECODE PS; D3D12_SHADER_BYTECODE GS; D3D12_SHADER_BYTECODE DS; D3D12_SHADER_BYTECODE HS; D3D12_STREAM_OUTPUT_DESC StreamOutput; D3D12_BLEND_DESC BlendState; UINT SampleMask; D3D12_RASTERIZER_DESC Raster...
Win32 API:D3D12_GPU_DESCRIPTOR_HANDLE 结构(D3d12.h)
D3D12_GPU_DESCRIPTOR_HANDLE 结构定义在 Direct3D 12 头文件 D3d12.h 中,用于表示 GPU 描述符句柄。以下是该结构的定义:typedef struct D3D12_GPU_DESCRIPTOR_HANDLE { UINT64 ptr;} D3D12_GPU_DESCRIPTOR_HANDLE;这个结构只有一个成员 ptr,它是一个 64 位的整数,用于存储 GPU 描述符句柄的指针。GPU 描述符句柄是在 GPU 端使用的,通常由 CPU 端分配和填充。它们用于在 GPU 上访问描述符堆中的资源,如常量缓冲区、纹理和采样器。
Win32 API:D3D12_FEATURE_DATA_ROOT_SIGNATURE 结构(D3d12.h)
D3D12_FEATURE_DATA_ROOT_SIGNATURE 是 Direct3D 12 中的一个结构,用于查询硬件设备对于根签名(Root Signature)的支持情况。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_ROOT_SIGNATURE { const void *pSignature; UINT NodeMask; D3D_ROOT_SIGNATURE_VERSION HighestVersion; void *pBlobOut; SIZE_T BlobOutSizeInBytes; HRESULT *pHResult;} D3D12_FEATURE_DATA_ROOT_SIGNATURE;结构成员的含义如下: pSignature: 一个指向根签名的指针。 NodeMask: 表示硬件设备的节点掩码。 HighestVersion: 表示请求的最高根签名版本。 pBlobOut: 输出参数,指向存储查询结果的缓冲区...
Win32 API:D3D12_FEATURE_DATA_PROTECTED_RESOURCE_SESSION_SUPPORT 结构(D3d12.h)
D3D12_FEATURE_DATA_PROTECTED_RESOURCE_SESSION_SUPPORT 是 Direct3D 12 中的一个结构,用于查询硬件设备对于受保护资源会话的支持情况。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_PROTECTED_RESOURCE_SESSION_SUPPORT { UINT NodeIndex; D3D12_PROTECTED_RESOURCE_SESSION_SUPPORT_FLAGS Support;} D3D12_FEATURE_DATA_PROTECTED_RESOURCE_SESSION_SUPPORT;结构成员的含义如下: NodeIndex: 节点索引,表示查询哪个 GPU 节点的支持情况。 Support: 输出参数,表示硬件设备对于受保护资源会话的支持情况的标志。你可以使用这个结构来查询硬件设备对于受保护资源会话的支持情况,例如:D3D12_FEATURE_DATA_PROTECTED_RESOURCE_SESSION_SUPPORT sessionSupport = {}...
Win32 API:D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS 结构(D3d12.h)
D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS 是 Direct3D 12 中的一个结构,用于查询和检索硬件设备对于多采样质量级别的支持情况。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS { DXGI_FORMAT Format; UINT SampleCount; D3D12_MULTISAMPLE_QUALITY_LEVELS QualityLevelFlags; UINT NumQualityLevels;} D3D12_FEATURE_DATA_MULTISAMPLE_QUALITY_LEVELS;结构成员的含义如下: Format: 要查询的 DXGI 格式。 SampleCount: 采样点数,表示多采样的级别。 QualityLevelFlags: 输出参数,表示硬件设备对于指定格式和采样点数的质量级别支持情况的标志。 NumQualityLevels:...
Win32 API:D3D12_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT 结构(D3d12.h)
D3D12_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT 是 Direct3D 12 中的一个结构,用于查询和检索硬件设备对 GPU 虚拟地址的支持情况。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT { UINT MaxGPUVirtualAddressBitsPerResource; UINT MaxGPUVirtualAddressBitsPerProcess;} D3D12_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT;结构成员的含义如下: MaxGPUVirtualAddressBitsPerResource: 输出参数,表示硬件设备对于每个资源的最大 GPU 虚拟地址位数。 MaxGPUVirtualAddressBitsPerProcess: 输出参数,表示硬件设备对于整个进程的最大 GPU 虚拟地址位数。你可以使用这个结构来查询硬件设备对 GPU 虚拟地址的支持情况,例如:D3D12_FEATURE_...
Win32 API:D3D12_FEATURE_DATA_FORMAT_SUPPORT 结构(D3d12.h)
D3D12_FEATURE_DATA_FORMAT_SUPPORT 是 Direct3D 12 中的一个结构,用于查询和检索硬件设备对于特定格式的支持信息。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_FORMAT_SUPPORT { DXGI_FORMAT InFormat; UINT OutFormatSupport;} D3D12_FEATURE_DATA_FORMAT_SUPPORT;结构成员的含义如下: InFormat: 要查询的 DXGI 格式。 OutFormatSupport: 输出参数,表示硬件设备对于指定格式的支持情况。它是一个位掩码,包含有关特定格式支持的详细信息。你可以使用这个结构来查询指定格式的支持信息,例如:D3D12_FEATURE_DATA_FORMAT_SUPPORT formatSupport = {};formatSupport.InFormat = DXGI_FORMAT_R8G8B8A8_UNORM; // 你要查询的 DXGI 格式HRESULT hr = pDevice->...
Win32 API:D3D12_FEATURE_DATA_FORMAT_INFO 结构(D3d12.h)
D3D12_FEATURE_DATA_FORMAT_INFO 是 Direct3D 12 中的一个结构,用于查询和检索有关特定格式的信息。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_FORMAT_INFO { DXGI_FORMAT Format; UINT64 Support1; UINT64 Support2;} D3D12_FEATURE_DATA_FORMAT_INFO;结构成员的含义如下: Format: 要查询的 DXGI 格式。 Support1: 64 位掩码,描述与指定格式相关的特性和支持。这包括硬件支持、特殊格式支持等。 Support2: 64 位掩码的扩展,提供更多的格式信息。你可以使用这个结构来查询指定格式的信息,例如:D3D12_FEATURE_DATA_FORMAT_INFO formatInfo = {};formatInfo.Format = DXGI_FORMAT_R8G8B8A8_UNORM; // 你要查询的 DXGI 格式HRESULT hr =...
Win32 API:D3D12_FEATURE_DATA_FEATURE_LEVELS 结构(D3d12.h)
D3D12_FEATURE_DATA_FEATURE_LEVELS 是 Direct3D 12 中的一个结构,用于描述硬件设备支持的特性级别。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_FEATURE_LEVELS { _Inout_ D3D_FEATURE_LEVEL *pFeatureLevelsRequested; UINT NumFeatureLevels; _Out_ D3D_FEATURE_LEVEL MaxSupportedFeatureLevel;} D3D12_FEATURE_DATA_FEATURE_LEVELS;结构成员的含义如下: pFeatureLevelsRequested: 一个指向所请求的 Direct3D 特性级别数组的指针。函数将返回硬件支持的最高级别的特性级别。 NumFeatureLevels: 请求的特性级别数组中的元素数量。 MaxSupportedFeatureLevel: 输出参数,返回硬件支持的最高特性级别。你可以使用这个结构查询硬件设备所支持...
Win32 API:D3D12_FEATURE_DATA_D3D12_OPTIONS3 结构(D3d12.h)
D3D12_FEATURE_DATA_D3D12_OPTIONS3 结构是 Direct3D 12 API 中的一个结构体,用于查询设备支持的特定功能选项。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS3 { BOOL CopyQueueTimestampQueriesSupported; BOOL CastingFullyTypedFormatSupported; D3D12_HEAP_SIZE_T WriteBufferImmediateMaxLatency; D3D12_VIEW_INSTANCING_TIER ViewInstancingTier; BOOL BarycentricsSupported; D3D12_CONSERVATIVE_RASTERIZATION_TIER ConservativeRasterizationTier; UINT MaxGPUVirtualAddressBitsPerResource; BOOL StandardSwizzle64KBSupported; ...
Win32 API:D3D12_FEATURE_DATA_D3D12_OPTIONS2 结构(D3d12.h)
D3D12_FEATURE_DATA_D3D12_OPTIONS2 结构是用于检查硬件支持的更多 D3D12 选项和特性的一部分。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS2 { BOOL DepthBoundsTestSupported; D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER ProgrammableSamplePositionsTier; UINT CopyQueueTimestampQueriesSupported; D3D12_COMMAND_LIST_SUPPORT_FLAGS WriteBufferImmediateSupportFlags; D3D12_VIEW_INSTANCING_TIER ViewInstancingTier; BOOL BarycentricsSupported; D3D12_CONSERVATIVE_RASTERIZATION_TIER ConservativeRasterizationTier; UINT MaxG...
Win32 API:D3D12_FEATURE_DATA_D3D12_OPTIONS1 结构(D3d12.h)
D3D12_FEATURE_DATA_D3D12_OPTIONS1 结构是用于检查硬件支持的更多 D3D12 选项和特性的一部分。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS1 { BOOL WaveOps; UINT WaveLaneCountMin; UINT WaveLaneCountMax; UINT TotalLaneCount; BOOL ExpandedComputeResourceStates; BOOL Int64ShaderOps; BOOL ResourceHeapTier2; BOOL DepthBoundsTestSupported; D3D12_PROGRAMMABLE_SAMPLE_POSITIONS_TIER ProgrammableSamplePositionsTier; BOOL CopyWithOverlapSupport; BOOL CpuPageable; BOOL MouseExclusiveMode; BOOL MouseRelativeMode...
Win32 API:D3D12_FEATURE_DATA_D3D12_OPTIONS 结构(D3d12.h)
D3D12_FEATURE_DATA_D3D12_OPTIONS 结构用于检查硬件支持的一些 D3D12 选项和特性。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS { BOOL DoublePrecisionFloatShaderOps; BOOL OutputMergerLogicOp; D3D12_SHADER_MIN_PRECISION_SUPPORT MinPrecisionSupport; D3D12_TILED_RESOURCES_TIER TiledResourcesTier; D3D12_RESOURCE_BINDING_TIER ResourceBindingTier; BOOL PSSpecifiedStencilRefSupported; BOOL TypedUAVLoadAdditionalFormats; BOOL ROVsSupported; D3D12_CONSERVATIVE_RASTERIZATION_TIER ConservativeRasterizationTi...
Win32 API:D3D12_FEATURE_DATA_CROSS_NODE 结构(D3d12.h)
在 Direct3D 12 API 中,D3D12_FEATURE_DATA_CROSS_NODE 结构用于检查硬件是否支持跨节点的一些特性。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_CROSS_NODE { UINT NodeIndex; BOOL Supported; UINT Padding[2];} D3D12_FEATURE_DATA_CROSS_NODE;结构的成员如下: NodeIndex: 一个无符号整数,表示节点的索引。对于单 GPU 系统,通常为0。 Supported: 一个布尔值,指示硬件是否支持跨节点的特性。 Padding: 一个用于填充的数组,确保结构大小的对齐。这个结构通常用于查询硬件是否支持在多 GPU 系统中进行跨节点的操作。如果 Supported 为 TRUE,则表示硬件支持相应的特性,否则不支持。如果需要更详细的信息,建议查阅 Microsoft 的官方文档或最新版本的 Direct3D 12 头文件(D3d12.h)中的注释。
Win32 API:D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY 结构(D3d12.h)
D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY 结构是用于检查硬件是否支持不同优先级的命令队列的一部分。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY { UINT CommandListType; UINT Priority; BOOL Desc_1_0;} D3D12_FEATURE_DATA_COMMAND_QUEUE_PRIORITY;结构的成员如下: CommandListType: 一个标识命令列表类型的常数。可能的值有 D3D12_COMMAND_LIST_TYPE_DIRECT、D3D12_COMMAND_LIST_TYPE_COMPUTE 和 D3D12_COMMAND_LIST_TYPE_COPY。 Priority: 一个标识命令队列优先级的整数。较小的值表示较高的优先级。 Desc_1_0: 一个布尔值,指示是否支持 Direct3D 12.1 版本中引入的 D3D12_COMMAND_QUEUE_DESC1 结构。这个成员用于指定结构...
Win32 API:D3D12_FEATURE_DATA_ARCHITECTURE 结构(D3d12.h)
在 Direct3D 12 API 中,D3D12_FEATURE_DATA_ARCHITECTURE 结构用于检索关于硬件架构的信息。以下是该结构的定义:typedef struct D3D12_FEATURE_DATA_ARCHITECTURE { UINT NodeIndex; UINT Revision; SIZE_T DedicatedVideoMemory; SIZE_T DedicatedSystemMemory; SIZE_T SharedSystemMemory; D3D12_GPU_VIRTUAL_ADDRESS ReservedForEncoderCommandLists; D3D12_GPU_VIRTUAL_ADDRESS ReservedForExecuteIndirect; D3D12_GPU_VIRTUAL_ADDRESS ReservedForResourceBuffer; BOOL SupportsMultiAdapter; BOOL SupportsUMA; BOOL SupportsCCUMA; BOOL SupportsC...
Win32 API:D3D12_EXPORT_DESC 结构(D3d12.h)
在 Direct3D 12 API 中,D3D12_EXPORT_DESC 结构用于描述一个导出项的属性。以下是该结构的定义:typedef struct D3D12_EXPORT_DESC { const WCHAR *Name; const WCHAR *ExportToRename; D3D12_EXPORT_FLAGS Flags; UINT TestFlags;} D3D12_EXPORT_DESC;结构的成员如下: Name: 一个指向以空字符结尾的字符串的指针,表示导出项的名称。 ExportToRename: 一个指向以空字符结尾的字符串的指针,表示如果导出项要被重命名,新的名称应该是什么。如果不需要重命名,可以设置为 nullptr。 Flags: 一个枚举类型的值,表示导出项的标志。可能的值有 D3D12_EXPORT_FLAG_NONE 和其他一些导出项标志。 TestFlags: 一个用于测试的标志位。这个结构通常在 Direct3D 12 的 Root Signature 签名(根签名)中使用,用于描述一个导出项的属性,例如根签名中的常量缓冲区、根常量...
Win32 API:D3D12_DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION 结构(D3d12.h)
在 Direct3D 12 API 中,D3D12_DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION 结构用于关联 DXIL(Shader Model 6)子对象和其导出名称。这是在 Direct3D 12 Pipeline State Object (PSO) 构建中使用的一个结构。以下是该结构的定义:typedef struct D3D12_DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION { const WCHAR *SubobjectToAssociate; UINT NumExports; const WCHAR **pExports;} D3D12_DXIL_SUBOBJECT_TO_EXPORTS_ASSOCIATION;结构的成员如下: SubobjectToAssociate: 一个指向以空字符结尾的字符串的指针,表示要关联的 DXIL 子对象的名称。 NumExports: 关联的导出名称的数量。 pExports: 一个指向导出名称数组的指针,其中包含 NumExports 个以空字符结尾的字符...
Win32 API:D3D12_DXIL_LIBRARY_DESC 结构(D3d12.h)
在 Direct3D 12 API 中,D3D12_DXIL_LIBRARY_DESC 是用于描述 HLSL(High Level Shading Language)着色器库的结构。以下是该结构的定义:typedef struct D3D12_DXIL_LIBRARY_DESC { LPCVOID DXILLibrary; SIZE_T DXILLibrarySizeInBytes; LPCVOID PDBPath; LPCWSTR PDBName;} D3D12_DXIL_LIBRARY_DESC;结构的成员如下: DXILLibrary: 一个指向 HLSL 着色器库二进制数据的指针。 DXILLibrarySizeInBytes: HLSL 着色器库二进制数据的大小(以字节为单位)。 PDBPath: 一个指向调试信息(Program Database,PDB)的路径的指针。 PDBName: PDB 文件的名称...
Win32 API:D3D12_DRED_PAGE_FAULT_OUTPUT 结构(D3d12.h)
D3D12_DRED_PAGE_FAULT_OUTPUT 是在Direct3D 12中用于页面错误调试(Device Removed Extended Data)的结构。这个结构用于获取有关页面错误的详细信息。以下是该结构的定义:typedef struct D3D12_DRED_PAGE_FAULT_OUTPUT { D3D12_DRED_PAGE_FAULT_FLAGS Flags; D3D12_DRED_PAGE_FAULT_NODE DredNode; D3D12_DRED_ALLOCATION_NODE AllocationNode;} D3D12_DRED_PAGE_FAULT_OUTPUT;结构的成员如下: Flags: 一个枚举类型的值,表示页面错误的标志。可能的值有 D3D12_DRED_PAGE_FAULT_FLAG_NONE 和其他一些页面错误标志。 DredNode: 一个 D3D12_DRED_PAGE_FAULT_NODE 结构,它包含与页面错误相关的节点信息。 AllocationNode: 一个 D3D12_DRED_ALLOCATIO...