include: Add D3D12_FEATURE_DATA_FORMAT_SUPPORT.

This commit is contained in:
Henri Verbeet 2017-06-14 23:20:20 +02:00
parent fdd2b456fb
commit 893d2e8444

View File

@ -128,6 +128,56 @@ typedef enum D3D12_RESOURCE_HEAP_TIER
D3D12_RESOURCE_HEAP_TIER_2 = 2,
} D3D12_RESOURCE_HEAP_TIER;
typedef enum D3D12_FORMAT_SUPPORT1
{
D3D12_FORMAT_SUPPORT1_NONE = 0x00000000,
D3D12_FORMAT_SUPPORT1_BUFFER = 0x00000001,
D3D12_FORMAT_SUPPORT1_IA_VERTEX_BUFFER = 0x00000002,
D3D12_FORMAT_SUPPORT1_IA_INDEX_BUFFER = 0x00000004,
D3D12_FORMAT_SUPPORT1_SO_BUFFER = 0x00000008,
D3D12_FORMAT_SUPPORT1_TEXTURE1D = 0x00000010,
D3D12_FORMAT_SUPPORT1_TEXTURE2D = 0x00000020,
D3D12_FORMAT_SUPPORT1_TEXTURE3D = 0x00000040,
D3D12_FORMAT_SUPPORT1_TEXTURECUBE = 0x00000080,
D3D12_FORMAT_SUPPORT1_SHADER_LOAD = 0x00000100,
D3D12_FORMAT_SUPPORT1_SHADER_SAMPLE = 0x00000200,
D3D12_FORMAT_SUPPORT1_SHADER_SAMPLE_COMPARISON = 0x00000400,
D3D12_FORMAT_SUPPORT1_SHADER_SAMPLE_MONO_TEXT = 0x00000800,
D3D12_FORMAT_SUPPORT1_MIP = 0x00001000,
D3D12_FORMAT_SUPPORT1_RENDER_TARGET = 0x00004000,
D3D12_FORMAT_SUPPORT1_BLENDABLE = 0x00008000,
D3D12_FORMAT_SUPPORT1_DEPTH_STENCIL = 0x00010000,
D3D12_FORMAT_SUPPORT1_MULTISAMPLE_RESOLVE = 0x00040000,
D3D12_FORMAT_SUPPORT1_DISPLAY = 0x00080000,
D3D12_FORMAT_SUPPORT1_CAST_WITHIN_BIT_LAYOUT = 0x00100000,
D3D12_FORMAT_SUPPORT1_MULTISAMPLE_RENDERTARGET = 0x00200000,
D3D12_FORMAT_SUPPORT1_MULTISAMPLE_LOAD = 0x00400000,
D3D12_FORMAT_SUPPORT1_SHADER_GATHER = 0x00800000,
D3D12_FORMAT_SUPPORT1_BACK_BUFFER_CAST = 0x01000000,
D3D12_FORMAT_SUPPORT1_TYPED_UNORDERED_ACCESS_VIEW = 0x02000000,
D3D12_FORMAT_SUPPORT1_SHADER_GATHER_COMPARISON = 0x04000000,
D3D12_FORMAT_SUPPORT1_DECODER_OUTPUT = 0x08000000,
D3D12_FORMAT_SUPPORT1_VIDEO_PROCESSOR_OUTPUT = 0x10000000,
D3D12_FORMAT_SUPPORT1_VIDEO_PROCESSOR_INPUT = 0x20000000,
D3D12_FORMAT_SUPPORT1_VIDEO_ENCODER = 0x40000000,
} D3D12_FORMAT_SUPPORT1;
typedef enum D3D12_FORMAT_SUPPORT2
{
D3D12_FORMAT_SUPPORT2_NONE = 0x00000000,
D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_ADD = 0x00000001,
D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_BITWISE_OPS = 0x00000002,
D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_COMPARE_STORE_OR_COMPARE_EXCHANGE = 0x00000004,
D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_EXCHANGE = 0x00000008,
D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_SIGNED_MIN_OR_MAX = 0x00000010,
D3D12_FORMAT_SUPPORT2_UAV_ATOMIC_UNSIGNED_MIN_OR_MAX = 0x00000020,
D3D12_FORMAT_SUPPORT2_UAV_TYPED_LOAD = 0x00000040,
D3D12_FORMAT_SUPPORT2_UAV_TYPED_STORE = 0x00000080,
D3D12_FORMAT_SUPPORT2_OUTPUT_MERGER_LOGIC_OP = 0x00000100,
D3D12_FORMAT_SUPPORT2_TILED = 0x00000200,
D3D12_FORMAT_SUPPORT2_MULTIPLANE_OVERLAY = 0x00004000,
} D3D12_FORMAT_SUPPORT2;
interface ID3D12Fence;
interface ID3D12RootSignature;
interface ID3D12Heap;
@ -216,6 +266,13 @@ typedef struct D3D12_FEATURE_DATA_D3D12_OPTIONS
D3D12_RESOURCE_HEAP_TIER ResourceHeapTier;
} D3D12_FEATURE_DATA_D3D12_OPTIONS;
typedef struct D3D12_FEATURE_DATA_FORMAT_SUPPORT
{
DXGI_FORMAT Format;
D3D12_FORMAT_SUPPORT1 Support1;
D3D12_FORMAT_SUPPORT2 Support2;
} D3D12_FEATURE_DATA_FORMAT_SUPPORT;
typedef enum D3D12_HEAP_TYPE
{
D3D12_HEAP_TYPE_DEFAULT = 1,