diff --git a/include/vkd3d_d3d12.idl b/include/vkd3d_d3d12.idl index e239f514..ebce2ac4 100644 --- a/include/vkd3d_d3d12.idl +++ b/include/vkd3d_d3d12.idl @@ -285,6 +285,12 @@ typedef enum D3D12_WRITEBUFFERIMMEDIATE_MODE D3D12_WRITEBUFFERIMMEDIATE_MODE_MARKER_OUT = 0x2, } D3D12_WRITEBUFFERIMMEDIATE_MODE; +typedef enum D3D12_WAVE_MMA_TIER +{ + D3D12_WAVE_MMA_TIER_NOT_SUPPORTED = 0, + D3D12_WAVE_MMA_TIER_1_0 = 10, +} D3D12_WAVE_MMA_TIER; + interface ID3D12Fence; interface ID3D12RootSignature; interface ID3D12Heap; @@ -453,6 +459,32 @@ typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS7 D3D12_SAMPLER_FEEDBACK_TIER SamplerFeedbackTier; } D3D12_FEATURE_DATA_D3D12_OPTIONS7; +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS8 +{ + BOOL UnalignedBlockTexturesSupported; +} D3D12_FEATURE_DATA_D3D12_OPTIONS8; + +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS9 +{ + BOOL MeshShaderPipelineStatsSupported; + BOOL MeshShaderSupportsFullRangeRenderTargetArrayIndex; + BOOL AtomicInt64OnTypedResourceSupported; + BOOL AtomicInt64OnGroupSharedSupported; + BOOL DerivativesInMeshAndAmplificationShadersSupported; + D3D12_WAVE_MMA_TIER WaveMMATier; +} D3D12_FEATURE_DATA_D3D12_OPTIONS9; + +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS10 +{ + BOOL VariableRateShadingSumCombinerSupported; + BOOL MeshShaderPerPrimitiveShadingRateSupported; +} D3D12_FEATURE_DATA_D3D12_OPTIONS10; + +typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS11 +{ + BOOL AtomicInt64OnDescriptorHeapResourceSupported; +} D3D12_FEATURE_DATA_D3D12_OPTIONS11; + typedef struct D3D12_FEATURE_DATA_FORMAT_SUPPORT { DXGI_FORMAT Format; @@ -1993,6 +2025,10 @@ typedef enum D3D12_FEATURE D3D12_FEATURE_D3D12_OPTIONS7 = 32, D3D12_FEATURE_PROTECTED_RESOURCE_SESSION_TYPE_COUNT = 33, D3D12_FEATURE_PROTECTED_RESOURCE_SESSION_TYPES = 34, + D3D12_FEATURE_D3D12_OPTIONS8 = 36, + D3D12_FEATURE_D3D12_OPTIONS9 = 37, + D3D12_FEATURE_D3D12_OPTIONS10 = 39, + D3D12_FEATURE_D3D12_OPTIONS11 = 40, } D3D12_FEATURE; typedef struct D3D12_MEMCPY_DEST