diff --git a/include/d3d11.idl b/include/d3d11.idl index be5b3c0473a..73a6ca0d64a 100644 --- a/include/d3d11.idl +++ b/include/d3d11.idl @@ -460,6 +460,12 @@ typedef enum D3D11_DEPTH_WRITE_MASK D3D11_DEPTH_WRITE_MASK_ALL, } D3D11_DEPTH_WRITE_MASK; +typedef enum D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS +{ + D3D11_STANDARD_MULTISAMPLE_PATTERN = 0xffffffff, + D3D11_CENTER_MULTISAMPLE_PATTERN = 0xfffffffe, +} D3D11_STANDARD_MULTISAMPLE_QUALITY_LEVELS; + typedef enum D3D11_DEVICE_CONTEXT_TYPE { D3D11_DEVICE_CONTEXT_IMMEDIATE, @@ -488,7 +494,16 @@ typedef enum D3D11_FEATURE D3D11_FEATURE_ARCHITECTURE_INFO, D3D11_FEATURE_D3D9_OPTIONS, D3D11_FEATURE_SHADER_MIN_PRECISION_SUPPORT, - D3D11_FEATURE_D3D9_SHADOW_SUPPORT + D3D11_FEATURE_D3D9_SHADOW_SUPPORT, + D3D11_FEATURE_D3D11_OPTIONS1, + D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT, + D3D11_FEATURE_MARKER_SUPPORT, + D3D11_FEATURE_D3D9_OPTIONS1, + D3D11_FEATURE_D3D11_OPTIONS2, + D3D11_FEATURE_D3D11_OPTIONS3, + D3D11_FEATURE_GPU_VIRTUAL_ADDRESS_SUPPORT, + D3D11_FEATURE_D3D11_OPTIONS4, + D3D11_FEATURE_SHADER_CACHE, } D3D11_FEATURE; typedef struct D3D11_FEATURE_DATA_THREADING @@ -502,6 +517,18 @@ typedef struct D3D11_FEATURE_DATA_DOUBLES BOOL DoublePrecisionFloatShaderOps; } D3D11_FEATURE_DATA_DOUBLES; +typedef struct D3D11_FEATURE_DATA_FORMAT_SUPPORT +{ + DXGI_FORMAT InFormat; + UINT OutFormatSupport; +} D3D11_FEATURE_DATA_FORMAT_SUPPORT; + +typedef struct D3D11_FEATURE_DATA_FORMAT_SUPPORT2 +{ + DXGI_FORMAT InFormat; + UINT OutFormatSupport2; +} D3D11_FEATURE_DATA_FORMAT_SUPPORT2; + typedef struct D3D11_FEATURE_DATA_D3D10_X_HARDWARE_OPTIONS { BOOL ComputeShaders_Plus_RawAndStructuredBuffers_Via_Shader_4_x; @@ -525,6 +552,110 @@ typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS BOOL ExtendedResourceSharing; } D3D11_FEATURE_DATA_D3D11_OPTIONS; +typedef struct D3D11_FEATURE_DATA_ARCHITECTURE_INFO +{ + BOOL TileBasedDeferredRenderer; +} D3D11_FEATURE_DATA_ARCHITECTURE_INFO; + +typedef struct D3D11_FEATURE_DATA_D3D9_OPTIONS +{ + BOOL FullNonPow2TextureSupport; +} D3D11_FEATURE_DATA_D3D9_OPTIONS; + +typedef struct D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT +{ + BOOL SupportsDepthAsTextureWithLessEqualComparisonFilter; +} D3D11_FEATURE_DATA_D3D9_SHADOW_SUPPORT; + +typedef enum D3D11_SHADER_MIN_PRECISION_SUPPORT +{ + D3D11_SHADER_MIN_PRECISION_10_BIT = 0x1, + D3D11_SHADER_MIN_PRECISION_16_BIT = 0x2, +} D3D11_SHADER_MIN_PRECISION_SUPPORT; + +typedef struct D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT +{ + UINT PixelShaderMinPrecision; + UINT AllOtherShaderStagesMinPrecision; +} D3D11_FEATURE_DATA_SHADER_MIN_PRECISION_SUPPORT; + +typedef enum D3D11_TILED_RESOURCES_TIER +{ + D3D11_TILED_RESOURCES_NOT_SUPPORTED = 0x0, + D3D11_TILED_RESOURCES_TIER_1 = 0x1, + D3D11_TILED_RESOURCES_TIER_2 = 0x2, + D3D11_TILED_RESOURCES_TIER_3 = 0x3, +} D3D11_TILED_RESOURCES_TIER; + +typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS1 +{ + D3D11_TILED_RESOURCES_TIER TiledResourcesTier; + BOOL MinMaxFiltering; + BOOL ClearViewAlsoSupportsDepthOnlyFormats; + BOOL MapOnDefaultBuffers; +} D3D11_FEATURE_DATA_D3D11_OPTIONS1; + +typedef struct D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT +{ + BOOL SimpleInstancingSupported; +} D3D11_FEATURE_DATA_D3D9_SIMPLE_INSTANCING_SUPPORT; + +typedef struct D3D11_FEATURE_DATA_MARKER_SUPPORT +{ + BOOL Profile; +} D3D11_FEATURE_DATA_MARKER_SUPPORT; + +typedef struct D3D11_FEATURE_DATA_D3D9_OPTIONS1 +{ + BOOL FullNonPow2TextureSupported; + BOOL DepthAsTextureWithLessEqualComparisonFilterSupported; + BOOL SimpleInstancingSupported; + BOOL TextureCubeFaceRenderTargetWithNonCubeDepthStencilSupported; +} D3D11_FEATURE_DATA_D3D9_OPTIONS1; + +typedef enum D3D11_CONSERVATIVE_RASTERIZATION_TIER +{ + D3D11_CONSERVATIVE_RASTERIZATION_NOT_SUPPORTED = 0x0, + D3D11_CONSERVATIVE_RASTERIZATION_TIER_1 = 0x1, + D3D11_CONSERVATIVE_RASTERIZATION_TIER_2 = 0x2, + D3D11_CONSERVATIVE_RASTERIZATION_TIER_3 = 0x3, +} D3D11_CONSERVATIVE_RASTERIZATION_TIER; + +typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS2 +{ + BOOL PSSpecifiedStencilRefSupported; + BOOL TypedUAVLoadAdditionalFormats; + BOOL ROVsSupported; + D3D11_CONSERVATIVE_RASTERIZATION_TIER ConservativeRasterizationTier; + D3D11_TILED_RESOURCES_TIER TiledResourcesTier; + BOOL MapOnDefaultTextures; + BOOL StandardSwizzle; + BOOL UnifiedMemoryArchitecture; +} D3D11_FEATURE_DATA_D3D11_OPTIONS2; + +typedef struct D3D11_FEATURE_DATA_D3D11_OPTIONS3 +{ + BOOL VPAndRTArrayIndexFromAnyShaderFeedingRasterizer; +} D3D11_FEATURE_DATA_D3D11_OPTIONS3; + +typedef struct D3D11_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT +{ + UINT MaxGPUVirtualAddressBitsPerResource; + UINT MaxGPUVirtualAddressBitsPerProcess; +} D3D11_FEATURE_DATA_GPU_VIRTUAL_ADDRESS_SUPPORT; + +typedef enum D3D11_SHADER_CACHE_SUPPORT_FLAGS +{ + D3D11_SHADER_CACHE_SUPPORT_NONE = 0x0, + D3D11_SHADER_CACHE_SUPPORT_AUTOMATIC_INPROC_CACHE = 0x1, + D3D11_SHADER_CACHE_SUPPORT_AUTOMATIC_DISK_CACHE = 0x2, +} D3D11_SHADER_CACHE_SUPPORT_FLAGS; + +typedef struct D3D11_FEATURE_DATA_SHADER_CACHE +{ + UINT SupportFlags; +} D3D11_FEATURE_DATA_SHADER_CACHE; + typedef enum D3D11_FILL_MODE { D3D11_FILL_WIREFRAME = 2,