swr: [rasterizer common] reorder SWR_FORMAT_INFO
authorTim Rowley <timothy.o.rowley@intel.com>
Wed, 17 Aug 2016 19:29:44 +0000 (14:29 -0500)
committerTim Rowley <timothy.o.rowley@intel.com>
Wed, 17 Aug 2016 22:08:55 +0000 (17:08 -0500)
Signed-off-by: Tim Rowley <timothy.o.rowley@intel.com>
src/gallium/drivers/swr/rasterizer/common/formats.cpp
src/gallium/drivers/swr/rasterizer/common/formats.h

index 21ee50b6813d986287d2b211cdce447d925e075b..8a6588678ab9c8efeb5d1c6684563fbc87ca7a43 100644 (file)
@@ -66,11 +66,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32G32B32A32_SINT (0x1)
     {
@@ -85,11 +85,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32G32B32A32_UINT (0x2)
     {
@@ -104,36 +104,42 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x3 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x4 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x5 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R32G32B32X32_FLOAT (0x6)
     {
         "R32G32B32X32_FLOAT",
@@ -147,11 +153,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32G32B32A32_SSCALED (0x7)
     {
@@ -166,11 +172,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32G32B32A32_USCALED (0x8)
     {
@@ -185,452 +191,562 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x9 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xa (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xb (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xc (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xd (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xe (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xf (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x10 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x11 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x12 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x13 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x14 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x15 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x16 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x17 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x18 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x19 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1a (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1c (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x20 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x21 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x22 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x23 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x24 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x25 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x26 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x27 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x28 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x29 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x2a (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x2b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x2c (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x2d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x2e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x2f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x30 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x31 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x32 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x33 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x34 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x35 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x36 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x37 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x38 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x39 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x3a (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x3b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x3c (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x3d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x3e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x3f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R32G32B32_FLOAT (0x40)
     {
         "R32G32B32_FLOAT",
@@ -644,11 +760,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32G32B32_SINT (0x41)
     {
@@ -663,11 +779,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32G32B32_UINT (0x42)
     {
@@ -682,28 +798,32 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x43 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x44 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R32G32B32_SSCALED (0x45)
     {
         "R32G32B32_SSCALED",
@@ -717,11 +837,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32G32B32_USCALED (0x46)
     {
@@ -736,468 +856,582 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x47 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x48 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x49 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x4a (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x4b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x4c (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x4d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x4e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x4f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x50 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x51 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x52 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x53 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x54 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x55 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x56 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x57 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x58 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x59 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x5a (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x5b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x5c (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x5d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x5e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x5f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x60 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x61 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x62 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x63 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x64 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x65 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x66 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x67 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x68 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x69 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x6a (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x6b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x6c (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x6d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x6e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x6f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x70 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x71 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x72 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x73 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x74 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x75 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x76 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x77 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x78 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x79 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x7a (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x7b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x7c (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x7d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x7e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x7f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R16G16B16A16_UNORM (0x80)
     {
         "R16G16B16A16_UNORM",
@@ -1211,11 +1445,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 65535.0f, 1.0f / 65535.0f, 1.0f / 65535.0f, 1.0f / 65535.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16B16A16_SNORM (0x81)
     {
@@ -1230,11 +1464,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 32767.0f, 1.0f / 32767.0f, 1.0f / 32767.0f, 1.0f / 32767.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16B16A16_SINT (0x82)
     {
@@ -1249,11 +1483,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16B16A16_UINT (0x83)
     {
@@ -1268,11 +1502,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16B16A16_FLOAT (0x84)
     {
@@ -1287,11 +1521,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32G32_FLOAT (0x85)
     {
@@ -1306,11 +1540,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32G32_SINT (0x86)
     {
@@ -1325,11 +1559,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32G32_UINT (0x87)
     {
@@ -1344,16 +1578,16 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32_FLOAT_X8X24_TYPELESS (0x88)
     {
         "R32_FLOAT_X8X24_TYPELESS",
-        { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
+        { SWR_TYPE_FLOAT, SWR_TYPE_UNUSED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
         { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
         { 0, 1, 0, 0 }, // Swizzle
         { 32, 32, 0, 0 }, // Bits per component
@@ -1363,16 +1597,16 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // X32_TYPELESS_G8X24_UINT (0x89)
     {
         "X32_TYPELESS_G8X24_UINT",
-        { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
+        { SWR_TYPE_UINT, SWR_TYPE_UNUSED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
         { 0, 0, 0, 0x1 }, // Defaults for missing components
         { 0, 1, 0, 0 }, // Swizzle
         { 32, 32, 0, 0 }, // Bits per component
@@ -1382,11 +1616,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // L32A32_FLOAT (0x8a)
     {
@@ -1401,36 +1635,42 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        true, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // 0x8b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x8c (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x8d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R16G16B16X16_UNORM (0x8e)
     {
         "R16G16B16X16_UNORM",
@@ -1444,11 +1684,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
-        { 1.0f / 65535.0f, 1.0f / 65535.0f, 1.0f / 65535.0f, 1.0f / 65535.0f }, // To float scale factor
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
+        { 1.0f / 65535.0f, 1.0f / 65535.0f, 1.0f / 65535.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16B16X16_FLOAT (0x8f)
     {
@@ -1463,20 +1703,22 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x90 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // L32X32_FLOAT (0x91)
     {
         "L32X32_FLOAT",
@@ -1490,11 +1732,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        true, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // I32X32_FLOAT (0x92)
     {
@@ -1509,11 +1751,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        true, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // R16G16B16A16_SSCALED (0x93)
     {
@@ -1528,11 +1770,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16B16A16_USCALED (0x94)
     {
@@ -1547,11 +1789,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32G32_SSCALED (0x95)
     {
@@ -1566,11 +1808,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32G32_USCALED (0x96)
     {
@@ -1585,24 +1827,26 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x97 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R32_FLOAT_X8X24_TYPELESS_LD (0x98)
     {
         "R32_FLOAT_X8X24_TYPELESS_LD",
-        { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
+        { SWR_TYPE_FLOAT, SWR_TYPE_UNUSED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
         { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
         { 0, 1, 0, 0 }, // Swizzle
         { 32, 32, 0, 0 }, // Bits per component
@@ -1612,324 +1856,402 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x99 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x9a (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x9b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x9c (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x9d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x9e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x9f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xa0 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xa1 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xa2 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xa3 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xa4 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xa5 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xa6 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xa7 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xa8 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xa9 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xaa (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xab (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xac (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xad (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xae (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xaf (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xb0 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xb1 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xb2 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xb3 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xb4 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xb5 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xb6 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xb7 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xb8 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xb9 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xba (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xbb (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xbc (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xbd (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xbe (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xbf (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // B8G8R8A8_UNORM (0xc0)
     {
         "B8G8R8A8_UNORM",
@@ -1943,11 +2265,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B8G8R8A8_UNORM_SRGB (0xc1)
     {
@@ -1962,11 +2284,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R10G10B10A2_UNORM (0xc2)
     {
@@ -1981,11 +2303,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 3.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R10G10B10A2_UNORM_SRGB (0xc3)
     {
@@ -2000,11 +2322,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 3.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R10G10B10A2_UINT (0xc4)
     {
@@ -2019,28 +2341,32 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0xc5 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xc6 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R8G8B8A8_UNORM (0xc7)
     {
         "R8G8B8A8_UNORM",
@@ -2054,11 +2380,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8B8A8_UNORM_SRGB (0xc8)
     {
@@ -2073,11 +2399,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8B8A8_SNORM (0xc9)
     {
@@ -2092,11 +2418,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 127.0f, 1.0f / 127.0f, 1.0f / 127.0f, 1.0f / 127.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8B8A8_SINT (0xca)
     {
@@ -2111,11 +2437,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8B8A8_UINT (0xcb)
     {
@@ -2130,11 +2456,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16_UNORM (0xcc)
     {
@@ -2149,11 +2475,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, true, false, false }, // Is normalized?
         { 1.0f / 65535.0f, 1.0f / 65535.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16_SNORM (0xcd)
     {
@@ -2168,11 +2494,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, true, false, false }, // Is normalized?
         { 1.0f / 32767.0f, 1.0f / 32767.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16_SINT (0xce)
     {
@@ -2187,11 +2513,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16_UINT (0xcf)
     {
@@ -2206,11 +2532,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16_FLOAT (0xd0)
     {
@@ -2225,11 +2551,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B10G10R10A2_UNORM (0xd1)
     {
@@ -2244,11 +2570,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 3.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B10G10R10A2_UNORM_SRGB (0xd2)
     {
@@ -2263,11 +2589,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 3.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R11G11B10_FLOAT (0xd3)
     {
@@ -2282,28 +2608,41 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0xd4 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
-    // 0xd5 (Padding)
+        1, 1
+    },
+    // R10G10B10_FLOAT_A2_UNORM (0xd5)
     {
-        "UNKNOWN",
-        { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
-        { false, false, false, false },
-        { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        "R10G10B10_FLOAT_A2_UNORM",
+        { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_UNORM },
+        { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
+        { 0, 1, 2, 3 }, // Swizzle
+        { 10, 10, 10, 2 }, // Bits per component
+        32, // Bits per element
+        4, // Bytes per element
+        4, // Num components
+        false, // isSRGB
+        false, // isBC
+        false, // isSubsampled
+        false, // isLuminance
+        { false, false, false, true }, // Is normalized?
+        { 1.0f, 1.0f, 1.0f, 1.0f / 3.0f }, // To float scale factor
+        1, // bcWidth
+        1, // bcHeight
+    },
     // R32_SINT (0xd6)
     {
         "R32_SINT",
@@ -2317,11 +2656,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32_UINT (0xd7)
     {
@@ -2336,11 +2675,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32_FLOAT (0xd8)
     {
@@ -2355,11 +2694,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R24_UNORM_X8_TYPELESS (0xd9)
     {
@@ -2374,11 +2713,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 16777215.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // X24_TYPELESS_G8_UINT (0xda)
     {
@@ -2393,20 +2732,22 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0xdb (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R24_UNORM_X8_TYPELESS_LD (0xdc)
     {
         "R24_UNORM_X8_TYPELESS_LD",
@@ -2420,11 +2761,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 16777215.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // L32_UNORM (0xdd)
     {
@@ -2439,20 +2780,22 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        true, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 4294967295.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // 0xde (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // L16A16_UNORM (0xdf)
     {
         "L16A16_UNORM",
@@ -2466,11 +2809,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        true, // isLuminance
+        { true, true, false, false }, // Is normalized?
         { 1.0f / 65535.0f, 1.0f / 65535.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // I24X8_UNORM (0xe0)
     {
@@ -2485,11 +2828,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        true, // isLuminance
+        { true, true, false, false }, // Is normalized?
         { 1.0f / 16777215.0f, 1.0f / 255.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // L24X8_UNORM (0xe1)
     {
@@ -2504,20 +2847,22 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        true, // isLuminance
+        { true, true, false, false }, // Is normalized?
         { 1.0f / 16777215.0f, 1.0f / 255.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // 0xe2 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // I32_FLOAT (0xe3)
     {
         "I32_FLOAT",
@@ -2531,11 +2876,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        true, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // L32_FLOAT (0xe4)
     {
@@ -2550,11 +2895,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        true, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // A32_FLOAT (0xe5)
     {
@@ -2569,36 +2914,42 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0xe6 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xe7 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xe8 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // B8G8R8X8_UNORM (0xe9)
     {
         "B8G8R8X8_UNORM",
@@ -2612,11 +2963,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
-        { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f }, // To float scale factor
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
+        { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B8G8R8X8_UNORM_SRGB (0xea)
     {
@@ -2631,11 +2982,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
-        { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f }, // To float scale factor
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
+        { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8B8X8_UNORM (0xeb)
     {
@@ -2650,11 +3001,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
-        { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f }, // To float scale factor
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
+        { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8B8X8_UNORM_SRGB (0xec)
     {
@@ -2669,11 +3020,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
-        { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f }, // To float scale factor
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
+        { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R9G9B9E5_SHAREDEXP (0xed)
     {
@@ -2688,11 +3039,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B10G10R10X2_UNORM (0xee)
     {
@@ -2707,20 +3058,22 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
-        { 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 3.0f }, // To float scale factor
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
+        { 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0xef (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // L16A16_FLOAT (0xf0)
     {
         "L16A16_FLOAT",
@@ -2734,28 +3087,32 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        true, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // 0xf1 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xf2 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R10G10B10X2_USCALED (0xf3)
     {
         "R10G10B10X2_USCALED",
@@ -2769,11 +3126,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8B8A8_SSCALED (0xf4)
     {
@@ -2788,11 +3145,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8B8A8_USCALED (0xf5)
     {
@@ -2807,11 +3164,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16_SSCALED (0xf6)
     {
@@ -2826,11 +3183,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16_USCALED (0xf7)
     {
@@ -2845,11 +3202,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32_SSCALED (0xf8)
     {
@@ -2864,11 +3221,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R32_USCALED (0xf9)
     {
@@ -2883,60 +3240,72 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0xfa (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xfb (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xfc (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xfd (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xfe (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0xff (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // B5G6R5_UNORM (0x100)
     {
         "B5G6R5_UNORM",
@@ -2950,11 +3319,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
         { 1.0f / 31.0f, 1.0f / 63.0f, 1.0f / 31.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B5G6R5_UNORM_SRGB (0x101)
     {
@@ -2969,11 +3338,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
         { 1.0f / 31.0f, 1.0f / 63.0f, 1.0f / 31.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B5G5R5A1_UNORM (0x102)
     {
@@ -2988,11 +3357,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B5G5R5A1_UNORM_SRGB (0x103)
     {
@@ -3007,11 +3376,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B4G4R4A4_UNORM (0x104)
     {
@@ -3026,11 +3395,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 15.0f, 1.0f / 15.0f, 1.0f / 15.0f, 1.0f / 15.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B4G4R4A4_UNORM_SRGB (0x105)
     {
@@ -3045,11 +3414,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 15.0f, 1.0f / 15.0f, 1.0f / 15.0f, 1.0f / 15.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8_UNORM (0x106)
     {
@@ -3064,11 +3433,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, true, false, false }, // Is normalized?
         { 1.0f / 255.0f, 1.0f / 255.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8_SNORM (0x107)
     {
@@ -3083,11 +3452,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, true, false, false }, // Is normalized?
         { 1.0f / 127.0f, 1.0f / 127.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8_SINT (0x108)
     {
@@ -3102,11 +3471,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8_UINT (0x109)
     {
@@ -3121,11 +3490,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16_UNORM (0x10a)
     {
@@ -3140,11 +3509,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 65535.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16_SNORM (0x10b)
     {
@@ -3159,11 +3528,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 32767.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16_SINT (0x10c)
     {
@@ -3178,11 +3547,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16_UINT (0x10d)
     {
@@ -3197,11 +3566,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16_FLOAT (0x10e)
     {
@@ -3216,28 +3585,32 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x10f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x110 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // I16_UNORM (0x111)
     {
         "I16_UNORM",
@@ -3251,11 +3624,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        true, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 65535.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // L16_UNORM (0x112)
     {
@@ -3270,11 +3643,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        true, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 65535.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // A16_UNORM (0x113)
     {
@@ -3289,11 +3662,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 65535.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // L8A8_UNORM (0x114)
     {
@@ -3308,11 +3681,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        true, // isLuminance
+        { true, true, false, false }, // Is normalized?
         { 1.0f / 255.0f, 1.0f / 255.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // I16_FLOAT (0x115)
     {
@@ -3327,11 +3700,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        true, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // L16_FLOAT (0x116)
     {
@@ -3346,11 +3719,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        true, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // A16_FLOAT (0x117)
     {
@@ -3365,11 +3738,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // L8A8_UNORM_SRGB (0x118)
     {
@@ -3384,20 +3757,22 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        true, // isLuminance
+        { true, true, false, false }, // Is normalized?
         { 1.0f / 255.0f, 1.0f / 255.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // 0x119 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // B5G5R5X1_UNORM (0x11a)
     {
         "B5G5R5X1_UNORM",
@@ -3411,11 +3786,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
-        { 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 1.0f }, // To float scale factor
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
+        { 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 31.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B5G5R5X1_UNORM_SRGB (0x11b)
     {
@@ -3430,11 +3805,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
-        { 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 1.0f }, // To float scale factor
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
+        { 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 31.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8_SSCALED (0x11c)
     {
@@ -3449,11 +3824,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8_USCALED (0x11d)
     {
@@ -3468,11 +3843,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16_SSCALED (0x11e)
     {
@@ -3487,11 +3862,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16_USCALED (0x11f)
     {
@@ -3506,60 +3881,72 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x120 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x121 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x122 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x123 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x124 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x125 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // L8A8_UINT (0x126)
     {
         "L8A8_UINT",
@@ -3573,11 +3960,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        true, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // L8A8_SINT (0x127)
     {
@@ -3592,204 +3979,252 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        true, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // 0x128 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x129 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x12a (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x12b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x12c (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x12d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x12e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x12f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x130 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x131 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x132 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x133 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x134 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x135 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x136 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x137 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x138 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x139 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x13a (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x13b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x13c (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x13d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x13e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x13f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R8_UNORM (0x140)
     {
         "R8_UNORM",
@@ -3803,11 +4238,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8_SNORM (0x141)
     {
@@ -3822,11 +4257,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 127.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8_SINT (0x142)
     {
@@ -3841,11 +4276,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8_UINT (0x143)
     {
@@ -3860,11 +4295,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // A8_UNORM (0x144)
     {
@@ -3879,11 +4314,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // I8_UNORM (0x145)
     {
@@ -3898,11 +4333,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        true, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // L8_UNORM (0x146)
     {
@@ -3917,28 +4352,32 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        true, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // 0x147 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x148 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R8_SSCALED (0x149)
     {
         "R8_SSCALED",
@@ -3952,11 +4391,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8_USCALED (0x14a)
     {
@@ -3971,20 +4410,22 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x14b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // L8_UNORM_SRGB (0x14c)
     {
         "L8_UNORM_SRGB",
@@ -3998,52 +4439,62 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        true, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // 0x14d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x14e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x14f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x150 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x151 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // L8_UINT (0x152)
     {
         "L8_UINT",
@@ -4057,11 +4508,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        true, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // L8_SINT (0x153)
     {
@@ -4076,11 +4527,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        true, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // I8_UINT (0x154)
     {
@@ -4095,11 +4546,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        true, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // I8_SINT (0x155)
     {
@@ -4114,372 +4565,462 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        true, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 0, 0, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        true, // isLuminance
     },
     // 0x156 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x157 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x158 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x159 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x15a (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x15b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x15c (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x15d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x15e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x15f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x160 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x161 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x162 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x163 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x164 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x165 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x166 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x167 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x168 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x169 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x16a (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x16b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x16c (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x16d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x16e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x16f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x170 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x171 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x172 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x173 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x174 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x175 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x176 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x177 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x178 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x179 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x17a (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x17b (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x17c (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x17d (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x17e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x17f (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x180 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x181 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x182 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // YCRCB_SWAPUVY (0x183)
     {
         "YCRCB_SWAPUVY",
@@ -4493,28 +5034,32 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         true, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         2, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x184 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x185 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // BC1_UNORM (0x186)
     {
         "BC1_UNORM",
@@ -4528,11 +5073,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         true, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         4, // bcWidth
         4, // bcHeight
-        false, // isLuminance
     },
     // BC2_UNORM (0x187)
     {
@@ -4547,11 +5092,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         true, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         4, // bcWidth
         4, // bcHeight
-        false, // isLuminance
     },
     // BC3_UNORM (0x188)
     {
@@ -4566,11 +5111,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         true, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         4, // bcWidth
         4, // bcHeight
-        false, // isLuminance
     },
     // BC4_UNORM (0x189)
     {
@@ -4585,11 +5130,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         true, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         4, // bcWidth
         4, // bcHeight
-        false, // isLuminance
     },
     // BC5_UNORM (0x18a)
     {
@@ -4604,11 +5149,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         true, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         4, // bcWidth
         4, // bcHeight
-        false, // isLuminance
     },
     // BC1_UNORM_SRGB (0x18b)
     {
@@ -4623,11 +5168,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         true, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         4, // bcWidth
         4, // bcHeight
-        false, // isLuminance
     },
     // BC2_UNORM_SRGB (0x18c)
     {
@@ -4642,11 +5187,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         true, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         4, // bcWidth
         4, // bcHeight
-        false, // isLuminance
     },
     // BC3_UNORM_SRGB (0x18d)
     {
@@ -4661,20 +5206,22 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         true, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         4, // bcWidth
         4, // bcHeight
-        false, // isLuminance
     },
     // 0x18e (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // YCRCB_SWAPUV (0x18f)
     {
         "YCRCB_SWAPUV",
@@ -4688,36 +5235,42 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         true, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         2, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x190 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x191 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x192 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R8G8B8_UNORM (0x193)
     {
         "R8G8B8_UNORM",
@@ -4731,11 +5284,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
         { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8B8_SNORM (0x194)
     {
@@ -4750,11 +5303,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
         { 1.0f / 127.0f, 1.0f / 127.0f, 1.0f / 127.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8B8_SSCALED (0x195)
     {
@@ -4769,11 +5322,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8B8_USCALED (0x196)
     {
@@ -4788,28 +5341,32 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x197 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x198 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // BC4_SNORM (0x199)
     {
         "BC4_SNORM",
@@ -4823,11 +5380,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         true, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 127.0f, 0, 0, 0 }, // To float scale factor
         4, // bcWidth
         4, // bcHeight
-        false, // isLuminance
     },
     // BC5_SNORM (0x19a)
     {
@@ -4842,11 +5399,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         true, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 127.0f, 0, 0, 0 }, // To float scale factor
         4, // bcWidth
         4, // bcHeight
-        false, // isLuminance
     },
     // R16G16B16_FLOAT (0x19b)
     {
@@ -4861,11 +5418,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16B16_UNORM (0x19c)
     {
@@ -4880,11 +5437,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
         { 1.0f / 65535.0f, 1.0f / 65535.0f, 1.0f / 65535.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16B16_SNORM (0x19d)
     {
@@ -4899,11 +5456,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
         { 1.0f / 32767.0f, 1.0f / 32767.0f, 1.0f / 32767.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16B16_SSCALED (0x19e)
     {
@@ -4918,11 +5475,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16B16_USCALED (0x19f)
     {
@@ -4937,20 +5494,22 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x1a0 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // BC6H_SF16 (0x1a1)
     {
         "BC6H_SF16",
@@ -4964,11 +5523,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         true, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 127.0f, 0, 0, 0 }, // To float scale factor
         4, // bcWidth
         4, // bcHeight
-        false, // isLuminance
     },
     // BC7_UNORM (0x1a2)
     {
@@ -4983,11 +5542,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         true, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         4, // bcWidth
         4, // bcHeight
-        false, // isLuminance
     },
     // BC7_UNORM_SRGB (0x1a3)
     {
@@ -5002,11 +5561,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         true, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         4, // bcWidth
         4, // bcHeight
-        false, // isLuminance
     },
     // BC6H_UF16 (0x1a4)
     {
@@ -5021,36 +5580,42 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         true, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, false, false, false }, // Is normalized?
         { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
         4, // bcWidth
         4, // bcHeight
-        false, // isLuminance
     },
     // 0x1a5 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1a6 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1a7 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R8G8B8_UNORM_SRGB (0x1a8)
     {
         "R8G8B8_UNORM_SRGB",
@@ -5064,68 +5629,82 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         true, // isSRGB
         false, // isBC
         false, // isSubsampled
-        { true, true, true, true }, // Is normalized?
+        false, // isLuminance
+        { true, true, true, false }, // Is normalized?
         { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x1a9 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1aa (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1ab (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1ac (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1ad (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1ae (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1af (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R16G16B16_UINT (0x1b0)
     {
         "R16G16B16_UINT",
@@ -5139,11 +5718,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R16G16B16_SINT (0x1b1)
     {
@@ -5158,20 +5737,22 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x1b2 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R10G10B10A2_SNORM (0x1b3)
     {
         "R10G10B10A2_SNORM",
@@ -5185,11 +5766,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 511.0f, 1.0f / 511.0f, 1.0f / 511.0f, 1.0f / 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R10G10B10A2_USCALED (0x1b4)
     {
@@ -5204,11 +5785,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R10G10B10A2_SSCALED (0x1b5)
     {
@@ -5223,11 +5804,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R10G10B10A2_SINT (0x1b6)
     {
@@ -5242,11 +5823,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B10G10R10A2_SNORM (0x1b7)
     {
@@ -5261,11 +5842,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { true, true, true, true }, // Is normalized?
         { 1.0f / 511.0f, 1.0f / 511.0f, 1.0f / 511.0f, 1.0f / 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B10G10R10A2_USCALED (0x1b8)
     {
@@ -5280,11 +5861,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B10G10R10A2_SSCALED (0x1b9)
     {
@@ -5299,11 +5880,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B10G10R10A2_UINT (0x1ba)
     {
@@ -5318,11 +5899,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // B10G10R10A2_SINT (0x1bb)
     {
@@ -5337,108 +5918,132 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // 0x1bc (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1bd (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1be (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1bf (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1c0 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1c1 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1c2 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1c3 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1c4 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1c5 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1c6 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // 0x1c7 (Padding)
     {
         "UNKNOWN",
         { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
-        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, 0, 0, 0, false, false, false,
+        { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, { 0, 0, 0, 0 },
+        0, 0, 0, false, false, false, false,
         { false, false, false, false },
         { 0.0f, 0.0f, 0.0f, 0.0f },
-        1, 1, false    },
+        1, 1
+    },
     // R8G8B8_UINT (0x1c8)
     {
         "R8G8B8_UINT",
@@ -5452,11 +6057,11 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
     // R8G8B8_SINT (0x1c9)
     {
@@ -5471,10 +6076,10 @@ const SWR_FORMAT_INFO gFormatInfo[] = {
         false, // isSRGB
         false, // isBC
         false, // isSubsampled
+        false, // isLuminance
         { false, false, false, false }, // Is normalized?
         { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
         1, // bcWidth
         1, // bcHeight
-        false, // isLuminance
     },
 };
index c7108c54764bd08f22a349adc32ecd2f649bbfe5..117cf3e4b842c12d46a5b95844fd450677c8f7be 100644 (file)
@@ -48,6 +48,7 @@ enum SWR_TYPE
     SWR_TYPE_SSCALED,
     SWR_TYPE_USCALED,
 };
+
 //////////////////////////////////////////////////////////////////////////
 /// SWR_FORMAT
 //////////////////////////////////////////////////////////////////////////
@@ -102,6 +103,7 @@ enum SWR_FORMAT
     B10G10R10A2_UNORM = 0xD1,
     B10G10R10A2_UNORM_SRGB = 0xD2,
     R11G11B10_FLOAT = 0xD3,
+    R10G10B10_FLOAT_A2_UNORM = 0xD5,
     R32_SINT = 0xD6,
     R32_UINT = 0xD7,
     R32_FLOAT = 0xD8,
@@ -215,6 +217,7 @@ enum SWR_FORMAT
     R8G8B8_SINT = 0x1C9,
     NUM_SWR_FORMATS = 0x1CA,
 };
+
 //////////////////////////////////////////////////////////////////////////
 /// SWR_FORMAT_INFO - Format information
 //////////////////////////////////////////////////////////////////////////
@@ -231,11 +234,11 @@ struct SWR_FORMAT_INFO
     bool isSRGB;
     bool isBC;
     bool isSubsampled;
+    bool isLuminance;
     bool isNormalized[4];
     float toFloat[4];
     uint32_t bcWidth;
     uint32_t bcHeight;
-    bool isLuminance;
 };
 
 extern const SWR_FORMAT_INFO gFormatInfo[];