3
0

AzDXGIFormat.h 8.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193
  1. /*
  2. * Copyright (c) Contributors to the Open 3D Engine Project.
  3. * For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. *
  5. * SPDX-License-Identifier: Apache-2.0 OR MIT
  6. *
  7. */
  8. // Description : Contains portable definition of structs and enums to match
  9. // those in DXGIFormat.h in the DirectX SDK
  10. #pragma once
  11. #include <AzCore/PlatformDef.h>
  12. #if __has_include(<dxgiformat.h>)
  13. # include <dxgiformat.h>
  14. // For non-windows platforms need to define the formats so that the ImageExtension
  15. // class used by the editor can have access to these
  16. #else
  17. #define DXGI_FORMAT_DEFINED 1
  18. typedef enum DXGI_FORMAT
  19. {
  20. DXGI_FORMAT_UNKNOWN = 0,
  21. DXGI_FORMAT_R32G32B32A32_TYPELESS = 1,
  22. DXGI_FORMAT_R32G32B32A32_FLOAT = 2,
  23. DXGI_FORMAT_R32G32B32A32_UINT = 3,
  24. DXGI_FORMAT_R32G32B32A32_SINT = 4,
  25. DXGI_FORMAT_R32G32B32_TYPELESS = 5,
  26. DXGI_FORMAT_R32G32B32_FLOAT = 6,
  27. DXGI_FORMAT_R32G32B32_UINT = 7,
  28. DXGI_FORMAT_R32G32B32_SINT = 8,
  29. DXGI_FORMAT_R16G16B16A16_TYPELESS = 9,
  30. DXGI_FORMAT_R16G16B16A16_FLOAT = 10,
  31. DXGI_FORMAT_R16G16B16A16_UNORM = 11,
  32. DXGI_FORMAT_R16G16B16A16_UINT = 12,
  33. DXGI_FORMAT_R16G16B16A16_SNORM = 13,
  34. DXGI_FORMAT_R16G16B16A16_SINT = 14,
  35. DXGI_FORMAT_R32G32_TYPELESS = 15,
  36. DXGI_FORMAT_R32G32_FLOAT = 16,
  37. DXGI_FORMAT_R32G32_UINT = 17,
  38. DXGI_FORMAT_R32G32_SINT = 18,
  39. DXGI_FORMAT_R32G8X24_TYPELESS = 19,
  40. DXGI_FORMAT_D32_FLOAT_S8X24_UINT = 20,
  41. DXGI_FORMAT_R32_FLOAT_X8X24_TYPELESS = 21,
  42. DXGI_FORMAT_X32_TYPELESS_G8X24_UINT = 22,
  43. DXGI_FORMAT_R10G10B10A2_TYPELESS = 23,
  44. DXGI_FORMAT_R10G10B10A2_UNORM = 24,
  45. DXGI_FORMAT_R10G10B10A2_UINT = 25,
  46. DXGI_FORMAT_R11G11B10_FLOAT = 26,
  47. DXGI_FORMAT_R8G8B8A8_TYPELESS = 27,
  48. DXGI_FORMAT_R8G8B8A8_UNORM = 28,
  49. DXGI_FORMAT_R8G8B8A8_UNORM_SRGB = 29,
  50. DXGI_FORMAT_R8G8B8A8_UINT = 30,
  51. DXGI_FORMAT_R8G8B8A8_SNORM = 31,
  52. DXGI_FORMAT_R8G8B8A8_SINT = 32,
  53. DXGI_FORMAT_R16G16_TYPELESS = 33,
  54. DXGI_FORMAT_R16G16_FLOAT = 34,
  55. DXGI_FORMAT_R16G16_UNORM = 35,
  56. DXGI_FORMAT_R16G16_UINT = 36,
  57. DXGI_FORMAT_R16G16_SNORM = 37,
  58. DXGI_FORMAT_R16G16_SINT = 38,
  59. DXGI_FORMAT_R32_TYPELESS = 39,
  60. DXGI_FORMAT_D32_FLOAT = 40,
  61. DXGI_FORMAT_R32_FLOAT = 41,
  62. DXGI_FORMAT_R32_UINT = 42,
  63. DXGI_FORMAT_R32_SINT = 43,
  64. DXGI_FORMAT_R24G8_TYPELESS = 44,
  65. DXGI_FORMAT_D24_UNORM_S8_UINT = 45,
  66. DXGI_FORMAT_R24_UNORM_X8_TYPELESS = 46,
  67. DXGI_FORMAT_X24_TYPELESS_G8_UINT = 47,
  68. DXGI_FORMAT_R8G8_TYPELESS = 48,
  69. DXGI_FORMAT_R8G8_UNORM = 49,
  70. DXGI_FORMAT_R8G8_UINT = 50,
  71. DXGI_FORMAT_R8G8_SNORM = 51,
  72. DXGI_FORMAT_R8G8_SINT = 52,
  73. DXGI_FORMAT_R16_TYPELESS = 53,
  74. DXGI_FORMAT_R16_FLOAT = 54,
  75. DXGI_FORMAT_D16_UNORM = 55,
  76. DXGI_FORMAT_R16_UNORM = 56,
  77. DXGI_FORMAT_R16_UINT = 57,
  78. DXGI_FORMAT_R16_SNORM = 58,
  79. DXGI_FORMAT_R16_SINT = 59,
  80. DXGI_FORMAT_R8_TYPELESS = 60,
  81. DXGI_FORMAT_R8_UNORM = 61,
  82. DXGI_FORMAT_R8_UINT = 62,
  83. DXGI_FORMAT_R8_SNORM = 63,
  84. DXGI_FORMAT_R8_SINT = 64,
  85. DXGI_FORMAT_A8_UNORM = 65,
  86. DXGI_FORMAT_R1_UNORM = 66,
  87. DXGI_FORMAT_R9G9B9E5_SHAREDEXP = 67,
  88. DXGI_FORMAT_R8G8_B8G8_UNORM = 68,
  89. DXGI_FORMAT_G8R8_G8B8_UNORM = 69,
  90. DXGI_FORMAT_BC1_TYPELESS = 70,
  91. DXGI_FORMAT_BC1_UNORM = 71,
  92. DXGI_FORMAT_BC1_UNORM_SRGB = 72,
  93. DXGI_FORMAT_BC2_TYPELESS = 73,
  94. DXGI_FORMAT_BC2_UNORM = 74,
  95. DXGI_FORMAT_BC2_UNORM_SRGB = 75,
  96. DXGI_FORMAT_BC3_TYPELESS = 76,
  97. DXGI_FORMAT_BC3_UNORM = 77,
  98. DXGI_FORMAT_BC3_UNORM_SRGB = 78,
  99. DXGI_FORMAT_BC4_TYPELESS = 79,
  100. DXGI_FORMAT_BC4_UNORM = 80,
  101. DXGI_FORMAT_BC4_SNORM = 81,
  102. DXGI_FORMAT_BC5_TYPELESS = 82,
  103. DXGI_FORMAT_BC5_UNORM = 83,
  104. DXGI_FORMAT_BC5_SNORM = 84,
  105. DXGI_FORMAT_B5G6R5_UNORM = 85,
  106. DXGI_FORMAT_B5G5R5A1_UNORM = 86,
  107. DXGI_FORMAT_B8G8R8A8_UNORM = 87,
  108. DXGI_FORMAT_B8G8R8X8_UNORM = 88,
  109. DXGI_FORMAT_R10G10B10_XR_BIAS_A2_UNORM = 89,
  110. DXGI_FORMAT_B8G8R8A8_TYPELESS = 90,
  111. DXGI_FORMAT_B8G8R8A8_UNORM_SRGB = 91,
  112. DXGI_FORMAT_B8G8R8X8_TYPELESS = 92,
  113. DXGI_FORMAT_B8G8R8X8_UNORM_SRGB = 93,
  114. DXGI_FORMAT_BC6H_TYPELESS = 94,
  115. DXGI_FORMAT_BC6H_UF16 = 95,
  116. DXGI_FORMAT_BC6H_SF16 = 96,
  117. DXGI_FORMAT_BC7_TYPELESS = 97,
  118. DXGI_FORMAT_BC7_UNORM = 98,
  119. DXGI_FORMAT_BC7_UNORM_SRGB = 99,
  120. DXGI_FORMAT_EAC_R11_TYPELESS = 200,
  121. DXGI_FORMAT_EAC_R11_UNORM = 201,
  122. DXGI_FORMAT_EAC_R11_SNORM = 202,
  123. DXGI_FORMAT_EAC_RG11_TYPELESS = 203,
  124. DXGI_FORMAT_EAC_RG11_UNORM = 204,
  125. DXGI_FORMAT_EAC_RG11_SNORM = 205,
  126. DXGI_FORMAT_ETC2_TYPELESS = 206,
  127. DXGI_FORMAT_ETC2_UNORM = 207,
  128. DXGI_FORMAT_ETC2_UNORM_SRGB = 208,
  129. DXGI_FORMAT_ETC2A_TYPELESS = 209,
  130. DXGI_FORMAT_ETC2A_UNORM = 210,
  131. DXGI_FORMAT_ETC2A_UNORM_SRGB = 211,
  132. DXGI_FORMAT_PVRTC2_TYPELESS = 250,
  133. DXGI_FORMAT_PVRTC2_UNORM = 251,
  134. DXGI_FORMAT_PVRTC2_UNORM_SRGB = 252,
  135. DXGI_FORMAT_PVRTC4_TYPELESS = 253,
  136. DXGI_FORMAT_PVRTC4_UNORM = 254,
  137. DXGI_FORMAT_PVRTC4_UNORM_SRGB = 255,
  138. DXGI_FORMAT_ASTC_4x4_TYPELESS = 260,
  139. DXGI_FORMAT_ASTC_4x4_UNORM = 261,
  140. DXGI_FORMAT_ASTC_4x4_UNORM_SRGB = 262,
  141. DXGI_FORMAT_ASTC_5x4_TYPELESS = 263,
  142. DXGI_FORMAT_ASTC_5x4_UNORM = 264,
  143. DXGI_FORMAT_ASTC_5x4_UNORM_SRGB = 265,
  144. DXGI_FORMAT_ASTC_5x5_TYPELESS = 266,
  145. DXGI_FORMAT_ASTC_5x5_UNORM = 267,
  146. DXGI_FORMAT_ASTC_5x5_UNORM_SRGB = 268,
  147. DXGI_FORMAT_ASTC_6x5_TYPELESS = 269,
  148. DXGI_FORMAT_ASTC_6x5_UNORM = 270,
  149. DXGI_FORMAT_ASTC_6x5_UNORM_SRGB = 271,
  150. DXGI_FORMAT_ASTC_6x6_TYPELESS = 272,
  151. DXGI_FORMAT_ASTC_6x6_UNORM = 273,
  152. DXGI_FORMAT_ASTC_6x6_UNORM_SRGB = 274,
  153. DXGI_FORMAT_ASTC_8x5_TYPELESS = 275,
  154. DXGI_FORMAT_ASTC_8x5_UNORM = 276,
  155. DXGI_FORMAT_ASTC_8x5_UNORM_SRGB = 277,
  156. DXGI_FORMAT_ASTC_8x6_TYPELESS = 278,
  157. DXGI_FORMAT_ASTC_8x6_UNORM = 279,
  158. DXGI_FORMAT_ASTC_8x6_UNORM_SRGB = 280,
  159. DXGI_FORMAT_ASTC_8x8_TYPELESS = 281,
  160. DXGI_FORMAT_ASTC_8x8_UNORM = 282,
  161. DXGI_FORMAT_ASTC_8x8_UNORM_SRGB = 283,
  162. DXGI_FORMAT_ASTC_10x5_TYPELESS = 284,
  163. DXGI_FORMAT_ASTC_10x5_UNORM = 285,
  164. DXGI_FORMAT_ASTC_10x5_UNORM_SRGB = 286,
  165. DXGI_FORMAT_ASTC_10x6_TYPELESS = 287,
  166. DXGI_FORMAT_ASTC_10x6_UNORM = 288,
  167. DXGI_FORMAT_ASTC_10x6_UNORM_SRGB = 289,
  168. DXGI_FORMAT_ASTC_10x8_TYPELESS = 290,
  169. DXGI_FORMAT_ASTC_10x8_UNORM = 291,
  170. DXGI_FORMAT_ASTC_10x8_UNORM_SRGB = 292,
  171. DXGI_FORMAT_ASTC_10x10_TYPELESS = 293,
  172. DXGI_FORMAT_ASTC_10x10_UNORM = 294,
  173. DXGI_FORMAT_ASTC_10x10_UNORM_SRGB = 295,
  174. DXGI_FORMAT_ASTC_12x10_TYPELESS = 296,
  175. DXGI_FORMAT_ASTC_12x10_UNORM = 297,
  176. DXGI_FORMAT_ASTC_12x10_UNORM_SRGB = 298,
  177. DXGI_FORMAT_ASTC_12x12_TYPELESS = 299,
  178. DXGI_FORMAT_ASTC_12x12_UNORM = 300,
  179. DXGI_FORMAT_ASTC_12x12_UNORM_SRGB = 301,
  180. DXGI_FORMAT_FORCE_UINT = 0xffffffff
  181. } DXGI_FORMAT;
  182. #endif