aboutsummaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
Diffstat (limited to 'include')
-rw-r--r--include/xgl.h243
1 files changed, 175 insertions, 68 deletions
diff --git a/include/xgl.h b/include/xgl.h
index 14524330..95201905 100644
--- a/include/xgl.h
+++ b/include/xgl.h
@@ -54,7 +54,7 @@
#include "xglPlatform.h"
// XGL API version supported by this file
-#define XGL_API_VERSION XGL_MAKE_VERSION(0, 30, 7)
+#define XGL_API_VERSION XGL_MAKE_VERSION(0, 30, 8)
#ifdef __cplusplus
extern "C"
@@ -800,65 +800,6 @@ typedef enum _XGL_RESULT_CODE
// ------------------------------------------------------------------------------------------------
// XGL format definitions
-typedef enum _XGL_CHANNEL_FORMAT
-{
- XGL_CH_FMT_UNDEFINED = 0,
- XGL_CH_FMT_R4G4 = 1,
- XGL_CH_FMT_R4G4B4A4 = 2,
- XGL_CH_FMT_R5G6B5 = 3,
- XGL_CH_FMT_B5G6R5 = 4,
- XGL_CH_FMT_R5G5B5A1 = 5,
- XGL_CH_FMT_R8 = 6,
- XGL_CH_FMT_R8G8 = 7,
- XGL_CH_FMT_R8G8B8A8 = 8,
- XGL_CH_FMT_B8G8R8A8 = 9,
- XGL_CH_FMT_R10G11B11 = 10,
- XGL_CH_FMT_R11G11B10 = 11,
- XGL_CH_FMT_R10G10B10A2 = 12,
- XGL_CH_FMT_R16 = 13,
- XGL_CH_FMT_R16G16 = 14,
- XGL_CH_FMT_R16G16B16A16 = 15,
- XGL_CH_FMT_R32 = 16,
- XGL_CH_FMT_R32G32 = 17,
- XGL_CH_FMT_R32G32B32 = 18,
- XGL_CH_FMT_R32G32B32A32 = 19,
- XGL_CH_FMT_R16G8 = 20,
- XGL_CH_FMT_R32G8 = 21,
- XGL_CH_FMT_R9G9B9E5 = 22,
- XGL_CH_FMT_BC1 = 23,
- XGL_CH_FMT_BC2 = 24,
- XGL_CH_FMT_BC3 = 25,
- XGL_CH_FMT_BC4 = 26,
- XGL_CH_FMT_BC5 = 27,
- XGL_CH_FMT_BC6U = 28,
- XGL_CH_FMT_BC6S = 29,
- XGL_CH_FMT_BC7 = 30,
- XGL_CH_FMT_R8G8B8 = 31,
- XGL_CH_FMT_R16G16B16 = 32,
- XGL_CH_FMT_B10G10R10A2 = 33,
- XGL_CH_FMT_R64 = 34, // Optional
- XGL_CH_FMT_R64G64 = 35, // Optional
- XGL_CH_FMT_R64G64B64 = 36, // Optional
- XGL_CH_FMT_R64G64B64A64 = 37, // Optional
- XGL_MAX_CH_FMT = XGL_CH_FMT_R64G64B64A64,
- XGL_MAX_ENUM(_XGL_CHANNEL_FORMAT)
-} XGL_CHANNEL_FORMAT;
-
-typedef enum _XGL_NUM_FORMAT
-{
- XGL_NUM_FMT_UNDEFINED = 0,
- XGL_NUM_FMT_UNORM = 1,
- XGL_NUM_FMT_SNORM = 2,
- XGL_NUM_FMT_UINT = 3,
- XGL_NUM_FMT_SINT = 4,
- XGL_NUM_FMT_FLOAT = 5,
- XGL_NUM_FMT_SRGB = 6,
- XGL_NUM_FMT_DS = 7,
- XGL_NUM_FMT_USCALED = 8,
- XGL_NUM_FMT_SSCALED = 9,
- XGL_MAX_NUM_FMT = XGL_NUM_FMT_SSCALED,
- XGL_MAX_ENUM(_XGL_NUM_FORMAT)
-} XGL_NUM_FORMAT;
typedef enum _XGL_VERTEX_INPUT_STEP_RATE
{
@@ -872,14 +813,180 @@ typedef enum _XGL_VERTEX_INPUT_STEP_RATE
XGL_MAX_ENUM(_XGL_VERTEX_INPUT_STEP_RATE)
} XGL_VERTEX_INPUT_STEP_RATE;
-typedef struct _XGL_FORMAT
-{
- XGL_CHANNEL_FORMAT channelFormat;
- XGL_NUM_FORMAT numericFormat;
-
-// XGL_FMT_BEGIN_RANGE = XGL_FMT_UNDEFINED, ////LUGMAL
-// XGL_FMT_END_RANGE = XGL_FMT_ASTC_12x12_SRGB,
-// XGL_NUM_FMT = (XGL_FMT_END_RANGE - XGL_FMT_BEGIN_RANGE + 1),
+typedef enum _XGL_FORMAT
+{
+ XGL_FMT_UNDEFINED = 0x00000000,
+ XGL_FMT_R4G4_UNORM = 0x00000001,
+ XGL_FMT_R4G4_USCALED = 0x00000002,
+ XGL_FMT_R4G4B4A4_UNORM = 0x00000003,
+ XGL_FMT_R4G4B4A4_USCALED = 0x00000004,
+ XGL_FMT_R5G6B5_UNORM = 0x00000005,
+ XGL_FMT_R5G6B5_USCALED = 0x00000006,
+ XGL_FMT_R5G5B5A1_UNORM = 0x00000007,
+ XGL_FMT_R5G5B5A1_USCALED = 0x00000008,
+ XGL_FMT_R8_UNORM = 0x00000009,
+ XGL_FMT_R8_SNORM = 0x0000000A,
+ XGL_FMT_R8_USCALED = 0x0000000B,
+ XGL_FMT_R8_SSCALED = 0x0000000C,
+ XGL_FMT_R8_UINT = 0x0000000D,
+ XGL_FMT_R8_SINT = 0x0000000E,
+ XGL_FMT_R8_SRGB = 0x0000000F,
+ XGL_FMT_R8G8_UNORM = 0x00000010,
+ XGL_FMT_R8G8_SNORM = 0x00000011,
+ XGL_FMT_R8G8_USCALED = 0x00000012,
+ XGL_FMT_R8G8_SSCALED = 0x00000013,
+ XGL_FMT_R8G8_UINT = 0x00000014,
+ XGL_FMT_R8G8_SINT = 0x00000015,
+ XGL_FMT_R8G8_SRGB = 0x00000016,
+ XGL_FMT_R8G8B8_UNORM = 0x00000017,
+ XGL_FMT_R8G8B8_SNORM = 0x00000018,
+ XGL_FMT_R8G8B8_USCALED = 0x00000019,
+ XGL_FMT_R8G8B8_SSCALED = 0x0000001A,
+ XGL_FMT_R8G8B8_UINT = 0x0000001B,
+ XGL_FMT_R8G8B8_SINT = 0x0000001C,
+ XGL_FMT_R8G8B8_SRGB = 0x0000001D,
+ XGL_FMT_R8G8B8A8_UNORM = 0x0000001E,
+ XGL_FMT_R8G8B8A8_SNORM = 0x0000001F,
+ XGL_FMT_R8G8B8A8_USCALED = 0x00000020,
+ XGL_FMT_R8G8B8A8_SSCALED = 0x00000021,
+ XGL_FMT_R8G8B8A8_UINT = 0x00000022,
+ XGL_FMT_R8G8B8A8_SINT = 0x00000023,
+ XGL_FMT_R8G8B8A8_SRGB = 0x00000024,
+ XGL_FMT_R10G10B10A2_UNORM = 0x00000025,
+ XGL_FMT_R10G10B10A2_SNORM = 0x00000026,
+ XGL_FMT_R10G10B10A2_USCALED = 0x00000027,
+ XGL_FMT_R10G10B10A2_SSCALED = 0x00000028,
+ XGL_FMT_R10G10B10A2_UINT = 0x00000029,
+ XGL_FMT_R10G10B10A2_SINT = 0x0000002A,
+ XGL_FMT_R16_UNORM = 0x0000002B,
+ XGL_FMT_R16_SNORM = 0x0000002C,
+ XGL_FMT_R16_USCALED = 0x0000002D,
+ XGL_FMT_R16_SSCALED = 0x0000002E,
+ XGL_FMT_R16_UINT = 0x0000002F,
+ XGL_FMT_R16_SINT = 0x00000030,
+ XGL_FMT_R16_SFLOAT = 0x00000031,
+ XGL_FMT_R16G16_UNORM = 0x00000032,
+ XGL_FMT_R16G16_SNORM = 0x00000033,
+ XGL_FMT_R16G16_USCALED = 0x00000034,
+ XGL_FMT_R16G16_SSCALED = 0x00000035,
+ XGL_FMT_R16G16_UINT = 0x00000036,
+ XGL_FMT_R16G16_SINT = 0x00000037,
+ XGL_FMT_R16G16_SFLOAT = 0x00000038,
+ XGL_FMT_R16G16B16_UNORM = 0x00000039,
+ XGL_FMT_R16G16B16_SNORM = 0x0000003A,
+ XGL_FMT_R16G16B16_USCALED = 0x0000003B,
+ XGL_FMT_R16G16B16_SSCALED = 0x0000003C,
+ XGL_FMT_R16G16B16_UINT = 0x0000003D,
+ XGL_FMT_R16G16B16_SINT = 0x0000003E,
+ XGL_FMT_R16G16B16_SFLOAT = 0x0000003F,
+ XGL_FMT_R16G16B16A16_UNORM = 0x00000040,
+ XGL_FMT_R16G16B16A16_SNORM = 0x00000041,
+ XGL_FMT_R16G16B16A16_USCALED = 0x00000042,
+ XGL_FMT_R16G16B16A16_SSCALED = 0x00000043,
+ XGL_FMT_R16G16B16A16_UINT = 0x00000044,
+ XGL_FMT_R16G16B16A16_SINT = 0x00000045,
+ XGL_FMT_R16G16B16A16_SFLOAT = 0x00000046,
+ XGL_FMT_R32_UINT = 0x00000047,
+ XGL_FMT_R32_SINT = 0x00000048,
+ XGL_FMT_R32_SFLOAT = 0x00000049,
+ XGL_FMT_R32G32_UINT = 0x0000004A,
+ XGL_FMT_R32G32_SINT = 0x0000004B,
+ XGL_FMT_R32G32_SFLOAT = 0x0000004C,
+ XGL_FMT_R32G32B32_UINT = 0x0000004D,
+ XGL_FMT_R32G32B32_SINT = 0x0000004E,
+ XGL_FMT_R32G32B32_SFLOAT = 0x0000004F,
+ XGL_FMT_R32G32B32A32_UINT = 0x00000050,
+ XGL_FMT_R32G32B32A32_SINT = 0x00000051,
+ XGL_FMT_R32G32B32A32_SFLOAT = 0x00000052,
+ XGL_FMT_R64_SFLOAT = 0x00000053,
+ XGL_FMT_R64G64_SFLOAT = 0x00000054,
+ XGL_FMT_R64G64B64_SFLOAT = 0x00000055,
+ XGL_FMT_R64G64B64A64_SFLOAT = 0x00000056,
+ XGL_FMT_R11G11B10_UFLOAT = 0x00000057,
+ XGL_FMT_R9G9B9E5_UFLOAT = 0x00000058,
+ XGL_FMT_D16_UNORM = 0x00000059,
+ XGL_FMT_D24_UNORM = 0x0000005A,
+ XGL_FMT_D32_SFLOAT = 0x0000005B,
+ XGL_FMT_S8_UINT = 0x0000005C,
+ XGL_FMT_D16_UNORM_S8_UINT = 0x0000005D,
+ XGL_FMT_D24_UNORM_S8_UINT = 0x0000005E,
+ XGL_FMT_D32_SFLOAT_S8_UINT = 0x0000005F,
+ XGL_FMT_BC1_UNORM = 0x00000060,
+ XGL_FMT_BC1_SRGB = 0x00000061,
+ XGL_FMT_BC2_UNORM = 0x00000062,
+ XGL_FMT_BC2_SRGB = 0x00000063,
+ XGL_FMT_BC3_UNORM = 0x00000064,
+ XGL_FMT_BC3_SRGB = 0x00000065,
+ XGL_FMT_BC4_UNORM = 0x00000066,
+ XGL_FMT_BC4_SNORM = 0x00000067,
+ XGL_FMT_BC5_UNORM = 0x00000068,
+ XGL_FMT_BC5_SNORM = 0x00000069,
+ XGL_FMT_BC6H_UFLOAT = 0x0000006A,
+ XGL_FMT_BC6H_SFLOAT = 0x0000006B,
+ XGL_FMT_BC7_UNORM = 0x0000006C,
+ XGL_FMT_BC7_SRGB = 0x0000006D,
+ XGL_FMT_ETC2_R8G8B8_UNORM = 0x0000006E,
+ XGL_FMT_ETC2_R8G8B8A1_UNORM = 0x0000006F,
+ XGL_FMT_ETC2_R8G8B8A8_UNORM = 0x00000070,
+ XGL_FMT_EAC_R11_UNORM = 0x00000071,
+ XGL_FMT_EAC_R11_SNORM = 0x00000072,
+ XGL_FMT_EAC_R11G11_UNORM = 0x00000073,
+ XGL_FMT_EAC_R11G11_SNORM = 0x00000074,
+ XGL_FMT_ASTC_4x4_UNORM = 0x00000075,
+ XGL_FMT_ASTC_4x4_SRGB = 0x00000076,
+ XGL_FMT_ASTC_4x5_UNORM = 0x00000077,
+ XGL_FMT_ASTC_4x5_SRGB = 0x00000078,
+ XGL_FMT_ASTC_5x5_UNORM = 0x00000079,
+ XGL_FMT_ASTC_5x5_SRGB = 0x0000007A,
+ XGL_FMT_ASTC_6x5_UNORM = 0x0000007B,
+ XGL_FMT_ASTC_6x5_SRGB = 0x0000007C,
+ XGL_FMT_ASTC_6x6_UNORM = 0x0000007D,
+ XGL_FMT_ASTC_6x6_SRGB = 0x0000007E,
+ XGL_FMT_ASTC_8x5_UNORM = 0x0000007F,
+ XGL_FMT_ASTC_8x5_SRGB = 0x00000080,
+ XGL_FMT_ASTC_8x6_UNORM = 0x00000081,
+ XGL_FMT_ASTC_8x6_SRGB = 0x00000082,
+ XGL_FMT_ASTC_8x8_UNORM = 0x00000083,
+ XGL_FMT_ASTC_8x8_SRGB = 0x00000084,
+ XGL_FMT_ASTC_10x5_UNORM = 0x00000085,
+ XGL_FMT_ASTC_10x5_SRGB = 0x00000086,
+ XGL_FMT_ASTC_10x6_UNORM = 0x00000087,
+ XGL_FMT_ASTC_10x6_SRGB = 0x00000088,
+ XGL_FMT_ASTC_10x8_UNORM = 0x00000089,
+ XGL_FMT_ASTC_10x8_SRGB = 0x0000008A,
+ XGL_FMT_ASTC_10x10_UNORM = 0x0000008B,
+ XGL_FMT_ASTC_10x10_SRGB = 0x0000008C,
+ XGL_FMT_ASTC_12x10_UNORM = 0x0000008D,
+ XGL_FMT_ASTC_12x10_SRGB = 0x0000008E,
+ XGL_FMT_ASTC_12x12_UNORM = 0x0000008F,
+ XGL_FMT_ASTC_12x12_SRGB = 0x00000090,
+ XGL_FMT_B5G6R5_UNORM = 0x00000091,
+ XGL_FMT_B5G6R5_USCALED = 0x00000092,
+ XGL_FMT_B8G8R8_UNORM = 0x00000093,
+ XGL_FMT_B8G8R8_SNORM = 0x00000094,
+ XGL_FMT_B8G8R8_USCALED = 0x00000095,
+ XGL_FMT_B8G8R8_SSCALED = 0x00000096,
+ XGL_FMT_B8G8R8_UINT = 0x00000097,
+ XGL_FMT_B8G8R8_SINT = 0x00000098,
+ XGL_FMT_B8G8R8_SRGB = 0x00000099,
+ XGL_FMT_B8G8R8A8_UNORM = 0x0000009A,
+ XGL_FMT_B8G8R8A8_SNORM = 0x0000009B,
+ XGL_FMT_B8G8R8A8_USCALED = 0x0000009C,
+ XGL_FMT_B8G8R8A8_SSCALED = 0x0000009D,
+ XGL_FMT_B8G8R8A8_UINT = 0x0000009E,
+ XGL_FMT_B8G8R8A8_SINT = 0x0000009F,
+ XGL_FMT_B8G8R8A8_SRGB = 0x000000A0,
+ XGL_FMT_B10G10R10A2_UNORM = 0x000000A1,
+ XGL_FMT_B10G10R10A2_SNORM = 0x000000A2,
+ XGL_FMT_B10G10R10A2_USCALED = 0x000000A3,
+ XGL_FMT_B10G10R10A2_SSCALED = 0x000000A4,
+ XGL_FMT_B10G10R10A2_UINT = 0x000000A5,
+ XGL_FMT_B10G10R10A2_SINT = 0x000000A6,
+
+ XGL_FMT_BEGIN_RANGE = XGL_FMT_UNDEFINED,
+ XGL_FMT_END_RANGE = XGL_FMT_B10G10R10A2_SINT,
+ XGL_NUM_FMT = (XGL_FMT_END_RANGE - XGL_FMT_BEGIN_RANGE + 1),
+ XGL_MAX_ENUM(_XGL_FORMAT)
} XGL_FORMAT;
// Shader stage enumerant