dri3: Fix MakeCurrent without a default framebuffer
[mesa.git] / src / gallium / drivers / swr / rasterizer / common / formats.cpp
1 /****************************************************************************
2 * Copyright (C) 2016 Intel Corporation. All Rights Reserved.
3 *
4 * Permission is hereby granted, free of charge, to any person obtaining a
5 * copy of this software and associated documentation files (the "Software"),
6 * to deal in the Software without restriction, including without limitation
7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
8 * and/or sell copies of the Software, and to permit persons to whom the
9 * Software is furnished to do so, subject to the following conditions:
10 *
11 * The above copyright notice and this permission notice (including the next
12 * paragraph) shall be included in all copies or substantial portions of the
13 * Software.
14 *
15 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
18 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
20 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
21 * IN THE SOFTWARE.
22 *
23 * @file gen_formats.cpp
24 *
25 * @brief auto-generated file
26 *
27 * DO NOT EDIT
28 *
29 ******************************************************************************/
30
31 #include "formats.h"
32
33 // lookup table for unorm8 srgb -> float conversion
34 const uint32_t srgb8Table[256] = {
35 0x00000000, 0x399f22b4, 0x3a1f22b4, 0x3a6eb40f, 0x3a9f22b4, 0x3ac6eb61, 0x3aeeb40f, 0x3b0b3e5e,
36 0x3b1f22b4, 0x3b33070b, 0x3b46eb61, 0x3b5b518d, 0x3b70f18d, 0x3b83e1c6, 0x3b8fe616, 0x3b9c87fd,
37 0x3ba9c9b5, 0x3bb7ad6f, 0x3bc63549, 0x3bd5635f, 0x3be539c1, 0x3bf5ba70, 0x3c0373b5, 0x3c0c6152,
38 0x3c15a703, 0x3c1f45be, 0x3c293e6b, 0x3c3391f7, 0x3c3e4149, 0x3c494d43, 0x3c54b6c7, 0x3c607eb1,
39 0x3c6ca5dc, 0x3c792d22, 0x3c830aa8, 0x3c89af9f, 0x3c9085db, 0x3c978dc5, 0x3c9ec7c0, 0x3ca63431,
40 0x3cadd37d, 0x3cb5a601, 0x3cbdac20, 0x3cc5e639, 0x3cce54ab, 0x3cd6f7d3, 0x3cdfd00e, 0x3ce8ddb9,
41 0x3cf22131, 0x3cfb9ac6, 0x3d02a56c, 0x3d0798df, 0x3d0ca7e7, 0x3d11d2b0, 0x3d171965, 0x3d1c7c31,
42 0x3d21fb3c, 0x3d2796b2, 0x3d2d4ebe, 0x3d332384, 0x3d39152e, 0x3d3f23e6, 0x3d454fd4, 0x3d4b991f,
43 0x3d51ffef, 0x3d58846a, 0x3d5f26b7, 0x3d65e6fe, 0x3d6cc564, 0x3d73c20f, 0x3d7add25, 0x3d810b66,
44 0x3d84b795, 0x3d887330, 0x3d8c3e4a, 0x3d9018f6, 0x3d940345, 0x3d97fd4a, 0x3d9c0716, 0x3da020bb,
45 0x3da44a4b, 0x3da883d7, 0x3daccd70, 0x3db12728, 0x3db59110, 0x3dba0b38, 0x3dbe95b5, 0x3dc33092,
46 0x3dc7dbe2, 0x3dcc97b6, 0x3dd1641f, 0x3dd6412c, 0x3ddb2eef, 0x3de02d77, 0x3de53cd5, 0x3dea5d19,
47 0x3def8e55, 0x3df4d093, 0x3dfa23e8, 0x3dff8861, 0x3e027f07, 0x3e054282, 0x3e080ea5, 0x3e0ae379,
48 0x3e0dc107, 0x3e10a755, 0x3e13966c, 0x3e168e53, 0x3e198f11, 0x3e1c98ae, 0x3e1fab32, 0x3e22c6a3,
49 0x3e25eb09, 0x3e29186c, 0x3e2c4ed2, 0x3e2f8e45, 0x3e32d6c8, 0x3e362865, 0x3e398322, 0x3e3ce706,
50 0x3e405419, 0x3e43ca62, 0x3e4749e8, 0x3e4ad2b1, 0x3e4e64c6, 0x3e52002b, 0x3e55a4e9, 0x3e595307,
51 0x3e5d0a8b, 0x3e60cb7c, 0x3e6495e0, 0x3e6869bf, 0x3e6c4720, 0x3e702e08, 0x3e741e7f, 0x3e78188c,
52 0x3e7c1c38, 0x3e8014c2, 0x3e82203c, 0x3e84308d, 0x3e8645ba, 0x3e885fc5, 0x3e8a7eb2, 0x3e8ca283,
53 0x3e8ecb3d, 0x3e90f8e1, 0x3e932b74, 0x3e9562f8, 0x3e979f71, 0x3e99e0e2, 0x3e9c274e, 0x3e9e72b7,
54 0x3ea0c322, 0x3ea31892, 0x3ea57308, 0x3ea7d289, 0x3eaa3718, 0x3eaca0b7, 0x3eaf0f69, 0x3eb18333,
55 0x3eb3fc16, 0x3eb67a15, 0x3eb8fd34, 0x3ebb8576, 0x3ebe12e1, 0x3ec0a571, 0x3ec33d2d, 0x3ec5da17,
56 0x3ec87c33, 0x3ecb2383, 0x3ecdd00b, 0x3ed081cd, 0x3ed338cc, 0x3ed5f50b, 0x3ed8b68d, 0x3edb7d54,
57 0x3ede4965, 0x3ee11ac1, 0x3ee3f16b, 0x3ee6cd67, 0x3ee9aeb6, 0x3eec955d, 0x3eef815d, 0x3ef272ba,
58 0x3ef56976, 0x3ef86594, 0x3efb6717, 0x3efe6e02, 0x3f00bd2b, 0x3f02460c, 0x3f03d1a5, 0x3f055ff8,
59 0x3f06f106, 0x3f0884cf, 0x3f0a1b57, 0x3f0bb49d, 0x3f0d50a2, 0x3f0eef69, 0x3f1090f2, 0x3f123540,
60 0x3f13dc53, 0x3f15862d, 0x3f1732cf, 0x3f18e23b, 0x3f1a9471, 0x3f1c4973, 0x3f1e0143, 0x3f1fbbe1,
61 0x3f217950, 0x3f23398f, 0x3f24fca2, 0x3f26c288, 0x3f288b43, 0x3f2a56d5, 0x3f2c253f, 0x3f2df681,
62 0x3f2fca9e, 0x3f31a197, 0x3f337b6c, 0x3f355820, 0x3f3737b3, 0x3f391a26, 0x3f3aff7e, 0x3f3ce7b7,
63 0x3f3ed2d4, 0x3f40c0d6, 0x3f42b1c0, 0x3f44a592, 0x3f469c4d, 0x3f4895f3, 0x3f4a9284, 0x3f4c9203,
64 0x3f4e9470, 0x3f5099cd, 0x3f52a21a, 0x3f54ad59, 0x3f56bb8c, 0x3f58ccb3, 0x3f5ae0cf, 0x3f5cf7e2,
65 0x3f5f11ee, 0x3f612ef2, 0x3f634eef, 0x3f6571ec, 0x3f6797e1, 0x3f69c0d8, 0x3f6beccb, 0x3f6e1bc2,
66 0x3f704db6, 0x3f7282b1, 0x3f74baae, 0x3f76f5b3, 0x3f7933b9, 0x3f7b74cb, 0x3f7db8e0, 0x3f800000,
67 };
68
69 // order must match SWR_FORMAT
70 const SWR_FORMAT_INFO gFormatInfo[] = {
71
72 // R32G32B32A32_FLOAT (0x0)
73 {
74 "R32G32B32A32_FLOAT",
75 { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_FLOAT },
76 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
77 { 0, 1, 2, 3 }, // Swizzle
78 { 32, 32, 32, 32 }, // Bits per component
79 128, // Bits per element
80 16, // Bytes per element
81 4, // Num components
82 false, // isSRGB
83 false, // isBC
84 false, // isSubsampled
85 false, // isLuminance
86 { false, false, false, false }, // Is normalized?
87 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
88 1, // bcWidth
89 1, // bcHeight
90 },
91
92 // R32G32B32A32_SINT (0x1)
93 {
94 "R32G32B32A32_SINT",
95 { SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_SINT },
96 { 0, 0, 0, 0x1 }, // Defaults for missing components
97 { 0, 1, 2, 3 }, // Swizzle
98 { 32, 32, 32, 32 }, // Bits per component
99 128, // Bits per element
100 16, // Bytes per element
101 4, // Num components
102 false, // isSRGB
103 false, // isBC
104 false, // isSubsampled
105 false, // isLuminance
106 { false, false, false, false }, // Is normalized?
107 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
108 1, // bcWidth
109 1, // bcHeight
110 },
111
112 // R32G32B32A32_UINT (0x2)
113 {
114 "R32G32B32A32_UINT",
115 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT },
116 { 0, 0, 0, 0x1 }, // Defaults for missing components
117 { 0, 1, 2, 3 }, // Swizzle
118 { 32, 32, 32, 32 }, // Bits per component
119 128, // Bits per element
120 16, // Bytes per element
121 4, // Num components
122 false, // isSRGB
123 false, // isBC
124 false, // isSubsampled
125 false, // isLuminance
126 { false, false, false, false }, // Is normalized?
127 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
128 1, // bcWidth
129 1, // bcHeight
130 },
131
132 // padding (0x3)
133 {
134 nullptr,
135 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
136 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
137 0, 0, 0, false, false, false, false,
138 { false, false, false, false },
139 { 0.0f, 0.0f, 0.0f, 0.0f },
140 1, 1
141 },
142 // padding (0x4)
143 {
144 nullptr,
145 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
146 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
147 0, 0, 0, false, false, false, false,
148 { false, false, false, false },
149 { 0.0f, 0.0f, 0.0f, 0.0f },
150 1, 1
151 },
152 // padding (0x5)
153 {
154 nullptr,
155 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
156 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
157 0, 0, 0, false, false, false, false,
158 { false, false, false, false },
159 { 0.0f, 0.0f, 0.0f, 0.0f },
160 1, 1
161 },
162 // R32G32B32X32_FLOAT (0x6)
163 {
164 "R32G32B32X32_FLOAT",
165 { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_UNUSED },
166 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
167 { 0, 1, 2, 3 }, // Swizzle
168 { 32, 32, 32, 32 }, // Bits per component
169 128, // Bits per element
170 16, // Bytes per element
171 4, // Num components
172 false, // isSRGB
173 false, // isBC
174 false, // isSubsampled
175 false, // isLuminance
176 { false, false, false, false }, // Is normalized?
177 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
178 1, // bcWidth
179 1, // bcHeight
180 },
181
182 // R32G32B32A32_SSCALED (0x7)
183 {
184 "R32G32B32A32_SSCALED",
185 { SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_SSCALED },
186 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
187 { 0, 1, 2, 3 }, // Swizzle
188 { 32, 32, 32, 32 }, // Bits per component
189 128, // Bits per element
190 16, // Bytes per element
191 4, // Num components
192 false, // isSRGB
193 false, // isBC
194 false, // isSubsampled
195 false, // isLuminance
196 { false, false, false, false }, // Is normalized?
197 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
198 1, // bcWidth
199 1, // bcHeight
200 },
201
202 // R32G32B32A32_USCALED (0x8)
203 {
204 "R32G32B32A32_USCALED",
205 { SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_USCALED },
206 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
207 { 0, 1, 2, 3 }, // Swizzle
208 { 32, 32, 32, 32 }, // Bits per component
209 128, // Bits per element
210 16, // Bytes per element
211 4, // Num components
212 false, // isSRGB
213 false, // isBC
214 false, // isSubsampled
215 false, // isLuminance
216 { false, false, false, false }, // Is normalized?
217 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
218 1, // bcWidth
219 1, // bcHeight
220 },
221
222 // padding (0x9)
223 {
224 nullptr,
225 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
226 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
227 0, 0, 0, false, false, false, false,
228 { false, false, false, false },
229 { 0.0f, 0.0f, 0.0f, 0.0f },
230 1, 1
231 },
232 // padding (0xA)
233 {
234 nullptr,
235 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
236 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
237 0, 0, 0, false, false, false, false,
238 { false, false, false, false },
239 { 0.0f, 0.0f, 0.0f, 0.0f },
240 1, 1
241 },
242 // padding (0xB)
243 {
244 nullptr,
245 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
246 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
247 0, 0, 0, false, false, false, false,
248 { false, false, false, false },
249 { 0.0f, 0.0f, 0.0f, 0.0f },
250 1, 1
251 },
252 // padding (0xC)
253 {
254 nullptr,
255 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
256 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
257 0, 0, 0, false, false, false, false,
258 { false, false, false, false },
259 { 0.0f, 0.0f, 0.0f, 0.0f },
260 1, 1
261 },
262 // padding (0xD)
263 {
264 nullptr,
265 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
266 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
267 0, 0, 0, false, false, false, false,
268 { false, false, false, false },
269 { 0.0f, 0.0f, 0.0f, 0.0f },
270 1, 1
271 },
272 // padding (0xE)
273 {
274 nullptr,
275 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
276 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
277 0, 0, 0, false, false, false, false,
278 { false, false, false, false },
279 { 0.0f, 0.0f, 0.0f, 0.0f },
280 1, 1
281 },
282 // padding (0xF)
283 {
284 nullptr,
285 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
286 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
287 0, 0, 0, false, false, false, false,
288 { false, false, false, false },
289 { 0.0f, 0.0f, 0.0f, 0.0f },
290 1, 1
291 },
292 // padding (0x10)
293 {
294 nullptr,
295 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
296 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
297 0, 0, 0, false, false, false, false,
298 { false, false, false, false },
299 { 0.0f, 0.0f, 0.0f, 0.0f },
300 1, 1
301 },
302 // padding (0x11)
303 {
304 nullptr,
305 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
306 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
307 0, 0, 0, false, false, false, false,
308 { false, false, false, false },
309 { 0.0f, 0.0f, 0.0f, 0.0f },
310 1, 1
311 },
312 // padding (0x12)
313 {
314 nullptr,
315 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
316 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
317 0, 0, 0, false, false, false, false,
318 { false, false, false, false },
319 { 0.0f, 0.0f, 0.0f, 0.0f },
320 1, 1
321 },
322 // padding (0x13)
323 {
324 nullptr,
325 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
326 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
327 0, 0, 0, false, false, false, false,
328 { false, false, false, false },
329 { 0.0f, 0.0f, 0.0f, 0.0f },
330 1, 1
331 },
332 // padding (0x14)
333 {
334 nullptr,
335 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
336 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
337 0, 0, 0, false, false, false, false,
338 { false, false, false, false },
339 { 0.0f, 0.0f, 0.0f, 0.0f },
340 1, 1
341 },
342 // padding (0x15)
343 {
344 nullptr,
345 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
346 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
347 0, 0, 0, false, false, false, false,
348 { false, false, false, false },
349 { 0.0f, 0.0f, 0.0f, 0.0f },
350 1, 1
351 },
352 // padding (0x16)
353 {
354 nullptr,
355 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
356 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
357 0, 0, 0, false, false, false, false,
358 { false, false, false, false },
359 { 0.0f, 0.0f, 0.0f, 0.0f },
360 1, 1
361 },
362 // padding (0x17)
363 {
364 nullptr,
365 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
366 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
367 0, 0, 0, false, false, false, false,
368 { false, false, false, false },
369 { 0.0f, 0.0f, 0.0f, 0.0f },
370 1, 1
371 },
372 // padding (0x18)
373 {
374 nullptr,
375 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
376 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
377 0, 0, 0, false, false, false, false,
378 { false, false, false, false },
379 { 0.0f, 0.0f, 0.0f, 0.0f },
380 1, 1
381 },
382 // padding (0x19)
383 {
384 nullptr,
385 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
386 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
387 0, 0, 0, false, false, false, false,
388 { false, false, false, false },
389 { 0.0f, 0.0f, 0.0f, 0.0f },
390 1, 1
391 },
392 // padding (0x1A)
393 {
394 nullptr,
395 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
396 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
397 0, 0, 0, false, false, false, false,
398 { false, false, false, false },
399 { 0.0f, 0.0f, 0.0f, 0.0f },
400 1, 1
401 },
402 // padding (0x1B)
403 {
404 nullptr,
405 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
406 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
407 0, 0, 0, false, false, false, false,
408 { false, false, false, false },
409 { 0.0f, 0.0f, 0.0f, 0.0f },
410 1, 1
411 },
412 // padding (0x1C)
413 {
414 nullptr,
415 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
416 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
417 0, 0, 0, false, false, false, false,
418 { false, false, false, false },
419 { 0.0f, 0.0f, 0.0f, 0.0f },
420 1, 1
421 },
422 // padding (0x1D)
423 {
424 nullptr,
425 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
426 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
427 0, 0, 0, false, false, false, false,
428 { false, false, false, false },
429 { 0.0f, 0.0f, 0.0f, 0.0f },
430 1, 1
431 },
432 // padding (0x1E)
433 {
434 nullptr,
435 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
436 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
437 0, 0, 0, false, false, false, false,
438 { false, false, false, false },
439 { 0.0f, 0.0f, 0.0f, 0.0f },
440 1, 1
441 },
442 // padding (0x1F)
443 {
444 nullptr,
445 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
446 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
447 0, 0, 0, false, false, false, false,
448 { false, false, false, false },
449 { 0.0f, 0.0f, 0.0f, 0.0f },
450 1, 1
451 },
452 // R32G32B32A32_SFIXED (0x20)
453 {
454 "R32G32B32A32_SFIXED",
455 { SWR_TYPE_SFIXED, SWR_TYPE_SFIXED, SWR_TYPE_SFIXED, SWR_TYPE_SFIXED },
456 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
457 { 0, 1, 2, 3 }, // Swizzle
458 { 32, 32, 32, 32 }, // Bits per component
459 128, // Bits per element
460 16, // Bytes per element
461 4, // Num components
462 false, // isSRGB
463 false, // isBC
464 false, // isSubsampled
465 false, // isLuminance
466 { false, false, false, false }, // Is normalized?
467 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
468 1, // bcWidth
469 1, // bcHeight
470 },
471
472 // padding (0x21)
473 {
474 nullptr,
475 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
476 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
477 0, 0, 0, false, false, false, false,
478 { false, false, false, false },
479 { 0.0f, 0.0f, 0.0f, 0.0f },
480 1, 1
481 },
482 // padding (0x22)
483 {
484 nullptr,
485 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
486 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
487 0, 0, 0, false, false, false, false,
488 { false, false, false, false },
489 { 0.0f, 0.0f, 0.0f, 0.0f },
490 1, 1
491 },
492 // padding (0x23)
493 {
494 nullptr,
495 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
496 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
497 0, 0, 0, false, false, false, false,
498 { false, false, false, false },
499 { 0.0f, 0.0f, 0.0f, 0.0f },
500 1, 1
501 },
502 // padding (0x24)
503 {
504 nullptr,
505 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
506 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
507 0, 0, 0, false, false, false, false,
508 { false, false, false, false },
509 { 0.0f, 0.0f, 0.0f, 0.0f },
510 1, 1
511 },
512 // padding (0x25)
513 {
514 nullptr,
515 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
516 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
517 0, 0, 0, false, false, false, false,
518 { false, false, false, false },
519 { 0.0f, 0.0f, 0.0f, 0.0f },
520 1, 1
521 },
522 // padding (0x26)
523 {
524 nullptr,
525 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
526 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
527 0, 0, 0, false, false, false, false,
528 { false, false, false, false },
529 { 0.0f, 0.0f, 0.0f, 0.0f },
530 1, 1
531 },
532 // padding (0x27)
533 {
534 nullptr,
535 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
536 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
537 0, 0, 0, false, false, false, false,
538 { false, false, false, false },
539 { 0.0f, 0.0f, 0.0f, 0.0f },
540 1, 1
541 },
542 // padding (0x28)
543 {
544 nullptr,
545 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
546 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
547 0, 0, 0, false, false, false, false,
548 { false, false, false, false },
549 { 0.0f, 0.0f, 0.0f, 0.0f },
550 1, 1
551 },
552 // padding (0x29)
553 {
554 nullptr,
555 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
556 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
557 0, 0, 0, false, false, false, false,
558 { false, false, false, false },
559 { 0.0f, 0.0f, 0.0f, 0.0f },
560 1, 1
561 },
562 // padding (0x2A)
563 {
564 nullptr,
565 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
566 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
567 0, 0, 0, false, false, false, false,
568 { false, false, false, false },
569 { 0.0f, 0.0f, 0.0f, 0.0f },
570 1, 1
571 },
572 // padding (0x2B)
573 {
574 nullptr,
575 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
576 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
577 0, 0, 0, false, false, false, false,
578 { false, false, false, false },
579 { 0.0f, 0.0f, 0.0f, 0.0f },
580 1, 1
581 },
582 // padding (0x2C)
583 {
584 nullptr,
585 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
586 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
587 0, 0, 0, false, false, false, false,
588 { false, false, false, false },
589 { 0.0f, 0.0f, 0.0f, 0.0f },
590 1, 1
591 },
592 // padding (0x2D)
593 {
594 nullptr,
595 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
596 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
597 0, 0, 0, false, false, false, false,
598 { false, false, false, false },
599 { 0.0f, 0.0f, 0.0f, 0.0f },
600 1, 1
601 },
602 // padding (0x2E)
603 {
604 nullptr,
605 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
606 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
607 0, 0, 0, false, false, false, false,
608 { false, false, false, false },
609 { 0.0f, 0.0f, 0.0f, 0.0f },
610 1, 1
611 },
612 // padding (0x2F)
613 {
614 nullptr,
615 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
616 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
617 0, 0, 0, false, false, false, false,
618 { false, false, false, false },
619 { 0.0f, 0.0f, 0.0f, 0.0f },
620 1, 1
621 },
622 // padding (0x30)
623 {
624 nullptr,
625 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
626 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
627 0, 0, 0, false, false, false, false,
628 { false, false, false, false },
629 { 0.0f, 0.0f, 0.0f, 0.0f },
630 1, 1
631 },
632 // padding (0x31)
633 {
634 nullptr,
635 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
636 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
637 0, 0, 0, false, false, false, false,
638 { false, false, false, false },
639 { 0.0f, 0.0f, 0.0f, 0.0f },
640 1, 1
641 },
642 // padding (0x32)
643 {
644 nullptr,
645 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
646 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
647 0, 0, 0, false, false, false, false,
648 { false, false, false, false },
649 { 0.0f, 0.0f, 0.0f, 0.0f },
650 1, 1
651 },
652 // padding (0x33)
653 {
654 nullptr,
655 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
656 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
657 0, 0, 0, false, false, false, false,
658 { false, false, false, false },
659 { 0.0f, 0.0f, 0.0f, 0.0f },
660 1, 1
661 },
662 // padding (0x34)
663 {
664 nullptr,
665 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
666 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
667 0, 0, 0, false, false, false, false,
668 { false, false, false, false },
669 { 0.0f, 0.0f, 0.0f, 0.0f },
670 1, 1
671 },
672 // padding (0x35)
673 {
674 nullptr,
675 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
676 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
677 0, 0, 0, false, false, false, false,
678 { false, false, false, false },
679 { 0.0f, 0.0f, 0.0f, 0.0f },
680 1, 1
681 },
682 // padding (0x36)
683 {
684 nullptr,
685 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
686 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
687 0, 0, 0, false, false, false, false,
688 { false, false, false, false },
689 { 0.0f, 0.0f, 0.0f, 0.0f },
690 1, 1
691 },
692 // padding (0x37)
693 {
694 nullptr,
695 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
696 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
697 0, 0, 0, false, false, false, false,
698 { false, false, false, false },
699 { 0.0f, 0.0f, 0.0f, 0.0f },
700 1, 1
701 },
702 // padding (0x38)
703 {
704 nullptr,
705 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
706 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
707 0, 0, 0, false, false, false, false,
708 { false, false, false, false },
709 { 0.0f, 0.0f, 0.0f, 0.0f },
710 1, 1
711 },
712 // padding (0x39)
713 {
714 nullptr,
715 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
716 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
717 0, 0, 0, false, false, false, false,
718 { false, false, false, false },
719 { 0.0f, 0.0f, 0.0f, 0.0f },
720 1, 1
721 },
722 // padding (0x3A)
723 {
724 nullptr,
725 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
726 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
727 0, 0, 0, false, false, false, false,
728 { false, false, false, false },
729 { 0.0f, 0.0f, 0.0f, 0.0f },
730 1, 1
731 },
732 // padding (0x3B)
733 {
734 nullptr,
735 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
736 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
737 0, 0, 0, false, false, false, false,
738 { false, false, false, false },
739 { 0.0f, 0.0f, 0.0f, 0.0f },
740 1, 1
741 },
742 // padding (0x3C)
743 {
744 nullptr,
745 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
746 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
747 0, 0, 0, false, false, false, false,
748 { false, false, false, false },
749 { 0.0f, 0.0f, 0.0f, 0.0f },
750 1, 1
751 },
752 // padding (0x3D)
753 {
754 nullptr,
755 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
756 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
757 0, 0, 0, false, false, false, false,
758 { false, false, false, false },
759 { 0.0f, 0.0f, 0.0f, 0.0f },
760 1, 1
761 },
762 // padding (0x3E)
763 {
764 nullptr,
765 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
766 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
767 0, 0, 0, false, false, false, false,
768 { false, false, false, false },
769 { 0.0f, 0.0f, 0.0f, 0.0f },
770 1, 1
771 },
772 // padding (0x3F)
773 {
774 nullptr,
775 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
776 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
777 0, 0, 0, false, false, false, false,
778 { false, false, false, false },
779 { 0.0f, 0.0f, 0.0f, 0.0f },
780 1, 1
781 },
782 // R32G32B32_FLOAT (0x40)
783 {
784 "R32G32B32_FLOAT",
785 { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN },
786 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
787 { 0, 1, 2, 0 }, // Swizzle
788 { 32, 32, 32, 0 }, // Bits per component
789 96, // Bits per element
790 12, // Bytes per element
791 3, // Num components
792 false, // isSRGB
793 false, // isBC
794 false, // isSubsampled
795 false, // isLuminance
796 { false, false, false, false }, // Is normalized?
797 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
798 1, // bcWidth
799 1, // bcHeight
800 },
801
802 // R32G32B32_SINT (0x41)
803 {
804 "R32G32B32_SINT",
805 { SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_UNKNOWN },
806 { 0, 0, 0, 0x1 }, // Defaults for missing components
807 { 0, 1, 2, 0 }, // Swizzle
808 { 32, 32, 32, 0 }, // Bits per component
809 96, // Bits per element
810 12, // Bytes per element
811 3, // Num components
812 false, // isSRGB
813 false, // isBC
814 false, // isSubsampled
815 false, // isLuminance
816 { false, false, false, false }, // Is normalized?
817 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
818 1, // bcWidth
819 1, // bcHeight
820 },
821
822 // R32G32B32_UINT (0x42)
823 {
824 "R32G32B32_UINT",
825 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UNKNOWN },
826 { 0, 0, 0, 0x1 }, // Defaults for missing components
827 { 0, 1, 2, 0 }, // Swizzle
828 { 32, 32, 32, 0 }, // Bits per component
829 96, // Bits per element
830 12, // Bytes per element
831 3, // Num components
832 false, // isSRGB
833 false, // isBC
834 false, // isSubsampled
835 false, // isLuminance
836 { false, false, false, false }, // Is normalized?
837 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
838 1, // bcWidth
839 1, // bcHeight
840 },
841
842 // padding (0x43)
843 {
844 nullptr,
845 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
846 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
847 0, 0, 0, false, false, false, false,
848 { false, false, false, false },
849 { 0.0f, 0.0f, 0.0f, 0.0f },
850 1, 1
851 },
852 // padding (0x44)
853 {
854 nullptr,
855 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
856 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
857 0, 0, 0, false, false, false, false,
858 { false, false, false, false },
859 { 0.0f, 0.0f, 0.0f, 0.0f },
860 1, 1
861 },
862 // R32G32B32_SSCALED (0x45)
863 {
864 "R32G32B32_SSCALED",
865 { SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_UNKNOWN },
866 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
867 { 0, 1, 2, 0 }, // Swizzle
868 { 32, 32, 32, 0 }, // Bits per component
869 96, // Bits per element
870 12, // Bytes per element
871 3, // Num components
872 false, // isSRGB
873 false, // isBC
874 false, // isSubsampled
875 false, // isLuminance
876 { false, false, false, false }, // Is normalized?
877 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
878 1, // bcWidth
879 1, // bcHeight
880 },
881
882 // R32G32B32_USCALED (0x46)
883 {
884 "R32G32B32_USCALED",
885 { SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_UNKNOWN },
886 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
887 { 0, 1, 2, 0 }, // Swizzle
888 { 32, 32, 32, 0 }, // Bits per component
889 96, // Bits per element
890 12, // Bytes per element
891 3, // Num components
892 false, // isSRGB
893 false, // isBC
894 false, // isSubsampled
895 false, // isLuminance
896 { false, false, false, false }, // Is normalized?
897 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
898 1, // bcWidth
899 1, // bcHeight
900 },
901
902 // padding (0x47)
903 {
904 nullptr,
905 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
906 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
907 0, 0, 0, false, false, false, false,
908 { false, false, false, false },
909 { 0.0f, 0.0f, 0.0f, 0.0f },
910 1, 1
911 },
912 // padding (0x48)
913 {
914 nullptr,
915 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
916 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
917 0, 0, 0, false, false, false, false,
918 { false, false, false, false },
919 { 0.0f, 0.0f, 0.0f, 0.0f },
920 1, 1
921 },
922 // padding (0x49)
923 {
924 nullptr,
925 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
926 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
927 0, 0, 0, false, false, false, false,
928 { false, false, false, false },
929 { 0.0f, 0.0f, 0.0f, 0.0f },
930 1, 1
931 },
932 // padding (0x4A)
933 {
934 nullptr,
935 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
936 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
937 0, 0, 0, false, false, false, false,
938 { false, false, false, false },
939 { 0.0f, 0.0f, 0.0f, 0.0f },
940 1, 1
941 },
942 // padding (0x4B)
943 {
944 nullptr,
945 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
946 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
947 0, 0, 0, false, false, false, false,
948 { false, false, false, false },
949 { 0.0f, 0.0f, 0.0f, 0.0f },
950 1, 1
951 },
952 // padding (0x4C)
953 {
954 nullptr,
955 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
956 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
957 0, 0, 0, false, false, false, false,
958 { false, false, false, false },
959 { 0.0f, 0.0f, 0.0f, 0.0f },
960 1, 1
961 },
962 // padding (0x4D)
963 {
964 nullptr,
965 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
966 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
967 0, 0, 0, false, false, false, false,
968 { false, false, false, false },
969 { 0.0f, 0.0f, 0.0f, 0.0f },
970 1, 1
971 },
972 // padding (0x4E)
973 {
974 nullptr,
975 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
976 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
977 0, 0, 0, false, false, false, false,
978 { false, false, false, false },
979 { 0.0f, 0.0f, 0.0f, 0.0f },
980 1, 1
981 },
982 // padding (0x4F)
983 {
984 nullptr,
985 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
986 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
987 0, 0, 0, false, false, false, false,
988 { false, false, false, false },
989 { 0.0f, 0.0f, 0.0f, 0.0f },
990 1, 1
991 },
992 // R32G32B32_SFIXED (0x50)
993 {
994 "R32G32B32_SFIXED",
995 { SWR_TYPE_SFIXED, SWR_TYPE_SFIXED, SWR_TYPE_SFIXED, SWR_TYPE_UNKNOWN },
996 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
997 { 0, 1, 2, 0 }, // Swizzle
998 { 32, 32, 32, 0 }, // Bits per component
999 96, // Bits per element
1000 12, // Bytes per element
1001 3, // Num components
1002 false, // isSRGB
1003 false, // isBC
1004 false, // isSubsampled
1005 false, // isLuminance
1006 { false, false, false, false }, // Is normalized?
1007 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
1008 1, // bcWidth
1009 1, // bcHeight
1010 },
1011
1012 // padding (0x51)
1013 {
1014 nullptr,
1015 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1016 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1017 0, 0, 0, false, false, false, false,
1018 { false, false, false, false },
1019 { 0.0f, 0.0f, 0.0f, 0.0f },
1020 1, 1
1021 },
1022 // padding (0x52)
1023 {
1024 nullptr,
1025 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1026 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1027 0, 0, 0, false, false, false, false,
1028 { false, false, false, false },
1029 { 0.0f, 0.0f, 0.0f, 0.0f },
1030 1, 1
1031 },
1032 // padding (0x53)
1033 {
1034 nullptr,
1035 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1036 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1037 0, 0, 0, false, false, false, false,
1038 { false, false, false, false },
1039 { 0.0f, 0.0f, 0.0f, 0.0f },
1040 1, 1
1041 },
1042 // padding (0x54)
1043 {
1044 nullptr,
1045 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1046 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1047 0, 0, 0, false, false, false, false,
1048 { false, false, false, false },
1049 { 0.0f, 0.0f, 0.0f, 0.0f },
1050 1, 1
1051 },
1052 // padding (0x55)
1053 {
1054 nullptr,
1055 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1056 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1057 0, 0, 0, false, false, false, false,
1058 { false, false, false, false },
1059 { 0.0f, 0.0f, 0.0f, 0.0f },
1060 1, 1
1061 },
1062 // padding (0x56)
1063 {
1064 nullptr,
1065 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1066 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1067 0, 0, 0, false, false, false, false,
1068 { false, false, false, false },
1069 { 0.0f, 0.0f, 0.0f, 0.0f },
1070 1, 1
1071 },
1072 // padding (0x57)
1073 {
1074 nullptr,
1075 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1076 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1077 0, 0, 0, false, false, false, false,
1078 { false, false, false, false },
1079 { 0.0f, 0.0f, 0.0f, 0.0f },
1080 1, 1
1081 },
1082 // padding (0x58)
1083 {
1084 nullptr,
1085 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1086 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1087 0, 0, 0, false, false, false, false,
1088 { false, false, false, false },
1089 { 0.0f, 0.0f, 0.0f, 0.0f },
1090 1, 1
1091 },
1092 // padding (0x59)
1093 {
1094 nullptr,
1095 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1096 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1097 0, 0, 0, false, false, false, false,
1098 { false, false, false, false },
1099 { 0.0f, 0.0f, 0.0f, 0.0f },
1100 1, 1
1101 },
1102 // padding (0x5A)
1103 {
1104 nullptr,
1105 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1106 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1107 0, 0, 0, false, false, false, false,
1108 { false, false, false, false },
1109 { 0.0f, 0.0f, 0.0f, 0.0f },
1110 1, 1
1111 },
1112 // padding (0x5B)
1113 {
1114 nullptr,
1115 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1116 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1117 0, 0, 0, false, false, false, false,
1118 { false, false, false, false },
1119 { 0.0f, 0.0f, 0.0f, 0.0f },
1120 1, 1
1121 },
1122 // padding (0x5C)
1123 {
1124 nullptr,
1125 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1126 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1127 0, 0, 0, false, false, false, false,
1128 { false, false, false, false },
1129 { 0.0f, 0.0f, 0.0f, 0.0f },
1130 1, 1
1131 },
1132 // padding (0x5D)
1133 {
1134 nullptr,
1135 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1136 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1137 0, 0, 0, false, false, false, false,
1138 { false, false, false, false },
1139 { 0.0f, 0.0f, 0.0f, 0.0f },
1140 1, 1
1141 },
1142 // padding (0x5E)
1143 {
1144 nullptr,
1145 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1146 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1147 0, 0, 0, false, false, false, false,
1148 { false, false, false, false },
1149 { 0.0f, 0.0f, 0.0f, 0.0f },
1150 1, 1
1151 },
1152 // padding (0x5F)
1153 {
1154 nullptr,
1155 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1156 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1157 0, 0, 0, false, false, false, false,
1158 { false, false, false, false },
1159 { 0.0f, 0.0f, 0.0f, 0.0f },
1160 1, 1
1161 },
1162 // padding (0x60)
1163 {
1164 nullptr,
1165 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1166 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1167 0, 0, 0, false, false, false, false,
1168 { false, false, false, false },
1169 { 0.0f, 0.0f, 0.0f, 0.0f },
1170 1, 1
1171 },
1172 // padding (0x61)
1173 {
1174 nullptr,
1175 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1176 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1177 0, 0, 0, false, false, false, false,
1178 { false, false, false, false },
1179 { 0.0f, 0.0f, 0.0f, 0.0f },
1180 1, 1
1181 },
1182 // padding (0x62)
1183 {
1184 nullptr,
1185 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1186 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1187 0, 0, 0, false, false, false, false,
1188 { false, false, false, false },
1189 { 0.0f, 0.0f, 0.0f, 0.0f },
1190 1, 1
1191 },
1192 // padding (0x63)
1193 {
1194 nullptr,
1195 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1196 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1197 0, 0, 0, false, false, false, false,
1198 { false, false, false, false },
1199 { 0.0f, 0.0f, 0.0f, 0.0f },
1200 1, 1
1201 },
1202 // padding (0x64)
1203 {
1204 nullptr,
1205 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1206 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1207 0, 0, 0, false, false, false, false,
1208 { false, false, false, false },
1209 { 0.0f, 0.0f, 0.0f, 0.0f },
1210 1, 1
1211 },
1212 // padding (0x65)
1213 {
1214 nullptr,
1215 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1216 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1217 0, 0, 0, false, false, false, false,
1218 { false, false, false, false },
1219 { 0.0f, 0.0f, 0.0f, 0.0f },
1220 1, 1
1221 },
1222 // padding (0x66)
1223 {
1224 nullptr,
1225 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1226 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1227 0, 0, 0, false, false, false, false,
1228 { false, false, false, false },
1229 { 0.0f, 0.0f, 0.0f, 0.0f },
1230 1, 1
1231 },
1232 // padding (0x67)
1233 {
1234 nullptr,
1235 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1236 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1237 0, 0, 0, false, false, false, false,
1238 { false, false, false, false },
1239 { 0.0f, 0.0f, 0.0f, 0.0f },
1240 1, 1
1241 },
1242 // padding (0x68)
1243 {
1244 nullptr,
1245 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1246 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1247 0, 0, 0, false, false, false, false,
1248 { false, false, false, false },
1249 { 0.0f, 0.0f, 0.0f, 0.0f },
1250 1, 1
1251 },
1252 // padding (0x69)
1253 {
1254 nullptr,
1255 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1256 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1257 0, 0, 0, false, false, false, false,
1258 { false, false, false, false },
1259 { 0.0f, 0.0f, 0.0f, 0.0f },
1260 1, 1
1261 },
1262 // padding (0x6A)
1263 {
1264 nullptr,
1265 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1266 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1267 0, 0, 0, false, false, false, false,
1268 { false, false, false, false },
1269 { 0.0f, 0.0f, 0.0f, 0.0f },
1270 1, 1
1271 },
1272 // padding (0x6B)
1273 {
1274 nullptr,
1275 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1276 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1277 0, 0, 0, false, false, false, false,
1278 { false, false, false, false },
1279 { 0.0f, 0.0f, 0.0f, 0.0f },
1280 1, 1
1281 },
1282 // padding (0x6C)
1283 {
1284 nullptr,
1285 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1286 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1287 0, 0, 0, false, false, false, false,
1288 { false, false, false, false },
1289 { 0.0f, 0.0f, 0.0f, 0.0f },
1290 1, 1
1291 },
1292 // padding (0x6D)
1293 {
1294 nullptr,
1295 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1296 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1297 0, 0, 0, false, false, false, false,
1298 { false, false, false, false },
1299 { 0.0f, 0.0f, 0.0f, 0.0f },
1300 1, 1
1301 },
1302 // padding (0x6E)
1303 {
1304 nullptr,
1305 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1306 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1307 0, 0, 0, false, false, false, false,
1308 { false, false, false, false },
1309 { 0.0f, 0.0f, 0.0f, 0.0f },
1310 1, 1
1311 },
1312 // padding (0x6F)
1313 {
1314 nullptr,
1315 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1316 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1317 0, 0, 0, false, false, false, false,
1318 { false, false, false, false },
1319 { 0.0f, 0.0f, 0.0f, 0.0f },
1320 1, 1
1321 },
1322 // padding (0x70)
1323 {
1324 nullptr,
1325 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1326 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1327 0, 0, 0, false, false, false, false,
1328 { false, false, false, false },
1329 { 0.0f, 0.0f, 0.0f, 0.0f },
1330 1, 1
1331 },
1332 // padding (0x71)
1333 {
1334 nullptr,
1335 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1336 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1337 0, 0, 0, false, false, false, false,
1338 { false, false, false, false },
1339 { 0.0f, 0.0f, 0.0f, 0.0f },
1340 1, 1
1341 },
1342 // padding (0x72)
1343 {
1344 nullptr,
1345 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1346 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1347 0, 0, 0, false, false, false, false,
1348 { false, false, false, false },
1349 { 0.0f, 0.0f, 0.0f, 0.0f },
1350 1, 1
1351 },
1352 // padding (0x73)
1353 {
1354 nullptr,
1355 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1356 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1357 0, 0, 0, false, false, false, false,
1358 { false, false, false, false },
1359 { 0.0f, 0.0f, 0.0f, 0.0f },
1360 1, 1
1361 },
1362 // padding (0x74)
1363 {
1364 nullptr,
1365 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1366 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1367 0, 0, 0, false, false, false, false,
1368 { false, false, false, false },
1369 { 0.0f, 0.0f, 0.0f, 0.0f },
1370 1, 1
1371 },
1372 // padding (0x75)
1373 {
1374 nullptr,
1375 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1376 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1377 0, 0, 0, false, false, false, false,
1378 { false, false, false, false },
1379 { 0.0f, 0.0f, 0.0f, 0.0f },
1380 1, 1
1381 },
1382 // padding (0x76)
1383 {
1384 nullptr,
1385 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1386 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1387 0, 0, 0, false, false, false, false,
1388 { false, false, false, false },
1389 { 0.0f, 0.0f, 0.0f, 0.0f },
1390 1, 1
1391 },
1392 // padding (0x77)
1393 {
1394 nullptr,
1395 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1396 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1397 0, 0, 0, false, false, false, false,
1398 { false, false, false, false },
1399 { 0.0f, 0.0f, 0.0f, 0.0f },
1400 1, 1
1401 },
1402 // padding (0x78)
1403 {
1404 nullptr,
1405 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1406 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1407 0, 0, 0, false, false, false, false,
1408 { false, false, false, false },
1409 { 0.0f, 0.0f, 0.0f, 0.0f },
1410 1, 1
1411 },
1412 // padding (0x79)
1413 {
1414 nullptr,
1415 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1416 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1417 0, 0, 0, false, false, false, false,
1418 { false, false, false, false },
1419 { 0.0f, 0.0f, 0.0f, 0.0f },
1420 1, 1
1421 },
1422 // padding (0x7A)
1423 {
1424 nullptr,
1425 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1426 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1427 0, 0, 0, false, false, false, false,
1428 { false, false, false, false },
1429 { 0.0f, 0.0f, 0.0f, 0.0f },
1430 1, 1
1431 },
1432 // padding (0x7B)
1433 {
1434 nullptr,
1435 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1436 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1437 0, 0, 0, false, false, false, false,
1438 { false, false, false, false },
1439 { 0.0f, 0.0f, 0.0f, 0.0f },
1440 1, 1
1441 },
1442 // padding (0x7C)
1443 {
1444 nullptr,
1445 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1446 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1447 0, 0, 0, false, false, false, false,
1448 { false, false, false, false },
1449 { 0.0f, 0.0f, 0.0f, 0.0f },
1450 1, 1
1451 },
1452 // padding (0x7D)
1453 {
1454 nullptr,
1455 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1456 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1457 0, 0, 0, false, false, false, false,
1458 { false, false, false, false },
1459 { 0.0f, 0.0f, 0.0f, 0.0f },
1460 1, 1
1461 },
1462 // padding (0x7E)
1463 {
1464 nullptr,
1465 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1466 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1467 0, 0, 0, false, false, false, false,
1468 { false, false, false, false },
1469 { 0.0f, 0.0f, 0.0f, 0.0f },
1470 1, 1
1471 },
1472 // padding (0x7F)
1473 {
1474 nullptr,
1475 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1476 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1477 0, 0, 0, false, false, false, false,
1478 { false, false, false, false },
1479 { 0.0f, 0.0f, 0.0f, 0.0f },
1480 1, 1
1481 },
1482 // R16G16B16A16_UNORM (0x80)
1483 {
1484 "R16G16B16A16_UNORM",
1485 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
1486 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1487 { 0, 1, 2, 3 }, // Swizzle
1488 { 16, 16, 16, 16 }, // Bits per component
1489 64, // Bits per element
1490 8, // Bytes per element
1491 4, // Num components
1492 false, // isSRGB
1493 false, // isBC
1494 false, // isSubsampled
1495 false, // isLuminance
1496 { true, true, true, true }, // Is normalized?
1497 { 1.0f / 65535.0f, 1.0f / 65535.0f, 1.0f / 65535.0f, 1.0f / 65535.0f }, // To float scale factor
1498 1, // bcWidth
1499 1, // bcHeight
1500 },
1501
1502 // R16G16B16A16_SNORM (0x81)
1503 {
1504 "R16G16B16A16_SNORM",
1505 { SWR_TYPE_SNORM, SWR_TYPE_SNORM, SWR_TYPE_SNORM, SWR_TYPE_SNORM },
1506 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1507 { 0, 1, 2, 3 }, // Swizzle
1508 { 16, 16, 16, 16 }, // Bits per component
1509 64, // Bits per element
1510 8, // Bytes per element
1511 4, // Num components
1512 false, // isSRGB
1513 false, // isBC
1514 false, // isSubsampled
1515 false, // isLuminance
1516 { true, true, true, true }, // Is normalized?
1517 { 1.0f / 32767.0f, 1.0f / 32767.0f, 1.0f / 32767.0f, 1.0f / 32767.0f }, // To float scale factor
1518 1, // bcWidth
1519 1, // bcHeight
1520 },
1521
1522 // R16G16B16A16_SINT (0x82)
1523 {
1524 "R16G16B16A16_SINT",
1525 { SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_SINT },
1526 { 0, 0, 0, 0x1 }, // Defaults for missing components
1527 { 0, 1, 2, 3 }, // Swizzle
1528 { 16, 16, 16, 16 }, // Bits per component
1529 64, // Bits per element
1530 8, // Bytes per element
1531 4, // Num components
1532 false, // isSRGB
1533 false, // isBC
1534 false, // isSubsampled
1535 false, // isLuminance
1536 { false, false, false, false }, // Is normalized?
1537 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
1538 1, // bcWidth
1539 1, // bcHeight
1540 },
1541
1542 // R16G16B16A16_UINT (0x83)
1543 {
1544 "R16G16B16A16_UINT",
1545 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT },
1546 { 0, 0, 0, 0x1 }, // Defaults for missing components
1547 { 0, 1, 2, 3 }, // Swizzle
1548 { 16, 16, 16, 16 }, // Bits per component
1549 64, // Bits per element
1550 8, // Bytes per element
1551 4, // Num components
1552 false, // isSRGB
1553 false, // isBC
1554 false, // isSubsampled
1555 false, // isLuminance
1556 { false, false, false, false }, // Is normalized?
1557 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
1558 1, // bcWidth
1559 1, // bcHeight
1560 },
1561
1562 // R16G16B16A16_FLOAT (0x84)
1563 {
1564 "R16G16B16A16_FLOAT",
1565 { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_FLOAT },
1566 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1567 { 0, 1, 2, 3 }, // Swizzle
1568 { 16, 16, 16, 16 }, // Bits per component
1569 64, // Bits per element
1570 8, // Bytes per element
1571 4, // Num components
1572 false, // isSRGB
1573 false, // isBC
1574 false, // isSubsampled
1575 false, // isLuminance
1576 { false, false, false, false }, // Is normalized?
1577 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
1578 1, // bcWidth
1579 1, // bcHeight
1580 },
1581
1582 // R32G32_FLOAT (0x85)
1583 {
1584 "R32G32_FLOAT",
1585 { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1586 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1587 { 0, 1, 0, 0 }, // Swizzle
1588 { 32, 32, 0, 0 }, // Bits per component
1589 64, // Bits per element
1590 8, // Bytes per element
1591 2, // Num components
1592 false, // isSRGB
1593 false, // isBC
1594 false, // isSubsampled
1595 false, // isLuminance
1596 { false, false, false, false }, // Is normalized?
1597 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
1598 1, // bcWidth
1599 1, // bcHeight
1600 },
1601
1602 // R32G32_SINT (0x86)
1603 {
1604 "R32G32_SINT",
1605 { SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1606 { 0, 0, 0, 0x1 }, // Defaults for missing components
1607 { 0, 1, 0, 0 }, // Swizzle
1608 { 32, 32, 0, 0 }, // Bits per component
1609 64, // Bits per element
1610 8, // Bytes per element
1611 2, // Num components
1612 false, // isSRGB
1613 false, // isBC
1614 false, // isSubsampled
1615 false, // isLuminance
1616 { false, false, false, false }, // Is normalized?
1617 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
1618 1, // bcWidth
1619 1, // bcHeight
1620 },
1621
1622 // R32G32_UINT (0x87)
1623 {
1624 "R32G32_UINT",
1625 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1626 { 0, 0, 0, 0x1 }, // Defaults for missing components
1627 { 0, 1, 0, 0 }, // Swizzle
1628 { 32, 32, 0, 0 }, // Bits per component
1629 64, // Bits per element
1630 8, // Bytes per element
1631 2, // Num components
1632 false, // isSRGB
1633 false, // isBC
1634 false, // isSubsampled
1635 false, // isLuminance
1636 { false, false, false, false }, // Is normalized?
1637 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
1638 1, // bcWidth
1639 1, // bcHeight
1640 },
1641
1642 // R32_FLOAT_X8X24_TYPELESS (0x88)
1643 {
1644 "R32_FLOAT_X8X24_TYPELESS",
1645 { SWR_TYPE_FLOAT, SWR_TYPE_UNUSED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1646 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1647 { 0, 1, 2, 3 }, // Swizzle
1648 { 32, 32, 0, 0 }, // Bits per component
1649 64, // Bits per element
1650 8, // Bytes per element
1651 2, // Num components
1652 false, // isSRGB
1653 false, // isBC
1654 false, // isSubsampled
1655 false, // isLuminance
1656 { false, false, false, false }, // Is normalized?
1657 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
1658 1, // bcWidth
1659 1, // bcHeight
1660 },
1661
1662 // X32_TYPELESS_G8X24_UINT (0x89)
1663 {
1664 "X32_TYPELESS_G8X24_UINT",
1665 { SWR_TYPE_UINT, SWR_TYPE_UNUSED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1666 { 0, 0, 0, 0x1 }, // Defaults for missing components
1667 { 0, 1, 2, 3 }, // Swizzle
1668 { 32, 32, 0, 0 }, // Bits per component
1669 64, // Bits per element
1670 8, // Bytes per element
1671 2, // Num components
1672 false, // isSRGB
1673 false, // isBC
1674 false, // isSubsampled
1675 false, // isLuminance
1676 { false, false, false, false }, // Is normalized?
1677 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
1678 1, // bcWidth
1679 1, // bcHeight
1680 },
1681
1682 // L32A32_FLOAT (0x8A)
1683 {
1684 "L32A32_FLOAT",
1685 { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1686 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1687 { 0, 3, 0, 0 }, // Swizzle
1688 { 32, 32, 0, 0 }, // Bits per component
1689 64, // Bits per element
1690 8, // Bytes per element
1691 2, // Num components
1692 false, // isSRGB
1693 false, // isBC
1694 false, // isSubsampled
1695 true, // isLuminance
1696 { false, false, false, false }, // Is normalized?
1697 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
1698 1, // bcWidth
1699 1, // bcHeight
1700 },
1701
1702 // padding (0x8B)
1703 {
1704 nullptr,
1705 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1706 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1707 0, 0, 0, false, false, false, false,
1708 { false, false, false, false },
1709 { 0.0f, 0.0f, 0.0f, 0.0f },
1710 1, 1
1711 },
1712 // padding (0x8C)
1713 {
1714 nullptr,
1715 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1716 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1717 0, 0, 0, false, false, false, false,
1718 { false, false, false, false },
1719 { 0.0f, 0.0f, 0.0f, 0.0f },
1720 1, 1
1721 },
1722 // padding (0x8D)
1723 {
1724 nullptr,
1725 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1726 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1727 0, 0, 0, false, false, false, false,
1728 { false, false, false, false },
1729 { 0.0f, 0.0f, 0.0f, 0.0f },
1730 1, 1
1731 },
1732 // R16G16B16X16_UNORM (0x8E)
1733 {
1734 "R16G16B16X16_UNORM",
1735 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNUSED },
1736 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1737 { 0, 1, 2, 3 }, // Swizzle
1738 { 16, 16, 16, 16 }, // Bits per component
1739 64, // Bits per element
1740 8, // Bytes per element
1741 4, // Num components
1742 false, // isSRGB
1743 false, // isBC
1744 false, // isSubsampled
1745 false, // isLuminance
1746 { true, true, true, false }, // Is normalized?
1747 { 1.0f / 65535.0f, 1.0f / 65535.0f, 1.0f / 65535.0f, 1.0f }, // To float scale factor
1748 1, // bcWidth
1749 1, // bcHeight
1750 },
1751
1752 // R16G16B16X16_FLOAT (0x8F)
1753 {
1754 "R16G16B16X16_FLOAT",
1755 { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_UNUSED },
1756 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1757 { 0, 1, 2, 3 }, // Swizzle
1758 { 16, 16, 16, 16 }, // Bits per component
1759 64, // Bits per element
1760 8, // Bytes per element
1761 4, // Num components
1762 false, // isSRGB
1763 false, // isBC
1764 false, // isSubsampled
1765 false, // isLuminance
1766 { false, false, false, false }, // Is normalized?
1767 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
1768 1, // bcWidth
1769 1, // bcHeight
1770 },
1771
1772 // padding (0x90)
1773 {
1774 nullptr,
1775 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1776 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1777 0, 0, 0, false, false, false, false,
1778 { false, false, false, false },
1779 { 0.0f, 0.0f, 0.0f, 0.0f },
1780 1, 1
1781 },
1782 // L32X32_FLOAT (0x91)
1783 {
1784 "L32X32_FLOAT",
1785 { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1786 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1787 { 0, 3, 0, 0 }, // Swizzle
1788 { 32, 32, 0, 0 }, // Bits per component
1789 64, // Bits per element
1790 8, // Bytes per element
1791 2, // Num components
1792 false, // isSRGB
1793 false, // isBC
1794 false, // isSubsampled
1795 true, // isLuminance
1796 { false, false, false, false }, // Is normalized?
1797 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
1798 1, // bcWidth
1799 1, // bcHeight
1800 },
1801
1802 // I32X32_FLOAT (0x92)
1803 {
1804 "I32X32_FLOAT",
1805 { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1806 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1807 { 0, 3, 0, 0 }, // Swizzle
1808 { 32, 32, 0, 0 }, // Bits per component
1809 64, // Bits per element
1810 8, // Bytes per element
1811 2, // Num components
1812 false, // isSRGB
1813 false, // isBC
1814 false, // isSubsampled
1815 true, // isLuminance
1816 { false, false, false, false }, // Is normalized?
1817 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
1818 1, // bcWidth
1819 1, // bcHeight
1820 },
1821
1822 // R16G16B16A16_SSCALED (0x93)
1823 {
1824 "R16G16B16A16_SSCALED",
1825 { SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_SSCALED },
1826 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1827 { 0, 1, 2, 3 }, // Swizzle
1828 { 16, 16, 16, 16 }, // Bits per component
1829 64, // Bits per element
1830 8, // Bytes per element
1831 4, // Num components
1832 false, // isSRGB
1833 false, // isBC
1834 false, // isSubsampled
1835 false, // isLuminance
1836 { false, false, false, false }, // Is normalized?
1837 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
1838 1, // bcWidth
1839 1, // bcHeight
1840 },
1841
1842 // R16G16B16A16_USCALED (0x94)
1843 {
1844 "R16G16B16A16_USCALED",
1845 { SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_USCALED },
1846 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1847 { 0, 1, 2, 3 }, // Swizzle
1848 { 16, 16, 16, 16 }, // Bits per component
1849 64, // Bits per element
1850 8, // Bytes per element
1851 4, // Num components
1852 false, // isSRGB
1853 false, // isBC
1854 false, // isSubsampled
1855 false, // isLuminance
1856 { false, false, false, false }, // Is normalized?
1857 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
1858 1, // bcWidth
1859 1, // bcHeight
1860 },
1861
1862 // R32G32_SSCALED (0x95)
1863 {
1864 "R32G32_SSCALED",
1865 { SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1866 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1867 { 0, 1, 0, 0 }, // Swizzle
1868 { 32, 32, 0, 0 }, // Bits per component
1869 64, // Bits per element
1870 8, // Bytes per element
1871 2, // Num components
1872 false, // isSRGB
1873 false, // isBC
1874 false, // isSubsampled
1875 false, // isLuminance
1876 { false, false, false, false }, // Is normalized?
1877 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
1878 1, // bcWidth
1879 1, // bcHeight
1880 },
1881
1882 // R32G32_USCALED (0x96)
1883 {
1884 "R32G32_USCALED",
1885 { SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1886 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1887 { 0, 1, 0, 0 }, // Swizzle
1888 { 32, 32, 0, 0 }, // Bits per component
1889 64, // Bits per element
1890 8, // Bytes per element
1891 2, // Num components
1892 false, // isSRGB
1893 false, // isBC
1894 false, // isSubsampled
1895 false, // isLuminance
1896 { false, false, false, false }, // Is normalized?
1897 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
1898 1, // bcWidth
1899 1, // bcHeight
1900 },
1901
1902 // padding (0x97)
1903 {
1904 nullptr,
1905 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1906 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1907 0, 0, 0, false, false, false, false,
1908 { false, false, false, false },
1909 { 0.0f, 0.0f, 0.0f, 0.0f },
1910 1, 1
1911 },
1912 // padding (0x98)
1913 {
1914 nullptr,
1915 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1916 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1917 0, 0, 0, false, false, false, false,
1918 { false, false, false, false },
1919 { 0.0f, 0.0f, 0.0f, 0.0f },
1920 1, 1
1921 },
1922 // padding (0x99)
1923 {
1924 nullptr,
1925 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1926 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1927 0, 0, 0, false, false, false, false,
1928 { false, false, false, false },
1929 { 0.0f, 0.0f, 0.0f, 0.0f },
1930 1, 1
1931 },
1932 // padding (0x9A)
1933 {
1934 nullptr,
1935 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1936 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1937 0, 0, 0, false, false, false, false,
1938 { false, false, false, false },
1939 { 0.0f, 0.0f, 0.0f, 0.0f },
1940 1, 1
1941 },
1942 // padding (0x9B)
1943 {
1944 nullptr,
1945 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1946 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1947 0, 0, 0, false, false, false, false,
1948 { false, false, false, false },
1949 { 0.0f, 0.0f, 0.0f, 0.0f },
1950 1, 1
1951 },
1952 // padding (0x9C)
1953 {
1954 nullptr,
1955 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1956 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1957 0, 0, 0, false, false, false, false,
1958 { false, false, false, false },
1959 { 0.0f, 0.0f, 0.0f, 0.0f },
1960 1, 1
1961 },
1962 // padding (0x9D)
1963 {
1964 nullptr,
1965 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1966 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1967 0, 0, 0, false, false, false, false,
1968 { false, false, false, false },
1969 { 0.0f, 0.0f, 0.0f, 0.0f },
1970 1, 1
1971 },
1972 // padding (0x9E)
1973 {
1974 nullptr,
1975 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1976 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1977 0, 0, 0, false, false, false, false,
1978 { false, false, false, false },
1979 { 0.0f, 0.0f, 0.0f, 0.0f },
1980 1, 1
1981 },
1982 // padding (0x9F)
1983 {
1984 nullptr,
1985 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1986 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
1987 0, 0, 0, false, false, false, false,
1988 { false, false, false, false },
1989 { 0.0f, 0.0f, 0.0f, 0.0f },
1990 1, 1
1991 },
1992 // R32G32_SFIXED (0xA0)
1993 {
1994 "R32G32_SFIXED",
1995 { SWR_TYPE_SFIXED, SWR_TYPE_SFIXED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
1996 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
1997 { 0, 1, 0, 0 }, // Swizzle
1998 { 32, 32, 0, 0 }, // Bits per component
1999 64, // Bits per element
2000 8, // Bytes per element
2001 2, // Num components
2002 false, // isSRGB
2003 false, // isBC
2004 false, // isSubsampled
2005 false, // isLuminance
2006 { false, false, false, false }, // Is normalized?
2007 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
2008 1, // bcWidth
2009 1, // bcHeight
2010 },
2011
2012 // padding (0xA1)
2013 {
2014 nullptr,
2015 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2016 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2017 0, 0, 0, false, false, false, false,
2018 { false, false, false, false },
2019 { 0.0f, 0.0f, 0.0f, 0.0f },
2020 1, 1
2021 },
2022 // padding (0xA2)
2023 {
2024 nullptr,
2025 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2026 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2027 0, 0, 0, false, false, false, false,
2028 { false, false, false, false },
2029 { 0.0f, 0.0f, 0.0f, 0.0f },
2030 1, 1
2031 },
2032 // padding (0xA3)
2033 {
2034 nullptr,
2035 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2036 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2037 0, 0, 0, false, false, false, false,
2038 { false, false, false, false },
2039 { 0.0f, 0.0f, 0.0f, 0.0f },
2040 1, 1
2041 },
2042 // padding (0xA4)
2043 {
2044 nullptr,
2045 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2046 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2047 0, 0, 0, false, false, false, false,
2048 { false, false, false, false },
2049 { 0.0f, 0.0f, 0.0f, 0.0f },
2050 1, 1
2051 },
2052 // padding (0xA5)
2053 {
2054 nullptr,
2055 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2056 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2057 0, 0, 0, false, false, false, false,
2058 { false, false, false, false },
2059 { 0.0f, 0.0f, 0.0f, 0.0f },
2060 1, 1
2061 },
2062 // padding (0xA6)
2063 {
2064 nullptr,
2065 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2066 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2067 0, 0, 0, false, false, false, false,
2068 { false, false, false, false },
2069 { 0.0f, 0.0f, 0.0f, 0.0f },
2070 1, 1
2071 },
2072 // padding (0xA7)
2073 {
2074 nullptr,
2075 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2076 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2077 0, 0, 0, false, false, false, false,
2078 { false, false, false, false },
2079 { 0.0f, 0.0f, 0.0f, 0.0f },
2080 1, 1
2081 },
2082 // padding (0xA8)
2083 {
2084 nullptr,
2085 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2086 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2087 0, 0, 0, false, false, false, false,
2088 { false, false, false, false },
2089 { 0.0f, 0.0f, 0.0f, 0.0f },
2090 1, 1
2091 },
2092 // padding (0xA9)
2093 {
2094 nullptr,
2095 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2096 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2097 0, 0, 0, false, false, false, false,
2098 { false, false, false, false },
2099 { 0.0f, 0.0f, 0.0f, 0.0f },
2100 1, 1
2101 },
2102 // padding (0xAA)
2103 {
2104 nullptr,
2105 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2106 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2107 0, 0, 0, false, false, false, false,
2108 { false, false, false, false },
2109 { 0.0f, 0.0f, 0.0f, 0.0f },
2110 1, 1
2111 },
2112 // padding (0xAB)
2113 {
2114 nullptr,
2115 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2116 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2117 0, 0, 0, false, false, false, false,
2118 { false, false, false, false },
2119 { 0.0f, 0.0f, 0.0f, 0.0f },
2120 1, 1
2121 },
2122 // padding (0xAC)
2123 {
2124 nullptr,
2125 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2126 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2127 0, 0, 0, false, false, false, false,
2128 { false, false, false, false },
2129 { 0.0f, 0.0f, 0.0f, 0.0f },
2130 1, 1
2131 },
2132 // padding (0xAD)
2133 {
2134 nullptr,
2135 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2136 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2137 0, 0, 0, false, false, false, false,
2138 { false, false, false, false },
2139 { 0.0f, 0.0f, 0.0f, 0.0f },
2140 1, 1
2141 },
2142 // padding (0xAE)
2143 {
2144 nullptr,
2145 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2146 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2147 0, 0, 0, false, false, false, false,
2148 { false, false, false, false },
2149 { 0.0f, 0.0f, 0.0f, 0.0f },
2150 1, 1
2151 },
2152 // padding (0xAF)
2153 {
2154 nullptr,
2155 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2156 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2157 0, 0, 0, false, false, false, false,
2158 { false, false, false, false },
2159 { 0.0f, 0.0f, 0.0f, 0.0f },
2160 1, 1
2161 },
2162 // padding (0xB0)
2163 {
2164 nullptr,
2165 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2166 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2167 0, 0, 0, false, false, false, false,
2168 { false, false, false, false },
2169 { 0.0f, 0.0f, 0.0f, 0.0f },
2170 1, 1
2171 },
2172 // padding (0xB1)
2173 {
2174 nullptr,
2175 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2176 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2177 0, 0, 0, false, false, false, false,
2178 { false, false, false, false },
2179 { 0.0f, 0.0f, 0.0f, 0.0f },
2180 1, 1
2181 },
2182 // padding (0xB2)
2183 {
2184 nullptr,
2185 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2186 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2187 0, 0, 0, false, false, false, false,
2188 { false, false, false, false },
2189 { 0.0f, 0.0f, 0.0f, 0.0f },
2190 1, 1
2191 },
2192 // padding (0xB3)
2193 {
2194 nullptr,
2195 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2196 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2197 0, 0, 0, false, false, false, false,
2198 { false, false, false, false },
2199 { 0.0f, 0.0f, 0.0f, 0.0f },
2200 1, 1
2201 },
2202 // padding (0xB4)
2203 {
2204 nullptr,
2205 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2206 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2207 0, 0, 0, false, false, false, false,
2208 { false, false, false, false },
2209 { 0.0f, 0.0f, 0.0f, 0.0f },
2210 1, 1
2211 },
2212 // padding (0xB5)
2213 {
2214 nullptr,
2215 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2216 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2217 0, 0, 0, false, false, false, false,
2218 { false, false, false, false },
2219 { 0.0f, 0.0f, 0.0f, 0.0f },
2220 1, 1
2221 },
2222 // padding (0xB6)
2223 {
2224 nullptr,
2225 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2226 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2227 0, 0, 0, false, false, false, false,
2228 { false, false, false, false },
2229 { 0.0f, 0.0f, 0.0f, 0.0f },
2230 1, 1
2231 },
2232 // padding (0xB7)
2233 {
2234 nullptr,
2235 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2236 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2237 0, 0, 0, false, false, false, false,
2238 { false, false, false, false },
2239 { 0.0f, 0.0f, 0.0f, 0.0f },
2240 1, 1
2241 },
2242 // padding (0xB8)
2243 {
2244 nullptr,
2245 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2246 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2247 0, 0, 0, false, false, false, false,
2248 { false, false, false, false },
2249 { 0.0f, 0.0f, 0.0f, 0.0f },
2250 1, 1
2251 },
2252 // padding (0xB9)
2253 {
2254 nullptr,
2255 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2256 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2257 0, 0, 0, false, false, false, false,
2258 { false, false, false, false },
2259 { 0.0f, 0.0f, 0.0f, 0.0f },
2260 1, 1
2261 },
2262 // padding (0xBA)
2263 {
2264 nullptr,
2265 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2266 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2267 0, 0, 0, false, false, false, false,
2268 { false, false, false, false },
2269 { 0.0f, 0.0f, 0.0f, 0.0f },
2270 1, 1
2271 },
2272 // padding (0xBB)
2273 {
2274 nullptr,
2275 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2276 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2277 0, 0, 0, false, false, false, false,
2278 { false, false, false, false },
2279 { 0.0f, 0.0f, 0.0f, 0.0f },
2280 1, 1
2281 },
2282 // padding (0xBC)
2283 {
2284 nullptr,
2285 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2286 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2287 0, 0, 0, false, false, false, false,
2288 { false, false, false, false },
2289 { 0.0f, 0.0f, 0.0f, 0.0f },
2290 1, 1
2291 },
2292 // padding (0xBD)
2293 {
2294 nullptr,
2295 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2296 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2297 0, 0, 0, false, false, false, false,
2298 { false, false, false, false },
2299 { 0.0f, 0.0f, 0.0f, 0.0f },
2300 1, 1
2301 },
2302 // padding (0xBE)
2303 {
2304 nullptr,
2305 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2306 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2307 0, 0, 0, false, false, false, false,
2308 { false, false, false, false },
2309 { 0.0f, 0.0f, 0.0f, 0.0f },
2310 1, 1
2311 },
2312 // padding (0xBF)
2313 {
2314 nullptr,
2315 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2316 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2317 0, 0, 0, false, false, false, false,
2318 { false, false, false, false },
2319 { 0.0f, 0.0f, 0.0f, 0.0f },
2320 1, 1
2321 },
2322 // B8G8R8A8_UNORM (0xC0)
2323 {
2324 "B8G8R8A8_UNORM",
2325 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
2326 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2327 { 2, 1, 0, 3 }, // Swizzle
2328 { 8, 8, 8, 8 }, // Bits per component
2329 32, // Bits per element
2330 4, // Bytes per element
2331 4, // Num components
2332 false, // isSRGB
2333 false, // isBC
2334 false, // isSubsampled
2335 false, // isLuminance
2336 { true, true, true, true }, // Is normalized?
2337 { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f }, // To float scale factor
2338 1, // bcWidth
2339 1, // bcHeight
2340 },
2341
2342 // B8G8R8A8_UNORM_SRGB (0xC1)
2343 {
2344 "B8G8R8A8_UNORM_SRGB",
2345 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
2346 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2347 { 2, 1, 0, 3 }, // Swizzle
2348 { 8, 8, 8, 8 }, // Bits per component
2349 32, // Bits per element
2350 4, // Bytes per element
2351 4, // Num components
2352 true, // isSRGB
2353 false, // isBC
2354 false, // isSubsampled
2355 false, // isLuminance
2356 { true, true, true, true }, // Is normalized?
2357 { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f }, // To float scale factor
2358 1, // bcWidth
2359 1, // bcHeight
2360 },
2361
2362 // R10G10B10A2_UNORM (0xC2)
2363 {
2364 "R10G10B10A2_UNORM",
2365 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
2366 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2367 { 0, 1, 2, 3 }, // Swizzle
2368 { 10, 10, 10, 2 }, // Bits per component
2369 32, // Bits per element
2370 4, // Bytes per element
2371 4, // Num components
2372 false, // isSRGB
2373 false, // isBC
2374 false, // isSubsampled
2375 false, // isLuminance
2376 { true, true, true, true }, // Is normalized?
2377 { 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 3.0f }, // To float scale factor
2378 1, // bcWidth
2379 1, // bcHeight
2380 },
2381
2382 // R10G10B10A2_UNORM_SRGB (0xC3)
2383 {
2384 "R10G10B10A2_UNORM_SRGB",
2385 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
2386 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2387 { 0, 1, 2, 3 }, // Swizzle
2388 { 10, 10, 10, 2 }, // Bits per component
2389 32, // Bits per element
2390 4, // Bytes per element
2391 4, // Num components
2392 true, // isSRGB
2393 false, // isBC
2394 false, // isSubsampled
2395 false, // isLuminance
2396 { true, true, true, true }, // Is normalized?
2397 { 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 3.0f }, // To float scale factor
2398 1, // bcWidth
2399 1, // bcHeight
2400 },
2401
2402 // R10G10B10A2_UINT (0xC4)
2403 {
2404 "R10G10B10A2_UINT",
2405 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT },
2406 { 0, 0, 0, 0x1 }, // Defaults for missing components
2407 { 0, 1, 2, 3 }, // Swizzle
2408 { 10, 10, 10, 2 }, // Bits per component
2409 32, // Bits per element
2410 4, // Bytes per element
2411 4, // Num components
2412 false, // isSRGB
2413 false, // isBC
2414 false, // isSubsampled
2415 false, // isLuminance
2416 { false, false, false, false }, // Is normalized?
2417 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
2418 1, // bcWidth
2419 1, // bcHeight
2420 },
2421
2422 // padding (0xC5)
2423 {
2424 nullptr,
2425 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2426 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2427 0, 0, 0, false, false, false, false,
2428 { false, false, false, false },
2429 { 0.0f, 0.0f, 0.0f, 0.0f },
2430 1, 1
2431 },
2432 // padding (0xC6)
2433 {
2434 nullptr,
2435 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2436 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2437 0, 0, 0, false, false, false, false,
2438 { false, false, false, false },
2439 { 0.0f, 0.0f, 0.0f, 0.0f },
2440 1, 1
2441 },
2442 // R8G8B8A8_UNORM (0xC7)
2443 {
2444 "R8G8B8A8_UNORM",
2445 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
2446 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2447 { 0, 1, 2, 3 }, // Swizzle
2448 { 8, 8, 8, 8 }, // Bits per component
2449 32, // Bits per element
2450 4, // Bytes per element
2451 4, // Num components
2452 false, // isSRGB
2453 false, // isBC
2454 false, // isSubsampled
2455 false, // isLuminance
2456 { true, true, true, true }, // Is normalized?
2457 { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f }, // To float scale factor
2458 1, // bcWidth
2459 1, // bcHeight
2460 },
2461
2462 // R8G8B8A8_UNORM_SRGB (0xC8)
2463 {
2464 "R8G8B8A8_UNORM_SRGB",
2465 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
2466 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2467 { 0, 1, 2, 3 }, // Swizzle
2468 { 8, 8, 8, 8 }, // Bits per component
2469 32, // Bits per element
2470 4, // Bytes per element
2471 4, // Num components
2472 true, // isSRGB
2473 false, // isBC
2474 false, // isSubsampled
2475 false, // isLuminance
2476 { true, true, true, true }, // Is normalized?
2477 { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f }, // To float scale factor
2478 1, // bcWidth
2479 1, // bcHeight
2480 },
2481
2482 // R8G8B8A8_SNORM (0xC9)
2483 {
2484 "R8G8B8A8_SNORM",
2485 { SWR_TYPE_SNORM, SWR_TYPE_SNORM, SWR_TYPE_SNORM, SWR_TYPE_SNORM },
2486 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2487 { 0, 1, 2, 3 }, // Swizzle
2488 { 8, 8, 8, 8 }, // Bits per component
2489 32, // Bits per element
2490 4, // Bytes per element
2491 4, // Num components
2492 false, // isSRGB
2493 false, // isBC
2494 false, // isSubsampled
2495 false, // isLuminance
2496 { true, true, true, true }, // Is normalized?
2497 { 1.0f / 127.0f, 1.0f / 127.0f, 1.0f / 127.0f, 1.0f / 127.0f }, // To float scale factor
2498 1, // bcWidth
2499 1, // bcHeight
2500 },
2501
2502 // R8G8B8A8_SINT (0xCA)
2503 {
2504 "R8G8B8A8_SINT",
2505 { SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_SINT },
2506 { 0, 0, 0, 0x1 }, // Defaults for missing components
2507 { 0, 1, 2, 3 }, // Swizzle
2508 { 8, 8, 8, 8 }, // Bits per component
2509 32, // Bits per element
2510 4, // Bytes per element
2511 4, // Num components
2512 false, // isSRGB
2513 false, // isBC
2514 false, // isSubsampled
2515 false, // isLuminance
2516 { false, false, false, false }, // Is normalized?
2517 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
2518 1, // bcWidth
2519 1, // bcHeight
2520 },
2521
2522 // R8G8B8A8_UINT (0xCB)
2523 {
2524 "R8G8B8A8_UINT",
2525 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT },
2526 { 0, 0, 0, 0x1 }, // Defaults for missing components
2527 { 0, 1, 2, 3 }, // Swizzle
2528 { 8, 8, 8, 8 }, // Bits per component
2529 32, // Bits per element
2530 4, // Bytes per element
2531 4, // Num components
2532 false, // isSRGB
2533 false, // isBC
2534 false, // isSubsampled
2535 false, // isLuminance
2536 { false, false, false, false }, // Is normalized?
2537 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
2538 1, // bcWidth
2539 1, // bcHeight
2540 },
2541
2542 // R16G16_UNORM (0xCC)
2543 {
2544 "R16G16_UNORM",
2545 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2546 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2547 { 0, 1, 0, 0 }, // Swizzle
2548 { 16, 16, 0, 0 }, // Bits per component
2549 32, // Bits per element
2550 4, // Bytes per element
2551 2, // Num components
2552 false, // isSRGB
2553 false, // isBC
2554 false, // isSubsampled
2555 false, // isLuminance
2556 { true, true, false, false }, // Is normalized?
2557 { 1.0f / 65535.0f, 1.0f / 65535.0f, 0, 0 }, // To float scale factor
2558 1, // bcWidth
2559 1, // bcHeight
2560 },
2561
2562 // R16G16_SNORM (0xCD)
2563 {
2564 "R16G16_SNORM",
2565 { SWR_TYPE_SNORM, SWR_TYPE_SNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2566 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2567 { 0, 1, 0, 0 }, // Swizzle
2568 { 16, 16, 0, 0 }, // Bits per component
2569 32, // Bits per element
2570 4, // Bytes per element
2571 2, // Num components
2572 false, // isSRGB
2573 false, // isBC
2574 false, // isSubsampled
2575 false, // isLuminance
2576 { true, true, false, false }, // Is normalized?
2577 { 1.0f / 32767.0f, 1.0f / 32767.0f, 0, 0 }, // To float scale factor
2578 1, // bcWidth
2579 1, // bcHeight
2580 },
2581
2582 // R16G16_SINT (0xCE)
2583 {
2584 "R16G16_SINT",
2585 { SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2586 { 0, 0, 0, 0x1 }, // Defaults for missing components
2587 { 0, 1, 0, 0 }, // Swizzle
2588 { 16, 16, 0, 0 }, // Bits per component
2589 32, // Bits per element
2590 4, // Bytes per element
2591 2, // Num components
2592 false, // isSRGB
2593 false, // isBC
2594 false, // isSubsampled
2595 false, // isLuminance
2596 { false, false, false, false }, // Is normalized?
2597 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
2598 1, // bcWidth
2599 1, // bcHeight
2600 },
2601
2602 // R16G16_UINT (0xCF)
2603 {
2604 "R16G16_UINT",
2605 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2606 { 0, 0, 0, 0x1 }, // Defaults for missing components
2607 { 0, 1, 0, 0 }, // Swizzle
2608 { 16, 16, 0, 0 }, // Bits per component
2609 32, // Bits per element
2610 4, // Bytes per element
2611 2, // Num components
2612 false, // isSRGB
2613 false, // isBC
2614 false, // isSubsampled
2615 false, // isLuminance
2616 { false, false, false, false }, // Is normalized?
2617 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
2618 1, // bcWidth
2619 1, // bcHeight
2620 },
2621
2622 // R16G16_FLOAT (0xD0)
2623 {
2624 "R16G16_FLOAT",
2625 { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2626 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2627 { 0, 1, 0, 0 }, // Swizzle
2628 { 16, 16, 0, 0 }, // Bits per component
2629 32, // Bits per element
2630 4, // Bytes per element
2631 2, // Num components
2632 false, // isSRGB
2633 false, // isBC
2634 false, // isSubsampled
2635 false, // isLuminance
2636 { false, false, false, false }, // Is normalized?
2637 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
2638 1, // bcWidth
2639 1, // bcHeight
2640 },
2641
2642 // B10G10R10A2_UNORM (0xD1)
2643 {
2644 "B10G10R10A2_UNORM",
2645 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
2646 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2647 { 2, 1, 0, 3 }, // Swizzle
2648 { 10, 10, 10, 2 }, // Bits per component
2649 32, // Bits per element
2650 4, // Bytes per element
2651 4, // Num components
2652 false, // isSRGB
2653 false, // isBC
2654 false, // isSubsampled
2655 false, // isLuminance
2656 { true, true, true, true }, // Is normalized?
2657 { 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 3.0f }, // To float scale factor
2658 1, // bcWidth
2659 1, // bcHeight
2660 },
2661
2662 // B10G10R10A2_UNORM_SRGB (0xD2)
2663 {
2664 "B10G10R10A2_UNORM_SRGB",
2665 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
2666 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2667 { 2, 1, 0, 3 }, // Swizzle
2668 { 10, 10, 10, 2 }, // Bits per component
2669 32, // Bits per element
2670 4, // Bytes per element
2671 4, // Num components
2672 true, // isSRGB
2673 false, // isBC
2674 false, // isSubsampled
2675 false, // isLuminance
2676 { true, true, true, true }, // Is normalized?
2677 { 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 3.0f }, // To float scale factor
2678 1, // bcWidth
2679 1, // bcHeight
2680 },
2681
2682 // R11G11B10_FLOAT (0xD3)
2683 {
2684 "R11G11B10_FLOAT",
2685 { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN },
2686 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2687 { 0, 1, 2, 0 }, // Swizzle
2688 { 11, 11, 10, 0 }, // Bits per component
2689 32, // Bits per element
2690 4, // Bytes per element
2691 3, // Num components
2692 false, // isSRGB
2693 false, // isBC
2694 false, // isSubsampled
2695 false, // isLuminance
2696 { false, false, false, false }, // Is normalized?
2697 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
2698 1, // bcWidth
2699 1, // bcHeight
2700 },
2701
2702 // padding (0xD4)
2703 {
2704 nullptr,
2705 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2706 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2707 0, 0, 0, false, false, false, false,
2708 { false, false, false, false },
2709 { 0.0f, 0.0f, 0.0f, 0.0f },
2710 1, 1
2711 },
2712 // R10G10B10_FLOAT_A2_UNORM (0xD5)
2713 {
2714 "R10G10B10_FLOAT_A2_UNORM",
2715 { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_FLOAT },
2716 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2717 { 0, 1, 2, 3 }, // Swizzle
2718 { 10, 10, 10, 2 }, // Bits per component
2719 32, // Bits per element
2720 4, // Bytes per element
2721 4, // Num components
2722 false, // isSRGB
2723 false, // isBC
2724 false, // isSubsampled
2725 false, // isLuminance
2726 { false, false, false, false }, // Is normalized?
2727 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
2728 1, // bcWidth
2729 1, // bcHeight
2730 },
2731
2732 // R32_SINT (0xD6)
2733 {
2734 "R32_SINT",
2735 { SWR_TYPE_SINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2736 { 0, 0, 0, 0x1 }, // Defaults for missing components
2737 { 0, 0, 0, 0 }, // Swizzle
2738 { 32, 0, 0, 0 }, // Bits per component
2739 32, // Bits per element
2740 4, // Bytes per element
2741 1, // Num components
2742 false, // isSRGB
2743 false, // isBC
2744 false, // isSubsampled
2745 false, // isLuminance
2746 { false, false, false, false }, // Is normalized?
2747 { 1.0f, 0, 0, 0 }, // To float scale factor
2748 1, // bcWidth
2749 1, // bcHeight
2750 },
2751
2752 // R32_UINT (0xD7)
2753 {
2754 "R32_UINT",
2755 { SWR_TYPE_UINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2756 { 0, 0, 0, 0x1 }, // Defaults for missing components
2757 { 0, 0, 0, 0 }, // Swizzle
2758 { 32, 0, 0, 0 }, // Bits per component
2759 32, // Bits per element
2760 4, // Bytes per element
2761 1, // Num components
2762 false, // isSRGB
2763 false, // isBC
2764 false, // isSubsampled
2765 false, // isLuminance
2766 { false, false, false, false }, // Is normalized?
2767 { 1.0f, 0, 0, 0 }, // To float scale factor
2768 1, // bcWidth
2769 1, // bcHeight
2770 },
2771
2772 // R32_FLOAT (0xD8)
2773 {
2774 "R32_FLOAT",
2775 { SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2776 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2777 { 0, 0, 0, 0 }, // Swizzle
2778 { 32, 0, 0, 0 }, // Bits per component
2779 32, // Bits per element
2780 4, // Bytes per element
2781 1, // Num components
2782 false, // isSRGB
2783 false, // isBC
2784 false, // isSubsampled
2785 false, // isLuminance
2786 { false, false, false, false }, // Is normalized?
2787 { 1.0f, 0, 0, 0 }, // To float scale factor
2788 1, // bcWidth
2789 1, // bcHeight
2790 },
2791
2792 // R24_UNORM_X8_TYPELESS (0xD9)
2793 {
2794 "R24_UNORM_X8_TYPELESS",
2795 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2796 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2797 { 0, 1, 2, 3 }, // Swizzle
2798 { 24, 0, 0, 0 }, // Bits per component
2799 32, // Bits per element
2800 4, // Bytes per element
2801 1, // Num components
2802 false, // isSRGB
2803 false, // isBC
2804 false, // isSubsampled
2805 false, // isLuminance
2806 { true, false, false, false }, // Is normalized?
2807 { 1.0f / 16777215.0f, 0, 0, 0 }, // To float scale factor
2808 1, // bcWidth
2809 1, // bcHeight
2810 },
2811
2812 // X24_TYPELESS_G8_UINT (0xDA)
2813 {
2814 "X24_TYPELESS_G8_UINT",
2815 { SWR_TYPE_UINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2816 { 0, 0, 0, 0x1 }, // Defaults for missing components
2817 { 1, 0, 0, 0 }, // Swizzle
2818 { 32, 0, 0, 0 }, // Bits per component
2819 32, // Bits per element
2820 4, // Bytes per element
2821 1, // Num components
2822 false, // isSRGB
2823 false, // isBC
2824 false, // isSubsampled
2825 false, // isLuminance
2826 { false, false, false, false }, // Is normalized?
2827 { 1.0f, 0, 0, 0 }, // To float scale factor
2828 1, // bcWidth
2829 1, // bcHeight
2830 },
2831
2832 // padding (0xDB)
2833 {
2834 nullptr,
2835 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2836 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2837 0, 0, 0, false, false, false, false,
2838 { false, false, false, false },
2839 { 0.0f, 0.0f, 0.0f, 0.0f },
2840 1, 1
2841 },
2842 // padding (0xDC)
2843 {
2844 nullptr,
2845 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2846 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2847 0, 0, 0, false, false, false, false,
2848 { false, false, false, false },
2849 { 0.0f, 0.0f, 0.0f, 0.0f },
2850 1, 1
2851 },
2852 // L32_UNORM (0xDD)
2853 {
2854 "L32_UNORM",
2855 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2856 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2857 { 0, 0, 0, 0 }, // Swizzle
2858 { 32, 0, 0, 0 }, // Bits per component
2859 32, // Bits per element
2860 4, // Bytes per element
2861 1, // Num components
2862 false, // isSRGB
2863 false, // isBC
2864 false, // isSubsampled
2865 true, // isLuminance
2866 { true, false, false, false }, // Is normalized?
2867 { 1.0f / 4294967295.0f, 0, 0, 0 }, // To float scale factor
2868 1, // bcWidth
2869 1, // bcHeight
2870 },
2871
2872 // padding (0xDE)
2873 {
2874 nullptr,
2875 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2876 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2877 0, 0, 0, false, false, false, false,
2878 { false, false, false, false },
2879 { 0.0f, 0.0f, 0.0f, 0.0f },
2880 1, 1
2881 },
2882 // L16A16_UNORM (0xDF)
2883 {
2884 "L16A16_UNORM",
2885 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2886 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2887 { 0, 3, 0, 0 }, // Swizzle
2888 { 16, 16, 0, 0 }, // Bits per component
2889 32, // Bits per element
2890 4, // Bytes per element
2891 2, // Num components
2892 false, // isSRGB
2893 false, // isBC
2894 false, // isSubsampled
2895 true, // isLuminance
2896 { true, true, false, false }, // Is normalized?
2897 { 1.0f / 65535.0f, 1.0f / 65535.0f, 0, 0 }, // To float scale factor
2898 1, // bcWidth
2899 1, // bcHeight
2900 },
2901
2902 // I24X8_UNORM (0xE0)
2903 {
2904 "I24X8_UNORM",
2905 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2906 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2907 { 0, 3, 0, 0 }, // Swizzle
2908 { 24, 8, 0, 0 }, // Bits per component
2909 32, // Bits per element
2910 4, // Bytes per element
2911 2, // Num components
2912 false, // isSRGB
2913 false, // isBC
2914 false, // isSubsampled
2915 true, // isLuminance
2916 { true, true, false, false }, // Is normalized?
2917 { 1.0f / 16777215.0f, 1.0f / 255.0f, 0, 0 }, // To float scale factor
2918 1, // bcWidth
2919 1, // bcHeight
2920 },
2921
2922 // L24X8_UNORM (0xE1)
2923 {
2924 "L24X8_UNORM",
2925 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2926 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2927 { 0, 3, 0, 0 }, // Swizzle
2928 { 24, 8, 0, 0 }, // Bits per component
2929 32, // Bits per element
2930 4, // Bytes per element
2931 2, // Num components
2932 false, // isSRGB
2933 false, // isBC
2934 false, // isSubsampled
2935 true, // isLuminance
2936 { true, true, false, false }, // Is normalized?
2937 { 1.0f / 16777215.0f, 1.0f / 255.0f, 0, 0 }, // To float scale factor
2938 1, // bcWidth
2939 1, // bcHeight
2940 },
2941
2942 // padding (0xE2)
2943 {
2944 nullptr,
2945 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2946 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
2947 0, 0, 0, false, false, false, false,
2948 { false, false, false, false },
2949 { 0.0f, 0.0f, 0.0f, 0.0f },
2950 1, 1
2951 },
2952 // I32_FLOAT (0xE3)
2953 {
2954 "I32_FLOAT",
2955 { SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2956 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2957 { 0, 0, 0, 0 }, // Swizzle
2958 { 32, 0, 0, 0 }, // Bits per component
2959 32, // Bits per element
2960 4, // Bytes per element
2961 1, // Num components
2962 false, // isSRGB
2963 false, // isBC
2964 false, // isSubsampled
2965 true, // isLuminance
2966 { false, false, false, false }, // Is normalized?
2967 { 1.0f, 0, 0, 0 }, // To float scale factor
2968 1, // bcWidth
2969 1, // bcHeight
2970 },
2971
2972 // L32_FLOAT (0xE4)
2973 {
2974 "L32_FLOAT",
2975 { SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2976 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2977 { 0, 0, 0, 0 }, // Swizzle
2978 { 32, 0, 0, 0 }, // Bits per component
2979 32, // Bits per element
2980 4, // Bytes per element
2981 1, // Num components
2982 false, // isSRGB
2983 false, // isBC
2984 false, // isSubsampled
2985 true, // isLuminance
2986 { false, false, false, false }, // Is normalized?
2987 { 1.0f, 0, 0, 0 }, // To float scale factor
2988 1, // bcWidth
2989 1, // bcHeight
2990 },
2991
2992 // A32_FLOAT (0xE5)
2993 {
2994 "A32_FLOAT",
2995 { SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
2996 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
2997 { 3, 0, 0, 0 }, // Swizzle
2998 { 32, 0, 0, 0 }, // Bits per component
2999 32, // Bits per element
3000 4, // Bytes per element
3001 1, // Num components
3002 false, // isSRGB
3003 false, // isBC
3004 false, // isSubsampled
3005 false, // isLuminance
3006 { false, false, false, false }, // Is normalized?
3007 { 1.0f, 0, 0, 0 }, // To float scale factor
3008 1, // bcWidth
3009 1, // bcHeight
3010 },
3011
3012 // padding (0xE6)
3013 {
3014 nullptr,
3015 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3016 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3017 0, 0, 0, false, false, false, false,
3018 { false, false, false, false },
3019 { 0.0f, 0.0f, 0.0f, 0.0f },
3020 1, 1
3021 },
3022 // padding (0xE7)
3023 {
3024 nullptr,
3025 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3026 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3027 0, 0, 0, false, false, false, false,
3028 { false, false, false, false },
3029 { 0.0f, 0.0f, 0.0f, 0.0f },
3030 1, 1
3031 },
3032 // padding (0xE8)
3033 {
3034 nullptr,
3035 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3036 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3037 0, 0, 0, false, false, false, false,
3038 { false, false, false, false },
3039 { 0.0f, 0.0f, 0.0f, 0.0f },
3040 1, 1
3041 },
3042 // B8G8R8X8_UNORM (0xE9)
3043 {
3044 "B8G8R8X8_UNORM",
3045 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNUSED },
3046 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3047 { 2, 1, 0, 3 }, // Swizzle
3048 { 8, 8, 8, 8 }, // Bits per component
3049 32, // Bits per element
3050 4, // Bytes per element
3051 4, // Num components
3052 false, // isSRGB
3053 false, // isBC
3054 false, // isSubsampled
3055 false, // isLuminance
3056 { true, true, true, false }, // Is normalized?
3057 { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f }, // To float scale factor
3058 1, // bcWidth
3059 1, // bcHeight
3060 },
3061
3062 // B8G8R8X8_UNORM_SRGB (0xEA)
3063 {
3064 "B8G8R8X8_UNORM_SRGB",
3065 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNUSED },
3066 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3067 { 2, 1, 0, 3 }, // Swizzle
3068 { 8, 8, 8, 8 }, // Bits per component
3069 32, // Bits per element
3070 4, // Bytes per element
3071 4, // Num components
3072 true, // isSRGB
3073 false, // isBC
3074 false, // isSubsampled
3075 false, // isLuminance
3076 { true, true, true, false }, // Is normalized?
3077 { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f }, // To float scale factor
3078 1, // bcWidth
3079 1, // bcHeight
3080 },
3081
3082 // R8G8B8X8_UNORM (0xEB)
3083 {
3084 "R8G8B8X8_UNORM",
3085 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNUSED },
3086 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3087 { 0, 1, 2, 3 }, // Swizzle
3088 { 8, 8, 8, 8 }, // Bits per component
3089 32, // Bits per element
3090 4, // Bytes per element
3091 4, // Num components
3092 false, // isSRGB
3093 false, // isBC
3094 false, // isSubsampled
3095 false, // isLuminance
3096 { true, true, true, false }, // Is normalized?
3097 { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f }, // To float scale factor
3098 1, // bcWidth
3099 1, // bcHeight
3100 },
3101
3102 // R8G8B8X8_UNORM_SRGB (0xEC)
3103 {
3104 "R8G8B8X8_UNORM_SRGB",
3105 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNUSED },
3106 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3107 { 0, 1, 2, 3 }, // Swizzle
3108 { 8, 8, 8, 8 }, // Bits per component
3109 32, // Bits per element
3110 4, // Bytes per element
3111 4, // Num components
3112 true, // isSRGB
3113 false, // isBC
3114 false, // isSubsampled
3115 false, // isLuminance
3116 { true, true, true, false }, // Is normalized?
3117 { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 1.0f }, // To float scale factor
3118 1, // bcWidth
3119 1, // bcHeight
3120 },
3121
3122 // R9G9B9E5_SHAREDEXP (0xED)
3123 {
3124 "R9G9B9E5_SHAREDEXP",
3125 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT },
3126 { 0, 0, 0, 0x1 }, // Defaults for missing components
3127 { 0, 1, 2, 3 }, // Swizzle
3128 { 9, 9, 9, 5 }, // Bits per component
3129 32, // Bits per element
3130 4, // Bytes per element
3131 4, // Num components
3132 false, // isSRGB
3133 false, // isBC
3134 false, // isSubsampled
3135 false, // isLuminance
3136 { false, false, false, false }, // Is normalized?
3137 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
3138 1, // bcWidth
3139 1, // bcHeight
3140 },
3141
3142 // B10G10R10X2_UNORM (0xEE)
3143 {
3144 "B10G10R10X2_UNORM",
3145 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNUSED },
3146 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3147 { 2, 1, 0, 3 }, // Swizzle
3148 { 10, 10, 10, 2 }, // Bits per component
3149 32, // Bits per element
3150 4, // Bytes per element
3151 4, // Num components
3152 false, // isSRGB
3153 false, // isBC
3154 false, // isSubsampled
3155 false, // isLuminance
3156 { true, true, true, false }, // Is normalized?
3157 { 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f / 1023.0f, 1.0f }, // To float scale factor
3158 1, // bcWidth
3159 1, // bcHeight
3160 },
3161
3162 // padding (0xEF)
3163 {
3164 nullptr,
3165 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3166 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3167 0, 0, 0, false, false, false, false,
3168 { false, false, false, false },
3169 { 0.0f, 0.0f, 0.0f, 0.0f },
3170 1, 1
3171 },
3172 // L16A16_FLOAT (0xF0)
3173 {
3174 "L16A16_FLOAT",
3175 { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3176 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3177 { 0, 3, 0, 0 }, // Swizzle
3178 { 16, 16, 0, 0 }, // Bits per component
3179 32, // Bits per element
3180 4, // Bytes per element
3181 2, // Num components
3182 false, // isSRGB
3183 false, // isBC
3184 false, // isSubsampled
3185 true, // isLuminance
3186 { false, false, false, false }, // Is normalized?
3187 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
3188 1, // bcWidth
3189 1, // bcHeight
3190 },
3191
3192 // padding (0xF1)
3193 {
3194 nullptr,
3195 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3196 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3197 0, 0, 0, false, false, false, false,
3198 { false, false, false, false },
3199 { 0.0f, 0.0f, 0.0f, 0.0f },
3200 1, 1
3201 },
3202 // padding (0xF2)
3203 {
3204 nullptr,
3205 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3206 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3207 0, 0, 0, false, false, false, false,
3208 { false, false, false, false },
3209 { 0.0f, 0.0f, 0.0f, 0.0f },
3210 1, 1
3211 },
3212 // R10G10B10X2_USCALED (0xF3)
3213 {
3214 "R10G10B10X2_USCALED",
3215 { SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_UNUSED },
3216 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3217 { 0, 1, 2, 3 }, // Swizzle
3218 { 10, 10, 10, 2 }, // Bits per component
3219 32, // Bits per element
3220 4, // Bytes per element
3221 4, // Num components
3222 false, // isSRGB
3223 false, // isBC
3224 false, // isSubsampled
3225 false, // isLuminance
3226 { false, false, false, false }, // Is normalized?
3227 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
3228 1, // bcWidth
3229 1, // bcHeight
3230 },
3231
3232 // R8G8B8A8_SSCALED (0xF4)
3233 {
3234 "R8G8B8A8_SSCALED",
3235 { SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_SSCALED },
3236 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3237 { 0, 1, 2, 3 }, // Swizzle
3238 { 8, 8, 8, 8 }, // Bits per component
3239 32, // Bits per element
3240 4, // Bytes per element
3241 4, // Num components
3242 false, // isSRGB
3243 false, // isBC
3244 false, // isSubsampled
3245 false, // isLuminance
3246 { false, false, false, false }, // Is normalized?
3247 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
3248 1, // bcWidth
3249 1, // bcHeight
3250 },
3251
3252 // R8G8B8A8_USCALED (0xF5)
3253 {
3254 "R8G8B8A8_USCALED",
3255 { SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_USCALED },
3256 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3257 { 0, 1, 2, 3 }, // Swizzle
3258 { 8, 8, 8, 8 }, // Bits per component
3259 32, // Bits per element
3260 4, // Bytes per element
3261 4, // Num components
3262 false, // isSRGB
3263 false, // isBC
3264 false, // isSubsampled
3265 false, // isLuminance
3266 { false, false, false, false }, // Is normalized?
3267 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
3268 1, // bcWidth
3269 1, // bcHeight
3270 },
3271
3272 // R16G16_SSCALED (0xF6)
3273 {
3274 "R16G16_SSCALED",
3275 { SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3276 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3277 { 0, 1, 0, 0 }, // Swizzle
3278 { 16, 16, 0, 0 }, // Bits per component
3279 32, // Bits per element
3280 4, // Bytes per element
3281 2, // Num components
3282 false, // isSRGB
3283 false, // isBC
3284 false, // isSubsampled
3285 false, // isLuminance
3286 { false, false, false, false }, // Is normalized?
3287 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
3288 1, // bcWidth
3289 1, // bcHeight
3290 },
3291
3292 // R16G16_USCALED (0xF7)
3293 {
3294 "R16G16_USCALED",
3295 { SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3296 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3297 { 0, 1, 0, 0 }, // Swizzle
3298 { 16, 16, 0, 0 }, // Bits per component
3299 32, // Bits per element
3300 4, // Bytes per element
3301 2, // Num components
3302 false, // isSRGB
3303 false, // isBC
3304 false, // isSubsampled
3305 false, // isLuminance
3306 { false, false, false, false }, // Is normalized?
3307 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
3308 1, // bcWidth
3309 1, // bcHeight
3310 },
3311
3312 // R32_SSCALED (0xF8)
3313 {
3314 "R32_SSCALED",
3315 { SWR_TYPE_SSCALED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3316 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3317 { 0, 0, 0, 0 }, // Swizzle
3318 { 32, 0, 0, 0 }, // Bits per component
3319 32, // Bits per element
3320 4, // Bytes per element
3321 1, // Num components
3322 false, // isSRGB
3323 false, // isBC
3324 false, // isSubsampled
3325 false, // isLuminance
3326 { false, false, false, false }, // Is normalized?
3327 { 1.0f, 0, 0, 0 }, // To float scale factor
3328 1, // bcWidth
3329 1, // bcHeight
3330 },
3331
3332 // R32_USCALED (0xF9)
3333 {
3334 "R32_USCALED",
3335 { SWR_TYPE_USCALED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3336 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3337 { 0, 0, 0, 0 }, // Swizzle
3338 { 32, 0, 0, 0 }, // Bits per component
3339 32, // Bits per element
3340 4, // Bytes per element
3341 1, // Num components
3342 false, // isSRGB
3343 false, // isBC
3344 false, // isSubsampled
3345 false, // isLuminance
3346 { false, false, false, false }, // Is normalized?
3347 { 1.0f, 0, 0, 0 }, // To float scale factor
3348 1, // bcWidth
3349 1, // bcHeight
3350 },
3351
3352 // padding (0xFA)
3353 {
3354 nullptr,
3355 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3356 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3357 0, 0, 0, false, false, false, false,
3358 { false, false, false, false },
3359 { 0.0f, 0.0f, 0.0f, 0.0f },
3360 1, 1
3361 },
3362 // padding (0xFB)
3363 {
3364 nullptr,
3365 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3366 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3367 0, 0, 0, false, false, false, false,
3368 { false, false, false, false },
3369 { 0.0f, 0.0f, 0.0f, 0.0f },
3370 1, 1
3371 },
3372 // padding (0xFC)
3373 {
3374 nullptr,
3375 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3376 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3377 0, 0, 0, false, false, false, false,
3378 { false, false, false, false },
3379 { 0.0f, 0.0f, 0.0f, 0.0f },
3380 1, 1
3381 },
3382 // padding (0xFD)
3383 {
3384 nullptr,
3385 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3386 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3387 0, 0, 0, false, false, false, false,
3388 { false, false, false, false },
3389 { 0.0f, 0.0f, 0.0f, 0.0f },
3390 1, 1
3391 },
3392 // padding (0xFE)
3393 {
3394 nullptr,
3395 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3396 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3397 0, 0, 0, false, false, false, false,
3398 { false, false, false, false },
3399 { 0.0f, 0.0f, 0.0f, 0.0f },
3400 1, 1
3401 },
3402 // padding (0xFF)
3403 {
3404 nullptr,
3405 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3406 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3407 0, 0, 0, false, false, false, false,
3408 { false, false, false, false },
3409 { 0.0f, 0.0f, 0.0f, 0.0f },
3410 1, 1
3411 },
3412 // B5G6R5_UNORM (0x100)
3413 {
3414 "B5G6R5_UNORM",
3415 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN },
3416 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3417 { 2, 1, 0, 0 }, // Swizzle
3418 { 5, 6, 5, 0 }, // Bits per component
3419 16, // Bits per element
3420 2, // Bytes per element
3421 3, // Num components
3422 false, // isSRGB
3423 false, // isBC
3424 false, // isSubsampled
3425 false, // isLuminance
3426 { true, true, true, false }, // Is normalized?
3427 { 1.0f / 31.0f, 1.0f / 63.0f, 1.0f / 31.0f, 0 }, // To float scale factor
3428 1, // bcWidth
3429 1, // bcHeight
3430 },
3431
3432 // B5G6R5_UNORM_SRGB (0x101)
3433 {
3434 "B5G6R5_UNORM_SRGB",
3435 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN },
3436 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3437 { 2, 1, 0, 0 }, // Swizzle
3438 { 5, 6, 5, 0 }, // Bits per component
3439 16, // Bits per element
3440 2, // Bytes per element
3441 3, // Num components
3442 true, // isSRGB
3443 false, // isBC
3444 false, // isSubsampled
3445 false, // isLuminance
3446 { true, true, true, false }, // Is normalized?
3447 { 1.0f / 31.0f, 1.0f / 63.0f, 1.0f / 31.0f, 0 }, // To float scale factor
3448 1, // bcWidth
3449 1, // bcHeight
3450 },
3451
3452 // B5G5R5A1_UNORM (0x102)
3453 {
3454 "B5G5R5A1_UNORM",
3455 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
3456 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3457 { 2, 1, 0, 3 }, // Swizzle
3458 { 5, 5, 5, 1 }, // Bits per component
3459 16, // Bits per element
3460 2, // Bytes per element
3461 4, // Num components
3462 false, // isSRGB
3463 false, // isBC
3464 false, // isSubsampled
3465 false, // isLuminance
3466 { true, true, true, true }, // Is normalized?
3467 { 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 1.0f }, // To float scale factor
3468 1, // bcWidth
3469 1, // bcHeight
3470 },
3471
3472 // B5G5R5A1_UNORM_SRGB (0x103)
3473 {
3474 "B5G5R5A1_UNORM_SRGB",
3475 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
3476 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3477 { 2, 1, 0, 3 }, // Swizzle
3478 { 5, 5, 5, 1 }, // Bits per component
3479 16, // Bits per element
3480 2, // Bytes per element
3481 4, // Num components
3482 true, // isSRGB
3483 false, // isBC
3484 false, // isSubsampled
3485 false, // isLuminance
3486 { true, true, true, true }, // Is normalized?
3487 { 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 1.0f }, // To float scale factor
3488 1, // bcWidth
3489 1, // bcHeight
3490 },
3491
3492 // B4G4R4A4_UNORM (0x104)
3493 {
3494 "B4G4R4A4_UNORM",
3495 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
3496 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3497 { 2, 1, 0, 3 }, // Swizzle
3498 { 4, 4, 4, 4 }, // Bits per component
3499 16, // Bits per element
3500 2, // Bytes per element
3501 4, // Num components
3502 false, // isSRGB
3503 false, // isBC
3504 false, // isSubsampled
3505 false, // isLuminance
3506 { true, true, true, true }, // Is normalized?
3507 { 1.0f / 15.0f, 1.0f / 15.0f, 1.0f / 15.0f, 1.0f / 15.0f }, // To float scale factor
3508 1, // bcWidth
3509 1, // bcHeight
3510 },
3511
3512 // B4G4R4A4_UNORM_SRGB (0x105)
3513 {
3514 "B4G4R4A4_UNORM_SRGB",
3515 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
3516 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3517 { 2, 1, 0, 3 }, // Swizzle
3518 { 4, 4, 4, 4 }, // Bits per component
3519 16, // Bits per element
3520 2, // Bytes per element
3521 4, // Num components
3522 true, // isSRGB
3523 false, // isBC
3524 false, // isSubsampled
3525 false, // isLuminance
3526 { true, true, true, true }, // Is normalized?
3527 { 1.0f / 15.0f, 1.0f / 15.0f, 1.0f / 15.0f, 1.0f / 15.0f }, // To float scale factor
3528 1, // bcWidth
3529 1, // bcHeight
3530 },
3531
3532 // R8G8_UNORM (0x106)
3533 {
3534 "R8G8_UNORM",
3535 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3536 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3537 { 0, 1, 0, 0 }, // Swizzle
3538 { 8, 8, 0, 0 }, // Bits per component
3539 16, // Bits per element
3540 2, // Bytes per element
3541 2, // Num components
3542 false, // isSRGB
3543 false, // isBC
3544 false, // isSubsampled
3545 false, // isLuminance
3546 { true, true, false, false }, // Is normalized?
3547 { 1.0f / 255.0f, 1.0f / 255.0f, 0, 0 }, // To float scale factor
3548 1, // bcWidth
3549 1, // bcHeight
3550 },
3551
3552 // R8G8_SNORM (0x107)
3553 {
3554 "R8G8_SNORM",
3555 { SWR_TYPE_SNORM, SWR_TYPE_SNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3556 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3557 { 0, 1, 0, 0 }, // Swizzle
3558 { 8, 8, 0, 0 }, // Bits per component
3559 16, // Bits per element
3560 2, // Bytes per element
3561 2, // Num components
3562 false, // isSRGB
3563 false, // isBC
3564 false, // isSubsampled
3565 false, // isLuminance
3566 { true, true, false, false }, // Is normalized?
3567 { 1.0f / 127.0f, 1.0f / 127.0f, 0, 0 }, // To float scale factor
3568 1, // bcWidth
3569 1, // bcHeight
3570 },
3571
3572 // R8G8_SINT (0x108)
3573 {
3574 "R8G8_SINT",
3575 { SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3576 { 0, 0, 0, 0x1 }, // Defaults for missing components
3577 { 0, 1, 0, 0 }, // Swizzle
3578 { 8, 8, 0, 0 }, // Bits per component
3579 16, // Bits per element
3580 2, // Bytes per element
3581 2, // Num components
3582 false, // isSRGB
3583 false, // isBC
3584 false, // isSubsampled
3585 false, // isLuminance
3586 { false, false, false, false }, // Is normalized?
3587 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
3588 1, // bcWidth
3589 1, // bcHeight
3590 },
3591
3592 // R8G8_UINT (0x109)
3593 {
3594 "R8G8_UINT",
3595 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3596 { 0, 0, 0, 0x1 }, // Defaults for missing components
3597 { 0, 1, 0, 0 }, // Swizzle
3598 { 8, 8, 0, 0 }, // Bits per component
3599 16, // Bits per element
3600 2, // Bytes per element
3601 2, // Num components
3602 false, // isSRGB
3603 false, // isBC
3604 false, // isSubsampled
3605 false, // isLuminance
3606 { false, false, false, false }, // Is normalized?
3607 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
3608 1, // bcWidth
3609 1, // bcHeight
3610 },
3611
3612 // R16_UNORM (0x10A)
3613 {
3614 "R16_UNORM",
3615 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3616 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3617 { 0, 0, 0, 0 }, // Swizzle
3618 { 16, 0, 0, 0 }, // Bits per component
3619 16, // Bits per element
3620 2, // Bytes per element
3621 1, // Num components
3622 false, // isSRGB
3623 false, // isBC
3624 false, // isSubsampled
3625 false, // isLuminance
3626 { true, false, false, false }, // Is normalized?
3627 { 1.0f / 65535.0f, 0, 0, 0 }, // To float scale factor
3628 1, // bcWidth
3629 1, // bcHeight
3630 },
3631
3632 // R16_SNORM (0x10B)
3633 {
3634 "R16_SNORM",
3635 { SWR_TYPE_SNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3636 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3637 { 0, 0, 0, 0 }, // Swizzle
3638 { 16, 0, 0, 0 }, // Bits per component
3639 16, // Bits per element
3640 2, // Bytes per element
3641 1, // Num components
3642 false, // isSRGB
3643 false, // isBC
3644 false, // isSubsampled
3645 false, // isLuminance
3646 { true, false, false, false }, // Is normalized?
3647 { 1.0f / 32767.0f, 0, 0, 0 }, // To float scale factor
3648 1, // bcWidth
3649 1, // bcHeight
3650 },
3651
3652 // R16_SINT (0x10C)
3653 {
3654 "R16_SINT",
3655 { SWR_TYPE_SINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3656 { 0, 0, 0, 0x1 }, // Defaults for missing components
3657 { 0, 0, 0, 0 }, // Swizzle
3658 { 16, 0, 0, 0 }, // Bits per component
3659 16, // Bits per element
3660 2, // Bytes per element
3661 1, // Num components
3662 false, // isSRGB
3663 false, // isBC
3664 false, // isSubsampled
3665 false, // isLuminance
3666 { false, false, false, false }, // Is normalized?
3667 { 1.0f, 0, 0, 0 }, // To float scale factor
3668 1, // bcWidth
3669 1, // bcHeight
3670 },
3671
3672 // R16_UINT (0x10D)
3673 {
3674 "R16_UINT",
3675 { SWR_TYPE_UINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3676 { 0, 0, 0, 0x1 }, // Defaults for missing components
3677 { 0, 0, 0, 0 }, // Swizzle
3678 { 16, 0, 0, 0 }, // Bits per component
3679 16, // Bits per element
3680 2, // Bytes per element
3681 1, // Num components
3682 false, // isSRGB
3683 false, // isBC
3684 false, // isSubsampled
3685 false, // isLuminance
3686 { false, false, false, false }, // Is normalized?
3687 { 1.0f, 0, 0, 0 }, // To float scale factor
3688 1, // bcWidth
3689 1, // bcHeight
3690 },
3691
3692 // R16_FLOAT (0x10E)
3693 {
3694 "R16_FLOAT",
3695 { SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3696 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3697 { 0, 0, 0, 0 }, // Swizzle
3698 { 16, 0, 0, 0 }, // Bits per component
3699 16, // Bits per element
3700 2, // Bytes per element
3701 1, // Num components
3702 false, // isSRGB
3703 false, // isBC
3704 false, // isSubsampled
3705 false, // isLuminance
3706 { false, false, false, false }, // Is normalized?
3707 { 1.0f, 0, 0, 0 }, // To float scale factor
3708 1, // bcWidth
3709 1, // bcHeight
3710 },
3711
3712 // padding (0x10F)
3713 {
3714 nullptr,
3715 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3716 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3717 0, 0, 0, false, false, false, false,
3718 { false, false, false, false },
3719 { 0.0f, 0.0f, 0.0f, 0.0f },
3720 1, 1
3721 },
3722 // padding (0x110)
3723 {
3724 nullptr,
3725 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3726 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3727 0, 0, 0, false, false, false, false,
3728 { false, false, false, false },
3729 { 0.0f, 0.0f, 0.0f, 0.0f },
3730 1, 1
3731 },
3732 // I16_UNORM (0x111)
3733 {
3734 "I16_UNORM",
3735 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3736 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3737 { 0, 0, 0, 0 }, // Swizzle
3738 { 16, 0, 0, 0 }, // Bits per component
3739 16, // Bits per element
3740 2, // Bytes per element
3741 1, // Num components
3742 false, // isSRGB
3743 false, // isBC
3744 false, // isSubsampled
3745 true, // isLuminance
3746 { true, false, false, false }, // Is normalized?
3747 { 1.0f / 65535.0f, 0, 0, 0 }, // To float scale factor
3748 1, // bcWidth
3749 1, // bcHeight
3750 },
3751
3752 // L16_UNORM (0x112)
3753 {
3754 "L16_UNORM",
3755 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3756 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3757 { 0, 0, 0, 0 }, // Swizzle
3758 { 16, 0, 0, 0 }, // Bits per component
3759 16, // Bits per element
3760 2, // Bytes per element
3761 1, // Num components
3762 false, // isSRGB
3763 false, // isBC
3764 false, // isSubsampled
3765 true, // isLuminance
3766 { true, false, false, false }, // Is normalized?
3767 { 1.0f / 65535.0f, 0, 0, 0 }, // To float scale factor
3768 1, // bcWidth
3769 1, // bcHeight
3770 },
3771
3772 // A16_UNORM (0x113)
3773 {
3774 "A16_UNORM",
3775 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3776 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3777 { 3, 0, 0, 0 }, // Swizzle
3778 { 16, 0, 0, 0 }, // Bits per component
3779 16, // Bits per element
3780 2, // Bytes per element
3781 1, // Num components
3782 false, // isSRGB
3783 false, // isBC
3784 false, // isSubsampled
3785 false, // isLuminance
3786 { true, false, false, false }, // Is normalized?
3787 { 1.0f / 65535.0f, 0, 0, 0 }, // To float scale factor
3788 1, // bcWidth
3789 1, // bcHeight
3790 },
3791
3792 // L8A8_UNORM (0x114)
3793 {
3794 "L8A8_UNORM",
3795 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3796 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3797 { 0, 3, 0, 0 }, // Swizzle
3798 { 8, 8, 0, 0 }, // Bits per component
3799 16, // Bits per element
3800 2, // Bytes per element
3801 2, // Num components
3802 false, // isSRGB
3803 false, // isBC
3804 false, // isSubsampled
3805 true, // isLuminance
3806 { true, true, false, false }, // Is normalized?
3807 { 1.0f / 255.0f, 1.0f / 255.0f, 0, 0 }, // To float scale factor
3808 1, // bcWidth
3809 1, // bcHeight
3810 },
3811
3812 // I16_FLOAT (0x115)
3813 {
3814 "I16_FLOAT",
3815 { SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3816 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3817 { 0, 0, 0, 0 }, // Swizzle
3818 { 16, 0, 0, 0 }, // Bits per component
3819 16, // Bits per element
3820 2, // Bytes per element
3821 1, // Num components
3822 false, // isSRGB
3823 false, // isBC
3824 false, // isSubsampled
3825 true, // isLuminance
3826 { false, false, false, false }, // Is normalized?
3827 { 1.0f, 0, 0, 0 }, // To float scale factor
3828 1, // bcWidth
3829 1, // bcHeight
3830 },
3831
3832 // L16_FLOAT (0x116)
3833 {
3834 "L16_FLOAT",
3835 { SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3836 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3837 { 0, 0, 0, 0 }, // Swizzle
3838 { 16, 0, 0, 0 }, // Bits per component
3839 16, // Bits per element
3840 2, // Bytes per element
3841 1, // Num components
3842 false, // isSRGB
3843 false, // isBC
3844 false, // isSubsampled
3845 true, // isLuminance
3846 { false, false, false, false }, // Is normalized?
3847 { 1.0f, 0, 0, 0 }, // To float scale factor
3848 1, // bcWidth
3849 1, // bcHeight
3850 },
3851
3852 // A16_FLOAT (0x117)
3853 {
3854 "A16_FLOAT",
3855 { SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3856 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3857 { 3, 0, 0, 0 }, // Swizzle
3858 { 16, 0, 0, 0 }, // Bits per component
3859 16, // Bits per element
3860 2, // Bytes per element
3861 1, // Num components
3862 false, // isSRGB
3863 false, // isBC
3864 false, // isSubsampled
3865 false, // isLuminance
3866 { false, false, false, false }, // Is normalized?
3867 { 1.0f, 0, 0, 0 }, // To float scale factor
3868 1, // bcWidth
3869 1, // bcHeight
3870 },
3871
3872 // L8A8_UNORM_SRGB (0x118)
3873 {
3874 "L8A8_UNORM_SRGB",
3875 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3876 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3877 { 0, 3, 0, 0 }, // Swizzle
3878 { 8, 8, 0, 0 }, // Bits per component
3879 16, // Bits per element
3880 2, // Bytes per element
3881 2, // Num components
3882 true, // isSRGB
3883 false, // isBC
3884 false, // isSubsampled
3885 true, // isLuminance
3886 { true, true, false, false }, // Is normalized?
3887 { 1.0f / 255.0f, 1.0f / 255.0f, 0, 0 }, // To float scale factor
3888 1, // bcWidth
3889 1, // bcHeight
3890 },
3891
3892 // padding (0x119)
3893 {
3894 nullptr,
3895 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3896 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
3897 0, 0, 0, false, false, false, false,
3898 { false, false, false, false },
3899 { 0.0f, 0.0f, 0.0f, 0.0f },
3900 1, 1
3901 },
3902 // B5G5R5X1_UNORM (0x11A)
3903 {
3904 "B5G5R5X1_UNORM",
3905 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNUSED },
3906 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3907 { 2, 1, 0, 3 }, // Swizzle
3908 { 5, 5, 5, 1 }, // Bits per component
3909 16, // Bits per element
3910 2, // Bytes per element
3911 4, // Num components
3912 false, // isSRGB
3913 false, // isBC
3914 false, // isSubsampled
3915 false, // isLuminance
3916 { true, true, true, false }, // Is normalized?
3917 { 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 31.0f, 1.0f }, // To float scale factor
3918 1, // bcWidth
3919 1, // bcHeight
3920 },
3921
3922 // B5G5R5X1_UNORM_SRGB (0x11B)
3923 {
3924 "B5G5R5X1_UNORM_SRGB",
3925 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNUSED },
3926 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3927 { 2, 1, 0, 3 }, // Swizzle
3928 { 5, 5, 5, 1 }, // Bits per component
3929 16, // Bits per element
3930 2, // Bytes per element
3931 4, // Num components
3932 true, // isSRGB
3933 false, // isBC
3934 false, // isSubsampled
3935 false, // isLuminance
3936 { true, true, true, false }, // Is normalized?
3937 { 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 31.0f, 1.0f }, // To float scale factor
3938 1, // bcWidth
3939 1, // bcHeight
3940 },
3941
3942 // R8G8_SSCALED (0x11C)
3943 {
3944 "R8G8_SSCALED",
3945 { SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3946 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3947 { 0, 1, 0, 0 }, // Swizzle
3948 { 8, 8, 0, 0 }, // Bits per component
3949 16, // Bits per element
3950 2, // Bytes per element
3951 2, // Num components
3952 false, // isSRGB
3953 false, // isBC
3954 false, // isSubsampled
3955 false, // isLuminance
3956 { false, false, false, false }, // Is normalized?
3957 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
3958 1, // bcWidth
3959 1, // bcHeight
3960 },
3961
3962 // R8G8_USCALED (0x11D)
3963 {
3964 "R8G8_USCALED",
3965 { SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3966 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3967 { 0, 1, 0, 0 }, // Swizzle
3968 { 8, 8, 0, 0 }, // Bits per component
3969 16, // Bits per element
3970 2, // Bytes per element
3971 2, // Num components
3972 false, // isSRGB
3973 false, // isBC
3974 false, // isSubsampled
3975 false, // isLuminance
3976 { false, false, false, false }, // Is normalized?
3977 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
3978 1, // bcWidth
3979 1, // bcHeight
3980 },
3981
3982 // R16_SSCALED (0x11E)
3983 {
3984 "R16_SSCALED",
3985 { SWR_TYPE_SSCALED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
3986 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
3987 { 0, 0, 0, 0 }, // Swizzle
3988 { 16, 0, 0, 0 }, // Bits per component
3989 16, // Bits per element
3990 2, // Bytes per element
3991 1, // Num components
3992 false, // isSRGB
3993 false, // isBC
3994 false, // isSubsampled
3995 false, // isLuminance
3996 { false, false, false, false }, // Is normalized?
3997 { 1.0f, 0, 0, 0 }, // To float scale factor
3998 1, // bcWidth
3999 1, // bcHeight
4000 },
4001
4002 // R16_USCALED (0x11F)
4003 {
4004 "R16_USCALED",
4005 { SWR_TYPE_USCALED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4006 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
4007 { 0, 0, 0, 0 }, // Swizzle
4008 { 16, 0, 0, 0 }, // Bits per component
4009 16, // Bits per element
4010 2, // Bytes per element
4011 1, // Num components
4012 false, // isSRGB
4013 false, // isBC
4014 false, // isSubsampled
4015 false, // isLuminance
4016 { false, false, false, false }, // Is normalized?
4017 { 1.0f, 0, 0, 0 }, // To float scale factor
4018 1, // bcWidth
4019 1, // bcHeight
4020 },
4021
4022 // padding (0x120)
4023 {
4024 nullptr,
4025 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4026 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4027 0, 0, 0, false, false, false, false,
4028 { false, false, false, false },
4029 { 0.0f, 0.0f, 0.0f, 0.0f },
4030 1, 1
4031 },
4032 // padding (0x121)
4033 {
4034 nullptr,
4035 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4036 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4037 0, 0, 0, false, false, false, false,
4038 { false, false, false, false },
4039 { 0.0f, 0.0f, 0.0f, 0.0f },
4040 1, 1
4041 },
4042 // padding (0x122)
4043 {
4044 nullptr,
4045 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4046 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4047 0, 0, 0, false, false, false, false,
4048 { false, false, false, false },
4049 { 0.0f, 0.0f, 0.0f, 0.0f },
4050 1, 1
4051 },
4052 // padding (0x123)
4053 {
4054 nullptr,
4055 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4056 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4057 0, 0, 0, false, false, false, false,
4058 { false, false, false, false },
4059 { 0.0f, 0.0f, 0.0f, 0.0f },
4060 1, 1
4061 },
4062 // A1B5G5R5_UNORM (0x124)
4063 {
4064 "A1B5G5R5_UNORM",
4065 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
4066 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
4067 { 3, 2, 1, 0 }, // Swizzle
4068 { 1, 5, 5, 5 }, // Bits per component
4069 16, // Bits per element
4070 2, // Bytes per element
4071 4, // Num components
4072 false, // isSRGB
4073 false, // isBC
4074 false, // isSubsampled
4075 false, // isLuminance
4076 { true, true, true, true }, // Is normalized?
4077 { 1.0f / 1.0f, 1.0f / 31.0f, 1.0f / 31.0f, 1.0f / 31.0f }, // To float scale factor
4078 1, // bcWidth
4079 1, // bcHeight
4080 },
4081
4082 // A4B4G4R4_UNORM (0x125)
4083 {
4084 "A4B4G4R4_UNORM",
4085 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM },
4086 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
4087 { 3, 2, 1, 0 }, // Swizzle
4088 { 4, 4, 4, 4 }, // Bits per component
4089 16, // Bits per element
4090 2, // Bytes per element
4091 4, // Num components
4092 false, // isSRGB
4093 false, // isBC
4094 false, // isSubsampled
4095 false, // isLuminance
4096 { true, true, true, true }, // Is normalized?
4097 { 1.0f / 15.0f, 1.0f / 15.0f, 1.0f / 15.0f, 1.0f / 15.0f }, // To float scale factor
4098 1, // bcWidth
4099 1, // bcHeight
4100 },
4101
4102 // L8A8_UINT (0x126)
4103 {
4104 "L8A8_UINT",
4105 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4106 { 0, 0, 0, 0x1 }, // Defaults for missing components
4107 { 0, 3, 0, 0 }, // Swizzle
4108 { 8, 8, 0, 0 }, // Bits per component
4109 16, // Bits per element
4110 2, // Bytes per element
4111 2, // Num components
4112 false, // isSRGB
4113 false, // isBC
4114 false, // isSubsampled
4115 true, // isLuminance
4116 { false, false, false, false }, // Is normalized?
4117 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
4118 1, // bcWidth
4119 1, // bcHeight
4120 },
4121
4122 // L8A8_SINT (0x127)
4123 {
4124 "L8A8_SINT",
4125 { SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4126 { 0, 0, 0, 0x1 }, // Defaults for missing components
4127 { 0, 3, 0, 0 }, // Swizzle
4128 { 8, 8, 0, 0 }, // Bits per component
4129 16, // Bits per element
4130 2, // Bytes per element
4131 2, // Num components
4132 false, // isSRGB
4133 false, // isBC
4134 false, // isSubsampled
4135 true, // isLuminance
4136 { false, false, false, false }, // Is normalized?
4137 { 1.0f, 1.0f, 0, 0 }, // To float scale factor
4138 1, // bcWidth
4139 1, // bcHeight
4140 },
4141
4142 // padding (0x128)
4143 {
4144 nullptr,
4145 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4146 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4147 0, 0, 0, false, false, false, false,
4148 { false, false, false, false },
4149 { 0.0f, 0.0f, 0.0f, 0.0f },
4150 1, 1
4151 },
4152 // padding (0x129)
4153 {
4154 nullptr,
4155 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4156 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4157 0, 0, 0, false, false, false, false,
4158 { false, false, false, false },
4159 { 0.0f, 0.0f, 0.0f, 0.0f },
4160 1, 1
4161 },
4162 // padding (0x12A)
4163 {
4164 nullptr,
4165 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4166 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4167 0, 0, 0, false, false, false, false,
4168 { false, false, false, false },
4169 { 0.0f, 0.0f, 0.0f, 0.0f },
4170 1, 1
4171 },
4172 // padding (0x12B)
4173 {
4174 nullptr,
4175 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4176 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4177 0, 0, 0, false, false, false, false,
4178 { false, false, false, false },
4179 { 0.0f, 0.0f, 0.0f, 0.0f },
4180 1, 1
4181 },
4182 // padding (0x12C)
4183 {
4184 nullptr,
4185 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4186 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4187 0, 0, 0, false, false, false, false,
4188 { false, false, false, false },
4189 { 0.0f, 0.0f, 0.0f, 0.0f },
4190 1, 1
4191 },
4192 // padding (0x12D)
4193 {
4194 nullptr,
4195 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4196 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4197 0, 0, 0, false, false, false, false,
4198 { false, false, false, false },
4199 { 0.0f, 0.0f, 0.0f, 0.0f },
4200 1, 1
4201 },
4202 // padding (0x12E)
4203 {
4204 nullptr,
4205 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4206 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4207 0, 0, 0, false, false, false, false,
4208 { false, false, false, false },
4209 { 0.0f, 0.0f, 0.0f, 0.0f },
4210 1, 1
4211 },
4212 // padding (0x12F)
4213 {
4214 nullptr,
4215 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4216 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4217 0, 0, 0, false, false, false, false,
4218 { false, false, false, false },
4219 { 0.0f, 0.0f, 0.0f, 0.0f },
4220 1, 1
4221 },
4222 // padding (0x130)
4223 {
4224 nullptr,
4225 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4226 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4227 0, 0, 0, false, false, false, false,
4228 { false, false, false, false },
4229 { 0.0f, 0.0f, 0.0f, 0.0f },
4230 1, 1
4231 },
4232 // padding (0x131)
4233 {
4234 nullptr,
4235 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4236 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4237 0, 0, 0, false, false, false, false,
4238 { false, false, false, false },
4239 { 0.0f, 0.0f, 0.0f, 0.0f },
4240 1, 1
4241 },
4242 // padding (0x132)
4243 {
4244 nullptr,
4245 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4246 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4247 0, 0, 0, false, false, false, false,
4248 { false, false, false, false },
4249 { 0.0f, 0.0f, 0.0f, 0.0f },
4250 1, 1
4251 },
4252 // padding (0x133)
4253 {
4254 nullptr,
4255 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4256 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4257 0, 0, 0, false, false, false, false,
4258 { false, false, false, false },
4259 { 0.0f, 0.0f, 0.0f, 0.0f },
4260 1, 1
4261 },
4262 // padding (0x134)
4263 {
4264 nullptr,
4265 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4266 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4267 0, 0, 0, false, false, false, false,
4268 { false, false, false, false },
4269 { 0.0f, 0.0f, 0.0f, 0.0f },
4270 1, 1
4271 },
4272 // padding (0x135)
4273 {
4274 nullptr,
4275 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4276 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4277 0, 0, 0, false, false, false, false,
4278 { false, false, false, false },
4279 { 0.0f, 0.0f, 0.0f, 0.0f },
4280 1, 1
4281 },
4282 // padding (0x136)
4283 {
4284 nullptr,
4285 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4286 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4287 0, 0, 0, false, false, false, false,
4288 { false, false, false, false },
4289 { 0.0f, 0.0f, 0.0f, 0.0f },
4290 1, 1
4291 },
4292 // padding (0x137)
4293 {
4294 nullptr,
4295 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4296 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4297 0, 0, 0, false, false, false, false,
4298 { false, false, false, false },
4299 { 0.0f, 0.0f, 0.0f, 0.0f },
4300 1, 1
4301 },
4302 // padding (0x138)
4303 {
4304 nullptr,
4305 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4306 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4307 0, 0, 0, false, false, false, false,
4308 { false, false, false, false },
4309 { 0.0f, 0.0f, 0.0f, 0.0f },
4310 1, 1
4311 },
4312 // padding (0x139)
4313 {
4314 nullptr,
4315 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4316 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4317 0, 0, 0, false, false, false, false,
4318 { false, false, false, false },
4319 { 0.0f, 0.0f, 0.0f, 0.0f },
4320 1, 1
4321 },
4322 // padding (0x13A)
4323 {
4324 nullptr,
4325 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4326 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4327 0, 0, 0, false, false, false, false,
4328 { false, false, false, false },
4329 { 0.0f, 0.0f, 0.0f, 0.0f },
4330 1, 1
4331 },
4332 // padding (0x13B)
4333 {
4334 nullptr,
4335 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4336 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4337 0, 0, 0, false, false, false, false,
4338 { false, false, false, false },
4339 { 0.0f, 0.0f, 0.0f, 0.0f },
4340 1, 1
4341 },
4342 // padding (0x13C)
4343 {
4344 nullptr,
4345 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4346 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4347 0, 0, 0, false, false, false, false,
4348 { false, false, false, false },
4349 { 0.0f, 0.0f, 0.0f, 0.0f },
4350 1, 1
4351 },
4352 // padding (0x13D)
4353 {
4354 nullptr,
4355 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4356 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4357 0, 0, 0, false, false, false, false,
4358 { false, false, false, false },
4359 { 0.0f, 0.0f, 0.0f, 0.0f },
4360 1, 1
4361 },
4362 // padding (0x13E)
4363 {
4364 nullptr,
4365 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4366 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4367 0, 0, 0, false, false, false, false,
4368 { false, false, false, false },
4369 { 0.0f, 0.0f, 0.0f, 0.0f },
4370 1, 1
4371 },
4372 // padding (0x13F)
4373 {
4374 nullptr,
4375 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4376 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4377 0, 0, 0, false, false, false, false,
4378 { false, false, false, false },
4379 { 0.0f, 0.0f, 0.0f, 0.0f },
4380 1, 1
4381 },
4382 // R8_UNORM (0x140)
4383 {
4384 "R8_UNORM",
4385 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4386 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
4387 { 0, 0, 0, 0 }, // Swizzle
4388 { 8, 0, 0, 0 }, // Bits per component
4389 8, // Bits per element
4390 1, // Bytes per element
4391 1, // Num components
4392 false, // isSRGB
4393 false, // isBC
4394 false, // isSubsampled
4395 false, // isLuminance
4396 { true, false, false, false }, // Is normalized?
4397 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
4398 1, // bcWidth
4399 1, // bcHeight
4400 },
4401
4402 // R8_SNORM (0x141)
4403 {
4404 "R8_SNORM",
4405 { SWR_TYPE_SNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4406 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
4407 { 0, 0, 0, 0 }, // Swizzle
4408 { 8, 0, 0, 0 }, // Bits per component
4409 8, // Bits per element
4410 1, // Bytes per element
4411 1, // Num components
4412 false, // isSRGB
4413 false, // isBC
4414 false, // isSubsampled
4415 false, // isLuminance
4416 { true, false, false, false }, // Is normalized?
4417 { 1.0f / 127.0f, 0, 0, 0 }, // To float scale factor
4418 1, // bcWidth
4419 1, // bcHeight
4420 },
4421
4422 // R8_SINT (0x142)
4423 {
4424 "R8_SINT",
4425 { SWR_TYPE_SINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4426 { 0, 0, 0, 0x1 }, // Defaults for missing components
4427 { 0, 0, 0, 0 }, // Swizzle
4428 { 8, 0, 0, 0 }, // Bits per component
4429 8, // Bits per element
4430 1, // Bytes per element
4431 1, // Num components
4432 false, // isSRGB
4433 false, // isBC
4434 false, // isSubsampled
4435 false, // isLuminance
4436 { false, false, false, false }, // Is normalized?
4437 { 1.0f, 0, 0, 0 }, // To float scale factor
4438 1, // bcWidth
4439 1, // bcHeight
4440 },
4441
4442 // R8_UINT (0x143)
4443 {
4444 "R8_UINT",
4445 { SWR_TYPE_UINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4446 { 0, 0, 0, 0x1 }, // Defaults for missing components
4447 { 0, 0, 0, 0 }, // Swizzle
4448 { 8, 0, 0, 0 }, // Bits per component
4449 8, // Bits per element
4450 1, // Bytes per element
4451 1, // Num components
4452 false, // isSRGB
4453 false, // isBC
4454 false, // isSubsampled
4455 false, // isLuminance
4456 { false, false, false, false }, // Is normalized?
4457 { 1.0f, 0, 0, 0 }, // To float scale factor
4458 1, // bcWidth
4459 1, // bcHeight
4460 },
4461
4462 // A8_UNORM (0x144)
4463 {
4464 "A8_UNORM",
4465 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4466 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
4467 { 3, 0, 0, 0 }, // Swizzle
4468 { 8, 0, 0, 0 }, // Bits per component
4469 8, // Bits per element
4470 1, // Bytes per element
4471 1, // Num components
4472 false, // isSRGB
4473 false, // isBC
4474 false, // isSubsampled
4475 false, // isLuminance
4476 { true, false, false, false }, // Is normalized?
4477 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
4478 1, // bcWidth
4479 1, // bcHeight
4480 },
4481
4482 // I8_UNORM (0x145)
4483 {
4484 "I8_UNORM",
4485 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4486 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
4487 { 0, 0, 0, 0 }, // Swizzle
4488 { 8, 0, 0, 0 }, // Bits per component
4489 8, // Bits per element
4490 1, // Bytes per element
4491 1, // Num components
4492 false, // isSRGB
4493 false, // isBC
4494 false, // isSubsampled
4495 true, // isLuminance
4496 { true, false, false, false }, // Is normalized?
4497 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
4498 1, // bcWidth
4499 1, // bcHeight
4500 },
4501
4502 // L8_UNORM (0x146)
4503 {
4504 "L8_UNORM",
4505 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4506 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
4507 { 0, 0, 0, 0 }, // Swizzle
4508 { 8, 0, 0, 0 }, // Bits per component
4509 8, // Bits per element
4510 1, // Bytes per element
4511 1, // Num components
4512 false, // isSRGB
4513 false, // isBC
4514 false, // isSubsampled
4515 true, // isLuminance
4516 { true, false, false, false }, // Is normalized?
4517 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
4518 1, // bcWidth
4519 1, // bcHeight
4520 },
4521
4522 // padding (0x147)
4523 {
4524 nullptr,
4525 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4526 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4527 0, 0, 0, false, false, false, false,
4528 { false, false, false, false },
4529 { 0.0f, 0.0f, 0.0f, 0.0f },
4530 1, 1
4531 },
4532 // padding (0x148)
4533 {
4534 nullptr,
4535 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4536 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4537 0, 0, 0, false, false, false, false,
4538 { false, false, false, false },
4539 { 0.0f, 0.0f, 0.0f, 0.0f },
4540 1, 1
4541 },
4542 // R8_SSCALED (0x149)
4543 {
4544 "R8_SSCALED",
4545 { SWR_TYPE_SSCALED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4546 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
4547 { 0, 0, 0, 0 }, // Swizzle
4548 { 8, 0, 0, 0 }, // Bits per component
4549 8, // Bits per element
4550 1, // Bytes per element
4551 1, // Num components
4552 false, // isSRGB
4553 false, // isBC
4554 false, // isSubsampled
4555 false, // isLuminance
4556 { false, false, false, false }, // Is normalized?
4557 { 1.0f, 0, 0, 0 }, // To float scale factor
4558 1, // bcWidth
4559 1, // bcHeight
4560 },
4561
4562 // R8_USCALED (0x14A)
4563 {
4564 "R8_USCALED",
4565 { SWR_TYPE_USCALED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4566 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
4567 { 0, 0, 0, 0 }, // Swizzle
4568 { 8, 0, 0, 0 }, // Bits per component
4569 8, // Bits per element
4570 1, // Bytes per element
4571 1, // Num components
4572 false, // isSRGB
4573 false, // isBC
4574 false, // isSubsampled
4575 false, // isLuminance
4576 { false, false, false, false }, // Is normalized?
4577 { 1.0f, 0, 0, 0 }, // To float scale factor
4578 1, // bcWidth
4579 1, // bcHeight
4580 },
4581
4582 // padding (0x14B)
4583 {
4584 nullptr,
4585 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4586 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4587 0, 0, 0, false, false, false, false,
4588 { false, false, false, false },
4589 { 0.0f, 0.0f, 0.0f, 0.0f },
4590 1, 1
4591 },
4592 // L8_UNORM_SRGB (0x14C)
4593 {
4594 "L8_UNORM_SRGB",
4595 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4596 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
4597 { 0, 0, 0, 0 }, // Swizzle
4598 { 8, 0, 0, 0 }, // Bits per component
4599 8, // Bits per element
4600 1, // Bytes per element
4601 1, // Num components
4602 true, // isSRGB
4603 false, // isBC
4604 false, // isSubsampled
4605 true, // isLuminance
4606 { true, false, false, false }, // Is normalized?
4607 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
4608 1, // bcWidth
4609 1, // bcHeight
4610 },
4611
4612 // padding (0x14D)
4613 {
4614 nullptr,
4615 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4616 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4617 0, 0, 0, false, false, false, false,
4618 { false, false, false, false },
4619 { 0.0f, 0.0f, 0.0f, 0.0f },
4620 1, 1
4621 },
4622 // padding (0x14E)
4623 {
4624 nullptr,
4625 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4626 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4627 0, 0, 0, false, false, false, false,
4628 { false, false, false, false },
4629 { 0.0f, 0.0f, 0.0f, 0.0f },
4630 1, 1
4631 },
4632 // padding (0x14F)
4633 {
4634 nullptr,
4635 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4636 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4637 0, 0, 0, false, false, false, false,
4638 { false, false, false, false },
4639 { 0.0f, 0.0f, 0.0f, 0.0f },
4640 1, 1
4641 },
4642 // padding (0x150)
4643 {
4644 nullptr,
4645 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4646 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4647 0, 0, 0, false, false, false, false,
4648 { false, false, false, false },
4649 { 0.0f, 0.0f, 0.0f, 0.0f },
4650 1, 1
4651 },
4652 // padding (0x151)
4653 {
4654 nullptr,
4655 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4656 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4657 0, 0, 0, false, false, false, false,
4658 { false, false, false, false },
4659 { 0.0f, 0.0f, 0.0f, 0.0f },
4660 1, 1
4661 },
4662 // L8_UINT (0x152)
4663 {
4664 "L8_UINT",
4665 { SWR_TYPE_UINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4666 { 0, 0, 0, 0x1 }, // Defaults for missing components
4667 { 0, 0, 0, 0 }, // Swizzle
4668 { 8, 0, 0, 0 }, // Bits per component
4669 8, // Bits per element
4670 1, // Bytes per element
4671 1, // Num components
4672 false, // isSRGB
4673 false, // isBC
4674 false, // isSubsampled
4675 true, // isLuminance
4676 { false, false, false, false }, // Is normalized?
4677 { 1.0f, 0, 0, 0 }, // To float scale factor
4678 1, // bcWidth
4679 1, // bcHeight
4680 },
4681
4682 // L8_SINT (0x153)
4683 {
4684 "L8_SINT",
4685 { SWR_TYPE_SINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4686 { 0, 0, 0, 0x1 }, // Defaults for missing components
4687 { 0, 0, 0, 0 }, // Swizzle
4688 { 8, 0, 0, 0 }, // Bits per component
4689 8, // Bits per element
4690 1, // Bytes per element
4691 1, // Num components
4692 false, // isSRGB
4693 false, // isBC
4694 false, // isSubsampled
4695 true, // isLuminance
4696 { false, false, false, false }, // Is normalized?
4697 { 1.0f, 0, 0, 0 }, // To float scale factor
4698 1, // bcWidth
4699 1, // bcHeight
4700 },
4701
4702 // I8_UINT (0x154)
4703 {
4704 "I8_UINT",
4705 { SWR_TYPE_UINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4706 { 0, 0, 0, 0x1 }, // Defaults for missing components
4707 { 0, 0, 0, 0 }, // Swizzle
4708 { 8, 0, 0, 0 }, // Bits per component
4709 8, // Bits per element
4710 1, // Bytes per element
4711 1, // Num components
4712 false, // isSRGB
4713 false, // isBC
4714 false, // isSubsampled
4715 true, // isLuminance
4716 { false, false, false, false }, // Is normalized?
4717 { 1.0f, 0, 0, 0 }, // To float scale factor
4718 1, // bcWidth
4719 1, // bcHeight
4720 },
4721
4722 // I8_SINT (0x155)
4723 {
4724 "I8_SINT",
4725 { SWR_TYPE_SINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4726 { 0, 0, 0, 0x1 }, // Defaults for missing components
4727 { 0, 0, 0, 0 }, // Swizzle
4728 { 8, 0, 0, 0 }, // Bits per component
4729 8, // Bits per element
4730 1, // Bytes per element
4731 1, // Num components
4732 false, // isSRGB
4733 false, // isBC
4734 false, // isSubsampled
4735 true, // isLuminance
4736 { false, false, false, false }, // Is normalized?
4737 { 1.0f, 0, 0, 0 }, // To float scale factor
4738 1, // bcWidth
4739 1, // bcHeight
4740 },
4741
4742 // padding (0x156)
4743 {
4744 nullptr,
4745 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4746 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4747 0, 0, 0, false, false, false, false,
4748 { false, false, false, false },
4749 { 0.0f, 0.0f, 0.0f, 0.0f },
4750 1, 1
4751 },
4752 // padding (0x157)
4753 {
4754 nullptr,
4755 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4756 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4757 0, 0, 0, false, false, false, false,
4758 { false, false, false, false },
4759 { 0.0f, 0.0f, 0.0f, 0.0f },
4760 1, 1
4761 },
4762 // padding (0x158)
4763 {
4764 nullptr,
4765 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4766 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4767 0, 0, 0, false, false, false, false,
4768 { false, false, false, false },
4769 { 0.0f, 0.0f, 0.0f, 0.0f },
4770 1, 1
4771 },
4772 // padding (0x159)
4773 {
4774 nullptr,
4775 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4776 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4777 0, 0, 0, false, false, false, false,
4778 { false, false, false, false },
4779 { 0.0f, 0.0f, 0.0f, 0.0f },
4780 1, 1
4781 },
4782 // padding (0x15A)
4783 {
4784 nullptr,
4785 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4786 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4787 0, 0, 0, false, false, false, false,
4788 { false, false, false, false },
4789 { 0.0f, 0.0f, 0.0f, 0.0f },
4790 1, 1
4791 },
4792 // padding (0x15B)
4793 {
4794 nullptr,
4795 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4796 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4797 0, 0, 0, false, false, false, false,
4798 { false, false, false, false },
4799 { 0.0f, 0.0f, 0.0f, 0.0f },
4800 1, 1
4801 },
4802 // padding (0x15C)
4803 {
4804 nullptr,
4805 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4806 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4807 0, 0, 0, false, false, false, false,
4808 { false, false, false, false },
4809 { 0.0f, 0.0f, 0.0f, 0.0f },
4810 1, 1
4811 },
4812 // padding (0x15D)
4813 {
4814 nullptr,
4815 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4816 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4817 0, 0, 0, false, false, false, false,
4818 { false, false, false, false },
4819 { 0.0f, 0.0f, 0.0f, 0.0f },
4820 1, 1
4821 },
4822 // padding (0x15E)
4823 {
4824 nullptr,
4825 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4826 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4827 0, 0, 0, false, false, false, false,
4828 { false, false, false, false },
4829 { 0.0f, 0.0f, 0.0f, 0.0f },
4830 1, 1
4831 },
4832 // padding (0x15F)
4833 {
4834 nullptr,
4835 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4836 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4837 0, 0, 0, false, false, false, false,
4838 { false, false, false, false },
4839 { 0.0f, 0.0f, 0.0f, 0.0f },
4840 1, 1
4841 },
4842 // padding (0x160)
4843 {
4844 nullptr,
4845 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4846 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4847 0, 0, 0, false, false, false, false,
4848 { false, false, false, false },
4849 { 0.0f, 0.0f, 0.0f, 0.0f },
4850 1, 1
4851 },
4852 // padding (0x161)
4853 {
4854 nullptr,
4855 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4856 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4857 0, 0, 0, false, false, false, false,
4858 { false, false, false, false },
4859 { 0.0f, 0.0f, 0.0f, 0.0f },
4860 1, 1
4861 },
4862 // padding (0x162)
4863 {
4864 nullptr,
4865 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4866 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4867 0, 0, 0, false, false, false, false,
4868 { false, false, false, false },
4869 { 0.0f, 0.0f, 0.0f, 0.0f },
4870 1, 1
4871 },
4872 // padding (0x163)
4873 {
4874 nullptr,
4875 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4876 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4877 0, 0, 0, false, false, false, false,
4878 { false, false, false, false },
4879 { 0.0f, 0.0f, 0.0f, 0.0f },
4880 1, 1
4881 },
4882 // padding (0x164)
4883 {
4884 nullptr,
4885 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4886 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4887 0, 0, 0, false, false, false, false,
4888 { false, false, false, false },
4889 { 0.0f, 0.0f, 0.0f, 0.0f },
4890 1, 1
4891 },
4892 // padding (0x165)
4893 {
4894 nullptr,
4895 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4896 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4897 0, 0, 0, false, false, false, false,
4898 { false, false, false, false },
4899 { 0.0f, 0.0f, 0.0f, 0.0f },
4900 1, 1
4901 },
4902 // padding (0x166)
4903 {
4904 nullptr,
4905 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4906 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4907 0, 0, 0, false, false, false, false,
4908 { false, false, false, false },
4909 { 0.0f, 0.0f, 0.0f, 0.0f },
4910 1, 1
4911 },
4912 // padding (0x167)
4913 {
4914 nullptr,
4915 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4916 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4917 0, 0, 0, false, false, false, false,
4918 { false, false, false, false },
4919 { 0.0f, 0.0f, 0.0f, 0.0f },
4920 1, 1
4921 },
4922 // padding (0x168)
4923 {
4924 nullptr,
4925 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4926 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4927 0, 0, 0, false, false, false, false,
4928 { false, false, false, false },
4929 { 0.0f, 0.0f, 0.0f, 0.0f },
4930 1, 1
4931 },
4932 // padding (0x169)
4933 {
4934 nullptr,
4935 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4936 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4937 0, 0, 0, false, false, false, false,
4938 { false, false, false, false },
4939 { 0.0f, 0.0f, 0.0f, 0.0f },
4940 1, 1
4941 },
4942 // padding (0x16A)
4943 {
4944 nullptr,
4945 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4946 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4947 0, 0, 0, false, false, false, false,
4948 { false, false, false, false },
4949 { 0.0f, 0.0f, 0.0f, 0.0f },
4950 1, 1
4951 },
4952 // padding (0x16B)
4953 {
4954 nullptr,
4955 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4956 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4957 0, 0, 0, false, false, false, false,
4958 { false, false, false, false },
4959 { 0.0f, 0.0f, 0.0f, 0.0f },
4960 1, 1
4961 },
4962 // padding (0x16C)
4963 {
4964 nullptr,
4965 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4966 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4967 0, 0, 0, false, false, false, false,
4968 { false, false, false, false },
4969 { 0.0f, 0.0f, 0.0f, 0.0f },
4970 1, 1
4971 },
4972 // padding (0x16D)
4973 {
4974 nullptr,
4975 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4976 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4977 0, 0, 0, false, false, false, false,
4978 { false, false, false, false },
4979 { 0.0f, 0.0f, 0.0f, 0.0f },
4980 1, 1
4981 },
4982 // padding (0x16E)
4983 {
4984 nullptr,
4985 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4986 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4987 0, 0, 0, false, false, false, false,
4988 { false, false, false, false },
4989 { 0.0f, 0.0f, 0.0f, 0.0f },
4990 1, 1
4991 },
4992 // padding (0x16F)
4993 {
4994 nullptr,
4995 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
4996 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
4997 0, 0, 0, false, false, false, false,
4998 { false, false, false, false },
4999 { 0.0f, 0.0f, 0.0f, 0.0f },
5000 1, 1
5001 },
5002 // padding (0x170)
5003 {
5004 nullptr,
5005 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5006 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5007 0, 0, 0, false, false, false, false,
5008 { false, false, false, false },
5009 { 0.0f, 0.0f, 0.0f, 0.0f },
5010 1, 1
5011 },
5012 // padding (0x171)
5013 {
5014 nullptr,
5015 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5016 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5017 0, 0, 0, false, false, false, false,
5018 { false, false, false, false },
5019 { 0.0f, 0.0f, 0.0f, 0.0f },
5020 1, 1
5021 },
5022 // padding (0x172)
5023 {
5024 nullptr,
5025 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5026 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5027 0, 0, 0, false, false, false, false,
5028 { false, false, false, false },
5029 { 0.0f, 0.0f, 0.0f, 0.0f },
5030 1, 1
5031 },
5032 // padding (0x173)
5033 {
5034 nullptr,
5035 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5036 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5037 0, 0, 0, false, false, false, false,
5038 { false, false, false, false },
5039 { 0.0f, 0.0f, 0.0f, 0.0f },
5040 1, 1
5041 },
5042 // padding (0x174)
5043 {
5044 nullptr,
5045 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5046 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5047 0, 0, 0, false, false, false, false,
5048 { false, false, false, false },
5049 { 0.0f, 0.0f, 0.0f, 0.0f },
5050 1, 1
5051 },
5052 // padding (0x175)
5053 {
5054 nullptr,
5055 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5056 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5057 0, 0, 0, false, false, false, false,
5058 { false, false, false, false },
5059 { 0.0f, 0.0f, 0.0f, 0.0f },
5060 1, 1
5061 },
5062 // padding (0x176)
5063 {
5064 nullptr,
5065 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5066 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5067 0, 0, 0, false, false, false, false,
5068 { false, false, false, false },
5069 { 0.0f, 0.0f, 0.0f, 0.0f },
5070 1, 1
5071 },
5072 // padding (0x177)
5073 {
5074 nullptr,
5075 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5076 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5077 0, 0, 0, false, false, false, false,
5078 { false, false, false, false },
5079 { 0.0f, 0.0f, 0.0f, 0.0f },
5080 1, 1
5081 },
5082 // padding (0x178)
5083 {
5084 nullptr,
5085 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5086 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5087 0, 0, 0, false, false, false, false,
5088 { false, false, false, false },
5089 { 0.0f, 0.0f, 0.0f, 0.0f },
5090 1, 1
5091 },
5092 // padding (0x179)
5093 {
5094 nullptr,
5095 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5096 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5097 0, 0, 0, false, false, false, false,
5098 { false, false, false, false },
5099 { 0.0f, 0.0f, 0.0f, 0.0f },
5100 1, 1
5101 },
5102 // padding (0x17A)
5103 {
5104 nullptr,
5105 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5106 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5107 0, 0, 0, false, false, false, false,
5108 { false, false, false, false },
5109 { 0.0f, 0.0f, 0.0f, 0.0f },
5110 1, 1
5111 },
5112 // padding (0x17B)
5113 {
5114 nullptr,
5115 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5116 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5117 0, 0, 0, false, false, false, false,
5118 { false, false, false, false },
5119 { 0.0f, 0.0f, 0.0f, 0.0f },
5120 1, 1
5121 },
5122 // padding (0x17C)
5123 {
5124 nullptr,
5125 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5126 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5127 0, 0, 0, false, false, false, false,
5128 { false, false, false, false },
5129 { 0.0f, 0.0f, 0.0f, 0.0f },
5130 1, 1
5131 },
5132 // padding (0x17D)
5133 {
5134 nullptr,
5135 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5136 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5137 0, 0, 0, false, false, false, false,
5138 { false, false, false, false },
5139 { 0.0f, 0.0f, 0.0f, 0.0f },
5140 1, 1
5141 },
5142 // padding (0x17E)
5143 {
5144 nullptr,
5145 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5146 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5147 0, 0, 0, false, false, false, false,
5148 { false, false, false, false },
5149 { 0.0f, 0.0f, 0.0f, 0.0f },
5150 1, 1
5151 },
5152 // padding (0x17F)
5153 {
5154 nullptr,
5155 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5156 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5157 0, 0, 0, false, false, false, false,
5158 { false, false, false, false },
5159 { 0.0f, 0.0f, 0.0f, 0.0f },
5160 1, 1
5161 },
5162 // padding (0x180)
5163 {
5164 nullptr,
5165 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5166 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5167 0, 0, 0, false, false, false, false,
5168 { false, false, false, false },
5169 { 0.0f, 0.0f, 0.0f, 0.0f },
5170 1, 1
5171 },
5172 // padding (0x181)
5173 {
5174 nullptr,
5175 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5176 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5177 0, 0, 0, false, false, false, false,
5178 { false, false, false, false },
5179 { 0.0f, 0.0f, 0.0f, 0.0f },
5180 1, 1
5181 },
5182 // padding (0x182)
5183 {
5184 nullptr,
5185 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5186 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5187 0, 0, 0, false, false, false, false,
5188 { false, false, false, false },
5189 { 0.0f, 0.0f, 0.0f, 0.0f },
5190 1, 1
5191 },
5192 // YCRCB_SWAPUVY (0x183)
5193 {
5194 "YCRCB_SWAPUVY",
5195 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT },
5196 { 0, 0, 0, 0x1 }, // Defaults for missing components
5197 { 0, 1, 2, 3 }, // Swizzle
5198 { 8, 8, 8, 8 }, // Bits per component
5199 32, // Bits per element
5200 4, // Bytes per element
5201 4, // Num components
5202 false, // isSRGB
5203 false, // isBC
5204 true, // isSubsampled
5205 false, // isLuminance
5206 { false, false, false, false }, // Is normalized?
5207 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
5208 2, // bcWidth
5209 1, // bcHeight
5210 },
5211
5212 // padding (0x184)
5213 {
5214 nullptr,
5215 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5216 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5217 0, 0, 0, false, false, false, false,
5218 { false, false, false, false },
5219 { 0.0f, 0.0f, 0.0f, 0.0f },
5220 1, 1
5221 },
5222 // padding (0x185)
5223 {
5224 nullptr,
5225 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5226 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5227 0, 0, 0, false, false, false, false,
5228 { false, false, false, false },
5229 { 0.0f, 0.0f, 0.0f, 0.0f },
5230 1, 1
5231 },
5232 // BC1_UNORM (0x186)
5233 {
5234 "BC1_UNORM",
5235 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5236 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5237 { 0, 1, 2, 3 }, // Swizzle
5238 { 8, 8, 8, 8 }, // Bits per component
5239 64, // Bits per element
5240 8, // Bytes per element
5241 1, // Num components
5242 false, // isSRGB
5243 true, // isBC
5244 false, // isSubsampled
5245 false, // isLuminance
5246 { true, false, false, false }, // Is normalized?
5247 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
5248 4, // bcWidth
5249 4, // bcHeight
5250 },
5251
5252 // BC2_UNORM (0x187)
5253 {
5254 "BC2_UNORM",
5255 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5256 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5257 { 0, 1, 2, 3 }, // Swizzle
5258 { 8, 8, 8, 8 }, // Bits per component
5259 128, // Bits per element
5260 16, // Bytes per element
5261 1, // Num components
5262 false, // isSRGB
5263 true, // isBC
5264 false, // isSubsampled
5265 false, // isLuminance
5266 { true, false, false, false }, // Is normalized?
5267 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
5268 4, // bcWidth
5269 4, // bcHeight
5270 },
5271
5272 // BC3_UNORM (0x188)
5273 {
5274 "BC3_UNORM",
5275 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5276 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5277 { 0, 1, 2, 3 }, // Swizzle
5278 { 8, 8, 8, 8 }, // Bits per component
5279 128, // Bits per element
5280 16, // Bytes per element
5281 1, // Num components
5282 false, // isSRGB
5283 true, // isBC
5284 false, // isSubsampled
5285 false, // isLuminance
5286 { true, false, false, false }, // Is normalized?
5287 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
5288 4, // bcWidth
5289 4, // bcHeight
5290 },
5291
5292 // BC4_UNORM (0x189)
5293 {
5294 "BC4_UNORM",
5295 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5296 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5297 { 0, 1, 2, 3 }, // Swizzle
5298 { 8, 8, 8, 8 }, // Bits per component
5299 64, // Bits per element
5300 8, // Bytes per element
5301 1, // Num components
5302 false, // isSRGB
5303 true, // isBC
5304 false, // isSubsampled
5305 false, // isLuminance
5306 { true, false, false, false }, // Is normalized?
5307 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
5308 4, // bcWidth
5309 4, // bcHeight
5310 },
5311
5312 // BC5_UNORM (0x18A)
5313 {
5314 "BC5_UNORM",
5315 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5316 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5317 { 0, 1, 2, 3 }, // Swizzle
5318 { 8, 8, 8, 8 }, // Bits per component
5319 128, // Bits per element
5320 16, // Bytes per element
5321 1, // Num components
5322 false, // isSRGB
5323 true, // isBC
5324 false, // isSubsampled
5325 false, // isLuminance
5326 { true, false, false, false }, // Is normalized?
5327 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
5328 4, // bcWidth
5329 4, // bcHeight
5330 },
5331
5332 // BC1_UNORM_SRGB (0x18B)
5333 {
5334 "BC1_UNORM_SRGB",
5335 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5336 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5337 { 0, 1, 2, 3 }, // Swizzle
5338 { 8, 8, 8, 8 }, // Bits per component
5339 64, // Bits per element
5340 8, // Bytes per element
5341 1, // Num components
5342 true, // isSRGB
5343 true, // isBC
5344 false, // isSubsampled
5345 false, // isLuminance
5346 { true, false, false, false }, // Is normalized?
5347 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
5348 4, // bcWidth
5349 4, // bcHeight
5350 },
5351
5352 // BC2_UNORM_SRGB (0x18C)
5353 {
5354 "BC2_UNORM_SRGB",
5355 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5356 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5357 { 0, 1, 2, 3 }, // Swizzle
5358 { 8, 8, 8, 8 }, // Bits per component
5359 128, // Bits per element
5360 16, // Bytes per element
5361 1, // Num components
5362 true, // isSRGB
5363 true, // isBC
5364 false, // isSubsampled
5365 false, // isLuminance
5366 { true, false, false, false }, // Is normalized?
5367 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
5368 4, // bcWidth
5369 4, // bcHeight
5370 },
5371
5372 // BC3_UNORM_SRGB (0x18D)
5373 {
5374 "BC3_UNORM_SRGB",
5375 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5376 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5377 { 0, 1, 2, 3 }, // Swizzle
5378 { 8, 8, 8, 8 }, // Bits per component
5379 128, // Bits per element
5380 16, // Bytes per element
5381 1, // Num components
5382 true, // isSRGB
5383 true, // isBC
5384 false, // isSubsampled
5385 false, // isLuminance
5386 { true, false, false, false }, // Is normalized?
5387 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
5388 4, // bcWidth
5389 4, // bcHeight
5390 },
5391
5392 // padding (0x18E)
5393 {
5394 nullptr,
5395 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5396 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5397 0, 0, 0, false, false, false, false,
5398 { false, false, false, false },
5399 { 0.0f, 0.0f, 0.0f, 0.0f },
5400 1, 1
5401 },
5402 // YCRCB_SWAPUV (0x18F)
5403 {
5404 "YCRCB_SWAPUV",
5405 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT },
5406 { 0, 0, 0, 0x1 }, // Defaults for missing components
5407 { 0, 1, 2, 3 }, // Swizzle
5408 { 8, 8, 8, 8 }, // Bits per component
5409 32, // Bits per element
5410 4, // Bytes per element
5411 4, // Num components
5412 false, // isSRGB
5413 false, // isBC
5414 true, // isSubsampled
5415 false, // isLuminance
5416 { false, false, false, false }, // Is normalized?
5417 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
5418 2, // bcWidth
5419 1, // bcHeight
5420 },
5421
5422 // padding (0x190)
5423 {
5424 nullptr,
5425 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5426 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5427 0, 0, 0, false, false, false, false,
5428 { false, false, false, false },
5429 { 0.0f, 0.0f, 0.0f, 0.0f },
5430 1, 1
5431 },
5432 // padding (0x191)
5433 {
5434 nullptr,
5435 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5436 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5437 0, 0, 0, false, false, false, false,
5438 { false, false, false, false },
5439 { 0.0f, 0.0f, 0.0f, 0.0f },
5440 1, 1
5441 },
5442 // padding (0x192)
5443 {
5444 nullptr,
5445 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5446 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5447 0, 0, 0, false, false, false, false,
5448 { false, false, false, false },
5449 { 0.0f, 0.0f, 0.0f, 0.0f },
5450 1, 1
5451 },
5452 // R8G8B8_UNORM (0x193)
5453 {
5454 "R8G8B8_UNORM",
5455 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN },
5456 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5457 { 0, 1, 2, 0 }, // Swizzle
5458 { 8, 8, 8, 0 }, // Bits per component
5459 24, // Bits per element
5460 3, // Bytes per element
5461 3, // Num components
5462 false, // isSRGB
5463 false, // isBC
5464 false, // isSubsampled
5465 false, // isLuminance
5466 { true, true, true, false }, // Is normalized?
5467 { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 0 }, // To float scale factor
5468 1, // bcWidth
5469 1, // bcHeight
5470 },
5471
5472 // R8G8B8_SNORM (0x194)
5473 {
5474 "R8G8B8_SNORM",
5475 { SWR_TYPE_SNORM, SWR_TYPE_SNORM, SWR_TYPE_SNORM, SWR_TYPE_UNKNOWN },
5476 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5477 { 0, 1, 2, 0 }, // Swizzle
5478 { 8, 8, 8, 0 }, // Bits per component
5479 24, // Bits per element
5480 3, // Bytes per element
5481 3, // Num components
5482 false, // isSRGB
5483 false, // isBC
5484 false, // isSubsampled
5485 false, // isLuminance
5486 { true, true, true, false }, // Is normalized?
5487 { 1.0f / 127.0f, 1.0f / 127.0f, 1.0f / 127.0f, 0 }, // To float scale factor
5488 1, // bcWidth
5489 1, // bcHeight
5490 },
5491
5492 // R8G8B8_SSCALED (0x195)
5493 {
5494 "R8G8B8_SSCALED",
5495 { SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_UNKNOWN },
5496 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5497 { 0, 1, 2, 0 }, // Swizzle
5498 { 8, 8, 8, 0 }, // Bits per component
5499 24, // Bits per element
5500 3, // Bytes per element
5501 3, // Num components
5502 false, // isSRGB
5503 false, // isBC
5504 false, // isSubsampled
5505 false, // isLuminance
5506 { false, false, false, false }, // Is normalized?
5507 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
5508 1, // bcWidth
5509 1, // bcHeight
5510 },
5511
5512 // R8G8B8_USCALED (0x196)
5513 {
5514 "R8G8B8_USCALED",
5515 { SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_UNKNOWN },
5516 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5517 { 0, 1, 2, 0 }, // Swizzle
5518 { 8, 8, 8, 0 }, // Bits per component
5519 24, // Bits per element
5520 3, // Bytes per element
5521 3, // Num components
5522 false, // isSRGB
5523 false, // isBC
5524 false, // isSubsampled
5525 false, // isLuminance
5526 { false, false, false, false }, // Is normalized?
5527 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
5528 1, // bcWidth
5529 1, // bcHeight
5530 },
5531
5532 // padding (0x197)
5533 {
5534 nullptr,
5535 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5536 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5537 0, 0, 0, false, false, false, false,
5538 { false, false, false, false },
5539 { 0.0f, 0.0f, 0.0f, 0.0f },
5540 1, 1
5541 },
5542 // padding (0x198)
5543 {
5544 nullptr,
5545 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5546 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5547 0, 0, 0, false, false, false, false,
5548 { false, false, false, false },
5549 { 0.0f, 0.0f, 0.0f, 0.0f },
5550 1, 1
5551 },
5552 // BC4_SNORM (0x199)
5553 {
5554 "BC4_SNORM",
5555 { SWR_TYPE_SNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5556 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5557 { 0, 1, 2, 3 }, // Swizzle
5558 { 8, 8, 8, 8 }, // Bits per component
5559 64, // Bits per element
5560 8, // Bytes per element
5561 1, // Num components
5562 false, // isSRGB
5563 true, // isBC
5564 false, // isSubsampled
5565 false, // isLuminance
5566 { true, false, false, false }, // Is normalized?
5567 { 1.0f / 127.0f, 0, 0, 0 }, // To float scale factor
5568 4, // bcWidth
5569 4, // bcHeight
5570 },
5571
5572 // BC5_SNORM (0x19A)
5573 {
5574 "BC5_SNORM",
5575 { SWR_TYPE_SNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5576 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5577 { 0, 1, 2, 3 }, // Swizzle
5578 { 8, 8, 8, 8 }, // Bits per component
5579 128, // Bits per element
5580 16, // Bytes per element
5581 1, // Num components
5582 false, // isSRGB
5583 true, // isBC
5584 false, // isSubsampled
5585 false, // isLuminance
5586 { true, false, false, false }, // Is normalized?
5587 { 1.0f / 127.0f, 0, 0, 0 }, // To float scale factor
5588 4, // bcWidth
5589 4, // bcHeight
5590 },
5591
5592 // R16G16B16_FLOAT (0x19B)
5593 {
5594 "R16G16B16_FLOAT",
5595 { SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_FLOAT, SWR_TYPE_UNKNOWN },
5596 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5597 { 0, 1, 2, 0 }, // Swizzle
5598 { 16, 16, 16, 0 }, // Bits per component
5599 48, // Bits per element
5600 6, // Bytes per element
5601 3, // Num components
5602 false, // isSRGB
5603 false, // isBC
5604 false, // isSubsampled
5605 false, // isLuminance
5606 { false, false, false, false }, // Is normalized?
5607 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
5608 1, // bcWidth
5609 1, // bcHeight
5610 },
5611
5612 // R16G16B16_UNORM (0x19C)
5613 {
5614 "R16G16B16_UNORM",
5615 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN },
5616 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5617 { 0, 1, 2, 0 }, // Swizzle
5618 { 16, 16, 16, 0 }, // Bits per component
5619 48, // Bits per element
5620 6, // Bytes per element
5621 3, // Num components
5622 false, // isSRGB
5623 false, // isBC
5624 false, // isSubsampled
5625 false, // isLuminance
5626 { true, true, true, false }, // Is normalized?
5627 { 1.0f / 65535.0f, 1.0f / 65535.0f, 1.0f / 65535.0f, 0 }, // To float scale factor
5628 1, // bcWidth
5629 1, // bcHeight
5630 },
5631
5632 // R16G16B16_SNORM (0x19D)
5633 {
5634 "R16G16B16_SNORM",
5635 { SWR_TYPE_SNORM, SWR_TYPE_SNORM, SWR_TYPE_SNORM, SWR_TYPE_UNKNOWN },
5636 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5637 { 0, 1, 2, 0 }, // Swizzle
5638 { 16, 16, 16, 0 }, // Bits per component
5639 48, // Bits per element
5640 6, // Bytes per element
5641 3, // Num components
5642 false, // isSRGB
5643 false, // isBC
5644 false, // isSubsampled
5645 false, // isLuminance
5646 { true, true, true, false }, // Is normalized?
5647 { 1.0f / 32767.0f, 1.0f / 32767.0f, 1.0f / 32767.0f, 0 }, // To float scale factor
5648 1, // bcWidth
5649 1, // bcHeight
5650 },
5651
5652 // R16G16B16_SSCALED (0x19E)
5653 {
5654 "R16G16B16_SSCALED",
5655 { SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_UNKNOWN },
5656 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5657 { 0, 1, 2, 0 }, // Swizzle
5658 { 16, 16, 16, 0 }, // Bits per component
5659 48, // Bits per element
5660 6, // Bytes per element
5661 3, // Num components
5662 false, // isSRGB
5663 false, // isBC
5664 false, // isSubsampled
5665 false, // isLuminance
5666 { false, false, false, false }, // Is normalized?
5667 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
5668 1, // bcWidth
5669 1, // bcHeight
5670 },
5671
5672 // R16G16B16_USCALED (0x19F)
5673 {
5674 "R16G16B16_USCALED",
5675 { SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_UNKNOWN },
5676 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5677 { 0, 1, 2, 0 }, // Swizzle
5678 { 16, 16, 16, 0 }, // Bits per component
5679 48, // Bits per element
5680 6, // Bytes per element
5681 3, // Num components
5682 false, // isSRGB
5683 false, // isBC
5684 false, // isSubsampled
5685 false, // isLuminance
5686 { false, false, false, false }, // Is normalized?
5687 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
5688 1, // bcWidth
5689 1, // bcHeight
5690 },
5691
5692 // padding (0x1A0)
5693 {
5694 nullptr,
5695 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5696 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5697 0, 0, 0, false, false, false, false,
5698 { false, false, false, false },
5699 { 0.0f, 0.0f, 0.0f, 0.0f },
5700 1, 1
5701 },
5702 // BC6H_SF16 (0x1A1)
5703 {
5704 "BC6H_SF16",
5705 { SWR_TYPE_SNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5706 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5707 { 0, 1, 2, 3 }, // Swizzle
5708 { 8, 8, 8, 8 }, // Bits per component
5709 128, // Bits per element
5710 16, // Bytes per element
5711 1, // Num components
5712 false, // isSRGB
5713 true, // isBC
5714 false, // isSubsampled
5715 false, // isLuminance
5716 { true, false, false, false }, // Is normalized?
5717 { 1.0f / 127.0f, 0, 0, 0 }, // To float scale factor
5718 4, // bcWidth
5719 4, // bcHeight
5720 },
5721
5722 // BC7_UNORM (0x1A2)
5723 {
5724 "BC7_UNORM",
5725 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5726 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5727 { 0, 1, 2, 3 }, // Swizzle
5728 { 8, 8, 8, 8 }, // Bits per component
5729 128, // Bits per element
5730 16, // Bytes per element
5731 1, // Num components
5732 false, // isSRGB
5733 true, // isBC
5734 false, // isSubsampled
5735 false, // isLuminance
5736 { true, false, false, false }, // Is normalized?
5737 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
5738 4, // bcWidth
5739 4, // bcHeight
5740 },
5741
5742 // BC7_UNORM_SRGB (0x1A3)
5743 {
5744 "BC7_UNORM_SRGB",
5745 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5746 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5747 { 0, 1, 2, 3 }, // Swizzle
5748 { 8, 8, 8, 8 }, // Bits per component
5749 128, // Bits per element
5750 16, // Bytes per element
5751 1, // Num components
5752 true, // isSRGB
5753 true, // isBC
5754 false, // isSubsampled
5755 false, // isLuminance
5756 { true, false, false, false }, // Is normalized?
5757 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
5758 4, // bcWidth
5759 4, // bcHeight
5760 },
5761
5762 // BC6H_UF16 (0x1A4)
5763 {
5764 "BC6H_UF16",
5765 { SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5766 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5767 { 0, 1, 2, 3 }, // Swizzle
5768 { 8, 8, 8, 8 }, // Bits per component
5769 128, // Bits per element
5770 16, // Bytes per element
5771 1, // Num components
5772 false, // isSRGB
5773 true, // isBC
5774 false, // isSubsampled
5775 false, // isLuminance
5776 { true, false, false, false }, // Is normalized?
5777 { 1.0f / 255.0f, 0, 0, 0 }, // To float scale factor
5778 4, // bcWidth
5779 4, // bcHeight
5780 },
5781
5782 // padding (0x1A5)
5783 {
5784 nullptr,
5785 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5786 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5787 0, 0, 0, false, false, false, false,
5788 { false, false, false, false },
5789 { 0.0f, 0.0f, 0.0f, 0.0f },
5790 1, 1
5791 },
5792 // padding (0x1A6)
5793 {
5794 nullptr,
5795 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5796 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5797 0, 0, 0, false, false, false, false,
5798 { false, false, false, false },
5799 { 0.0f, 0.0f, 0.0f, 0.0f },
5800 1, 1
5801 },
5802 // padding (0x1A7)
5803 {
5804 nullptr,
5805 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5806 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5807 0, 0, 0, false, false, false, false,
5808 { false, false, false, false },
5809 { 0.0f, 0.0f, 0.0f, 0.0f },
5810 1, 1
5811 },
5812 // R8G8B8_UNORM_SRGB (0x1A8)
5813 {
5814 "R8G8B8_UNORM_SRGB",
5815 { SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNORM, SWR_TYPE_UNKNOWN },
5816 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5817 { 0, 1, 2, 0 }, // Swizzle
5818 { 8, 8, 8, 0 }, // Bits per component
5819 24, // Bits per element
5820 3, // Bytes per element
5821 3, // Num components
5822 true, // isSRGB
5823 false, // isBC
5824 false, // isSubsampled
5825 false, // isLuminance
5826 { true, true, true, false }, // Is normalized?
5827 { 1.0f / 255.0f, 1.0f / 255.0f, 1.0f / 255.0f, 0 }, // To float scale factor
5828 1, // bcWidth
5829 1, // bcHeight
5830 },
5831
5832 // padding (0x1A9)
5833 {
5834 nullptr,
5835 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5836 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5837 0, 0, 0, false, false, false, false,
5838 { false, false, false, false },
5839 { 0.0f, 0.0f, 0.0f, 0.0f },
5840 1, 1
5841 },
5842 // padding (0x1AA)
5843 {
5844 nullptr,
5845 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5846 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5847 0, 0, 0, false, false, false, false,
5848 { false, false, false, false },
5849 { 0.0f, 0.0f, 0.0f, 0.0f },
5850 1, 1
5851 },
5852 // padding (0x1AB)
5853 {
5854 nullptr,
5855 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5856 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5857 0, 0, 0, false, false, false, false,
5858 { false, false, false, false },
5859 { 0.0f, 0.0f, 0.0f, 0.0f },
5860 1, 1
5861 },
5862 // padding (0x1AC)
5863 {
5864 nullptr,
5865 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5866 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5867 0, 0, 0, false, false, false, false,
5868 { false, false, false, false },
5869 { 0.0f, 0.0f, 0.0f, 0.0f },
5870 1, 1
5871 },
5872 // padding (0x1AD)
5873 {
5874 nullptr,
5875 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5876 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5877 0, 0, 0, false, false, false, false,
5878 { false, false, false, false },
5879 { 0.0f, 0.0f, 0.0f, 0.0f },
5880 1, 1
5881 },
5882 // padding (0x1AE)
5883 {
5884 nullptr,
5885 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5886 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5887 0, 0, 0, false, false, false, false,
5888 { false, false, false, false },
5889 { 0.0f, 0.0f, 0.0f, 0.0f },
5890 1, 1
5891 },
5892 // padding (0x1AF)
5893 {
5894 nullptr,
5895 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5896 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
5897 0, 0, 0, false, false, false, false,
5898 { false, false, false, false },
5899 { 0.0f, 0.0f, 0.0f, 0.0f },
5900 1, 1
5901 },
5902 // R16G16B16_UINT (0x1B0)
5903 {
5904 "R16G16B16_UINT",
5905 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UNKNOWN },
5906 { 0, 0, 0, 0x1 }, // Defaults for missing components
5907 { 0, 1, 2, 0 }, // Swizzle
5908 { 16, 16, 16, 0 }, // Bits per component
5909 48, // Bits per element
5910 6, // Bytes per element
5911 3, // Num components
5912 false, // isSRGB
5913 false, // isBC
5914 false, // isSubsampled
5915 false, // isLuminance
5916 { false, false, false, false }, // Is normalized?
5917 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
5918 1, // bcWidth
5919 1, // bcHeight
5920 },
5921
5922 // R16G16B16_SINT (0x1B1)
5923 {
5924 "R16G16B16_SINT",
5925 { SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_UNKNOWN },
5926 { 0, 0, 0, 0x1 }, // Defaults for missing components
5927 { 0, 1, 2, 0 }, // Swizzle
5928 { 16, 16, 16, 0 }, // Bits per component
5929 48, // Bits per element
5930 6, // Bytes per element
5931 3, // Num components
5932 false, // isSRGB
5933 false, // isBC
5934 false, // isSubsampled
5935 false, // isLuminance
5936 { false, false, false, false }, // Is normalized?
5937 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
5938 1, // bcWidth
5939 1, // bcHeight
5940 },
5941
5942 // R32_SFIXED (0x1B2)
5943 {
5944 "R32_SFIXED",
5945 { SWR_TYPE_SFIXED, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
5946 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5947 { 0, 0, 0, 0 }, // Swizzle
5948 { 32, 0, 0, 0 }, // Bits per component
5949 32, // Bits per element
5950 4, // Bytes per element
5951 1, // Num components
5952 false, // isSRGB
5953 false, // isBC
5954 false, // isSubsampled
5955 false, // isLuminance
5956 { false, false, false, false }, // Is normalized?
5957 { 1.0f, 0, 0, 0 }, // To float scale factor
5958 1, // bcWidth
5959 1, // bcHeight
5960 },
5961
5962 // R10G10B10A2_SNORM (0x1B3)
5963 {
5964 "R10G10B10A2_SNORM",
5965 { SWR_TYPE_SNORM, SWR_TYPE_SNORM, SWR_TYPE_SNORM, SWR_TYPE_SNORM },
5966 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5967 { 0, 1, 2, 3 }, // Swizzle
5968 { 10, 10, 10, 2 }, // Bits per component
5969 32, // Bits per element
5970 4, // Bytes per element
5971 4, // Num components
5972 false, // isSRGB
5973 false, // isBC
5974 false, // isSubsampled
5975 false, // isLuminance
5976 { true, true, true, true }, // Is normalized?
5977 { 1.0f / 511.0f, 1.0f / 511.0f, 1.0f / 511.0f, 1.0f / 1.0f }, // To float scale factor
5978 1, // bcWidth
5979 1, // bcHeight
5980 },
5981
5982 // R10G10B10A2_USCALED (0x1B4)
5983 {
5984 "R10G10B10A2_USCALED",
5985 { SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_USCALED },
5986 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
5987 { 0, 1, 2, 3 }, // Swizzle
5988 { 10, 10, 10, 2 }, // Bits per component
5989 32, // Bits per element
5990 4, // Bytes per element
5991 4, // Num components
5992 false, // isSRGB
5993 false, // isBC
5994 false, // isSubsampled
5995 false, // isLuminance
5996 { false, false, false, false }, // Is normalized?
5997 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
5998 1, // bcWidth
5999 1, // bcHeight
6000 },
6001
6002 // R10G10B10A2_SSCALED (0x1B5)
6003 {
6004 "R10G10B10A2_SSCALED",
6005 { SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_SSCALED },
6006 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
6007 { 0, 1, 2, 3 }, // Swizzle
6008 { 10, 10, 10, 2 }, // Bits per component
6009 32, // Bits per element
6010 4, // Bytes per element
6011 4, // Num components
6012 false, // isSRGB
6013 false, // isBC
6014 false, // isSubsampled
6015 false, // isLuminance
6016 { false, false, false, false }, // Is normalized?
6017 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
6018 1, // bcWidth
6019 1, // bcHeight
6020 },
6021
6022 // R10G10B10A2_SINT (0x1B6)
6023 {
6024 "R10G10B10A2_SINT",
6025 { SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_SINT },
6026 { 0, 0, 0, 0x1 }, // Defaults for missing components
6027 { 0, 1, 2, 3 }, // Swizzle
6028 { 10, 10, 10, 2 }, // Bits per component
6029 32, // Bits per element
6030 4, // Bytes per element
6031 4, // Num components
6032 false, // isSRGB
6033 false, // isBC
6034 false, // isSubsampled
6035 false, // isLuminance
6036 { false, false, false, false }, // Is normalized?
6037 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
6038 1, // bcWidth
6039 1, // bcHeight
6040 },
6041
6042 // B10G10R10A2_SNORM (0x1B7)
6043 {
6044 "B10G10R10A2_SNORM",
6045 { SWR_TYPE_SNORM, SWR_TYPE_SNORM, SWR_TYPE_SNORM, SWR_TYPE_SNORM },
6046 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
6047 { 2, 1, 0, 3 }, // Swizzle
6048 { 10, 10, 10, 2 }, // Bits per component
6049 32, // Bits per element
6050 4, // Bytes per element
6051 4, // Num components
6052 false, // isSRGB
6053 false, // isBC
6054 false, // isSubsampled
6055 false, // isLuminance
6056 { true, true, true, true }, // Is normalized?
6057 { 1.0f / 511.0f, 1.0f / 511.0f, 1.0f / 511.0f, 1.0f / 1.0f }, // To float scale factor
6058 1, // bcWidth
6059 1, // bcHeight
6060 },
6061
6062 // B10G10R10A2_USCALED (0x1B8)
6063 {
6064 "B10G10R10A2_USCALED",
6065 { SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_USCALED, SWR_TYPE_USCALED },
6066 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
6067 { 2, 1, 0, 3 }, // Swizzle
6068 { 10, 10, 10, 2 }, // Bits per component
6069 32, // Bits per element
6070 4, // Bytes per element
6071 4, // Num components
6072 false, // isSRGB
6073 false, // isBC
6074 false, // isSubsampled
6075 false, // isLuminance
6076 { false, false, false, false }, // Is normalized?
6077 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
6078 1, // bcWidth
6079 1, // bcHeight
6080 },
6081
6082 // B10G10R10A2_SSCALED (0x1B9)
6083 {
6084 "B10G10R10A2_SSCALED",
6085 { SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_SSCALED, SWR_TYPE_SSCALED },
6086 { 0, 0, 0, 0x3f800000 }, // Defaults for missing components
6087 { 2, 1, 0, 3 }, // Swizzle
6088 { 10, 10, 10, 2 }, // Bits per component
6089 32, // Bits per element
6090 4, // Bytes per element
6091 4, // Num components
6092 false, // isSRGB
6093 false, // isBC
6094 false, // isSubsampled
6095 false, // isLuminance
6096 { false, false, false, false }, // Is normalized?
6097 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
6098 1, // bcWidth
6099 1, // bcHeight
6100 },
6101
6102 // B10G10R10A2_UINT (0x1BA)
6103 {
6104 "B10G10R10A2_UINT",
6105 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT },
6106 { 0, 0, 0, 0x1 }, // Defaults for missing components
6107 { 2, 1, 0, 3 }, // Swizzle
6108 { 10, 10, 10, 2 }, // Bits per component
6109 32, // Bits per element
6110 4, // Bytes per element
6111 4, // Num components
6112 false, // isSRGB
6113 false, // isBC
6114 false, // isSubsampled
6115 false, // isLuminance
6116 { false, false, false, false }, // Is normalized?
6117 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
6118 1, // bcWidth
6119 1, // bcHeight
6120 },
6121
6122 // B10G10R10A2_SINT (0x1BB)
6123 {
6124 "B10G10R10A2_SINT",
6125 { SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_SINT },
6126 { 0, 0, 0, 0x1 }, // Defaults for missing components
6127 { 2, 1, 0, 3 }, // Swizzle
6128 { 10, 10, 10, 2 }, // Bits per component
6129 32, // Bits per element
6130 4, // Bytes per element
6131 4, // Num components
6132 false, // isSRGB
6133 false, // isBC
6134 false, // isSubsampled
6135 false, // isLuminance
6136 { false, false, false, false }, // Is normalized?
6137 { 1.0f, 1.0f, 1.0f, 1.0f }, // To float scale factor
6138 1, // bcWidth
6139 1, // bcHeight
6140 },
6141
6142 // padding (0x1BC)
6143 {
6144 nullptr,
6145 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6146 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6147 0, 0, 0, false, false, false, false,
6148 { false, false, false, false },
6149 { 0.0f, 0.0f, 0.0f, 0.0f },
6150 1, 1
6151 },
6152 // padding (0x1BD)
6153 {
6154 nullptr,
6155 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6156 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6157 0, 0, 0, false, false, false, false,
6158 { false, false, false, false },
6159 { 0.0f, 0.0f, 0.0f, 0.0f },
6160 1, 1
6161 },
6162 // padding (0x1BE)
6163 {
6164 nullptr,
6165 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6166 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6167 0, 0, 0, false, false, false, false,
6168 { false, false, false, false },
6169 { 0.0f, 0.0f, 0.0f, 0.0f },
6170 1, 1
6171 },
6172 // padding (0x1BF)
6173 {
6174 nullptr,
6175 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6176 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6177 0, 0, 0, false, false, false, false,
6178 { false, false, false, false },
6179 { 0.0f, 0.0f, 0.0f, 0.0f },
6180 1, 1
6181 },
6182 // padding (0x1C0)
6183 {
6184 nullptr,
6185 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6186 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6187 0, 0, 0, false, false, false, false,
6188 { false, false, false, false },
6189 { 0.0f, 0.0f, 0.0f, 0.0f },
6190 1, 1
6191 },
6192 // padding (0x1C1)
6193 {
6194 nullptr,
6195 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6196 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6197 0, 0, 0, false, false, false, false,
6198 { false, false, false, false },
6199 { 0.0f, 0.0f, 0.0f, 0.0f },
6200 1, 1
6201 },
6202 // padding (0x1C2)
6203 {
6204 nullptr,
6205 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6206 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6207 0, 0, 0, false, false, false, false,
6208 { false, false, false, false },
6209 { 0.0f, 0.0f, 0.0f, 0.0f },
6210 1, 1
6211 },
6212 // padding (0x1C3)
6213 {
6214 nullptr,
6215 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6216 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6217 0, 0, 0, false, false, false, false,
6218 { false, false, false, false },
6219 { 0.0f, 0.0f, 0.0f, 0.0f },
6220 1, 1
6221 },
6222 // padding (0x1C4)
6223 {
6224 nullptr,
6225 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6226 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6227 0, 0, 0, false, false, false, false,
6228 { false, false, false, false },
6229 { 0.0f, 0.0f, 0.0f, 0.0f },
6230 1, 1
6231 },
6232 // padding (0x1C5)
6233 {
6234 nullptr,
6235 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6236 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6237 0, 0, 0, false, false, false, false,
6238 { false, false, false, false },
6239 { 0.0f, 0.0f, 0.0f, 0.0f },
6240 1, 1
6241 },
6242 // padding (0x1C6)
6243 {
6244 nullptr,
6245 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6246 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6247 0, 0, 0, false, false, false, false,
6248 { false, false, false, false },
6249 { 0.0f, 0.0f, 0.0f, 0.0f },
6250 1, 1
6251 },
6252 // padding (0x1C7)
6253 {
6254 nullptr,
6255 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6256 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6257 0, 0, 0, false, false, false, false,
6258 { false, false, false, false },
6259 { 0.0f, 0.0f, 0.0f, 0.0f },
6260 1, 1
6261 },
6262 // R8G8B8_UINT (0x1C8)
6263 {
6264 "R8G8B8_UINT",
6265 { SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UINT, SWR_TYPE_UNKNOWN },
6266 { 0, 0, 0, 0x1 }, // Defaults for missing components
6267 { 0, 1, 2, 0 }, // Swizzle
6268 { 8, 8, 8, 0 }, // Bits per component
6269 24, // Bits per element
6270 3, // Bytes per element
6271 3, // Num components
6272 false, // isSRGB
6273 false, // isBC
6274 false, // isSubsampled
6275 false, // isLuminance
6276 { false, false, false, false }, // Is normalized?
6277 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
6278 1, // bcWidth
6279 1, // bcHeight
6280 },
6281
6282 // R8G8B8_SINT (0x1C9)
6283 {
6284 "R8G8B8_SINT",
6285 { SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_SINT, SWR_TYPE_UNKNOWN },
6286 { 0, 0, 0, 0x1 }, // Defaults for missing components
6287 { 0, 1, 2, 0 }, // Swizzle
6288 { 8, 8, 8, 0 }, // Bits per component
6289 24, // Bits per element
6290 3, // Bytes per element
6291 3, // Num components
6292 false, // isSRGB
6293 false, // isBC
6294 false, // isSubsampled
6295 false, // isLuminance
6296 { false, false, false, false }, // Is normalized?
6297 { 1.0f, 1.0f, 1.0f, 0 }, // To float scale factor
6298 1, // bcWidth
6299 1, // bcHeight
6300 },
6301
6302 // padding (0x1CA)
6303 {
6304 nullptr,
6305 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6306 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6307 0, 0, 0, false, false, false, false,
6308 { false, false, false, false },
6309 { 0.0f, 0.0f, 0.0f, 0.0f },
6310 1, 1
6311 },
6312 // padding (0x1CB)
6313 {
6314 nullptr,
6315 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6316 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6317 0, 0, 0, false, false, false, false,
6318 { false, false, false, false },
6319 { 0.0f, 0.0f, 0.0f, 0.0f },
6320 1, 1
6321 },
6322 // padding (0x1CC)
6323 {
6324 nullptr,
6325 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6326 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6327 0, 0, 0, false, false, false, false,
6328 { false, false, false, false },
6329 { 0.0f, 0.0f, 0.0f, 0.0f },
6330 1, 1
6331 },
6332 // padding (0x1CD)
6333 {
6334 nullptr,
6335 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6336 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6337 0, 0, 0, false, false, false, false,
6338 { false, false, false, false },
6339 { 0.0f, 0.0f, 0.0f, 0.0f },
6340 1, 1
6341 },
6342 // padding (0x1CE)
6343 {
6344 nullptr,
6345 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6346 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6347 0, 0, 0, false, false, false, false,
6348 { false, false, false, false },
6349 { 0.0f, 0.0f, 0.0f, 0.0f },
6350 1, 1
6351 },
6352 // padding (0x1CF)
6353 {
6354 nullptr,
6355 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6356 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6357 0, 0, 0, false, false, false, false,
6358 { false, false, false, false },
6359 { 0.0f, 0.0f, 0.0f, 0.0f },
6360 1, 1
6361 },
6362 // padding (0x1D0)
6363 {
6364 nullptr,
6365 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6366 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6367 0, 0, 0, false, false, false, false,
6368 { false, false, false, false },
6369 { 0.0f, 0.0f, 0.0f, 0.0f },
6370 1, 1
6371 },
6372 // padding (0x1D1)
6373 {
6374 nullptr,
6375 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6376 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6377 0, 0, 0, false, false, false, false,
6378 { false, false, false, false },
6379 { 0.0f, 0.0f, 0.0f, 0.0f },
6380 1, 1
6381 },
6382 // padding (0x1D2)
6383 {
6384 nullptr,
6385 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6386 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6387 0, 0, 0, false, false, false, false,
6388 { false, false, false, false },
6389 { 0.0f, 0.0f, 0.0f, 0.0f },
6390 1, 1
6391 },
6392 // padding (0x1D3)
6393 {
6394 nullptr,
6395 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6396 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6397 0, 0, 0, false, false, false, false,
6398 { false, false, false, false },
6399 { 0.0f, 0.0f, 0.0f, 0.0f },
6400 1, 1
6401 },
6402 // padding (0x1D4)
6403 {
6404 nullptr,
6405 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6406 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6407 0, 0, 0, false, false, false, false,
6408 { false, false, false, false },
6409 { 0.0f, 0.0f, 0.0f, 0.0f },
6410 1, 1
6411 },
6412 // padding (0x1D5)
6413 {
6414 nullptr,
6415 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6416 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6417 0, 0, 0, false, false, false, false,
6418 { false, false, false, false },
6419 { 0.0f, 0.0f, 0.0f, 0.0f },
6420 1, 1
6421 },
6422 // padding (0x1D6)
6423 {
6424 nullptr,
6425 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6426 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6427 0, 0, 0, false, false, false, false,
6428 { false, false, false, false },
6429 { 0.0f, 0.0f, 0.0f, 0.0f },
6430 1, 1
6431 },
6432 // padding (0x1D7)
6433 {
6434 nullptr,
6435 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6436 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6437 0, 0, 0, false, false, false, false,
6438 { false, false, false, false },
6439 { 0.0f, 0.0f, 0.0f, 0.0f },
6440 1, 1
6441 },
6442 // padding (0x1D8)
6443 {
6444 nullptr,
6445 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6446 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6447 0, 0, 0, false, false, false, false,
6448 { false, false, false, false },
6449 { 0.0f, 0.0f, 0.0f, 0.0f },
6450 1, 1
6451 },
6452 // padding (0x1D9)
6453 {
6454 nullptr,
6455 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6456 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6457 0, 0, 0, false, false, false, false,
6458 { false, false, false, false },
6459 { 0.0f, 0.0f, 0.0f, 0.0f },
6460 1, 1
6461 },
6462 // padding (0x1DA)
6463 {
6464 nullptr,
6465 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6466 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6467 0, 0, 0, false, false, false, false,
6468 { false, false, false, false },
6469 { 0.0f, 0.0f, 0.0f, 0.0f },
6470 1, 1
6471 },
6472 // padding (0x1DB)
6473 {
6474 nullptr,
6475 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6476 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6477 0, 0, 0, false, false, false, false,
6478 { false, false, false, false },
6479 { 0.0f, 0.0f, 0.0f, 0.0f },
6480 1, 1
6481 },
6482 // padding (0x1DC)
6483 {
6484 nullptr,
6485 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6486 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6487 0, 0, 0, false, false, false, false,
6488 { false, false, false, false },
6489 { 0.0f, 0.0f, 0.0f, 0.0f },
6490 1, 1
6491 },
6492 // padding (0x1DD)
6493 {
6494 nullptr,
6495 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6496 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6497 0, 0, 0, false, false, false, false,
6498 { false, false, false, false },
6499 { 0.0f, 0.0f, 0.0f, 0.0f },
6500 1, 1
6501 },
6502 // padding (0x1DE)
6503 {
6504 nullptr,
6505 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6506 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6507 0, 0, 0, false, false, false, false,
6508 { false, false, false, false },
6509 { 0.0f, 0.0f, 0.0f, 0.0f },
6510 1, 1
6511 },
6512 // padding (0x1DF)
6513 {
6514 nullptr,
6515 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6516 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6517 0, 0, 0, false, false, false, false,
6518 { false, false, false, false },
6519 { 0.0f, 0.0f, 0.0f, 0.0f },
6520 1, 1
6521 },
6522 // padding (0x1E0)
6523 {
6524 nullptr,
6525 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6526 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6527 0, 0, 0, false, false, false, false,
6528 { false, false, false, false },
6529 { 0.0f, 0.0f, 0.0f, 0.0f },
6530 1, 1
6531 },
6532 // padding (0x1E1)
6533 {
6534 nullptr,
6535 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6536 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6537 0, 0, 0, false, false, false, false,
6538 { false, false, false, false },
6539 { 0.0f, 0.0f, 0.0f, 0.0f },
6540 1, 1
6541 },
6542 // padding (0x1E2)
6543 {
6544 nullptr,
6545 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6546 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6547 0, 0, 0, false, false, false, false,
6548 { false, false, false, false },
6549 { 0.0f, 0.0f, 0.0f, 0.0f },
6550 1, 1
6551 },
6552 // padding (0x1E3)
6553 {
6554 nullptr,
6555 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6556 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6557 0, 0, 0, false, false, false, false,
6558 { false, false, false, false },
6559 { 0.0f, 0.0f, 0.0f, 0.0f },
6560 1, 1
6561 },
6562 // padding (0x1E4)
6563 {
6564 nullptr,
6565 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6566 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6567 0, 0, 0, false, false, false, false,
6568 { false, false, false, false },
6569 { 0.0f, 0.0f, 0.0f, 0.0f },
6570 1, 1
6571 },
6572 // padding (0x1E5)
6573 {
6574 nullptr,
6575 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6576 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6577 0, 0, 0, false, false, false, false,
6578 { false, false, false, false },
6579 { 0.0f, 0.0f, 0.0f, 0.0f },
6580 1, 1
6581 },
6582 // padding (0x1E6)
6583 {
6584 nullptr,
6585 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6586 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6587 0, 0, 0, false, false, false, false,
6588 { false, false, false, false },
6589 { 0.0f, 0.0f, 0.0f, 0.0f },
6590 1, 1
6591 },
6592 // padding (0x1E7)
6593 {
6594 nullptr,
6595 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6596 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6597 0, 0, 0, false, false, false, false,
6598 { false, false, false, false },
6599 { 0.0f, 0.0f, 0.0f, 0.0f },
6600 1, 1
6601 },
6602 // padding (0x1E8)
6603 {
6604 nullptr,
6605 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6606 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6607 0, 0, 0, false, false, false, false,
6608 { false, false, false, false },
6609 { 0.0f, 0.0f, 0.0f, 0.0f },
6610 1, 1
6611 },
6612 // padding (0x1E9)
6613 {
6614 nullptr,
6615 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6616 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6617 0, 0, 0, false, false, false, false,
6618 { false, false, false, false },
6619 { 0.0f, 0.0f, 0.0f, 0.0f },
6620 1, 1
6621 },
6622 // padding (0x1EA)
6623 {
6624 nullptr,
6625 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6626 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6627 0, 0, 0, false, false, false, false,
6628 { false, false, false, false },
6629 { 0.0f, 0.0f, 0.0f, 0.0f },
6630 1, 1
6631 },
6632 // padding (0x1EB)
6633 {
6634 nullptr,
6635 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6636 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6637 0, 0, 0, false, false, false, false,
6638 { false, false, false, false },
6639 { 0.0f, 0.0f, 0.0f, 0.0f },
6640 1, 1
6641 },
6642 // padding (0x1EC)
6643 {
6644 nullptr,
6645 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6646 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6647 0, 0, 0, false, false, false, false,
6648 { false, false, false, false },
6649 { 0.0f, 0.0f, 0.0f, 0.0f },
6650 1, 1
6651 },
6652 // padding (0x1ED)
6653 {
6654 nullptr,
6655 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6656 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6657 0, 0, 0, false, false, false, false,
6658 { false, false, false, false },
6659 { 0.0f, 0.0f, 0.0f, 0.0f },
6660 1, 1
6661 },
6662 // padding (0x1EE)
6663 {
6664 nullptr,
6665 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6666 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6667 0, 0, 0, false, false, false, false,
6668 { false, false, false, false },
6669 { 0.0f, 0.0f, 0.0f, 0.0f },
6670 1, 1
6671 },
6672 // padding (0x1EF)
6673 {
6674 nullptr,
6675 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6676 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6677 0, 0, 0, false, false, false, false,
6678 { false, false, false, false },
6679 { 0.0f, 0.0f, 0.0f, 0.0f },
6680 1, 1
6681 },
6682 // padding (0x1F0)
6683 {
6684 nullptr,
6685 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6686 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6687 0, 0, 0, false, false, false, false,
6688 { false, false, false, false },
6689 { 0.0f, 0.0f, 0.0f, 0.0f },
6690 1, 1
6691 },
6692 // padding (0x1F1)
6693 {
6694 nullptr,
6695 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6696 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6697 0, 0, 0, false, false, false, false,
6698 { false, false, false, false },
6699 { 0.0f, 0.0f, 0.0f, 0.0f },
6700 1, 1
6701 },
6702 // padding (0x1F2)
6703 {
6704 nullptr,
6705 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6706 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6707 0, 0, 0, false, false, false, false,
6708 { false, false, false, false },
6709 { 0.0f, 0.0f, 0.0f, 0.0f },
6710 1, 1
6711 },
6712 // padding (0x1F3)
6713 {
6714 nullptr,
6715 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6716 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6717 0, 0, 0, false, false, false, false,
6718 { false, false, false, false },
6719 { 0.0f, 0.0f, 0.0f, 0.0f },
6720 1, 1
6721 },
6722 // padding (0x1F4)
6723 {
6724 nullptr,
6725 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6726 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6727 0, 0, 0, false, false, false, false,
6728 { false, false, false, false },
6729 { 0.0f, 0.0f, 0.0f, 0.0f },
6730 1, 1
6731 },
6732 // padding (0x1F5)
6733 {
6734 nullptr,
6735 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6736 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6737 0, 0, 0, false, false, false, false,
6738 { false, false, false, false },
6739 { 0.0f, 0.0f, 0.0f, 0.0f },
6740 1, 1
6741 },
6742 // padding (0x1F6)
6743 {
6744 nullptr,
6745 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6746 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6747 0, 0, 0, false, false, false, false,
6748 { false, false, false, false },
6749 { 0.0f, 0.0f, 0.0f, 0.0f },
6750 1, 1
6751 },
6752 // padding (0x1F7)
6753 {
6754 nullptr,
6755 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6756 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6757 0, 0, 0, false, false, false, false,
6758 { false, false, false, false },
6759 { 0.0f, 0.0f, 0.0f, 0.0f },
6760 1, 1
6761 },
6762 // padding (0x1F8)
6763 {
6764 nullptr,
6765 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6766 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6767 0, 0, 0, false, false, false, false,
6768 { false, false, false, false },
6769 { 0.0f, 0.0f, 0.0f, 0.0f },
6770 1, 1
6771 },
6772 // padding (0x1F9)
6773 {
6774 nullptr,
6775 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6776 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6777 0, 0, 0, false, false, false, false,
6778 { false, false, false, false },
6779 { 0.0f, 0.0f, 0.0f, 0.0f },
6780 1, 1
6781 },
6782 // padding (0x1FA)
6783 {
6784 nullptr,
6785 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6786 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6787 0, 0, 0, false, false, false, false,
6788 { false, false, false, false },
6789 { 0.0f, 0.0f, 0.0f, 0.0f },
6790 1, 1
6791 },
6792 // padding (0x1FB)
6793 {
6794 nullptr,
6795 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6796 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6797 0, 0, 0, false, false, false, false,
6798 { false, false, false, false },
6799 { 0.0f, 0.0f, 0.0f, 0.0f },
6800 1, 1
6801 },
6802 // padding (0x1FC)
6803 {
6804 nullptr,
6805 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6806 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6807 0, 0, 0, false, false, false, false,
6808 { false, false, false, false },
6809 { 0.0f, 0.0f, 0.0f, 0.0f },
6810 1, 1
6811 },
6812 // padding (0x1FD)
6813 {
6814 nullptr,
6815 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6816 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6817 0, 0, 0, false, false, false, false,
6818 { false, false, false, false },
6819 { 0.0f, 0.0f, 0.0f, 0.0f },
6820 1, 1
6821 },
6822 // padding (0x1FE)
6823 {
6824 nullptr,
6825 { SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6826 { 0, 0, 0, 0 },{ 0, 0, 0, 0 },{ 0, 0, 0, 0 },
6827 0, 0, 0, false, false, false, false,
6828 { false, false, false, false },
6829 { 0.0f, 0.0f, 0.0f, 0.0f },
6830 1, 1
6831 },
6832 // RAW (0x1FF)
6833 {
6834 "RAW",
6835 { SWR_TYPE_UINT, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN, SWR_TYPE_UNKNOWN },
6836 { 0, 0, 0, 0x1 }, // Defaults for missing components
6837 { 0, 1, 2, 3 }, // Swizzle
6838 { 8, 0, 0, 0 }, // Bits per component
6839 8, // Bits per element
6840 1, // Bytes per element
6841 1, // Num components
6842 false, // isSRGB
6843 false, // isBC
6844 false, // isSubsampled
6845 false, // isLuminance
6846 { false, false, false, false }, // Is normalized?
6847 { 1.0f, 0, 0, 0 }, // To float scale factor
6848 1, // bcWidth
6849 1, // bcHeight
6850 },
6851 };
6852