Win32 API 日本語リファレンス
ホームGraphics.Dxgi.Common › DXGI_FORMAT

DXGI_FORMAT

列挙型
基底型i4

メンバー 122

名前10進16進説明
DXGI_FORMAT_UNKNOWN00x0形式が不明です。
DXGI_FORMAT_R32G32B32A32_TYPELESS10x1アルファを含む各チャネル 32 ビットをサポートする、4 成分 128 ビットの型なし形式です。¹
DXGI_FORMAT_R32G32B32A32_FLOAT20x2アルファを含む各チャネル 32 ビットをサポートする、4 成分 128 ビットの浮動小数点形式です。1,5,8
DXGI_FORMAT_R32G32B32A32_UINT30x3アルファを含む各チャネル 32 ビットをサポートする、4 成分 128 ビットの符号なし整数形式です。¹
DXGI_FORMAT_R32G32B32A32_SINT40x4アルファを含む各チャネル 32 ビットをサポートする、4 成分 128 ビットの符号付き整数形式です。¹
DXGI_FORMAT_R32G32B32_TYPELESS50x5各カラーチャネル 32 ビットをサポートする、3 成分 96 ビットの型なし形式です。
DXGI_FORMAT_R32G32B32_FLOAT60x6各カラーチャネル 32 ビットをサポートする、3 成分 96 ビットの浮動小数点形式です。5,8
DXGI_FORMAT_R32G32B32_UINT70x7各カラーチャネル 32 ビットをサポートする、3 成分 96 ビットの符号なし整数形式です。
DXGI_FORMAT_R32G32B32_SINT80x8各カラーチャネル 32 ビットをサポートする、3 成分 96 ビットの符号付き整数形式です。
DXGI_FORMAT_R16G16B16A16_TYPELESS90x9アルファを含む各チャネル 16 ビットをサポートする、4 成分 64 ビットの型なし形式です。
DXGI_FORMAT_R16G16B16A16_FLOAT100xAアルファを含む各チャネル 16 ビットをサポートする、4 成分 64 ビットの浮動小数点形式です。5,7
DXGI_FORMAT_R16G16B16A16_UNORM110xBアルファを含む各チャネル 16 ビットをサポートする、4 成分 64 ビットの符号なし正規化整数形式です。
DXGI_FORMAT_R16G16B16A16_UINT120xCアルファを含む各チャネル 16 ビットをサポートする、4 成分 64 ビットの符号なし整数形式です。
DXGI_FORMAT_R16G16B16A16_SNORM130xDアルファを含む各チャネル 16 ビットをサポートする、4 成分 64 ビットの符号付き正規化整数形式です。
DXGI_FORMAT_R16G16B16A16_SINT140xEアルファを含む各チャネル 16 ビットをサポートする、4 成分 64 ビットの符号付き整数形式です。
DXGI_FORMAT_R32G32_TYPELESS150xF赤チャネルに 32 ビット、緑チャネルに 32 ビットをサポートする、2 成分 64 ビットの型なし形式です。
DXGI_FORMAT_R32G32_FLOAT160x10赤チャネルに 32 ビット、緑チャネルに 32 ビットをサポートする、2 成分 64 ビットの浮動小数点形式です。5,8
DXGI_FORMAT_R32G32_UINT170x11赤チャネルに 32 ビット、緑チャネルに 32 ビットをサポートする、2 成分 64 ビットの符号なし整数形式です。
DXGI_FORMAT_R32G32_SINT180x12赤チャネルに 32 ビット、緑チャネルに 32 ビットをサポートする、2 成分 64 ビットの符号付き整数形式です。
DXGI_FORMAT_R32G8X24_TYPELESS190x13赤チャネルに 32 ビット、緑チャネルに 8 ビットをサポートし、24 ビットは未使用の、2 成分 64 ビットの型なし形式です。
DXGI_FORMAT_D32_FLOAT_S8X24_UINT200x1432 ビットの浮動小数点成分と、2 つの符号なし整数成分 (さらに 32 ビットを追加) です。この形式は 32 ビットの深度と 8 ビットのステンシルをサポートし、24 ビットは未使用です。⁵
DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS210x1532 ビットの浮動小数点成分と、2 つの型なし成分 (さらに 32 ビットを追加) です。この形式は 32 ビットの赤チャネルをサポートし、8 ビットは未使用、さらに 24 ビットも未使用です。⁵
DXGI_FORMAT_X32_TYPELESS_G8X24_UINT220x1632 ビットの型なし成分と、2 つの符号なし整数成分 (さらに 32 ビットを追加) です。この形式は 32 ビットが未使用で、緑チャネルに 8 ビットを持ち、24 ビットは未使用です。
DXGI_FORMAT_R10G10B10A2_TYPELESS230x17各色に 10 ビット、アルファに 2 ビットをサポートする、4 成分 32 ビットの型なし形式です。
DXGI_FORMAT_R10G10B10A2_UNORM240x18各色に 10 ビット、アルファに 2 ビットをサポートする、4 成分 32 ビットの符号なし正規化整数形式です。
DXGI_FORMAT_R10G10B10A2_UINT250x19各色に 10 ビット、アルファに 2 ビットをサポートする、4 成分 32 ビットの符号なし整数形式です。
DXGI_FORMAT_R11G11B10_FLOAT260x1A

3 つの部分精度浮動小数点数を 1 つの 32 ビット値にエンコードした形式です (符号ビット、10 ビットの仮数、5 ビットのバイアス付き (15) 指数からなる s10e5 の変種)。 符号ビットはなく、各チャネルに 5 ビットのバイアス付き (15) 指数があり、R と G は 6 ビットの仮数、B は 5 ビットの仮数です。次の図を参照してください。5,7

符号ビットが存在しないことを示す、3 つの部分精度浮動小数点数のビット構成の図。
DXGI_FORMAT_R8G8B8A8_TYPELESS270x1Bアルファを含む各チャネル 8 ビットをサポートする、4 成分 32 ビットの型なし形式です。
DXGI_FORMAT_R8G8B8A8_UNORM280x1Cアルファを含む各チャネル 8 ビットをサポートする、4 成分 32 ビットの符号なし正規化整数形式です。
DXGI_FORMAT_R8G8B8A8_UNORM_SRGB290x1Dアルファを含む各チャネル 8 ビットをサポートする、4 成分 32 ビットの符号なし正規化整数 sRGB 形式です。
DXGI_FORMAT_R8G8B8A8_UINT300x1Eアルファを含む各チャネル 8 ビットをサポートする、4 成分 32 ビットの符号なし整数形式です。
DXGI_FORMAT_R8G8B8A8_SNORM310x1Fアルファを含む各チャネル 8 ビットをサポートする、4 成分 32 ビットの符号付き正規化整数形式です。
DXGI_FORMAT_R8G8B8A8_SINT320x20アルファを含む各チャネル 8 ビットをサポートする、4 成分 32 ビットの符号付き整数形式です。
DXGI_FORMAT_R16G16_TYPELESS330x21赤チャネルに 16 ビット、緑チャネルに 16 ビットをサポートする、2 成分 32 ビットの型なし形式です。
DXGI_FORMAT_R16G16_FLOAT340x22赤チャネルに 16 ビット、緑チャネルに 16 ビットをサポートする、2 成分 32 ビットの浮動小数点形式です。5,7
DXGI_FORMAT_R16G16_UNORM350x23緑チャネルと赤チャネルにそれぞれ 16 ビットをサポートする、2 成分 32 ビットの符号なし正規化整数形式です。
DXGI_FORMAT_R16G16_UINT360x24赤チャネルに 16 ビット、緑チャネルに 16 ビットをサポートする、2 成分 32 ビットの符号なし整数形式です。
DXGI_FORMAT_R16G16_SNORM370x25赤チャネルに 16 ビット、緑チャネルに 16 ビットをサポートする、2 成分 32 ビットの符号付き正規化整数形式です。
DXGI_FORMAT_R16G16_SINT380x26赤チャネルに 16 ビット、緑チャネルに 16 ビットをサポートする、2 成分 32 ビットの符号付き整数形式です。
DXGI_FORMAT_R32_TYPELESS390x27赤チャネルに 32 ビットをサポートする、1 成分 32 ビットの型なし形式です。
DXGI_FORMAT_D32_FLOAT400x28深度に 32 ビットをサポートする、1 成分 32 ビットの浮動小数点形式です。5,8
DXGI_FORMAT_R32_FLOAT410x29赤チャネルに 32 ビットをサポートする、1 成分 32 ビットの浮動小数点形式です。5,8
DXGI_FORMAT_R32_UINT420x2A赤チャネルに 32 ビットをサポートする、1 成分 32 ビットの符号なし整数形式です。
DXGI_FORMAT_R32_SINT430x2B赤チャネルに 32 ビットをサポートする、1 成分 32 ビットの符号付き整数形式です。
DXGI_FORMAT_R24G8_TYPELESS440x2C赤チャネルに 24 ビット、緑チャネルに 8 ビットをサポートする、2 成分 32 ビットの型なし形式です。
DXGI_FORMAT_D24_UNORM_S8_UINT450x2D深度に 24 ビット、ステンシルに 8 ビットをサポートする、32 ビットの z バッファー形式です。
DXGI_FORMAT_R24_UNORM_X8_TYPELESS460x2E24 ビットの 1 成分符号なし正規化整数と、追加の型なし 8 ビットを含む 32 ビット形式です。この形式は赤チャネルに 24 ビットを持ち、8 ビットは未使用です。
DXGI_FORMAT_X24_TYPELESS_G8_UINT470x2F24 ビットの 1 成分型なし形式と、追加の 8 ビット符号なし整数成分を含む 32 ビット形式です。この形式は 24 ビットが未使用で、緑チャネルに 8 ビットを持ちます。
DXGI_FORMAT_R8G8_TYPELESS480x30赤チャネルに 8 ビット、緑チャネルに 8 ビットをサポートする、2 成分 16 ビットの型なし形式です。
DXGI_FORMAT_R8G8_UNORM490x31赤チャネルに 8 ビット、緑チャネルに 8 ビットをサポートする、2 成分 16 ビットの符号なし正規化整数形式です。
DXGI_FORMAT_R8G8_UINT500x32赤チャネルに 8 ビット、緑チャネルに 8 ビットをサポートする、2 成分 16 ビットの符号なし整数形式です。
DXGI_FORMAT_R8G8_SNORM510x33赤チャネルに 8 ビット、緑チャネルに 8 ビットをサポートする、2 成分 16 ビットの符号付き正規化整数形式です。
DXGI_FORMAT_R8G8_SINT520x34赤チャネルに 8 ビット、緑チャネルに 8 ビットをサポートする、2 成分 16 ビットの符号付き整数形式です。
DXGI_FORMAT_R16_TYPELESS530x35赤チャネルに 16 ビットをサポートする、1 成分 16 ビットの型なし形式です。
DXGI_FORMAT_R16_FLOAT540x36赤チャネルに 16 ビットをサポートする、1 成分 16 ビットの浮動小数点形式です。5,7
DXGI_FORMAT_D16_UNORM550x37深度に 16 ビットをサポートする、1 成分 16 ビットの符号なし正規化整数形式です。
DXGI_FORMAT_R16_UNORM560x38赤チャネルに 16 ビットをサポートする、1 成分 16 ビットの符号なし正規化整数形式です。
DXGI_FORMAT_R16_UINT570x39赤チャネルに 16 ビットをサポートする、1 成分 16 ビットの符号なし整数形式です。
DXGI_FORMAT_R16_SNORM580x3A赤チャネルに 16 ビットをサポートする、1 成分 16 ビットの符号付き正規化整数形式です。
DXGI_FORMAT_R16_SINT590x3B赤チャネルに 16 ビットをサポートする、1 成分 16 ビットの符号付き整数形式です。
DXGI_FORMAT_R8_TYPELESS600x3C赤チャネルに 8 ビットをサポートする、1 成分 8 ビットの型なし形式です。
DXGI_FORMAT_R8_UNORM610x3D赤チャネルに 8 ビットをサポートする、1 成分 8 ビットの符号なし正規化整数形式です。
DXGI_FORMAT_R8_UINT620x3E赤チャネルに 8 ビットをサポートする、1 成分 8 ビットの符号なし整数形式です。
DXGI_FORMAT_R8_SNORM630x3F赤チャネルに 8 ビットをサポートする、1 成分 8 ビットの符号付き正規化整数形式です。
DXGI_FORMAT_R8_SINT640x40赤チャネルに 8 ビットをサポートする、1 成分 8 ビットの符号付き整数形式です。
DXGI_FORMAT_A8_UNORM650x41アルファのみの、1 成分 8 ビットの符号なし正規化整数形式です。
DXGI_FORMAT_R1_UNORM660x42赤チャネルに 1 ビットをサポートする、1 成分 1 ビットの符号なし正規化整数形式です。²
DXGI_FORMAT_R9G9B9E5_SHAREDEXP670x43

3 つの部分精度浮動小数点数を 1 つの 32 ビット値にエンコードし、すべてが同じ 5 ビットの指数を共有する形式です (符号ビット、10 ビットの仮数、5 ビットのバイアス付き (15) 指数からなる s10e5 の変種)。 符号ビットはなく、共有される 5 ビットのバイアス付き (15) 指数と、各チャネルに 9 ビットの仮数があります。次の図を参照してください。6,7

すべてのチャネルで共有される 5 ビットのバイアス付き指数と 9 ビットの仮数を示す、3 つの部分精度浮動小数点数のビット構成の図。
DXGI_FORMAT_R8G8_B8G8_UNORM680x44

4 成分 32 ビットの符号なし正規化整数形式です。このパックされた RGB 形式は UYVY 形式に相当します。各 32 ビットブロックは 2 つのピクセルの組 (R8, G8, B8) と (R8, G8, B8) を表し、R8/B8 の値は繰り返され、G8 の値は各ピクセル固有です。³

幅は偶数でなければなりません。

DXGI_FORMAT_G8R8_G8B8_UNORM690x45

4 成分 32 ビットの符号なし正規化整数形式です。このパックされた RGB 形式は YUY2 形式に相当します。各 32 ビットブロックは 2 つのピクセルの組 (R8, G8, B8) と (R8, G8, B8) を表し、R8/B8 の値は繰り返され、G8 の値は各ピクセル固有です。³

幅は偶数でなければなりません。

DXGI_FORMAT_BC1_TYPELESS700x464 成分の型なしブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC1_UNORM710x474 成分のブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC1_UNORM_SRGB720x48sRGB データ用の 4 成分ブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC2_TYPELESS730x494 成分の型なしブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC2_UNORM740x4A4 成分のブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC2_UNORM_SRGB750x4BsRGB データ用の 4 成分ブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC3_TYPELESS760x4C4 成分の型なしブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC3_UNORM770x4D4 成分のブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC3_UNORM_SRGB780x4EsRGB データ用の 4 成分ブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC4_TYPELESS790x4F1 成分の型なしブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC4_UNORM800x501 成分のブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC4_SNORM810x511 成分のブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC5_TYPELESS820x522 成分の型なしブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC5_UNORM830x532 成分のブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC5_SNORM840x542 成分のブロック圧縮形式です。ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_B5G6R5_UNORM850x55

青に 5 ビット、緑に 6 ビット、赤に 5 ビットをサポートする、3 成分 16 ビットの符号なし正規化整数形式です。

Direct3D 10 から Direct3D 11 まで: この値は DXGI 用に定義されています。ただし、Direct3D 10、10.1、11 のデバイスはこの形式をサポートしません。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_B5G5R5A1_UNORM860x56

各カラーチャネルに 5 ビット、1 ビットのアルファをサポートする、4 成分 16 ビットの符号なし正規化整数形式です。

Direct3D 10 から Direct3D 11 まで: この値は DXGI 用に定義されています。ただし、Direct3D 10、10.1、11 のデバイスはこの形式をサポートしません。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_B8G8R8A8_UNORM870x57各カラーチャネルに 8 ビット、8 ビットのアルファをサポートする、4 成分 32 ビットの符号なし正規化整数形式です。
DXGI_FORMAT_B8G8R8X8_UNORM880x58各カラーチャネルに 8 ビットをサポートし、8 ビットは未使用の、4 成分 32 ビットの符号なし正規化整数形式です。
DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM890x59各カラーチャネルに 10 ビット、2 ビットのアルファをサポートする、4 成分 32 ビットの 2.8 バイアス付き固定小数点形式です。
DXGI_FORMAT_B8G8R8A8_TYPELESS900x5Aアルファを含む各チャネルに 8 ビットをサポートする、4 成分 32 ビットの型なし形式です。⁴
DXGI_FORMAT_B8G8R8A8_UNORM_SRGB910x5Bアルファを含む各チャネルに 8 ビットをサポートする、4 成分 32 ビットの符号なし正規化標準 RGB 形式です。⁴
DXGI_FORMAT_B8G8R8X8_TYPELESS920x5C各カラーチャネルに 8 ビットをサポートし、8 ビットは未使用の、4 成分 32 ビットの型なし形式です。⁴
DXGI_FORMAT_B8G8R8X8_UNORM_SRGB930x5D各カラーチャネルに 8 ビットをサポートし、8 ビットは未使用の、4 成分 32 ビットの符号なし正規化標準 RGB 形式です。⁴
DXGI_FORMAT_BC6H_TYPELESS940x5E型なしのブロック圧縮形式です。⁴ ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC6H_UF16950x5Fブロック圧縮形式です。⁴ ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。⁵
DXGI_FORMAT_BC6H_SF16960x60ブロック圧縮形式です。⁴ ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。⁵
DXGI_FORMAT_BC7_TYPELESS970x61型なしのブロック圧縮形式です。⁴ ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC7_UNORM980x62ブロック圧縮形式です。⁴ ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_BC7_UNORM_SRGB990x63ブロック圧縮形式です。⁴ ブロック圧縮形式については、Direct3D 11 のテクスチャブロック圧縮を参照してください。
DXGI_FORMAT_AYUV1000x64

最も一般的な YUV 4:4:4 ビデオリソース形式です。このビデオリソース形式で有効なビュー形式は DXGI_FORMAT_R8G8B8A8_UNORMDXGI_FORMAT_R8G8B8A8_UINT です。UAV の場合は、さらに DXGI_FORMAT_R32_UINT も有効なビュー形式となります。UAV で DXGI_FORMAT_R32_UINT を使用すると、DXGI_FORMAT_R8G8B8A8_UNORMDXGI_FORMAT_R8G8B8A8_UINT では書き込みのみであるのに対し、読み取りと書き込みの両方が可能になります。サポートされるビューの種類は SRV、RTV、UAV です。1 つのビューでサーフェス全体を単純にマッピングします。ビューチャネルへのマッピングは V->R8、 U->G8、 Y->B8、 A->A8 です。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_Y4101010x65

チャネルあたり 10 ビットのパックされた YUV 4:4:4 ビデオリソース形式です。このビデオリソース形式で有効なビュー形式は DXGI_FORMAT_R10G10B10A2_UNORMDXGI_FORMAT_R10G10B10A2_UINT です。UAV の場合は、さらに DXGI_FORMAT_R32_UINT も有効なビュー形式となります。UAV で DXGI_FORMAT_R32_UINT を使用すると、DXGI_FORMAT_R10G10B10A2_UNORMDXGI_FORMAT_R10G10B10A2_UINT では書き込みのみであるのに対し、読み取りと書き込みの両方が可能になります。サポートされるビューの種類は SRV と UAV です。1 つのビューでサーフェス全体を単純にマッピングします。ビューチャネルへのマッピングは U->R10、 Y->G10、 V->B10、 A->A2 です。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_Y4161020x66

チャネルあたり 16 ビットのパックされた YUV 4:4:4 ビデオリソース形式です。このビデオリソース形式で有効なビュー形式は DXGI_FORMAT_R16G16B16A16_UNORMDXGI_FORMAT_R16G16B16A16_UINT です。サポートされるビューの種類は SRV と UAV です。1 つのビューでサーフェス全体を単純にマッピングします。ビューチャネルへのマッピングは U->R16、 Y->G16、 V->B16、 A->A16 です。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_NV121030x67

最も一般的な YUV 4:2:0 ビデオリソース形式です。このビデオリソース形式で有効な輝度データのビュー形式は DXGI_FORMAT_R8_UNORMDXGI_FORMAT_R8_UINT です。有効な彩度データのビュー形式 (幅と高さはそれぞれ輝度ビューの 1/2) は DXGI_FORMAT_R8G8_UNORMDXGI_FORMAT_R8G8_UINT です。サポートされるビューの種類は SRV、RTV、UAV です。輝度データビューでは、ビューチャネルへのマッピングは Y->R8 です。彩度データビューでは、ビューチャネルへのマッピングは U->R8 と V->G8 です。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

幅と高さは偶数でなければなりません。この形式の Direct3D 11 ステージングリソースおよび initData パラメーターは (rowPitch * (height + (height / 2))) バイトを使用します。先頭の (SysMemPitch * height) バイトが Y プレーンで、残りの (SysMemPitch * (height / 2)) バイトが UV プレーンです。

YUY 4:2:0 形式を使用するアプリは、輝度 (Y) プレーンを彩度 (UV) プレーンとは別にマッピングする必要があります。開発者は、同じテクスチャに対して ID3D12Device::CreateShaderResourceView を 2 回呼び出し、1 チャネル形式と 2 チャネル形式を渡すことでこれを行います。Y プレーンと互換性のある 1 チャネル形式を渡すと、Y プレーンのみがマッピングされます。UV プレーン (両方合わせて) と互換性のある 2 チャネル形式を渡すと、U と V のプレーンのみが 1 つのリソースビューとしてマッピングされます。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_P0101040x68

チャネルあたり 10 ビットのプレーナー YUV 4:2:0 ビデオリソース形式です。このビデオリソース形式で有効な輝度データのビュー形式は DXGI_FORMAT_R16_UNORMDXGI_FORMAT_R16_UINT です。ランタイムは、下位 6 ビットが 0 であるかどうかを強制しません (このビデオリソース形式は 16 ビットを使用する 10 ビット形式であるためです)。必要な場合は、アプリケーションのシェーダーコードで手動で強制する必要があります。 ランタイムから見ると、DXGI_FORMAT_P010DXGI_FORMAT_P016 と違いはありません。有効な彩度データのビュー形式 (幅と高さはそれぞれ輝度ビューの 1/2) は DXGI_FORMAT_R16G16_UNORMDXGI_FORMAT_R16G16_UINT です。UAV の場合は、さらに DXGI_FORMAT_R32_UINT も有効な彩度データのビュー形式となります。UAV で DXGI_FORMAT_R32_UINT を使用すると、DXGI_FORMAT_R16G16_UNORMDXGI_FORMAT_R16G16_UINT では書き込みのみであるのに対し、読み取りと書き込みの両方が可能になります。サポートされるビューの種類は SRV、RTV、UAV です。輝度データビューでは、ビューチャネルへのマッピングは Y->R16 です。彩度データビューでは、ビューチャネルへのマッピングは U->R16 と V->G16 です。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

幅と高さは偶数でなければなりません。この形式の Direct3D 11 ステージングリソースおよび initData パラメーターは (rowPitch * (height + (height / 2))) バイトを使用します。先頭の (SysMemPitch * height) バイトが Y プレーンで、残りの (SysMemPitch * (height / 2)) バイトが UV プレーンです。

YUY 4:2:0 形式を使用するアプリは、輝度 (Y) プレーンを彩度 (UV) プレーンとは別にマッピングする必要があります。開発者は、同じテクスチャに対して ID3D12Device::CreateShaderResourceView を 2 回呼び出し、1 チャネル形式と 2 チャネル形式を渡すことでこれを行います。Y プレーンと互換性のある 1 チャネル形式を渡すと、Y プレーンのみがマッピングされます。UV プレーン (両方合わせて) と互換性のある 2 チャネル形式を渡すと、U と V のプレーンのみが 1 つのリソースビューとしてマッピングされます。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_P0161050x69

チャネルあたり 16 ビットのプレーナー YUV 4:2:0 ビデオリソース形式です。このビデオリソース形式で有効な輝度データのビュー形式は DXGI_FORMAT_R16_UNORMDXGI_FORMAT_R16_UINT です。有効な彩度データのビュー形式 (幅と高さはそれぞれ輝度ビューの 1/2) は DXGI_FORMAT_R16G16_UNORMDXGI_FORMAT_R16G16_UINT です。UAV の場合は、さらに DXGI_FORMAT_R32_UINT も有効な彩度データのビュー形式となります。UAV で DXGI_FORMAT_R32_UINT を使用すると、DXGI_FORMAT_R16G16_UNORMDXGI_FORMAT_R16G16_UINT では書き込みのみであるのに対し、読み取りと書き込みの両方が可能になります。サポートされるビューの種類は SRV、RTV、UAV です。輝度データビューでは、ビューチャネルへのマッピングは Y->R16 です。彩度データビューでは、ビューチャネルへのマッピングは U->R16 と V->G16 です。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

幅と高さは偶数でなければなりません。この形式の Direct3D 11 ステージングリソースおよび initData パラメーターは (rowPitch * (height + (height / 2))) バイトを使用します。先頭の (SysMemPitch * height) バイトが Y プレーンで、残りの (SysMemPitch * (height / 2)) バイトが UV プレーンです。

YUY 4:2:0 形式を使用するアプリは、輝度 (Y) プレーンを彩度 (UV) プレーンとは別にマッピングする必要があります。開発者は、同じテクスチャに対して ID3D12Device::CreateShaderResourceView を 2 回呼び出し、1 チャネル形式と 2 チャネル形式を渡すことでこれを行います。Y プレーンと互換性のある 1 チャネル形式を渡すと、Y プレーンのみがマッピングされます。UV プレーン (両方合わせて) と互換性のある 2 チャネル形式を渡すと、U と V のプレーンのみが 1 つのリソースビューとしてマッピングされます。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_420_OPAQUE1060x6A

チャネルあたり 8 ビットのプレーナー YUV 4:2:0 ビデオリソース形式です。この形式はサブサンプリングされており、各ピクセルは独自の Y 値を持ちますが、2x2 のピクセルブロックごとに 1 組の U と V の値を共有します。ランタイムは、この形式で作成されるすべてのリソースの幅と高さが 2 の倍数であることを要求します。また、この形式に使用される RECT の left、right、top、bottom の各メンバーが 2 の倍数であることも要求します。この形式は、リソース内のデータレイアウトがアプリケーションからは完全に不透明である点で DXGI_FORMAT_NV12 と異なります。アプリケーションは CPU を使用してリソースをマップし、リソース内のデータにアクセスすることはできません。この形式ではシェーダーを使用できません。この動作により、NV12 以外の 4:2:0 レイアウト (YV12 など) をサポートするレガシーハードウェアを使用できます。また、アプリケーションがデータを標準的なレイアウトにする必要がない場合は、NV12 より優れた 4:2:0 実装を持つ新しいハードウェアも使用できます。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

幅と高さは偶数でなければなりません。この形式の Direct3D 11 ステージングリソースおよび initData パラメーターは (rowPitch * (height + (height / 2))) バイトを使用します。

YUY 4:2:0 形式を使用するアプリは、輝度 (Y) プレーンを彩度 (UV) プレーンとは別にマッピングする必要があります。開発者は、同じテクスチャに対して ID3D12Device::CreateShaderResourceView を 2 回呼び出し、1 チャネル形式と 2 チャネル形式を渡すことでこれを行います。Y プレーンと互換性のある 1 チャネル形式を渡すと、Y プレーンのみがマッピングされます。UV プレーン (両方合わせて) と互換性のある 2 チャネル形式を渡すと、U と V のプレーンのみが 1 つのリソースビューとしてマッピングされます。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_YUY21070x6B

最も一般的な YUV 4:2:2 ビデオリソース形式です。このビデオリソース形式で有効なビュー形式は DXGI_FORMAT_R8G8B8A8_UNORMDXGI_FORMAT_R8G8B8A8_UINT です。UAV の場合は、さらに DXGI_FORMAT_R32_UINT も有効なビュー形式となります。UAV で DXGI_FORMAT_R32_UINT を使用すると、DXGI_FORMAT_R8G8B8A8_UNORMDXGI_FORMAT_R8G8B8A8_UINT では書き込みのみであるのに対し、読み取りと書き込みの両方が可能になります。サポートされるビューの種類は SRV と UAV です。1 つのビューでサーフェス全体を単純にマッピングします。ビューチャネルへのマッピングは Y0->R8、 U0->G8、 Y1->B8、 V0->A8 です。

このビデオリソース形式に固有の有効なビュー形式として DXGI_FORMAT_R8G8_B8G8_UNORM があります。このビュー形式では、ハードウェアが読み取り時かつフィルタリング前に RGBA を自動的に再構成するため、ビューの幅は DXGI_FORMAT_R8G8B8A8_UNORMDXGI_FORMAT_R8G8B8A8_UINT のビューの 2 倍に見えます。 この Direct3D ハードウェアの動作は従来のものであり、現在ではおそらく有用ではありません。このビュー形式では、ビューチャネルへのマッピングは Y0->R8、 U0-> G8[0]、 Y1->B8、 V0-> G8[1] です。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

幅は偶数でなければなりません。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_Y2101080x6C

チャネルあたり 10 ビットのパックされた YUV 4:2:2 ビデオリソース形式です。このビデオリソース形式で有効なビュー形式は DXGI_FORMAT_R16G16B16A16_UNORMDXGI_FORMAT_R16G16B16A16_UINT です。ランタイムは、下位 6 ビットが 0 であるかどうかを強制しません (このビデオリソース形式は 16 ビットを使用する 10 ビット形式であるためです)。必要な場合は、アプリケーションのシェーダーコードで手動で強制する必要があります。 ランタイムから見ると、DXGI_FORMAT_Y210DXGI_FORMAT_Y216 と違いはありません。サポートされるビューの種類は SRV と UAV です。1 つのビューでサーフェス全体を単純にマッピングします。ビューチャネルへのマッピングは Y0->R16、 U->G16、 Y1->B16、 V->A16 です。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

幅は偶数でなければなりません。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_Y2161090x6D

チャネルあたり 16 ビットのパックされた YUV 4:2:2 ビデオリソース形式です。このビデオリソース形式で有効なビュー形式は DXGI_FORMAT_R16G16B16A16_UNORMDXGI_FORMAT_R16G16B16A16_UINT です。サポートされるビューの種類は SRV と UAV です。1 つのビューでサーフェス全体を単純にマッピングします。ビューチャネルへのマッピングは Y0->R16、 U->G16、 Y1->B16、 V->A16 です。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

幅は偶数でなければなりません。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_NV111100x6E

最も一般的なプレーナー YUV 4:1:1 ビデオリソース形式です。このビデオリソース形式で有効な輝度データのビュー形式は DXGI_FORMAT_R8_UNORMDXGI_FORMAT_R8_UINT です。有効な彩度データのビュー形式 (幅と高さはそれぞれ輝度ビューの 1/4) は DXGI_FORMAT_R8G8_UNORMDXGI_FORMAT_R8G8_UINT です。サポートされるビューの種類は SRV、RTV、UAV です。輝度データビューでは、ビューチャネルへのマッピングは Y->R8 です。彩度データビューでは、ビューチャネルへのマッピングは U->R8 と V->G8 です。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

幅は 4 の倍数でなければなりません。この形式の Direct3D11 ステージングリソースおよび initData パラメーターは (rowPitch * height * 2) バイトを使用します。先頭の (SysMemPitch * height) バイトが Y プレーン、次の ((SysMemPitch / 2) * height) バイトが UV プレーンで、残りはパディングです。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_AI441110x6F

DVD のサブピクチャで一般的に使用される、4 ビットのパレット化 YUV 形式です。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_IA441120x70

DVD のサブピクチャで一般的に使用される、4 ビットのパレット化 YUV 形式です。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_P81130x71

8 ビットのパレット化形式です。プロセッサが ISDB-T データを処理する場合はパレット化 RGB データに、BluRay データを処理する場合はパレット化 YUV データに使用されます。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_A8P81140x72

8 ビットのアルファを持つ 8 ビットのパレット化形式です。プロセッサが BluRay データを処理する場合のパレット化 YUV データに使用されます。

ビデオレンダリング用の YUV 形式の詳細については、ビデオレンダリングに推奨される 8 ビット YUV 形式を参照してください。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_B4G4R4A4_UNORM1150x73

アルファを含む各チャネルに 4 ビットをサポートする、4 成分 16 ビットの符号なし正規化整数形式です。

Direct3D 11.1: この値は Windows 8 以降でのみサポートされます。

DXGI_FORMAT_P2081300x82ビデオ形式です。ハイブリッドプレーナー 4:2:2 形式の 8 ビット版です。
DXGI_FORMAT_V2081310x838 ビットの YCbCrA 4:4 レンダリング形式です。
DXGI_FORMAT_V4081320x848 ビットの YCbCrA 4:4:4:4 レンダリング形式です。
DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE1890xBD未定です。
DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE1900xBE未定です。
DXGI_FORMAT_A4B4G4R4_UNORM1910xBFアルファを含む各チャネルに 4 ビットをサポートする、4 成分 16 ビットの符号なし正規化整数形式です。

公式ドキュメント

完全に型指定された形式と型なし形式を含む、リソースのデータ形式を指定する定数を定義します。ページ下部の修飾子の一覧で、各形式の種類をより詳しく説明しています。

解説(Remarks)

DXGI_FORMAT_A4B4G4R4_UNORM (値 191) は、アルファを含む各チャネルに 4 ビットをサポートする、4 成分 16 ビットの符号なし正規化整数形式です。

バイト順序 (LSB/MSB)

ほとんどの形式は成分がバイト境界に整列しており、成分は C 配列の順序 (アドレスの小さいものが先) で並びます。 2 のべき乗に整列した成分を持たない形式では、最初に名前が付けられた成分が最下位ビットに配置されます。

エンディアンに依存しない移植性のあるコーディング

システムがビッグエンディアンとリトルエンディアンのどちらのバイト順序を使用するかに応じて調整するのではなく、次のように移植性のあるコードを記述してください。

// DXGI_FORMAT_R32G32B32A32_FLOAT
FLOAT* pR32G32B32A32 = ...;
pR32G32B32A32[0] = 1.f;  // R
pR32G32B32A32[1] = 0.f;  // G
pR32G32B32A32[2] = 0.f;  // B
pR32G32B32A32[3] = 0.5f; // A

// DXGI_FORMAT_R10G10B10A2_UNORM
UINT32* pR10G10B10A2 = ...;
pR10G10B10A2 = (0x3ff) | (0x1 << 30);  // R=0x3ff, and A=0x1

形式に関する制限と注意事項

いくつかの形式には、追加の制限と暗黙の動作があります。
  1. DXGI_FORMAT_R32G32B32 系の形式で宣言されたリソースは、頂点データとテクスチャデータに同時に使用することはできません。 つまり、次のバインドフラグのいずれかを使用するバッファーリソースを、DXGI_FORMAT_R32G32B32 系の形式で作成することはできません。 D3D10_BIND_VERTEX_BUFFERD3D10_BIND_INDEX_BUFFERD3D10_BIND_CONSTANT_BUFFERD3D10_BIND_STREAM_OUTPUT (D3D10_BIND_FLAG を参照)。
  2. DXGI_FORMAT_R1_UNORM はテキストのフィルタリング専用に設計されており、形式固有の構成可能な 8x8 フィルターモードと共に使用しなければなりません。 この形式を使用して HLSL のサンプリング関数を呼び出す場合、アドレスオフセットパラメーターは (0,0) に設定しなければなりません。
  3. サブサンプリング形式 (DXGI_FORMAT_R8G8_B8G8 など) を使用するリソースは、x 方向のサイズが 2 の倍数でなければなりません。
  4. この形式は Direct3D 10 および Direct3D 10.1 では使用できません。
  5. これらの浮動小数点形式では、仮数に暗黙の 1 が加算されます。指数が 0 でない場合、指数を適用する前に仮数に 1.0 が加算されます。
  6. これらの浮動小数点形式では、仮数に暗黙の 1 は加算されません。
  7. 非正規化数のサポート: 9、10、11、16 ビットの浮動小数点形式は非正規化数をサポートします。
  8. 非正規化数のサポートなし: 32 ビットおよび 64 ビットの浮動小数点形式は非正規化数を 0 にフラッシュします。
特定のハードウェア 機能レベル がサポートする形式の一覧は、次のトピックで説明されています。 DXGI_FORMAT の値に対応する DirectXMath の型の一覧については、DirectXMath ライブラリの内部構造を参照してください。

形式の修飾子

各列挙値には、データ型を表す形式修飾子が含まれています。

形式の修飾子 説明
_FLOAT 浮動小数点値です。32 ビットの浮動小数点形式は IEEE 754 単精度 (s23e8 形式) を使用します。すなわち、符号ビット、8 ビットのバイアス付き (127) 指数、 23 ビットの仮数です。16 ビットの浮動小数点形式は半精度 (s10e5 形式) を使用します。すなわち、符号ビット、5 ビットのバイアス付き (15) 指数、10 ビットの仮数です。
_SINT 2 の補数による符号付き整数です。たとえば、3 ビットの SINT は -4、-3、-2、-1、0、1、2、3 の値を表します。
_SNORM 符号付き正規化整数です。リソース内では符号付き整数として解釈され、シェーダー内では [-1, 1] の範囲の符号付き正規化浮動小数点値として解釈されます。2 の補数表現では、最大値は 1.0f (5 ビット値 01111 が 1.0f に対応)、最小値は -1.0f (5 ビット値 10000 が -1.0f に対応) です。さらに、2 番目に小さい値も -1.0f に対応します (5 ビット値 10001 が -1.0f に対応)。結果として得られる整数表現は、(-1.0f...0.0f) の範囲で等間隔に並ぶ浮動小数点値となり、(0.0f...1.0f) の範囲の数値についても対応する表現の集合が得られます。
_SRGB 標準 RGB データです。平均的な観察者が平均的な視聴条件のもとで平均的なディスプレイ上で見られるように、輝度レベルのほぼ線形なランプで色を表示します。

すべて 0 のビットは 0.0f に、すべて 1 のビットは 1.0f に対応します。すべて 0 とすべて 1 の間の符号なし整数エンコードの並びは、0.0f から 1.0f の間の数値を浮動小数点として解釈したときの非線形な進行を表します。詳細については、IEC (国際電気標準会議) の sRGB 色標準 IEC 61996-2-1 を参照してください。

sRGB 空間との相互変換は、D3DX10 または D3DX9 のテクスチャ読み込み関数によって自動的に行われます。_SRGB を持つ形式に A チャネルがある場合、A チャネルはガンマ 1.0f のデータとして格納され、その形式の R、G、B チャネルは sRGB ガンマ (線形区間 + 2.4 乗) のデータとして格納されます。
_TYPELESS ビット数が定義された型なしデータです。型なし形式は、型なしリソース、つまりサイズは判明しているがデータ型がまだ完全に定義されていないリソースを作成するために設計されています。型なしリソースをシェーダーにバインドするときは、アプリケーションまたはシェーダーが形式の型を解決しなければなりません (その型は、型なし形式の成分あたりのビット数と一致していなければなりません)。

型なし形式には 1 つ以上のサブ形式が含まれ、各サブ形式がデータ型を決定します。 たとえば、3 成分 96 ビットデータの型を定義する R32G32B32 グループには、1 つの型なし形式と 3 つの完全に型指定されたサブ形式があります。


DXGI_FORMAT_R32G32B32_TYPELESS,
DXGI_FORMAT_R32G32B32_FLOAT,
DXGI_FORMAT_R32G32B32_UINT,
DXGI_FORMAT_R32G32B32_SINT,
_UINT 符号なし整数です。たとえば、3 ビットの UINT は 0、1、2、3、4、5、6、7 の値を表します。
_UNORM 符号なし正規化整数です。リソース内では符号なし整数として解釈され、シェーダー内では [0, 1] の範囲の符号なし正規化浮動小数点値として解釈されます。すべて 0 のビットは 0.0f に、すべて 1 のビットは 1.0f に対応します。0.0f から 1.0f までの等間隔の浮動小数点値が表現されます。たとえば、2 ビットの UNORM は 0.0f、1/3、2/3、1.0f を表します。
_SHAREDEXP 共有指数です。この形式内のすべての浮動小数点表現が 1 つの指数を共有します。

新しいリソース形式

Direct3D 10 では、ハイダイナミックレンジ (HDR) のライティングデータ、法線マップ、ハイトフィールドを元のサイズのごく一部にまで圧縮する、新しいデータ圧縮形式が提供されます。圧縮の種類には次のものがあります。 ブロック圧縮形式は、ミップマップサーフェスを含む任意の 2D または 3D テクスチャの種類 ( Texture2D、Texture2DArray、Texture3D、TextureCube) で使用できます。ブロック圧縮技術では、テクスチャの寸法が 4 の倍数である必要があります (実装が 4x4 テクセルのブロック単位で圧縮するためです)。テクスチャサンプラーでは、圧縮形式は常にテクスチャフィルタリングの前に展開されます。
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)

各言語での定義

列挙メンバーの定義。HSP タブは #define global(値は16進)。

typedef enum DXGI_FORMAT : int {
    DXGI_FORMAT_UNKNOWN = 0,
    DXGI_FORMAT_R32G32B32A32_TYPELESS = 1,
    DXGI_FORMAT_R32G32B32A32_FLOAT = 2,
    DXGI_FORMAT_R32G32B32A32_UINT = 3,
    DXGI_FORMAT_R32G32B32A32_SINT = 4,
    DXGI_FORMAT_R32G32B32_TYPELESS = 5,
    DXGI_FORMAT_R32G32B32_FLOAT = 6,
    DXGI_FORMAT_R32G32B32_UINT = 7,
    DXGI_FORMAT_R32G32B32_SINT = 8,
    DXGI_FORMAT_R16G16B16A16_TYPELESS = 9,
    DXGI_FORMAT_R16G16B16A16_FLOAT = 10,
    DXGI_FORMAT_R16G16B16A16_UNORM = 11,
    DXGI_FORMAT_R16G16B16A16_UINT = 12,
    DXGI_FORMAT_R16G16B16A16_SNORM = 13,
    DXGI_FORMAT_R16G16B16A16_SINT = 14,
    DXGI_FORMAT_R32G32_TYPELESS = 15,
    DXGI_FORMAT_R32G32_FLOAT = 16,
    DXGI_FORMAT_R32G32_UINT = 17,
    DXGI_FORMAT_R32G32_SINT = 18,
    DXGI_FORMAT_R32G8X24_TYPELESS = 19,
    DXGI_FORMAT_D32_FLOAT_S8X24_UINT = 20,
    DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS = 21,
    DXGI_FORMAT_X32_TYPELESS_G8X24_UINT = 22,
    DXGI_FORMAT_R10G10B10A2_TYPELESS = 23,
    DXGI_FORMAT_R10G10B10A2_UNORM = 24,
    DXGI_FORMAT_R10G10B10A2_UINT = 25,
    DXGI_FORMAT_R11G11B10_FLOAT = 26,
    DXGI_FORMAT_R8G8B8A8_TYPELESS = 27,
    DXGI_FORMAT_R8G8B8A8_UNORM = 28,
    DXGI_FORMAT_R8G8B8A8_UNORM_SRGB = 29,
    DXGI_FORMAT_R8G8B8A8_UINT = 30,
    DXGI_FORMAT_R8G8B8A8_SNORM = 31,
    DXGI_FORMAT_R8G8B8A8_SINT = 32,
    DXGI_FORMAT_R16G16_TYPELESS = 33,
    DXGI_FORMAT_R16G16_FLOAT = 34,
    DXGI_FORMAT_R16G16_UNORM = 35,
    DXGI_FORMAT_R16G16_UINT = 36,
    DXGI_FORMAT_R16G16_SNORM = 37,
    DXGI_FORMAT_R16G16_SINT = 38,
    DXGI_FORMAT_R32_TYPELESS = 39,
    DXGI_FORMAT_D32_FLOAT = 40,
    DXGI_FORMAT_R32_FLOAT = 41,
    DXGI_FORMAT_R32_UINT = 42,
    DXGI_FORMAT_R32_SINT = 43,
    DXGI_FORMAT_R24G8_TYPELESS = 44,
    DXGI_FORMAT_D24_UNORM_S8_UINT = 45,
    DXGI_FORMAT_R24_UNORM_X8_TYPELESS = 46,
    DXGI_FORMAT_X24_TYPELESS_G8_UINT = 47,
    DXGI_FORMAT_R8G8_TYPELESS = 48,
    DXGI_FORMAT_R8G8_UNORM = 49,
    DXGI_FORMAT_R8G8_UINT = 50,
    DXGI_FORMAT_R8G8_SNORM = 51,
    DXGI_FORMAT_R8G8_SINT = 52,
    DXGI_FORMAT_R16_TYPELESS = 53,
    DXGI_FORMAT_R16_FLOAT = 54,
    DXGI_FORMAT_D16_UNORM = 55,
    DXGI_FORMAT_R16_UNORM = 56,
    DXGI_FORMAT_R16_UINT = 57,
    DXGI_FORMAT_R16_SNORM = 58,
    DXGI_FORMAT_R16_SINT = 59,
    DXGI_FORMAT_R8_TYPELESS = 60,
    DXGI_FORMAT_R8_UNORM = 61,
    DXGI_FORMAT_R8_UINT = 62,
    DXGI_FORMAT_R8_SNORM = 63,
    DXGI_FORMAT_R8_SINT = 64,
    DXGI_FORMAT_A8_UNORM = 65,
    DXGI_FORMAT_R1_UNORM = 66,
    DXGI_FORMAT_R9G9B9E5_SHAREDEXP = 67,
    DXGI_FORMAT_R8G8_B8G8_UNORM = 68,
    DXGI_FORMAT_G8R8_G8B8_UNORM = 69,
    DXGI_FORMAT_BC1_TYPELESS = 70,
    DXGI_FORMAT_BC1_UNORM = 71,
    DXGI_FORMAT_BC1_UNORM_SRGB = 72,
    DXGI_FORMAT_BC2_TYPELESS = 73,
    DXGI_FORMAT_BC2_UNORM = 74,
    DXGI_FORMAT_BC2_UNORM_SRGB = 75,
    DXGI_FORMAT_BC3_TYPELESS = 76,
    DXGI_FORMAT_BC3_UNORM = 77,
    DXGI_FORMAT_BC3_UNORM_SRGB = 78,
    DXGI_FORMAT_BC4_TYPELESS = 79,
    DXGI_FORMAT_BC4_UNORM = 80,
    DXGI_FORMAT_BC4_SNORM = 81,
    DXGI_FORMAT_BC5_TYPELESS = 82,
    DXGI_FORMAT_BC5_UNORM = 83,
    DXGI_FORMAT_BC5_SNORM = 84,
    DXGI_FORMAT_B5G6R5_UNORM = 85,
    DXGI_FORMAT_B5G5R5A1_UNORM = 86,
    DXGI_FORMAT_B8G8R8A8_UNORM = 87,
    DXGI_FORMAT_B8G8R8X8_UNORM = 88,
    DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM = 89,
    DXGI_FORMAT_B8G8R8A8_TYPELESS = 90,
    DXGI_FORMAT_B8G8R8A8_UNORM_SRGB = 91,
    DXGI_FORMAT_B8G8R8X8_TYPELESS = 92,
    DXGI_FORMAT_B8G8R8X8_UNORM_SRGB = 93,
    DXGI_FORMAT_BC6H_TYPELESS = 94,
    DXGI_FORMAT_BC6H_UF16 = 95,
    DXGI_FORMAT_BC6H_SF16 = 96,
    DXGI_FORMAT_BC7_TYPELESS = 97,
    DXGI_FORMAT_BC7_UNORM = 98,
    DXGI_FORMAT_BC7_UNORM_SRGB = 99,
    DXGI_FORMAT_AYUV = 100,
    DXGI_FORMAT_Y410 = 101,
    DXGI_FORMAT_Y416 = 102,
    DXGI_FORMAT_NV12 = 103,
    DXGI_FORMAT_P010 = 104,
    DXGI_FORMAT_P016 = 105,
    DXGI_FORMAT_420_OPAQUE = 106,
    DXGI_FORMAT_YUY2 = 107,
    DXGI_FORMAT_Y210 = 108,
    DXGI_FORMAT_Y216 = 109,
    DXGI_FORMAT_NV11 = 110,
    DXGI_FORMAT_AI44 = 111,
    DXGI_FORMAT_IA44 = 112,
    DXGI_FORMAT_P8 = 113,
    DXGI_FORMAT_A8P8 = 114,
    DXGI_FORMAT_B4G4R4A4_UNORM = 115,
    DXGI_FORMAT_P208 = 130,
    DXGI_FORMAT_V208 = 131,
    DXGI_FORMAT_V408 = 132,
    DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE = 189,
    DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE = 190,
    DXGI_FORMAT_A4B4G4R4_UNORM = 191
} DXGI_FORMAT;
public enum DXGI_FORMAT : int
{
    DXGI_FORMAT_UNKNOWN = 0,
    DXGI_FORMAT_R32G32B32A32_TYPELESS = 1,
    DXGI_FORMAT_R32G32B32A32_FLOAT = 2,
    DXGI_FORMAT_R32G32B32A32_UINT = 3,
    DXGI_FORMAT_R32G32B32A32_SINT = 4,
    DXGI_FORMAT_R32G32B32_TYPELESS = 5,
    DXGI_FORMAT_R32G32B32_FLOAT = 6,
    DXGI_FORMAT_R32G32B32_UINT = 7,
    DXGI_FORMAT_R32G32B32_SINT = 8,
    DXGI_FORMAT_R16G16B16A16_TYPELESS = 9,
    DXGI_FORMAT_R16G16B16A16_FLOAT = 10,
    DXGI_FORMAT_R16G16B16A16_UNORM = 11,
    DXGI_FORMAT_R16G16B16A16_UINT = 12,
    DXGI_FORMAT_R16G16B16A16_SNORM = 13,
    DXGI_FORMAT_R16G16B16A16_SINT = 14,
    DXGI_FORMAT_R32G32_TYPELESS = 15,
    DXGI_FORMAT_R32G32_FLOAT = 16,
    DXGI_FORMAT_R32G32_UINT = 17,
    DXGI_FORMAT_R32G32_SINT = 18,
    DXGI_FORMAT_R32G8X24_TYPELESS = 19,
    DXGI_FORMAT_D32_FLOAT_S8X24_UINT = 20,
    DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS = 21,
    DXGI_FORMAT_X32_TYPELESS_G8X24_UINT = 22,
    DXGI_FORMAT_R10G10B10A2_TYPELESS = 23,
    DXGI_FORMAT_R10G10B10A2_UNORM = 24,
    DXGI_FORMAT_R10G10B10A2_UINT = 25,
    DXGI_FORMAT_R11G11B10_FLOAT = 26,
    DXGI_FORMAT_R8G8B8A8_TYPELESS = 27,
    DXGI_FORMAT_R8G8B8A8_UNORM = 28,
    DXGI_FORMAT_R8G8B8A8_UNORM_SRGB = 29,
    DXGI_FORMAT_R8G8B8A8_UINT = 30,
    DXGI_FORMAT_R8G8B8A8_SNORM = 31,
    DXGI_FORMAT_R8G8B8A8_SINT = 32,
    DXGI_FORMAT_R16G16_TYPELESS = 33,
    DXGI_FORMAT_R16G16_FLOAT = 34,
    DXGI_FORMAT_R16G16_UNORM = 35,
    DXGI_FORMAT_R16G16_UINT = 36,
    DXGI_FORMAT_R16G16_SNORM = 37,
    DXGI_FORMAT_R16G16_SINT = 38,
    DXGI_FORMAT_R32_TYPELESS = 39,
    DXGI_FORMAT_D32_FLOAT = 40,
    DXGI_FORMAT_R32_FLOAT = 41,
    DXGI_FORMAT_R32_UINT = 42,
    DXGI_FORMAT_R32_SINT = 43,
    DXGI_FORMAT_R24G8_TYPELESS = 44,
    DXGI_FORMAT_D24_UNORM_S8_UINT = 45,
    DXGI_FORMAT_R24_UNORM_X8_TYPELESS = 46,
    DXGI_FORMAT_X24_TYPELESS_G8_UINT = 47,
    DXGI_FORMAT_R8G8_TYPELESS = 48,
    DXGI_FORMAT_R8G8_UNORM = 49,
    DXGI_FORMAT_R8G8_UINT = 50,
    DXGI_FORMAT_R8G8_SNORM = 51,
    DXGI_FORMAT_R8G8_SINT = 52,
    DXGI_FORMAT_R16_TYPELESS = 53,
    DXGI_FORMAT_R16_FLOAT = 54,
    DXGI_FORMAT_D16_UNORM = 55,
    DXGI_FORMAT_R16_UNORM = 56,
    DXGI_FORMAT_R16_UINT = 57,
    DXGI_FORMAT_R16_SNORM = 58,
    DXGI_FORMAT_R16_SINT = 59,
    DXGI_FORMAT_R8_TYPELESS = 60,
    DXGI_FORMAT_R8_UNORM = 61,
    DXGI_FORMAT_R8_UINT = 62,
    DXGI_FORMAT_R8_SNORM = 63,
    DXGI_FORMAT_R8_SINT = 64,
    DXGI_FORMAT_A8_UNORM = 65,
    DXGI_FORMAT_R1_UNORM = 66,
    DXGI_FORMAT_R9G9B9E5_SHAREDEXP = 67,
    DXGI_FORMAT_R8G8_B8G8_UNORM = 68,
    DXGI_FORMAT_G8R8_G8B8_UNORM = 69,
    DXGI_FORMAT_BC1_TYPELESS = 70,
    DXGI_FORMAT_BC1_UNORM = 71,
    DXGI_FORMAT_BC1_UNORM_SRGB = 72,
    DXGI_FORMAT_BC2_TYPELESS = 73,
    DXGI_FORMAT_BC2_UNORM = 74,
    DXGI_FORMAT_BC2_UNORM_SRGB = 75,
    DXGI_FORMAT_BC3_TYPELESS = 76,
    DXGI_FORMAT_BC3_UNORM = 77,
    DXGI_FORMAT_BC3_UNORM_SRGB = 78,
    DXGI_FORMAT_BC4_TYPELESS = 79,
    DXGI_FORMAT_BC4_UNORM = 80,
    DXGI_FORMAT_BC4_SNORM = 81,
    DXGI_FORMAT_BC5_TYPELESS = 82,
    DXGI_FORMAT_BC5_UNORM = 83,
    DXGI_FORMAT_BC5_SNORM = 84,
    DXGI_FORMAT_B5G6R5_UNORM = 85,
    DXGI_FORMAT_B5G5R5A1_UNORM = 86,
    DXGI_FORMAT_B8G8R8A8_UNORM = 87,
    DXGI_FORMAT_B8G8R8X8_UNORM = 88,
    DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM = 89,
    DXGI_FORMAT_B8G8R8A8_TYPELESS = 90,
    DXGI_FORMAT_B8G8R8A8_UNORM_SRGB = 91,
    DXGI_FORMAT_B8G8R8X8_TYPELESS = 92,
    DXGI_FORMAT_B8G8R8X8_UNORM_SRGB = 93,
    DXGI_FORMAT_BC6H_TYPELESS = 94,
    DXGI_FORMAT_BC6H_UF16 = 95,
    DXGI_FORMAT_BC6H_SF16 = 96,
    DXGI_FORMAT_BC7_TYPELESS = 97,
    DXGI_FORMAT_BC7_UNORM = 98,
    DXGI_FORMAT_BC7_UNORM_SRGB = 99,
    DXGI_FORMAT_AYUV = 100,
    DXGI_FORMAT_Y410 = 101,
    DXGI_FORMAT_Y416 = 102,
    DXGI_FORMAT_NV12 = 103,
    DXGI_FORMAT_P010 = 104,
    DXGI_FORMAT_P016 = 105,
    DXGI_FORMAT_420_OPAQUE = 106,
    DXGI_FORMAT_YUY2 = 107,
    DXGI_FORMAT_Y210 = 108,
    DXGI_FORMAT_Y216 = 109,
    DXGI_FORMAT_NV11 = 110,
    DXGI_FORMAT_AI44 = 111,
    DXGI_FORMAT_IA44 = 112,
    DXGI_FORMAT_P8 = 113,
    DXGI_FORMAT_A8P8 = 114,
    DXGI_FORMAT_B4G4R4A4_UNORM = 115,
    DXGI_FORMAT_P208 = 130,
    DXGI_FORMAT_V208 = 131,
    DXGI_FORMAT_V408 = 132,
    DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE = 189,
    DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE = 190,
    DXGI_FORMAT_A4B4G4R4_UNORM = 191,
}
Public Enum DXGI_FORMAT As Integer
    DXGI_FORMAT_UNKNOWN = 0
    DXGI_FORMAT_R32G32B32A32_TYPELESS = 1
    DXGI_FORMAT_R32G32B32A32_FLOAT = 2
    DXGI_FORMAT_R32G32B32A32_UINT = 3
    DXGI_FORMAT_R32G32B32A32_SINT = 4
    DXGI_FORMAT_R32G32B32_TYPELESS = 5
    DXGI_FORMAT_R32G32B32_FLOAT = 6
    DXGI_FORMAT_R32G32B32_UINT = 7
    DXGI_FORMAT_R32G32B32_SINT = 8
    DXGI_FORMAT_R16G16B16A16_TYPELESS = 9
    DXGI_FORMAT_R16G16B16A16_FLOAT = 10
    DXGI_FORMAT_R16G16B16A16_UNORM = 11
    DXGI_FORMAT_R16G16B16A16_UINT = 12
    DXGI_FORMAT_R16G16B16A16_SNORM = 13
    DXGI_FORMAT_R16G16B16A16_SINT = 14
    DXGI_FORMAT_R32G32_TYPELESS = 15
    DXGI_FORMAT_R32G32_FLOAT = 16
    DXGI_FORMAT_R32G32_UINT = 17
    DXGI_FORMAT_R32G32_SINT = 18
    DXGI_FORMAT_R32G8X24_TYPELESS = 19
    DXGI_FORMAT_D32_FLOAT_S8X24_UINT = 20
    DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS = 21
    DXGI_FORMAT_X32_TYPELESS_G8X24_UINT = 22
    DXGI_FORMAT_R10G10B10A2_TYPELESS = 23
    DXGI_FORMAT_R10G10B10A2_UNORM = 24
    DXGI_FORMAT_R10G10B10A2_UINT = 25
    DXGI_FORMAT_R11G11B10_FLOAT = 26
    DXGI_FORMAT_R8G8B8A8_TYPELESS = 27
    DXGI_FORMAT_R8G8B8A8_UNORM = 28
    DXGI_FORMAT_R8G8B8A8_UNORM_SRGB = 29
    DXGI_FORMAT_R8G8B8A8_UINT = 30
    DXGI_FORMAT_R8G8B8A8_SNORM = 31
    DXGI_FORMAT_R8G8B8A8_SINT = 32
    DXGI_FORMAT_R16G16_TYPELESS = 33
    DXGI_FORMAT_R16G16_FLOAT = 34
    DXGI_FORMAT_R16G16_UNORM = 35
    DXGI_FORMAT_R16G16_UINT = 36
    DXGI_FORMAT_R16G16_SNORM = 37
    DXGI_FORMAT_R16G16_SINT = 38
    DXGI_FORMAT_R32_TYPELESS = 39
    DXGI_FORMAT_D32_FLOAT = 40
    DXGI_FORMAT_R32_FLOAT = 41
    DXGI_FORMAT_R32_UINT = 42
    DXGI_FORMAT_R32_SINT = 43
    DXGI_FORMAT_R24G8_TYPELESS = 44
    DXGI_FORMAT_D24_UNORM_S8_UINT = 45
    DXGI_FORMAT_R24_UNORM_X8_TYPELESS = 46
    DXGI_FORMAT_X24_TYPELESS_G8_UINT = 47
    DXGI_FORMAT_R8G8_TYPELESS = 48
    DXGI_FORMAT_R8G8_UNORM = 49
    DXGI_FORMAT_R8G8_UINT = 50
    DXGI_FORMAT_R8G8_SNORM = 51
    DXGI_FORMAT_R8G8_SINT = 52
    DXGI_FORMAT_R16_TYPELESS = 53
    DXGI_FORMAT_R16_FLOAT = 54
    DXGI_FORMAT_D16_UNORM = 55
    DXGI_FORMAT_R16_UNORM = 56
    DXGI_FORMAT_R16_UINT = 57
    DXGI_FORMAT_R16_SNORM = 58
    DXGI_FORMAT_R16_SINT = 59
    DXGI_FORMAT_R8_TYPELESS = 60
    DXGI_FORMAT_R8_UNORM = 61
    DXGI_FORMAT_R8_UINT = 62
    DXGI_FORMAT_R8_SNORM = 63
    DXGI_FORMAT_R8_SINT = 64
    DXGI_FORMAT_A8_UNORM = 65
    DXGI_FORMAT_R1_UNORM = 66
    DXGI_FORMAT_R9G9B9E5_SHAREDEXP = 67
    DXGI_FORMAT_R8G8_B8G8_UNORM = 68
    DXGI_FORMAT_G8R8_G8B8_UNORM = 69
    DXGI_FORMAT_BC1_TYPELESS = 70
    DXGI_FORMAT_BC1_UNORM = 71
    DXGI_FORMAT_BC1_UNORM_SRGB = 72
    DXGI_FORMAT_BC2_TYPELESS = 73
    DXGI_FORMAT_BC2_UNORM = 74
    DXGI_FORMAT_BC2_UNORM_SRGB = 75
    DXGI_FORMAT_BC3_TYPELESS = 76
    DXGI_FORMAT_BC3_UNORM = 77
    DXGI_FORMAT_BC3_UNORM_SRGB = 78
    DXGI_FORMAT_BC4_TYPELESS = 79
    DXGI_FORMAT_BC4_UNORM = 80
    DXGI_FORMAT_BC4_SNORM = 81
    DXGI_FORMAT_BC5_TYPELESS = 82
    DXGI_FORMAT_BC5_UNORM = 83
    DXGI_FORMAT_BC5_SNORM = 84
    DXGI_FORMAT_B5G6R5_UNORM = 85
    DXGI_FORMAT_B5G5R5A1_UNORM = 86
    DXGI_FORMAT_B8G8R8A8_UNORM = 87
    DXGI_FORMAT_B8G8R8X8_UNORM = 88
    DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM = 89
    DXGI_FORMAT_B8G8R8A8_TYPELESS = 90
    DXGI_FORMAT_B8G8R8A8_UNORM_SRGB = 91
    DXGI_FORMAT_B8G8R8X8_TYPELESS = 92
    DXGI_FORMAT_B8G8R8X8_UNORM_SRGB = 93
    DXGI_FORMAT_BC6H_TYPELESS = 94
    DXGI_FORMAT_BC6H_UF16 = 95
    DXGI_FORMAT_BC6H_SF16 = 96
    DXGI_FORMAT_BC7_TYPELESS = 97
    DXGI_FORMAT_BC7_UNORM = 98
    DXGI_FORMAT_BC7_UNORM_SRGB = 99
    DXGI_FORMAT_AYUV = 100
    DXGI_FORMAT_Y410 = 101
    DXGI_FORMAT_Y416 = 102
    DXGI_FORMAT_NV12 = 103
    DXGI_FORMAT_P010 = 104
    DXGI_FORMAT_P016 = 105
    DXGI_FORMAT_420_OPAQUE = 106
    DXGI_FORMAT_YUY2 = 107
    DXGI_FORMAT_Y210 = 108
    DXGI_FORMAT_Y216 = 109
    DXGI_FORMAT_NV11 = 110
    DXGI_FORMAT_AI44 = 111
    DXGI_FORMAT_IA44 = 112
    DXGI_FORMAT_P8 = 113
    DXGI_FORMAT_A8P8 = 114
    DXGI_FORMAT_B4G4R4A4_UNORM = 115
    DXGI_FORMAT_P208 = 130
    DXGI_FORMAT_V208 = 131
    DXGI_FORMAT_V408 = 132
    DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE = 189
    DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE = 190
    DXGI_FORMAT_A4B4G4R4_UNORM = 191
End Enum
import enum

class DXGI_FORMAT(enum.IntEnum):
    DXGI_FORMAT_UNKNOWN = 0
    DXGI_FORMAT_R32G32B32A32_TYPELESS = 1
    DXGI_FORMAT_R32G32B32A32_FLOAT = 2
    DXGI_FORMAT_R32G32B32A32_UINT = 3
    DXGI_FORMAT_R32G32B32A32_SINT = 4
    DXGI_FORMAT_R32G32B32_TYPELESS = 5
    DXGI_FORMAT_R32G32B32_FLOAT = 6
    DXGI_FORMAT_R32G32B32_UINT = 7
    DXGI_FORMAT_R32G32B32_SINT = 8
    DXGI_FORMAT_R16G16B16A16_TYPELESS = 9
    DXGI_FORMAT_R16G16B16A16_FLOAT = 10
    DXGI_FORMAT_R16G16B16A16_UNORM = 11
    DXGI_FORMAT_R16G16B16A16_UINT = 12
    DXGI_FORMAT_R16G16B16A16_SNORM = 13
    DXGI_FORMAT_R16G16B16A16_SINT = 14
    DXGI_FORMAT_R32G32_TYPELESS = 15
    DXGI_FORMAT_R32G32_FLOAT = 16
    DXGI_FORMAT_R32G32_UINT = 17
    DXGI_FORMAT_R32G32_SINT = 18
    DXGI_FORMAT_R32G8X24_TYPELESS = 19
    DXGI_FORMAT_D32_FLOAT_S8X24_UINT = 20
    DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS = 21
    DXGI_FORMAT_X32_TYPELESS_G8X24_UINT = 22
    DXGI_FORMAT_R10G10B10A2_TYPELESS = 23
    DXGI_FORMAT_R10G10B10A2_UNORM = 24
    DXGI_FORMAT_R10G10B10A2_UINT = 25
    DXGI_FORMAT_R11G11B10_FLOAT = 26
    DXGI_FORMAT_R8G8B8A8_TYPELESS = 27
    DXGI_FORMAT_R8G8B8A8_UNORM = 28
    DXGI_FORMAT_R8G8B8A8_UNORM_SRGB = 29
    DXGI_FORMAT_R8G8B8A8_UINT = 30
    DXGI_FORMAT_R8G8B8A8_SNORM = 31
    DXGI_FORMAT_R8G8B8A8_SINT = 32
    DXGI_FORMAT_R16G16_TYPELESS = 33
    DXGI_FORMAT_R16G16_FLOAT = 34
    DXGI_FORMAT_R16G16_UNORM = 35
    DXGI_FORMAT_R16G16_UINT = 36
    DXGI_FORMAT_R16G16_SNORM = 37
    DXGI_FORMAT_R16G16_SINT = 38
    DXGI_FORMAT_R32_TYPELESS = 39
    DXGI_FORMAT_D32_FLOAT = 40
    DXGI_FORMAT_R32_FLOAT = 41
    DXGI_FORMAT_R32_UINT = 42
    DXGI_FORMAT_R32_SINT = 43
    DXGI_FORMAT_R24G8_TYPELESS = 44
    DXGI_FORMAT_D24_UNORM_S8_UINT = 45
    DXGI_FORMAT_R24_UNORM_X8_TYPELESS = 46
    DXGI_FORMAT_X24_TYPELESS_G8_UINT = 47
    DXGI_FORMAT_R8G8_TYPELESS = 48
    DXGI_FORMAT_R8G8_UNORM = 49
    DXGI_FORMAT_R8G8_UINT = 50
    DXGI_FORMAT_R8G8_SNORM = 51
    DXGI_FORMAT_R8G8_SINT = 52
    DXGI_FORMAT_R16_TYPELESS = 53
    DXGI_FORMAT_R16_FLOAT = 54
    DXGI_FORMAT_D16_UNORM = 55
    DXGI_FORMAT_R16_UNORM = 56
    DXGI_FORMAT_R16_UINT = 57
    DXGI_FORMAT_R16_SNORM = 58
    DXGI_FORMAT_R16_SINT = 59
    DXGI_FORMAT_R8_TYPELESS = 60
    DXGI_FORMAT_R8_UNORM = 61
    DXGI_FORMAT_R8_UINT = 62
    DXGI_FORMAT_R8_SNORM = 63
    DXGI_FORMAT_R8_SINT = 64
    DXGI_FORMAT_A8_UNORM = 65
    DXGI_FORMAT_R1_UNORM = 66
    DXGI_FORMAT_R9G9B9E5_SHAREDEXP = 67
    DXGI_FORMAT_R8G8_B8G8_UNORM = 68
    DXGI_FORMAT_G8R8_G8B8_UNORM = 69
    DXGI_FORMAT_BC1_TYPELESS = 70
    DXGI_FORMAT_BC1_UNORM = 71
    DXGI_FORMAT_BC1_UNORM_SRGB = 72
    DXGI_FORMAT_BC2_TYPELESS = 73
    DXGI_FORMAT_BC2_UNORM = 74
    DXGI_FORMAT_BC2_UNORM_SRGB = 75
    DXGI_FORMAT_BC3_TYPELESS = 76
    DXGI_FORMAT_BC3_UNORM = 77
    DXGI_FORMAT_BC3_UNORM_SRGB = 78
    DXGI_FORMAT_BC4_TYPELESS = 79
    DXGI_FORMAT_BC4_UNORM = 80
    DXGI_FORMAT_BC4_SNORM = 81
    DXGI_FORMAT_BC5_TYPELESS = 82
    DXGI_FORMAT_BC5_UNORM = 83
    DXGI_FORMAT_BC5_SNORM = 84
    DXGI_FORMAT_B5G6R5_UNORM = 85
    DXGI_FORMAT_B5G5R5A1_UNORM = 86
    DXGI_FORMAT_B8G8R8A8_UNORM = 87
    DXGI_FORMAT_B8G8R8X8_UNORM = 88
    DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM = 89
    DXGI_FORMAT_B8G8R8A8_TYPELESS = 90
    DXGI_FORMAT_B8G8R8A8_UNORM_SRGB = 91
    DXGI_FORMAT_B8G8R8X8_TYPELESS = 92
    DXGI_FORMAT_B8G8R8X8_UNORM_SRGB = 93
    DXGI_FORMAT_BC6H_TYPELESS = 94
    DXGI_FORMAT_BC6H_UF16 = 95
    DXGI_FORMAT_BC6H_SF16 = 96
    DXGI_FORMAT_BC7_TYPELESS = 97
    DXGI_FORMAT_BC7_UNORM = 98
    DXGI_FORMAT_BC7_UNORM_SRGB = 99
    DXGI_FORMAT_AYUV = 100
    DXGI_FORMAT_Y410 = 101
    DXGI_FORMAT_Y416 = 102
    DXGI_FORMAT_NV12 = 103
    DXGI_FORMAT_P010 = 104
    DXGI_FORMAT_P016 = 105
    DXGI_FORMAT_420_OPAQUE = 106
    DXGI_FORMAT_YUY2 = 107
    DXGI_FORMAT_Y210 = 108
    DXGI_FORMAT_Y216 = 109
    DXGI_FORMAT_NV11 = 110
    DXGI_FORMAT_AI44 = 111
    DXGI_FORMAT_IA44 = 112
    DXGI_FORMAT_P8 = 113
    DXGI_FORMAT_A8P8 = 114
    DXGI_FORMAT_B4G4R4A4_UNORM = 115
    DXGI_FORMAT_P208 = 130
    DXGI_FORMAT_V208 = 131
    DXGI_FORMAT_V408 = 132
    DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE = 189
    DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE = 190
    DXGI_FORMAT_A4B4G4R4_UNORM = 191
// DXGI_FORMAT
pub const DXGI_FORMAT_UNKNOWN: i32 = 0;
pub const DXGI_FORMAT_R32G32B32A32_TYPELESS: i32 = 1;
pub const DXGI_FORMAT_R32G32B32A32_FLOAT: i32 = 2;
pub const DXGI_FORMAT_R32G32B32A32_UINT: i32 = 3;
pub const DXGI_FORMAT_R32G32B32A32_SINT: i32 = 4;
pub const DXGI_FORMAT_R32G32B32_TYPELESS: i32 = 5;
pub const DXGI_FORMAT_R32G32B32_FLOAT: i32 = 6;
pub const DXGI_FORMAT_R32G32B32_UINT: i32 = 7;
pub const DXGI_FORMAT_R32G32B32_SINT: i32 = 8;
pub const DXGI_FORMAT_R16G16B16A16_TYPELESS: i32 = 9;
pub const DXGI_FORMAT_R16G16B16A16_FLOAT: i32 = 10;
pub const DXGI_FORMAT_R16G16B16A16_UNORM: i32 = 11;
pub const DXGI_FORMAT_R16G16B16A16_UINT: i32 = 12;
pub const DXGI_FORMAT_R16G16B16A16_SNORM: i32 = 13;
pub const DXGI_FORMAT_R16G16B16A16_SINT: i32 = 14;
pub const DXGI_FORMAT_R32G32_TYPELESS: i32 = 15;
pub const DXGI_FORMAT_R32G32_FLOAT: i32 = 16;
pub const DXGI_FORMAT_R32G32_UINT: i32 = 17;
pub const DXGI_FORMAT_R32G32_SINT: i32 = 18;
pub const DXGI_FORMAT_R32G8X24_TYPELESS: i32 = 19;
pub const DXGI_FORMAT_D32_FLOAT_S8X24_UINT: i32 = 20;
pub const DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS: i32 = 21;
pub const DXGI_FORMAT_X32_TYPELESS_G8X24_UINT: i32 = 22;
pub const DXGI_FORMAT_R10G10B10A2_TYPELESS: i32 = 23;
pub const DXGI_FORMAT_R10G10B10A2_UNORM: i32 = 24;
pub const DXGI_FORMAT_R10G10B10A2_UINT: i32 = 25;
pub const DXGI_FORMAT_R11G11B10_FLOAT: i32 = 26;
pub const DXGI_FORMAT_R8G8B8A8_TYPELESS: i32 = 27;
pub const DXGI_FORMAT_R8G8B8A8_UNORM: i32 = 28;
pub const DXGI_FORMAT_R8G8B8A8_UNORM_SRGB: i32 = 29;
pub const DXGI_FORMAT_R8G8B8A8_UINT: i32 = 30;
pub const DXGI_FORMAT_R8G8B8A8_SNORM: i32 = 31;
pub const DXGI_FORMAT_R8G8B8A8_SINT: i32 = 32;
pub const DXGI_FORMAT_R16G16_TYPELESS: i32 = 33;
pub const DXGI_FORMAT_R16G16_FLOAT: i32 = 34;
pub const DXGI_FORMAT_R16G16_UNORM: i32 = 35;
pub const DXGI_FORMAT_R16G16_UINT: i32 = 36;
pub const DXGI_FORMAT_R16G16_SNORM: i32 = 37;
pub const DXGI_FORMAT_R16G16_SINT: i32 = 38;
pub const DXGI_FORMAT_R32_TYPELESS: i32 = 39;
pub const DXGI_FORMAT_D32_FLOAT: i32 = 40;
pub const DXGI_FORMAT_R32_FLOAT: i32 = 41;
pub const DXGI_FORMAT_R32_UINT: i32 = 42;
pub const DXGI_FORMAT_R32_SINT: i32 = 43;
pub const DXGI_FORMAT_R24G8_TYPELESS: i32 = 44;
pub const DXGI_FORMAT_D24_UNORM_S8_UINT: i32 = 45;
pub const DXGI_FORMAT_R24_UNORM_X8_TYPELESS: i32 = 46;
pub const DXGI_FORMAT_X24_TYPELESS_G8_UINT: i32 = 47;
pub const DXGI_FORMAT_R8G8_TYPELESS: i32 = 48;
pub const DXGI_FORMAT_R8G8_UNORM: i32 = 49;
pub const DXGI_FORMAT_R8G8_UINT: i32 = 50;
pub const DXGI_FORMAT_R8G8_SNORM: i32 = 51;
pub const DXGI_FORMAT_R8G8_SINT: i32 = 52;
pub const DXGI_FORMAT_R16_TYPELESS: i32 = 53;
pub const DXGI_FORMAT_R16_FLOAT: i32 = 54;
pub const DXGI_FORMAT_D16_UNORM: i32 = 55;
pub const DXGI_FORMAT_R16_UNORM: i32 = 56;
pub const DXGI_FORMAT_R16_UINT: i32 = 57;
pub const DXGI_FORMAT_R16_SNORM: i32 = 58;
pub const DXGI_FORMAT_R16_SINT: i32 = 59;
pub const DXGI_FORMAT_R8_TYPELESS: i32 = 60;
pub const DXGI_FORMAT_R8_UNORM: i32 = 61;
pub const DXGI_FORMAT_R8_UINT: i32 = 62;
pub const DXGI_FORMAT_R8_SNORM: i32 = 63;
pub const DXGI_FORMAT_R8_SINT: i32 = 64;
pub const DXGI_FORMAT_A8_UNORM: i32 = 65;
pub const DXGI_FORMAT_R1_UNORM: i32 = 66;
pub const DXGI_FORMAT_R9G9B9E5_SHAREDEXP: i32 = 67;
pub const DXGI_FORMAT_R8G8_B8G8_UNORM: i32 = 68;
pub const DXGI_FORMAT_G8R8_G8B8_UNORM: i32 = 69;
pub const DXGI_FORMAT_BC1_TYPELESS: i32 = 70;
pub const DXGI_FORMAT_BC1_UNORM: i32 = 71;
pub const DXGI_FORMAT_BC1_UNORM_SRGB: i32 = 72;
pub const DXGI_FORMAT_BC2_TYPELESS: i32 = 73;
pub const DXGI_FORMAT_BC2_UNORM: i32 = 74;
pub const DXGI_FORMAT_BC2_UNORM_SRGB: i32 = 75;
pub const DXGI_FORMAT_BC3_TYPELESS: i32 = 76;
pub const DXGI_FORMAT_BC3_UNORM: i32 = 77;
pub const DXGI_FORMAT_BC3_UNORM_SRGB: i32 = 78;
pub const DXGI_FORMAT_BC4_TYPELESS: i32 = 79;
pub const DXGI_FORMAT_BC4_UNORM: i32 = 80;
pub const DXGI_FORMAT_BC4_SNORM: i32 = 81;
pub const DXGI_FORMAT_BC5_TYPELESS: i32 = 82;
pub const DXGI_FORMAT_BC5_UNORM: i32 = 83;
pub const DXGI_FORMAT_BC5_SNORM: i32 = 84;
pub const DXGI_FORMAT_B5G6R5_UNORM: i32 = 85;
pub const DXGI_FORMAT_B5G5R5A1_UNORM: i32 = 86;
pub const DXGI_FORMAT_B8G8R8A8_UNORM: i32 = 87;
pub const DXGI_FORMAT_B8G8R8X8_UNORM: i32 = 88;
pub const DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM: i32 = 89;
pub const DXGI_FORMAT_B8G8R8A8_TYPELESS: i32 = 90;
pub const DXGI_FORMAT_B8G8R8A8_UNORM_SRGB: i32 = 91;
pub const DXGI_FORMAT_B8G8R8X8_TYPELESS: i32 = 92;
pub const DXGI_FORMAT_B8G8R8X8_UNORM_SRGB: i32 = 93;
pub const DXGI_FORMAT_BC6H_TYPELESS: i32 = 94;
pub const DXGI_FORMAT_BC6H_UF16: i32 = 95;
pub const DXGI_FORMAT_BC6H_SF16: i32 = 96;
pub const DXGI_FORMAT_BC7_TYPELESS: i32 = 97;
pub const DXGI_FORMAT_BC7_UNORM: i32 = 98;
pub const DXGI_FORMAT_BC7_UNORM_SRGB: i32 = 99;
pub const DXGI_FORMAT_AYUV: i32 = 100;
pub const DXGI_FORMAT_Y410: i32 = 101;
pub const DXGI_FORMAT_Y416: i32 = 102;
pub const DXGI_FORMAT_NV12: i32 = 103;
pub const DXGI_FORMAT_P010: i32 = 104;
pub const DXGI_FORMAT_P016: i32 = 105;
pub const DXGI_FORMAT_420_OPAQUE: i32 = 106;
pub const DXGI_FORMAT_YUY2: i32 = 107;
pub const DXGI_FORMAT_Y210: i32 = 108;
pub const DXGI_FORMAT_Y216: i32 = 109;
pub const DXGI_FORMAT_NV11: i32 = 110;
pub const DXGI_FORMAT_AI44: i32 = 111;
pub const DXGI_FORMAT_IA44: i32 = 112;
pub const DXGI_FORMAT_P8: i32 = 113;
pub const DXGI_FORMAT_A8P8: i32 = 114;
pub const DXGI_FORMAT_B4G4R4A4_UNORM: i32 = 115;
pub const DXGI_FORMAT_P208: i32 = 130;
pub const DXGI_FORMAT_V208: i32 = 131;
pub const DXGI_FORMAT_V408: i32 = 132;
pub const DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE: i32 = 189;
pub const DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE: i32 = 190;
pub const DXGI_FORMAT_A4B4G4R4_UNORM: i32 = 191;
// DXGI_FORMAT
const (
	DXGI_FORMAT_UNKNOWN int32 = 0
	DXGI_FORMAT_R32G32B32A32_TYPELESS int32 = 1
	DXGI_FORMAT_R32G32B32A32_FLOAT int32 = 2
	DXGI_FORMAT_R32G32B32A32_UINT int32 = 3
	DXGI_FORMAT_R32G32B32A32_SINT int32 = 4
	DXGI_FORMAT_R32G32B32_TYPELESS int32 = 5
	DXGI_FORMAT_R32G32B32_FLOAT int32 = 6
	DXGI_FORMAT_R32G32B32_UINT int32 = 7
	DXGI_FORMAT_R32G32B32_SINT int32 = 8
	DXGI_FORMAT_R16G16B16A16_TYPELESS int32 = 9
	DXGI_FORMAT_R16G16B16A16_FLOAT int32 = 10
	DXGI_FORMAT_R16G16B16A16_UNORM int32 = 11
	DXGI_FORMAT_R16G16B16A16_UINT int32 = 12
	DXGI_FORMAT_R16G16B16A16_SNORM int32 = 13
	DXGI_FORMAT_R16G16B16A16_SINT int32 = 14
	DXGI_FORMAT_R32G32_TYPELESS int32 = 15
	DXGI_FORMAT_R32G32_FLOAT int32 = 16
	DXGI_FORMAT_R32G32_UINT int32 = 17
	DXGI_FORMAT_R32G32_SINT int32 = 18
	DXGI_FORMAT_R32G8X24_TYPELESS int32 = 19
	DXGI_FORMAT_D32_FLOAT_S8X24_UINT int32 = 20
	DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS int32 = 21
	DXGI_FORMAT_X32_TYPELESS_G8X24_UINT int32 = 22
	DXGI_FORMAT_R10G10B10A2_TYPELESS int32 = 23
	DXGI_FORMAT_R10G10B10A2_UNORM int32 = 24
	DXGI_FORMAT_R10G10B10A2_UINT int32 = 25
	DXGI_FORMAT_R11G11B10_FLOAT int32 = 26
	DXGI_FORMAT_R8G8B8A8_TYPELESS int32 = 27
	DXGI_FORMAT_R8G8B8A8_UNORM int32 = 28
	DXGI_FORMAT_R8G8B8A8_UNORM_SRGB int32 = 29
	DXGI_FORMAT_R8G8B8A8_UINT int32 = 30
	DXGI_FORMAT_R8G8B8A8_SNORM int32 = 31
	DXGI_FORMAT_R8G8B8A8_SINT int32 = 32
	DXGI_FORMAT_R16G16_TYPELESS int32 = 33
	DXGI_FORMAT_R16G16_FLOAT int32 = 34
	DXGI_FORMAT_R16G16_UNORM int32 = 35
	DXGI_FORMAT_R16G16_UINT int32 = 36
	DXGI_FORMAT_R16G16_SNORM int32 = 37
	DXGI_FORMAT_R16G16_SINT int32 = 38
	DXGI_FORMAT_R32_TYPELESS int32 = 39
	DXGI_FORMAT_D32_FLOAT int32 = 40
	DXGI_FORMAT_R32_FLOAT int32 = 41
	DXGI_FORMAT_R32_UINT int32 = 42
	DXGI_FORMAT_R32_SINT int32 = 43
	DXGI_FORMAT_R24G8_TYPELESS int32 = 44
	DXGI_FORMAT_D24_UNORM_S8_UINT int32 = 45
	DXGI_FORMAT_R24_UNORM_X8_TYPELESS int32 = 46
	DXGI_FORMAT_X24_TYPELESS_G8_UINT int32 = 47
	DXGI_FORMAT_R8G8_TYPELESS int32 = 48
	DXGI_FORMAT_R8G8_UNORM int32 = 49
	DXGI_FORMAT_R8G8_UINT int32 = 50
	DXGI_FORMAT_R8G8_SNORM int32 = 51
	DXGI_FORMAT_R8G8_SINT int32 = 52
	DXGI_FORMAT_R16_TYPELESS int32 = 53
	DXGI_FORMAT_R16_FLOAT int32 = 54
	DXGI_FORMAT_D16_UNORM int32 = 55
	DXGI_FORMAT_R16_UNORM int32 = 56
	DXGI_FORMAT_R16_UINT int32 = 57
	DXGI_FORMAT_R16_SNORM int32 = 58
	DXGI_FORMAT_R16_SINT int32 = 59
	DXGI_FORMAT_R8_TYPELESS int32 = 60
	DXGI_FORMAT_R8_UNORM int32 = 61
	DXGI_FORMAT_R8_UINT int32 = 62
	DXGI_FORMAT_R8_SNORM int32 = 63
	DXGI_FORMAT_R8_SINT int32 = 64
	DXGI_FORMAT_A8_UNORM int32 = 65
	DXGI_FORMAT_R1_UNORM int32 = 66
	DXGI_FORMAT_R9G9B9E5_SHAREDEXP int32 = 67
	DXGI_FORMAT_R8G8_B8G8_UNORM int32 = 68
	DXGI_FORMAT_G8R8_G8B8_UNORM int32 = 69
	DXGI_FORMAT_BC1_TYPELESS int32 = 70
	DXGI_FORMAT_BC1_UNORM int32 = 71
	DXGI_FORMAT_BC1_UNORM_SRGB int32 = 72
	DXGI_FORMAT_BC2_TYPELESS int32 = 73
	DXGI_FORMAT_BC2_UNORM int32 = 74
	DXGI_FORMAT_BC2_UNORM_SRGB int32 = 75
	DXGI_FORMAT_BC3_TYPELESS int32 = 76
	DXGI_FORMAT_BC3_UNORM int32 = 77
	DXGI_FORMAT_BC3_UNORM_SRGB int32 = 78
	DXGI_FORMAT_BC4_TYPELESS int32 = 79
	DXGI_FORMAT_BC4_UNORM int32 = 80
	DXGI_FORMAT_BC4_SNORM int32 = 81
	DXGI_FORMAT_BC5_TYPELESS int32 = 82
	DXGI_FORMAT_BC5_UNORM int32 = 83
	DXGI_FORMAT_BC5_SNORM int32 = 84
	DXGI_FORMAT_B5G6R5_UNORM int32 = 85
	DXGI_FORMAT_B5G5R5A1_UNORM int32 = 86
	DXGI_FORMAT_B8G8R8A8_UNORM int32 = 87
	DXGI_FORMAT_B8G8R8X8_UNORM int32 = 88
	DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM int32 = 89
	DXGI_FORMAT_B8G8R8A8_TYPELESS int32 = 90
	DXGI_FORMAT_B8G8R8A8_UNORM_SRGB int32 = 91
	DXGI_FORMAT_B8G8R8X8_TYPELESS int32 = 92
	DXGI_FORMAT_B8G8R8X8_UNORM_SRGB int32 = 93
	DXGI_FORMAT_BC6H_TYPELESS int32 = 94
	DXGI_FORMAT_BC6H_UF16 int32 = 95
	DXGI_FORMAT_BC6H_SF16 int32 = 96
	DXGI_FORMAT_BC7_TYPELESS int32 = 97
	DXGI_FORMAT_BC7_UNORM int32 = 98
	DXGI_FORMAT_BC7_UNORM_SRGB int32 = 99
	DXGI_FORMAT_AYUV int32 = 100
	DXGI_FORMAT_Y410 int32 = 101
	DXGI_FORMAT_Y416 int32 = 102
	DXGI_FORMAT_NV12 int32 = 103
	DXGI_FORMAT_P010 int32 = 104
	DXGI_FORMAT_P016 int32 = 105
	DXGI_FORMAT_420_OPAQUE int32 = 106
	DXGI_FORMAT_YUY2 int32 = 107
	DXGI_FORMAT_Y210 int32 = 108
	DXGI_FORMAT_Y216 int32 = 109
	DXGI_FORMAT_NV11 int32 = 110
	DXGI_FORMAT_AI44 int32 = 111
	DXGI_FORMAT_IA44 int32 = 112
	DXGI_FORMAT_P8 int32 = 113
	DXGI_FORMAT_A8P8 int32 = 114
	DXGI_FORMAT_B4G4R4A4_UNORM int32 = 115
	DXGI_FORMAT_P208 int32 = 130
	DXGI_FORMAT_V208 int32 = 131
	DXGI_FORMAT_V408 int32 = 132
	DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE int32 = 189
	DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE int32 = 190
	DXGI_FORMAT_A4B4G4R4_UNORM int32 = 191
)
const
  DXGI_FORMAT_UNKNOWN = 0;
  DXGI_FORMAT_R32G32B32A32_TYPELESS = 1;
  DXGI_FORMAT_R32G32B32A32_FLOAT = 2;
  DXGI_FORMAT_R32G32B32A32_UINT = 3;
  DXGI_FORMAT_R32G32B32A32_SINT = 4;
  DXGI_FORMAT_R32G32B32_TYPELESS = 5;
  DXGI_FORMAT_R32G32B32_FLOAT = 6;
  DXGI_FORMAT_R32G32B32_UINT = 7;
  DXGI_FORMAT_R32G32B32_SINT = 8;
  DXGI_FORMAT_R16G16B16A16_TYPELESS = 9;
  DXGI_FORMAT_R16G16B16A16_FLOAT = 10;
  DXGI_FORMAT_R16G16B16A16_UNORM = 11;
  DXGI_FORMAT_R16G16B16A16_UINT = 12;
  DXGI_FORMAT_R16G16B16A16_SNORM = 13;
  DXGI_FORMAT_R16G16B16A16_SINT = 14;
  DXGI_FORMAT_R32G32_TYPELESS = 15;
  DXGI_FORMAT_R32G32_FLOAT = 16;
  DXGI_FORMAT_R32G32_UINT = 17;
  DXGI_FORMAT_R32G32_SINT = 18;
  DXGI_FORMAT_R32G8X24_TYPELESS = 19;
  DXGI_FORMAT_D32_FLOAT_S8X24_UINT = 20;
  DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS = 21;
  DXGI_FORMAT_X32_TYPELESS_G8X24_UINT = 22;
  DXGI_FORMAT_R10G10B10A2_TYPELESS = 23;
  DXGI_FORMAT_R10G10B10A2_UNORM = 24;
  DXGI_FORMAT_R10G10B10A2_UINT = 25;
  DXGI_FORMAT_R11G11B10_FLOAT = 26;
  DXGI_FORMAT_R8G8B8A8_TYPELESS = 27;
  DXGI_FORMAT_R8G8B8A8_UNORM = 28;
  DXGI_FORMAT_R8G8B8A8_UNORM_SRGB = 29;
  DXGI_FORMAT_R8G8B8A8_UINT = 30;
  DXGI_FORMAT_R8G8B8A8_SNORM = 31;
  DXGI_FORMAT_R8G8B8A8_SINT = 32;
  DXGI_FORMAT_R16G16_TYPELESS = 33;
  DXGI_FORMAT_R16G16_FLOAT = 34;
  DXGI_FORMAT_R16G16_UNORM = 35;
  DXGI_FORMAT_R16G16_UINT = 36;
  DXGI_FORMAT_R16G16_SNORM = 37;
  DXGI_FORMAT_R16G16_SINT = 38;
  DXGI_FORMAT_R32_TYPELESS = 39;
  DXGI_FORMAT_D32_FLOAT = 40;
  DXGI_FORMAT_R32_FLOAT = 41;
  DXGI_FORMAT_R32_UINT = 42;
  DXGI_FORMAT_R32_SINT = 43;
  DXGI_FORMAT_R24G8_TYPELESS = 44;
  DXGI_FORMAT_D24_UNORM_S8_UINT = 45;
  DXGI_FORMAT_R24_UNORM_X8_TYPELESS = 46;
  DXGI_FORMAT_X24_TYPELESS_G8_UINT = 47;
  DXGI_FORMAT_R8G8_TYPELESS = 48;
  DXGI_FORMAT_R8G8_UNORM = 49;
  DXGI_FORMAT_R8G8_UINT = 50;
  DXGI_FORMAT_R8G8_SNORM = 51;
  DXGI_FORMAT_R8G8_SINT = 52;
  DXGI_FORMAT_R16_TYPELESS = 53;
  DXGI_FORMAT_R16_FLOAT = 54;
  DXGI_FORMAT_D16_UNORM = 55;
  DXGI_FORMAT_R16_UNORM = 56;
  DXGI_FORMAT_R16_UINT = 57;
  DXGI_FORMAT_R16_SNORM = 58;
  DXGI_FORMAT_R16_SINT = 59;
  DXGI_FORMAT_R8_TYPELESS = 60;
  DXGI_FORMAT_R8_UNORM = 61;
  DXGI_FORMAT_R8_UINT = 62;
  DXGI_FORMAT_R8_SNORM = 63;
  DXGI_FORMAT_R8_SINT = 64;
  DXGI_FORMAT_A8_UNORM = 65;
  DXGI_FORMAT_R1_UNORM = 66;
  DXGI_FORMAT_R9G9B9E5_SHAREDEXP = 67;
  DXGI_FORMAT_R8G8_B8G8_UNORM = 68;
  DXGI_FORMAT_G8R8_G8B8_UNORM = 69;
  DXGI_FORMAT_BC1_TYPELESS = 70;
  DXGI_FORMAT_BC1_UNORM = 71;
  DXGI_FORMAT_BC1_UNORM_SRGB = 72;
  DXGI_FORMAT_BC2_TYPELESS = 73;
  DXGI_FORMAT_BC2_UNORM = 74;
  DXGI_FORMAT_BC2_UNORM_SRGB = 75;
  DXGI_FORMAT_BC3_TYPELESS = 76;
  DXGI_FORMAT_BC3_UNORM = 77;
  DXGI_FORMAT_BC3_UNORM_SRGB = 78;
  DXGI_FORMAT_BC4_TYPELESS = 79;
  DXGI_FORMAT_BC4_UNORM = 80;
  DXGI_FORMAT_BC4_SNORM = 81;
  DXGI_FORMAT_BC5_TYPELESS = 82;
  DXGI_FORMAT_BC5_UNORM = 83;
  DXGI_FORMAT_BC5_SNORM = 84;
  DXGI_FORMAT_B5G6R5_UNORM = 85;
  DXGI_FORMAT_B5G5R5A1_UNORM = 86;
  DXGI_FORMAT_B8G8R8A8_UNORM = 87;
  DXGI_FORMAT_B8G8R8X8_UNORM = 88;
  DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM = 89;
  DXGI_FORMAT_B8G8R8A8_TYPELESS = 90;
  DXGI_FORMAT_B8G8R8A8_UNORM_SRGB = 91;
  DXGI_FORMAT_B8G8R8X8_TYPELESS = 92;
  DXGI_FORMAT_B8G8R8X8_UNORM_SRGB = 93;
  DXGI_FORMAT_BC6H_TYPELESS = 94;
  DXGI_FORMAT_BC6H_UF16 = 95;
  DXGI_FORMAT_BC6H_SF16 = 96;
  DXGI_FORMAT_BC7_TYPELESS = 97;
  DXGI_FORMAT_BC7_UNORM = 98;
  DXGI_FORMAT_BC7_UNORM_SRGB = 99;
  DXGI_FORMAT_AYUV = 100;
  DXGI_FORMAT_Y410 = 101;
  DXGI_FORMAT_Y416 = 102;
  DXGI_FORMAT_NV12 = 103;
  DXGI_FORMAT_P010 = 104;
  DXGI_FORMAT_P016 = 105;
  DXGI_FORMAT_420_OPAQUE = 106;
  DXGI_FORMAT_YUY2 = 107;
  DXGI_FORMAT_Y210 = 108;
  DXGI_FORMAT_Y216 = 109;
  DXGI_FORMAT_NV11 = 110;
  DXGI_FORMAT_AI44 = 111;
  DXGI_FORMAT_IA44 = 112;
  DXGI_FORMAT_P8 = 113;
  DXGI_FORMAT_A8P8 = 114;
  DXGI_FORMAT_B4G4R4A4_UNORM = 115;
  DXGI_FORMAT_P208 = 130;
  DXGI_FORMAT_V208 = 131;
  DXGI_FORMAT_V408 = 132;
  DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE = 189;
  DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE = 190;
  DXGI_FORMAT_A4B4G4R4_UNORM = 191;
// DXGI_FORMAT
pub const DXGI_FORMAT_UNKNOWN: i32 = 0;
pub const DXGI_FORMAT_R32G32B32A32_TYPELESS: i32 = 1;
pub const DXGI_FORMAT_R32G32B32A32_FLOAT: i32 = 2;
pub const DXGI_FORMAT_R32G32B32A32_UINT: i32 = 3;
pub const DXGI_FORMAT_R32G32B32A32_SINT: i32 = 4;
pub const DXGI_FORMAT_R32G32B32_TYPELESS: i32 = 5;
pub const DXGI_FORMAT_R32G32B32_FLOAT: i32 = 6;
pub const DXGI_FORMAT_R32G32B32_UINT: i32 = 7;
pub const DXGI_FORMAT_R32G32B32_SINT: i32 = 8;
pub const DXGI_FORMAT_R16G16B16A16_TYPELESS: i32 = 9;
pub const DXGI_FORMAT_R16G16B16A16_FLOAT: i32 = 10;
pub const DXGI_FORMAT_R16G16B16A16_UNORM: i32 = 11;
pub const DXGI_FORMAT_R16G16B16A16_UINT: i32 = 12;
pub const DXGI_FORMAT_R16G16B16A16_SNORM: i32 = 13;
pub const DXGI_FORMAT_R16G16B16A16_SINT: i32 = 14;
pub const DXGI_FORMAT_R32G32_TYPELESS: i32 = 15;
pub const DXGI_FORMAT_R32G32_FLOAT: i32 = 16;
pub const DXGI_FORMAT_R32G32_UINT: i32 = 17;
pub const DXGI_FORMAT_R32G32_SINT: i32 = 18;
pub const DXGI_FORMAT_R32G8X24_TYPELESS: i32 = 19;
pub const DXGI_FORMAT_D32_FLOAT_S8X24_UINT: i32 = 20;
pub const DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS: i32 = 21;
pub const DXGI_FORMAT_X32_TYPELESS_G8X24_UINT: i32 = 22;
pub const DXGI_FORMAT_R10G10B10A2_TYPELESS: i32 = 23;
pub const DXGI_FORMAT_R10G10B10A2_UNORM: i32 = 24;
pub const DXGI_FORMAT_R10G10B10A2_UINT: i32 = 25;
pub const DXGI_FORMAT_R11G11B10_FLOAT: i32 = 26;
pub const DXGI_FORMAT_R8G8B8A8_TYPELESS: i32 = 27;
pub const DXGI_FORMAT_R8G8B8A8_UNORM: i32 = 28;
pub const DXGI_FORMAT_R8G8B8A8_UNORM_SRGB: i32 = 29;
pub const DXGI_FORMAT_R8G8B8A8_UINT: i32 = 30;
pub const DXGI_FORMAT_R8G8B8A8_SNORM: i32 = 31;
pub const DXGI_FORMAT_R8G8B8A8_SINT: i32 = 32;
pub const DXGI_FORMAT_R16G16_TYPELESS: i32 = 33;
pub const DXGI_FORMAT_R16G16_FLOAT: i32 = 34;
pub const DXGI_FORMAT_R16G16_UNORM: i32 = 35;
pub const DXGI_FORMAT_R16G16_UINT: i32 = 36;
pub const DXGI_FORMAT_R16G16_SNORM: i32 = 37;
pub const DXGI_FORMAT_R16G16_SINT: i32 = 38;
pub const DXGI_FORMAT_R32_TYPELESS: i32 = 39;
pub const DXGI_FORMAT_D32_FLOAT: i32 = 40;
pub const DXGI_FORMAT_R32_FLOAT: i32 = 41;
pub const DXGI_FORMAT_R32_UINT: i32 = 42;
pub const DXGI_FORMAT_R32_SINT: i32 = 43;
pub const DXGI_FORMAT_R24G8_TYPELESS: i32 = 44;
pub const DXGI_FORMAT_D24_UNORM_S8_UINT: i32 = 45;
pub const DXGI_FORMAT_R24_UNORM_X8_TYPELESS: i32 = 46;
pub const DXGI_FORMAT_X24_TYPELESS_G8_UINT: i32 = 47;
pub const DXGI_FORMAT_R8G8_TYPELESS: i32 = 48;
pub const DXGI_FORMAT_R8G8_UNORM: i32 = 49;
pub const DXGI_FORMAT_R8G8_UINT: i32 = 50;
pub const DXGI_FORMAT_R8G8_SNORM: i32 = 51;
pub const DXGI_FORMAT_R8G8_SINT: i32 = 52;
pub const DXGI_FORMAT_R16_TYPELESS: i32 = 53;
pub const DXGI_FORMAT_R16_FLOAT: i32 = 54;
pub const DXGI_FORMAT_D16_UNORM: i32 = 55;
pub const DXGI_FORMAT_R16_UNORM: i32 = 56;
pub const DXGI_FORMAT_R16_UINT: i32 = 57;
pub const DXGI_FORMAT_R16_SNORM: i32 = 58;
pub const DXGI_FORMAT_R16_SINT: i32 = 59;
pub const DXGI_FORMAT_R8_TYPELESS: i32 = 60;
pub const DXGI_FORMAT_R8_UNORM: i32 = 61;
pub const DXGI_FORMAT_R8_UINT: i32 = 62;
pub const DXGI_FORMAT_R8_SNORM: i32 = 63;
pub const DXGI_FORMAT_R8_SINT: i32 = 64;
pub const DXGI_FORMAT_A8_UNORM: i32 = 65;
pub const DXGI_FORMAT_R1_UNORM: i32 = 66;
pub const DXGI_FORMAT_R9G9B9E5_SHAREDEXP: i32 = 67;
pub const DXGI_FORMAT_R8G8_B8G8_UNORM: i32 = 68;
pub const DXGI_FORMAT_G8R8_G8B8_UNORM: i32 = 69;
pub const DXGI_FORMAT_BC1_TYPELESS: i32 = 70;
pub const DXGI_FORMAT_BC1_UNORM: i32 = 71;
pub const DXGI_FORMAT_BC1_UNORM_SRGB: i32 = 72;
pub const DXGI_FORMAT_BC2_TYPELESS: i32 = 73;
pub const DXGI_FORMAT_BC2_UNORM: i32 = 74;
pub const DXGI_FORMAT_BC2_UNORM_SRGB: i32 = 75;
pub const DXGI_FORMAT_BC3_TYPELESS: i32 = 76;
pub const DXGI_FORMAT_BC3_UNORM: i32 = 77;
pub const DXGI_FORMAT_BC3_UNORM_SRGB: i32 = 78;
pub const DXGI_FORMAT_BC4_TYPELESS: i32 = 79;
pub const DXGI_FORMAT_BC4_UNORM: i32 = 80;
pub const DXGI_FORMAT_BC4_SNORM: i32 = 81;
pub const DXGI_FORMAT_BC5_TYPELESS: i32 = 82;
pub const DXGI_FORMAT_BC5_UNORM: i32 = 83;
pub const DXGI_FORMAT_BC5_SNORM: i32 = 84;
pub const DXGI_FORMAT_B5G6R5_UNORM: i32 = 85;
pub const DXGI_FORMAT_B5G5R5A1_UNORM: i32 = 86;
pub const DXGI_FORMAT_B8G8R8A8_UNORM: i32 = 87;
pub const DXGI_FORMAT_B8G8R8X8_UNORM: i32 = 88;
pub const DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM: i32 = 89;
pub const DXGI_FORMAT_B8G8R8A8_TYPELESS: i32 = 90;
pub const DXGI_FORMAT_B8G8R8A8_UNORM_SRGB: i32 = 91;
pub const DXGI_FORMAT_B8G8R8X8_TYPELESS: i32 = 92;
pub const DXGI_FORMAT_B8G8R8X8_UNORM_SRGB: i32 = 93;
pub const DXGI_FORMAT_BC6H_TYPELESS: i32 = 94;
pub const DXGI_FORMAT_BC6H_UF16: i32 = 95;
pub const DXGI_FORMAT_BC6H_SF16: i32 = 96;
pub const DXGI_FORMAT_BC7_TYPELESS: i32 = 97;
pub const DXGI_FORMAT_BC7_UNORM: i32 = 98;
pub const DXGI_FORMAT_BC7_UNORM_SRGB: i32 = 99;
pub const DXGI_FORMAT_AYUV: i32 = 100;
pub const DXGI_FORMAT_Y410: i32 = 101;
pub const DXGI_FORMAT_Y416: i32 = 102;
pub const DXGI_FORMAT_NV12: i32 = 103;
pub const DXGI_FORMAT_P010: i32 = 104;
pub const DXGI_FORMAT_P016: i32 = 105;
pub const DXGI_FORMAT_420_OPAQUE: i32 = 106;
pub const DXGI_FORMAT_YUY2: i32 = 107;
pub const DXGI_FORMAT_Y210: i32 = 108;
pub const DXGI_FORMAT_Y216: i32 = 109;
pub const DXGI_FORMAT_NV11: i32 = 110;
pub const DXGI_FORMAT_AI44: i32 = 111;
pub const DXGI_FORMAT_IA44: i32 = 112;
pub const DXGI_FORMAT_P8: i32 = 113;
pub const DXGI_FORMAT_A8P8: i32 = 114;
pub const DXGI_FORMAT_B4G4R4A4_UNORM: i32 = 115;
pub const DXGI_FORMAT_P208: i32 = 130;
pub const DXGI_FORMAT_V208: i32 = 131;
pub const DXGI_FORMAT_V408: i32 = 132;
pub const DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE: i32 = 189;
pub const DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE: i32 = 190;
pub const DXGI_FORMAT_A4B4G4R4_UNORM: i32 = 191;
const
  DXGI_FORMAT_UNKNOWN* = 0
  DXGI_FORMAT_R32G32B32A32_TYPELESS* = 1
  DXGI_FORMAT_R32G32B32A32_FLOAT* = 2
  DXGI_FORMAT_R32G32B32A32_UINT* = 3
  DXGI_FORMAT_R32G32B32A32_SINT* = 4
  DXGI_FORMAT_R32G32B32_TYPELESS* = 5
  DXGI_FORMAT_R32G32B32_FLOAT* = 6
  DXGI_FORMAT_R32G32B32_UINT* = 7
  DXGI_FORMAT_R32G32B32_SINT* = 8
  DXGI_FORMAT_R16G16B16A16_TYPELESS* = 9
  DXGI_FORMAT_R16G16B16A16_FLOAT* = 10
  DXGI_FORMAT_R16G16B16A16_UNORM* = 11
  DXGI_FORMAT_R16G16B16A16_UINT* = 12
  DXGI_FORMAT_R16G16B16A16_SNORM* = 13
  DXGI_FORMAT_R16G16B16A16_SINT* = 14
  DXGI_FORMAT_R32G32_TYPELESS* = 15
  DXGI_FORMAT_R32G32_FLOAT* = 16
  DXGI_FORMAT_R32G32_UINT* = 17
  DXGI_FORMAT_R32G32_SINT* = 18
  DXGI_FORMAT_R32G8X24_TYPELESS* = 19
  DXGI_FORMAT_D32_FLOAT_S8X24_UINT* = 20
  DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS* = 21
  DXGI_FORMAT_X32_TYPELESS_G8X24_UINT* = 22
  DXGI_FORMAT_R10G10B10A2_TYPELESS* = 23
  DXGI_FORMAT_R10G10B10A2_UNORM* = 24
  DXGI_FORMAT_R10G10B10A2_UINT* = 25
  DXGI_FORMAT_R11G11B10_FLOAT* = 26
  DXGI_FORMAT_R8G8B8A8_TYPELESS* = 27
  DXGI_FORMAT_R8G8B8A8_UNORM* = 28
  DXGI_FORMAT_R8G8B8A8_UNORM_SRGB* = 29
  DXGI_FORMAT_R8G8B8A8_UINT* = 30
  DXGI_FORMAT_R8G8B8A8_SNORM* = 31
  DXGI_FORMAT_R8G8B8A8_SINT* = 32
  DXGI_FORMAT_R16G16_TYPELESS* = 33
  DXGI_FORMAT_R16G16_FLOAT* = 34
  DXGI_FORMAT_R16G16_UNORM* = 35
  DXGI_FORMAT_R16G16_UINT* = 36
  DXGI_FORMAT_R16G16_SNORM* = 37
  DXGI_FORMAT_R16G16_SINT* = 38
  DXGI_FORMAT_R32_TYPELESS* = 39
  DXGI_FORMAT_D32_FLOAT* = 40
  DXGI_FORMAT_R32_FLOAT* = 41
  DXGI_FORMAT_R32_UINT* = 42
  DXGI_FORMAT_R32_SINT* = 43
  DXGI_FORMAT_R24G8_TYPELESS* = 44
  DXGI_FORMAT_D24_UNORM_S8_UINT* = 45
  DXGI_FORMAT_R24_UNORM_X8_TYPELESS* = 46
  DXGI_FORMAT_X24_TYPELESS_G8_UINT* = 47
  DXGI_FORMAT_R8G8_TYPELESS* = 48
  DXGI_FORMAT_R8G8_UNORM* = 49
  DXGI_FORMAT_R8G8_UINT* = 50
  DXGI_FORMAT_R8G8_SNORM* = 51
  DXGI_FORMAT_R8G8_SINT* = 52
  DXGI_FORMAT_R16_TYPELESS* = 53
  DXGI_FORMAT_R16_FLOAT* = 54
  DXGI_FORMAT_D16_UNORM* = 55
  DXGI_FORMAT_R16_UNORM* = 56
  DXGI_FORMAT_R16_UINT* = 57
  DXGI_FORMAT_R16_SNORM* = 58
  DXGI_FORMAT_R16_SINT* = 59
  DXGI_FORMAT_R8_TYPELESS* = 60
  DXGI_FORMAT_R8_UNORM* = 61
  DXGI_FORMAT_R8_UINT* = 62
  DXGI_FORMAT_R8_SNORM* = 63
  DXGI_FORMAT_R8_SINT* = 64
  DXGI_FORMAT_A8_UNORM* = 65
  DXGI_FORMAT_R1_UNORM* = 66
  DXGI_FORMAT_R9G9B9E5_SHAREDEXP* = 67
  DXGI_FORMAT_R8G8_B8G8_UNORM* = 68
  DXGI_FORMAT_G8R8_G8B8_UNORM* = 69
  DXGI_FORMAT_BC1_TYPELESS* = 70
  DXGI_FORMAT_BC1_UNORM* = 71
  DXGI_FORMAT_BC1_UNORM_SRGB* = 72
  DXGI_FORMAT_BC2_TYPELESS* = 73
  DXGI_FORMAT_BC2_UNORM* = 74
  DXGI_FORMAT_BC2_UNORM_SRGB* = 75
  DXGI_FORMAT_BC3_TYPELESS* = 76
  DXGI_FORMAT_BC3_UNORM* = 77
  DXGI_FORMAT_BC3_UNORM_SRGB* = 78
  DXGI_FORMAT_BC4_TYPELESS* = 79
  DXGI_FORMAT_BC4_UNORM* = 80
  DXGI_FORMAT_BC4_SNORM* = 81
  DXGI_FORMAT_BC5_TYPELESS* = 82
  DXGI_FORMAT_BC5_UNORM* = 83
  DXGI_FORMAT_BC5_SNORM* = 84
  DXGI_FORMAT_B5G6R5_UNORM* = 85
  DXGI_FORMAT_B5G5R5A1_UNORM* = 86
  DXGI_FORMAT_B8G8R8A8_UNORM* = 87
  DXGI_FORMAT_B8G8R8X8_UNORM* = 88
  DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM* = 89
  DXGI_FORMAT_B8G8R8A8_TYPELESS* = 90
  DXGI_FORMAT_B8G8R8A8_UNORM_SRGB* = 91
  DXGI_FORMAT_B8G8R8X8_TYPELESS* = 92
  DXGI_FORMAT_B8G8R8X8_UNORM_SRGB* = 93
  DXGI_FORMAT_BC6H_TYPELESS* = 94
  DXGI_FORMAT_BC6H_UF16* = 95
  DXGI_FORMAT_BC6H_SF16* = 96
  DXGI_FORMAT_BC7_TYPELESS* = 97
  DXGI_FORMAT_BC7_UNORM* = 98
  DXGI_FORMAT_BC7_UNORM_SRGB* = 99
  DXGI_FORMAT_AYUV* = 100
  DXGI_FORMAT_Y410* = 101
  DXGI_FORMAT_Y416* = 102
  DXGI_FORMAT_NV12* = 103
  DXGI_FORMAT_P010* = 104
  DXGI_FORMAT_P016* = 105
  DXGI_FORMAT_420_OPAQUE* = 106
  DXGI_FORMAT_YUY2* = 107
  DXGI_FORMAT_Y210* = 108
  DXGI_FORMAT_Y216* = 109
  DXGI_FORMAT_NV11* = 110
  DXGI_FORMAT_AI44* = 111
  DXGI_FORMAT_IA44* = 112
  DXGI_FORMAT_P8* = 113
  DXGI_FORMAT_A8P8* = 114
  DXGI_FORMAT_B4G4R4A4_UNORM* = 115
  DXGI_FORMAT_P208* = 130
  DXGI_FORMAT_V208* = 131
  DXGI_FORMAT_V408* = 132
  DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE* = 189
  DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE* = 190
  DXGI_FORMAT_A4B4G4R4_UNORM* = 191
enum DXGI_FORMAT : int {
    DXGI_FORMAT_UNKNOWN = 0,
    DXGI_FORMAT_R32G32B32A32_TYPELESS = 1,
    DXGI_FORMAT_R32G32B32A32_FLOAT = 2,
    DXGI_FORMAT_R32G32B32A32_UINT = 3,
    DXGI_FORMAT_R32G32B32A32_SINT = 4,
    DXGI_FORMAT_R32G32B32_TYPELESS = 5,
    DXGI_FORMAT_R32G32B32_FLOAT = 6,
    DXGI_FORMAT_R32G32B32_UINT = 7,
    DXGI_FORMAT_R32G32B32_SINT = 8,
    DXGI_FORMAT_R16G16B16A16_TYPELESS = 9,
    DXGI_FORMAT_R16G16B16A16_FLOAT = 10,
    DXGI_FORMAT_R16G16B16A16_UNORM = 11,
    DXGI_FORMAT_R16G16B16A16_UINT = 12,
    DXGI_FORMAT_R16G16B16A16_SNORM = 13,
    DXGI_FORMAT_R16G16B16A16_SINT = 14,
    DXGI_FORMAT_R32G32_TYPELESS = 15,
    DXGI_FORMAT_R32G32_FLOAT = 16,
    DXGI_FORMAT_R32G32_UINT = 17,
    DXGI_FORMAT_R32G32_SINT = 18,
    DXGI_FORMAT_R32G8X24_TYPELESS = 19,
    DXGI_FORMAT_D32_FLOAT_S8X24_UINT = 20,
    DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS = 21,
    DXGI_FORMAT_X32_TYPELESS_G8X24_UINT = 22,
    DXGI_FORMAT_R10G10B10A2_TYPELESS = 23,
    DXGI_FORMAT_R10G10B10A2_UNORM = 24,
    DXGI_FORMAT_R10G10B10A2_UINT = 25,
    DXGI_FORMAT_R11G11B10_FLOAT = 26,
    DXGI_FORMAT_R8G8B8A8_TYPELESS = 27,
    DXGI_FORMAT_R8G8B8A8_UNORM = 28,
    DXGI_FORMAT_R8G8B8A8_UNORM_SRGB = 29,
    DXGI_FORMAT_R8G8B8A8_UINT = 30,
    DXGI_FORMAT_R8G8B8A8_SNORM = 31,
    DXGI_FORMAT_R8G8B8A8_SINT = 32,
    DXGI_FORMAT_R16G16_TYPELESS = 33,
    DXGI_FORMAT_R16G16_FLOAT = 34,
    DXGI_FORMAT_R16G16_UNORM = 35,
    DXGI_FORMAT_R16G16_UINT = 36,
    DXGI_FORMAT_R16G16_SNORM = 37,
    DXGI_FORMAT_R16G16_SINT = 38,
    DXGI_FORMAT_R32_TYPELESS = 39,
    DXGI_FORMAT_D32_FLOAT = 40,
    DXGI_FORMAT_R32_FLOAT = 41,
    DXGI_FORMAT_R32_UINT = 42,
    DXGI_FORMAT_R32_SINT = 43,
    DXGI_FORMAT_R24G8_TYPELESS = 44,
    DXGI_FORMAT_D24_UNORM_S8_UINT = 45,
    DXGI_FORMAT_R24_UNORM_X8_TYPELESS = 46,
    DXGI_FORMAT_X24_TYPELESS_G8_UINT = 47,
    DXGI_FORMAT_R8G8_TYPELESS = 48,
    DXGI_FORMAT_R8G8_UNORM = 49,
    DXGI_FORMAT_R8G8_UINT = 50,
    DXGI_FORMAT_R8G8_SNORM = 51,
    DXGI_FORMAT_R8G8_SINT = 52,
    DXGI_FORMAT_R16_TYPELESS = 53,
    DXGI_FORMAT_R16_FLOAT = 54,
    DXGI_FORMAT_D16_UNORM = 55,
    DXGI_FORMAT_R16_UNORM = 56,
    DXGI_FORMAT_R16_UINT = 57,
    DXGI_FORMAT_R16_SNORM = 58,
    DXGI_FORMAT_R16_SINT = 59,
    DXGI_FORMAT_R8_TYPELESS = 60,
    DXGI_FORMAT_R8_UNORM = 61,
    DXGI_FORMAT_R8_UINT = 62,
    DXGI_FORMAT_R8_SNORM = 63,
    DXGI_FORMAT_R8_SINT = 64,
    DXGI_FORMAT_A8_UNORM = 65,
    DXGI_FORMAT_R1_UNORM = 66,
    DXGI_FORMAT_R9G9B9E5_SHAREDEXP = 67,
    DXGI_FORMAT_R8G8_B8G8_UNORM = 68,
    DXGI_FORMAT_G8R8_G8B8_UNORM = 69,
    DXGI_FORMAT_BC1_TYPELESS = 70,
    DXGI_FORMAT_BC1_UNORM = 71,
    DXGI_FORMAT_BC1_UNORM_SRGB = 72,
    DXGI_FORMAT_BC2_TYPELESS = 73,
    DXGI_FORMAT_BC2_UNORM = 74,
    DXGI_FORMAT_BC2_UNORM_SRGB = 75,
    DXGI_FORMAT_BC3_TYPELESS = 76,
    DXGI_FORMAT_BC3_UNORM = 77,
    DXGI_FORMAT_BC3_UNORM_SRGB = 78,
    DXGI_FORMAT_BC4_TYPELESS = 79,
    DXGI_FORMAT_BC4_UNORM = 80,
    DXGI_FORMAT_BC4_SNORM = 81,
    DXGI_FORMAT_BC5_TYPELESS = 82,
    DXGI_FORMAT_BC5_UNORM = 83,
    DXGI_FORMAT_BC5_SNORM = 84,
    DXGI_FORMAT_B5G6R5_UNORM = 85,
    DXGI_FORMAT_B5G5R5A1_UNORM = 86,
    DXGI_FORMAT_B8G8R8A8_UNORM = 87,
    DXGI_FORMAT_B8G8R8X8_UNORM = 88,
    DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM = 89,
    DXGI_FORMAT_B8G8R8A8_TYPELESS = 90,
    DXGI_FORMAT_B8G8R8A8_UNORM_SRGB = 91,
    DXGI_FORMAT_B8G8R8X8_TYPELESS = 92,
    DXGI_FORMAT_B8G8R8X8_UNORM_SRGB = 93,
    DXGI_FORMAT_BC6H_TYPELESS = 94,
    DXGI_FORMAT_BC6H_UF16 = 95,
    DXGI_FORMAT_BC6H_SF16 = 96,
    DXGI_FORMAT_BC7_TYPELESS = 97,
    DXGI_FORMAT_BC7_UNORM = 98,
    DXGI_FORMAT_BC7_UNORM_SRGB = 99,
    DXGI_FORMAT_AYUV = 100,
    DXGI_FORMAT_Y410 = 101,
    DXGI_FORMAT_Y416 = 102,
    DXGI_FORMAT_NV12 = 103,
    DXGI_FORMAT_P010 = 104,
    DXGI_FORMAT_P016 = 105,
    DXGI_FORMAT_420_OPAQUE = 106,
    DXGI_FORMAT_YUY2 = 107,
    DXGI_FORMAT_Y210 = 108,
    DXGI_FORMAT_Y216 = 109,
    DXGI_FORMAT_NV11 = 110,
    DXGI_FORMAT_AI44 = 111,
    DXGI_FORMAT_IA44 = 112,
    DXGI_FORMAT_P8 = 113,
    DXGI_FORMAT_A8P8 = 114,
    DXGI_FORMAT_B4G4R4A4_UNORM = 115,
    DXGI_FORMAT_P208 = 130,
    DXGI_FORMAT_V208 = 131,
    DXGI_FORMAT_V408 = 132,
    DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE = 189,
    DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE = 190,
    DXGI_FORMAT_A4B4G4R4_UNORM = 191,
}
#define global DXGI_FORMAT_UNKNOWN                                 0x0
#define global DXGI_FORMAT_R32G32B32A32_TYPELESS                   0x1
#define global DXGI_FORMAT_R32G32B32A32_FLOAT                      0x2
#define global DXGI_FORMAT_R32G32B32A32_UINT                       0x3
#define global DXGI_FORMAT_R32G32B32A32_SINT                       0x4
#define global DXGI_FORMAT_R32G32B32_TYPELESS                      0x5
#define global DXGI_FORMAT_R32G32B32_FLOAT                         0x6
#define global DXGI_FORMAT_R32G32B32_UINT                          0x7
#define global DXGI_FORMAT_R32G32B32_SINT                          0x8
#define global DXGI_FORMAT_R16G16B16A16_TYPELESS                   0x9
#define global DXGI_FORMAT_R16G16B16A16_FLOAT                      0xA
#define global DXGI_FORMAT_R16G16B16A16_UNORM                      0xB
#define global DXGI_FORMAT_R16G16B16A16_UINT                       0xC
#define global DXGI_FORMAT_R16G16B16A16_SNORM                      0xD
#define global DXGI_FORMAT_R16G16B16A16_SINT                       0xE
#define global DXGI_FORMAT_R32G32_TYPELESS                         0xF
#define global DXGI_FORMAT_R32G32_FLOAT                            0x10
#define global DXGI_FORMAT_R32G32_UINT                             0x11
#define global DXGI_FORMAT_R32G32_SINT                             0x12
#define global DXGI_FORMAT_R32G8X24_TYPELESS                       0x13
#define global DXGI_FORMAT_D32_FLOAT_S8X24_UINT                    0x14
#define global DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS                0x15
#define global DXGI_FORMAT_X32_TYPELESS_G8X24_UINT                 0x16
#define global DXGI_FORMAT_R10G10B10A2_TYPELESS                    0x17
#define global DXGI_FORMAT_R10G10B10A2_UNORM                       0x18
#define global DXGI_FORMAT_R10G10B10A2_UINT                        0x19
#define global DXGI_FORMAT_R11G11B10_FLOAT                         0x1A
#define global DXGI_FORMAT_R8G8B8A8_TYPELESS                       0x1B
#define global DXGI_FORMAT_R8G8B8A8_UNORM                          0x1C
#define global DXGI_FORMAT_R8G8B8A8_UNORM_SRGB                     0x1D
#define global DXGI_FORMAT_R8G8B8A8_UINT                           0x1E
#define global DXGI_FORMAT_R8G8B8A8_SNORM                          0x1F
#define global DXGI_FORMAT_R8G8B8A8_SINT                           0x20
#define global DXGI_FORMAT_R16G16_TYPELESS                         0x21
#define global DXGI_FORMAT_R16G16_FLOAT                            0x22
#define global DXGI_FORMAT_R16G16_UNORM                            0x23
#define global DXGI_FORMAT_R16G16_UINT                             0x24
#define global DXGI_FORMAT_R16G16_SNORM                            0x25
#define global DXGI_FORMAT_R16G16_SINT                             0x26
#define global DXGI_FORMAT_R32_TYPELESS                            0x27
#define global DXGI_FORMAT_D32_FLOAT                               0x28
#define global DXGI_FORMAT_R32_FLOAT                               0x29
#define global DXGI_FORMAT_R32_UINT                                0x2A
#define global DXGI_FORMAT_R32_SINT                                0x2B
#define global DXGI_FORMAT_R24G8_TYPELESS                          0x2C
#define global DXGI_FORMAT_D24_UNORM_S8_UINT                       0x2D
#define global DXGI_FORMAT_R24_UNORM_X8_TYPELESS                   0x2E
#define global DXGI_FORMAT_X24_TYPELESS_G8_UINT                    0x2F
#define global DXGI_FORMAT_R8G8_TYPELESS                           0x30
#define global DXGI_FORMAT_R8G8_UNORM                              0x31
#define global DXGI_FORMAT_R8G8_UINT                               0x32
#define global DXGI_FORMAT_R8G8_SNORM                              0x33
#define global DXGI_FORMAT_R8G8_SINT                               0x34
#define global DXGI_FORMAT_R16_TYPELESS                            0x35
#define global DXGI_FORMAT_R16_FLOAT                               0x36
#define global DXGI_FORMAT_D16_UNORM                               0x37
#define global DXGI_FORMAT_R16_UNORM                               0x38
#define global DXGI_FORMAT_R16_UINT                                0x39
#define global DXGI_FORMAT_R16_SNORM                               0x3A
#define global DXGI_FORMAT_R16_SINT                                0x3B
#define global DXGI_FORMAT_R8_TYPELESS                             0x3C
#define global DXGI_FORMAT_R8_UNORM                                0x3D
#define global DXGI_FORMAT_R8_UINT                                 0x3E
#define global DXGI_FORMAT_R8_SNORM                                0x3F
#define global DXGI_FORMAT_R8_SINT                                 0x40
#define global DXGI_FORMAT_A8_UNORM                                0x41
#define global DXGI_FORMAT_R1_UNORM                                0x42
#define global DXGI_FORMAT_R9G9B9E5_SHAREDEXP                      0x43
#define global DXGI_FORMAT_R8G8_B8G8_UNORM                         0x44
#define global DXGI_FORMAT_G8R8_G8B8_UNORM                         0x45
#define global DXGI_FORMAT_BC1_TYPELESS                            0x46
#define global DXGI_FORMAT_BC1_UNORM                               0x47
#define global DXGI_FORMAT_BC1_UNORM_SRGB                          0x48
#define global DXGI_FORMAT_BC2_TYPELESS                            0x49
#define global DXGI_FORMAT_BC2_UNORM                               0x4A
#define global DXGI_FORMAT_BC2_UNORM_SRGB                          0x4B
#define global DXGI_FORMAT_BC3_TYPELESS                            0x4C
#define global DXGI_FORMAT_BC3_UNORM                               0x4D
#define global DXGI_FORMAT_BC3_UNORM_SRGB                          0x4E
#define global DXGI_FORMAT_BC4_TYPELESS                            0x4F
#define global DXGI_FORMAT_BC4_UNORM                               0x50
#define global DXGI_FORMAT_BC4_SNORM                               0x51
#define global DXGI_FORMAT_BC5_TYPELESS                            0x52
#define global DXGI_FORMAT_BC5_UNORM                               0x53
#define global DXGI_FORMAT_BC5_SNORM                               0x54
#define global DXGI_FORMAT_B5G6R5_UNORM                            0x55
#define global DXGI_FORMAT_B5G5R5A1_UNORM                          0x56
#define global DXGI_FORMAT_B8G8R8A8_UNORM                          0x57
#define global DXGI_FORMAT_B8G8R8X8_UNORM                          0x58
#define global DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM              0x59
#define global DXGI_FORMAT_B8G8R8A8_TYPELESS                       0x5A
#define global DXGI_FORMAT_B8G8R8A8_UNORM_SRGB                     0x5B
#define global DXGI_FORMAT_B8G8R8X8_TYPELESS                       0x5C
#define global DXGI_FORMAT_B8G8R8X8_UNORM_SRGB                     0x5D
#define global DXGI_FORMAT_BC6H_TYPELESS                           0x5E
#define global DXGI_FORMAT_BC6H_UF16                               0x5F
#define global DXGI_FORMAT_BC6H_SF16                               0x60
#define global DXGI_FORMAT_BC7_TYPELESS                            0x61
#define global DXGI_FORMAT_BC7_UNORM                               0x62
#define global DXGI_FORMAT_BC7_UNORM_SRGB                          0x63
#define global DXGI_FORMAT_AYUV                                    0x64
#define global DXGI_FORMAT_Y410                                    0x65
#define global DXGI_FORMAT_Y416                                    0x66
#define global DXGI_FORMAT_NV12                                    0x67
#define global DXGI_FORMAT_P010                                    0x68
#define global DXGI_FORMAT_P016                                    0x69
#define global DXGI_FORMAT_420_OPAQUE                              0x6A
#define global DXGI_FORMAT_YUY2                                    0x6B
#define global DXGI_FORMAT_Y210                                    0x6C
#define global DXGI_FORMAT_Y216                                    0x6D
#define global DXGI_FORMAT_NV11                                    0x6E
#define global DXGI_FORMAT_AI44                                    0x6F
#define global DXGI_FORMAT_IA44                                    0x70
#define global DXGI_FORMAT_P8                                      0x71
#define global DXGI_FORMAT_A8P8                                    0x72
#define global DXGI_FORMAT_B4G4R4A4_UNORM                          0x73
#define global DXGI_FORMAT_P208                                    0x82
#define global DXGI_FORMAT_V208                                    0x83
#define global DXGI_FORMAT_V408                                    0x84
#define global DXGI_FORMAT_SAMPLER_FEEDBACK_MIN_MIP_OPAQUE         0xBD
#define global DXGI_FORMAT_SAMPLER_FEEDBACK_MIP_REGION_USED_OPAQUE 0xBE
#define global DXGI_FORMAT_A4B4G4R4_UNORM                          0xBF