diff --git a/include/vkd3d_d3d12.idl b/include/vkd3d_d3d12.idl index 34aa63b9..ba75e7dd 100644 --- a/include/vkd3d_d3d12.idl +++ b/include/vkd3d_d3d12.idl @@ -2277,6 +2277,41 @@ typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS5 D3D12_RAYTRACING_TIER RaytracingTier; } D3D12_FEATURE_DATA_D3D12_OPTIONS5; +typedef enum D3D12_VARIABLE_SHADING_RATE_TIER +{ + D3D12_VARIABLE_SHADING_RATE_TIER_NOT_SUPPORTED = 0x0, + D3D12_VARIABLE_SHADING_RATE_TIER_1 = 0x1, + D3D12_VARIABLE_SHADING_RATE_TIER_2 = 0x2, +} D3D12_VARIABLE_SHADING_RATE_TIER; + +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS6 +{ + BOOL AdditionalShadingRatesSupported; + BOOL PerPrimitiveShadingRateSupportedWithViewportIndexing; + D3D12_VARIABLE_SHADING_RATE_TIER VariableShadingRateTier; + UINT ShadingRateImageTileSize; + BOOL BackgroundProcessingSupported; +} D3D12_FEATURE_DATA_D3D12_OPTIONS6; + +typedef enum D3D12_MESH_SHADER_TIER +{ + D3D12_MESH_SHADER_TIER_NOT_SUPPORTED = 0x0, + D3D12_MESH_SHADER_TIER_1 = 0xa, +} D3D12_MESH_SHADER_TIER; + +typedef enum D3D12_SAMPLER_FEEDBACK_TIER +{ + D3D12_SAMPLER_FEEDBACK_TIER_NOT_SUPPORTED = 0x0, + D3D12_SAMPLER_FEEDBACK_TIER_0_9 = 0x5a, + D3D12_SAMPLER_FEEDBACK_TIER_1_0 = 0x64, +} D3D12_SAMPLER_FEEDBACK_TIER; + +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS7 +{ + D3D12_MESH_SHADER_TIER MeshShaderTier; + D3D12_SAMPLER_FEEDBACK_TIER SamplerFeedbackTier; +} D3D12_FEATURE_DATA_D3D12_OPTIONS7; + typedef enum D3D12_FEATURE { D3D12_FEATURE_D3D12_OPTIONS = 0,