1 line
80 KiB
Plaintext
1 line
80 KiB
Plaintext
{"version":3,"file":"transcodeKTX2.js","sources":["../../../../Source/Renderer/PixelDatatype.js","../../../../Source/Core/PixelFormat.js","../../../../Source/Core/VulkanConstants.js","../../../../Source/ThirdParty/ktx-parse.js","../../../../Source/WorkersES6/transcodeKTX2.js"],"sourcesContent":["import WebGLConstants from \"../Core/WebGLConstants.js\";\n\n/**\n * The data type of a pixel.\n *\n * @enum {Number}\n * @see PostProcessStage\n */\nconst PixelDatatype = {\n UNSIGNED_BYTE: WebGLConstants.UNSIGNED_BYTE,\n UNSIGNED_SHORT: WebGLConstants.UNSIGNED_SHORT,\n UNSIGNED_INT: WebGLConstants.UNSIGNED_INT,\n FLOAT: WebGLConstants.FLOAT,\n HALF_FLOAT: WebGLConstants.HALF_FLOAT_OES,\n UNSIGNED_INT_24_8: WebGLConstants.UNSIGNED_INT_24_8,\n UNSIGNED_SHORT_4_4_4_4: WebGLConstants.UNSIGNED_SHORT_4_4_4_4,\n UNSIGNED_SHORT_5_5_5_1: WebGLConstants.UNSIGNED_SHORT_5_5_5_1,\n UNSIGNED_SHORT_5_6_5: WebGLConstants.UNSIGNED_SHORT_5_6_5,\n};\n\n/**\n @private\n*/\nPixelDatatype.toWebGLConstant = function (pixelDatatype, context) {\n switch (pixelDatatype) {\n case PixelDatatype.UNSIGNED_BYTE:\n return WebGLConstants.UNSIGNED_BYTE;\n case PixelDatatype.UNSIGNED_SHORT:\n return WebGLConstants.UNSIGNED_SHORT;\n case PixelDatatype.UNSIGNED_INT:\n return WebGLConstants.UNSIGNED_INT;\n case PixelDatatype.FLOAT:\n return WebGLConstants.FLOAT;\n case PixelDatatype.HALF_FLOAT:\n return context.webgl2\n ? WebGLConstants.HALF_FLOAT\n : WebGLConstants.HALF_FLOAT_OES;\n case PixelDatatype.UNSIGNED_INT_24_8:\n return WebGLConstants.UNSIGNED_INT_24_8;\n case PixelDatatype.UNSIGNED_SHORT_4_4_4_4:\n return WebGLConstants.UNSIGNED_SHORT_4_4_4_4;\n case PixelDatatype.UNSIGNED_SHORT_5_5_5_1:\n return WebGLConstants.UNSIGNED_SHORT_5_5_5_1;\n case PixelDatatype.UNSIGNED_SHORT_5_6_5:\n return PixelDatatype.UNSIGNED_SHORT_5_6_5;\n }\n};\n\n/**\n @private\n*/\nPixelDatatype.isPacked = function (pixelDatatype) {\n return (\n pixelDatatype === PixelDatatype.UNSIGNED_INT_24_8 ||\n pixelDatatype === PixelDatatype.UNSIGNED_SHORT_4_4_4_4 ||\n pixelDatatype === PixelDatatype.UNSIGNED_SHORT_5_5_5_1 ||\n pixelDatatype === PixelDatatype.UNSIGNED_SHORT_5_6_5\n );\n};\n\n/**\n @private\n*/\nPixelDatatype.sizeInBytes = function (pixelDatatype) {\n switch (pixelDatatype) {\n case PixelDatatype.UNSIGNED_BYTE:\n return 1;\n case PixelDatatype.UNSIGNED_SHORT:\n case PixelDatatype.UNSIGNED_SHORT_4_4_4_4:\n case PixelDatatype.UNSIGNED_SHORT_5_5_5_1:\n case PixelDatatype.UNSIGNED_SHORT_5_6_5:\n case PixelDatatype.HALF_FLOAT:\n return 2;\n case PixelDatatype.UNSIGNED_INT:\n case PixelDatatype.FLOAT:\n case PixelDatatype.UNSIGNED_INT_24_8:\n return 4;\n }\n};\n\n/**\n @private\n*/\nPixelDatatype.validate = function (pixelDatatype) {\n return (\n pixelDatatype === PixelDatatype.UNSIGNED_BYTE ||\n pixelDatatype === PixelDatatype.UNSIGNED_SHORT ||\n pixelDatatype === PixelDatatype.UNSIGNED_INT ||\n pixelDatatype === PixelDatatype.FLOAT ||\n pixelDatatype === PixelDatatype.HALF_FLOAT ||\n pixelDatatype === PixelDatatype.UNSIGNED_INT_24_8 ||\n pixelDatatype === PixelDatatype.UNSIGNED_SHORT_4_4_4_4 ||\n pixelDatatype === PixelDatatype.UNSIGNED_SHORT_5_5_5_1 ||\n pixelDatatype === PixelDatatype.UNSIGNED_SHORT_5_6_5\n );\n};\n\nexport default Object.freeze(PixelDatatype);\n","import PixelDatatype from \"../Renderer/PixelDatatype.js\";\nimport WebGLConstants from \"./WebGLConstants.js\";\n\n/**\n * The format of a pixel, i.e., the number of components it has and what they represent.\n *\n * @enum {Number}\n */\nconst PixelFormat = {\n /**\n * A pixel format containing a depth value.\n *\n * @type {Number}\n * @constant\n */\n DEPTH_COMPONENT: WebGLConstants.DEPTH_COMPONENT,\n\n /**\n * A pixel format containing a depth and stencil value, most often used with {@link PixelDatatype.UNSIGNED_INT_24_8}.\n *\n * @type {Number}\n * @constant\n */\n DEPTH_STENCIL: WebGLConstants.DEPTH_STENCIL,\n\n /**\n * A pixel format containing an alpha channel.\n *\n * @type {Number}\n * @constant\n */\n ALPHA: WebGLConstants.ALPHA,\n\n /**\n * A pixel format containing red, green, and blue channels.\n *\n * @type {Number}\n * @constant\n */\n RGB: WebGLConstants.RGB,\n\n /**\n * A pixel format containing red, green, blue, and alpha channels.\n *\n * @type {Number}\n * @constant\n */\n RGBA: WebGLConstants.RGBA,\n\n /**\n * A pixel format containing a luminance (intensity) channel.\n *\n * @type {Number}\n * @constant\n */\n LUMINANCE: WebGLConstants.LUMINANCE,\n\n /**\n * A pixel format containing luminance (intensity) and alpha channels.\n *\n * @type {Number}\n * @constant\n */\n LUMINANCE_ALPHA: WebGLConstants.LUMINANCE_ALPHA,\n\n /**\n * A pixel format containing red, green, and blue channels that is DXT1 compressed.\n *\n * @type {Number}\n * @constant\n */\n RGB_DXT1: WebGLConstants.COMPRESSED_RGB_S3TC_DXT1_EXT,\n\n /**\n * A pixel format containing red, green, blue, and alpha channels that is DXT1 compressed.\n *\n * @type {Number}\n * @constant\n */\n RGBA_DXT1: WebGLConstants.COMPRESSED_RGBA_S3TC_DXT1_EXT,\n\n /**\n * A pixel format containing red, green, blue, and alpha channels that is DXT3 compressed.\n *\n * @type {Number}\n * @constant\n */\n RGBA_DXT3: WebGLConstants.COMPRESSED_RGBA_S3TC_DXT3_EXT,\n\n /**\n * A pixel format containing red, green, blue, and alpha channels that is DXT5 compressed.\n *\n * @type {Number}\n * @constant\n */\n RGBA_DXT5: WebGLConstants.COMPRESSED_RGBA_S3TC_DXT5_EXT,\n\n /**\n * A pixel format containing red, green, and blue channels that is PVR 4bpp compressed.\n *\n * @type {Number}\n * @constant\n */\n RGB_PVRTC_4BPPV1: WebGLConstants.COMPRESSED_RGB_PVRTC_4BPPV1_IMG,\n\n /**\n * A pixel format containing red, green, and blue channels that is PVR 2bpp compressed.\n *\n * @type {Number}\n * @constant\n */\n RGB_PVRTC_2BPPV1: WebGLConstants.COMPRESSED_RGB_PVRTC_2BPPV1_IMG,\n\n /**\n * A pixel format containing red, green, blue, and alpha channels that is PVR 4bpp compressed.\n *\n * @type {Number}\n * @constant\n */\n RGBA_PVRTC_4BPPV1: WebGLConstants.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,\n\n /**\n * A pixel format containing red, green, blue, and alpha channels that is PVR 2bpp compressed.\n *\n * @type {Number}\n * @constant\n */\n RGBA_PVRTC_2BPPV1: WebGLConstants.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,\n\n /**\n * A pixel format containing red, green, blue, and alpha channels that is ASTC compressed.\n *\n * @type {Number}\n * @constant\n */\n RGBA_ASTC: WebGLConstants.COMPRESSED_RGBA_ASTC_4x4_WEBGL,\n\n /**\n * A pixel format containing red, green, and blue channels that is ETC1 compressed.\n *\n * @type {Number}\n * @constant\n */\n RGB_ETC1: WebGLConstants.COMPRESSED_RGB_ETC1_WEBGL,\n\n /**\n * A pixel format containing red, green, and blue channels that is ETC2 compressed.\n *\n * @type {Number}\n * @constant\n */\n RGB8_ETC2: WebGLConstants.COMPRESSED_RGB8_ETC2,\n\n /**\n * A pixel format containing red, green, blue, and alpha channels that is ETC2 compressed.\n *\n * @type {Number}\n * @constant\n */\n RGBA8_ETC2_EAC: WebGLConstants.COMPRESSED_RGBA8_ETC2_EAC,\n\n /**\n * A pixel format containing red, green, blue, and alpha channels that is BC7 compressed.\n *\n * @type {Number}\n * @constant\n */\n RGBA_BC7: WebGLConstants.COMPRESSED_RGBA_BPTC_UNORM,\n};\n\n/**\n * @private\n */\nPixelFormat.componentsLength = function (pixelFormat) {\n switch (pixelFormat) {\n case PixelFormat.RGB:\n return 3;\n case PixelFormat.RGBA:\n return 4;\n case PixelFormat.LUMINANCE_ALPHA:\n return 2;\n case PixelFormat.ALPHA:\n case PixelFormat.LUMINANCE:\n return 1;\n default:\n return 1;\n }\n};\n\n/**\n * @private\n */\nPixelFormat.validate = function (pixelFormat) {\n return (\n pixelFormat === PixelFormat.DEPTH_COMPONENT ||\n pixelFormat === PixelFormat.DEPTH_STENCIL ||\n pixelFormat === PixelFormat.ALPHA ||\n pixelFormat === PixelFormat.RGB ||\n pixelFormat === PixelFormat.RGBA ||\n pixelFormat === PixelFormat.LUMINANCE ||\n pixelFormat === PixelFormat.LUMINANCE_ALPHA ||\n pixelFormat === PixelFormat.RGB_DXT1 ||\n pixelFormat === PixelFormat.RGBA_DXT1 ||\n pixelFormat === PixelFormat.RGBA_DXT3 ||\n pixelFormat === PixelFormat.RGBA_DXT5 ||\n pixelFormat === PixelFormat.RGB_PVRTC_4BPPV1 ||\n pixelFormat === PixelFormat.RGB_PVRTC_2BPPV1 ||\n pixelFormat === PixelFormat.RGBA_PVRTC_4BPPV1 ||\n pixelFormat === PixelFormat.RGBA_PVRTC_2BPPV1 ||\n pixelFormat === PixelFormat.RGBA_ASTC ||\n pixelFormat === PixelFormat.RGB_ETC1 ||\n pixelFormat === PixelFormat.RGB8_ETC2 ||\n pixelFormat === PixelFormat.RGBA8_ETC2_EAC ||\n pixelFormat === PixelFormat.RGBA_BC7\n );\n};\n\n/**\n * @private\n */\nPixelFormat.isColorFormat = function (pixelFormat) {\n return (\n pixelFormat === PixelFormat.ALPHA ||\n pixelFormat === PixelFormat.RGB ||\n pixelFormat === PixelFormat.RGBA ||\n pixelFormat === PixelFormat.LUMINANCE ||\n pixelFormat === PixelFormat.LUMINANCE_ALPHA\n );\n};\n\n/**\n * @private\n */\nPixelFormat.isDepthFormat = function (pixelFormat) {\n return (\n pixelFormat === PixelFormat.DEPTH_COMPONENT ||\n pixelFormat === PixelFormat.DEPTH_STENCIL\n );\n};\n\n/**\n * @private\n */\nPixelFormat.isCompressedFormat = function (pixelFormat) {\n return (\n pixelFormat === PixelFormat.RGB_DXT1 ||\n pixelFormat === PixelFormat.RGBA_DXT1 ||\n pixelFormat === PixelFormat.RGBA_DXT3 ||\n pixelFormat === PixelFormat.RGBA_DXT5 ||\n pixelFormat === PixelFormat.RGB_PVRTC_4BPPV1 ||\n pixelFormat === PixelFormat.RGB_PVRTC_2BPPV1 ||\n pixelFormat === PixelFormat.RGBA_PVRTC_4BPPV1 ||\n pixelFormat === PixelFormat.RGBA_PVRTC_2BPPV1 ||\n pixelFormat === PixelFormat.RGBA_ASTC ||\n pixelFormat === PixelFormat.RGB_ETC1 ||\n pixelFormat === PixelFormat.RGB8_ETC2 ||\n pixelFormat === PixelFormat.RGBA8_ETC2_EAC ||\n pixelFormat === PixelFormat.RGBA_BC7\n );\n};\n\n/**\n * @private\n */\nPixelFormat.isDXTFormat = function (pixelFormat) {\n return (\n pixelFormat === PixelFormat.RGB_DXT1 ||\n pixelFormat === PixelFormat.RGBA_DXT1 ||\n pixelFormat === PixelFormat.RGBA_DXT3 ||\n pixelFormat === PixelFormat.RGBA_DXT5\n );\n};\n\n/**\n * @private\n */\nPixelFormat.isPVRTCFormat = function (pixelFormat) {\n return (\n pixelFormat === PixelFormat.RGB_PVRTC_4BPPV1 ||\n pixelFormat === PixelFormat.RGB_PVRTC_2BPPV1 ||\n pixelFormat === PixelFormat.RGBA_PVRTC_4BPPV1 ||\n pixelFormat === PixelFormat.RGBA_PVRTC_2BPPV1\n );\n};\n\n/**\n * @private\n */\nPixelFormat.isASTCFormat = function (pixelFormat) {\n return pixelFormat === PixelFormat.RGBA_ASTC;\n};\n\n/**\n * @private\n */\nPixelFormat.isETC1Format = function (pixelFormat) {\n return pixelFormat === PixelFormat.RGB_ETC1;\n};\n\n/**\n * @private\n */\nPixelFormat.isETC2Format = function (pixelFormat) {\n return (\n pixelFormat === PixelFormat.RGB8_ETC2 ||\n pixelFormat === PixelFormat.RGBA8_ETC2_EAC\n );\n};\n\n/**\n * @private\n */\nPixelFormat.isBC7Format = function (pixelFormat) {\n return pixelFormat === PixelFormat.RGBA_BC7;\n};\n\n/**\n * @private\n */\nPixelFormat.compressedTextureSizeInBytes = function (\n pixelFormat,\n width,\n height\n) {\n switch (pixelFormat) {\n case PixelFormat.RGB_DXT1:\n case PixelFormat.RGBA_DXT1:\n case PixelFormat.RGB_ETC1:\n case PixelFormat.RGB8_ETC2:\n return Math.floor((width + 3) / 4) * Math.floor((height + 3) / 4) * 8;\n\n case PixelFormat.RGBA_DXT3:\n case PixelFormat.RGBA_DXT5:\n case PixelFormat.RGBA_ASTC:\n case PixelFormat.RGBA8_ETC2_EAC:\n return Math.floor((width + 3) / 4) * Math.floor((height + 3) / 4) * 16;\n\n case PixelFormat.RGB_PVRTC_4BPPV1:\n case PixelFormat.RGBA_PVRTC_4BPPV1:\n return Math.floor((Math.max(width, 8) * Math.max(height, 8) * 4 + 7) / 8);\n\n case PixelFormat.RGB_PVRTC_2BPPV1:\n case PixelFormat.RGBA_PVRTC_2BPPV1:\n return Math.floor(\n (Math.max(width, 16) * Math.max(height, 8) * 2 + 7) / 8\n );\n\n case PixelFormat.RGBA_BC7:\n return Math.ceil(width / 4) * Math.ceil(height / 4) * 16;\n\n default:\n return 0;\n }\n};\n\n/**\n * @private\n */\nPixelFormat.textureSizeInBytes = function (\n pixelFormat,\n pixelDatatype,\n width,\n height\n) {\n let componentsLength = PixelFormat.componentsLength(pixelFormat);\n if (PixelDatatype.isPacked(pixelDatatype)) {\n componentsLength = 1;\n }\n return (\n componentsLength * PixelDatatype.sizeInBytes(pixelDatatype) * width * height\n );\n};\n\n/**\n * @private\n */\nPixelFormat.alignmentInBytes = function (pixelFormat, pixelDatatype, width) {\n const mod =\n PixelFormat.textureSizeInBytes(pixelFormat, pixelDatatype, width, 1) % 4;\n return mod === 0 ? 4 : mod === 2 ? 2 : 1;\n};\n\n/**\n * @private\n */\nPixelFormat.createTypedArray = function (\n pixelFormat,\n pixelDatatype,\n width,\n height\n) {\n let constructor;\n const sizeInBytes = PixelDatatype.sizeInBytes(pixelDatatype);\n if (sizeInBytes === Uint8Array.BYTES_PER_ELEMENT) {\n constructor = Uint8Array;\n } else if (sizeInBytes === Uint16Array.BYTES_PER_ELEMENT) {\n constructor = Uint16Array;\n } else if (\n sizeInBytes === Float32Array.BYTES_PER_ELEMENT &&\n pixelDatatype === PixelDatatype.FLOAT\n ) {\n constructor = Float32Array;\n } else {\n constructor = Uint32Array;\n }\n\n const size = PixelFormat.componentsLength(pixelFormat) * width * height;\n return new constructor(size);\n};\n\n/**\n * @private\n */\nPixelFormat.flipY = function (\n bufferView,\n pixelFormat,\n pixelDatatype,\n width,\n height\n) {\n if (height === 1) {\n return bufferView;\n }\n const flipped = PixelFormat.createTypedArray(\n pixelFormat,\n pixelDatatype,\n width,\n height\n );\n const numberOfComponents = PixelFormat.componentsLength(pixelFormat);\n const textureWidth = width * numberOfComponents;\n for (let i = 0; i < height; ++i) {\n const row = i * width * numberOfComponents;\n const flippedRow = (height - i - 1) * width * numberOfComponents;\n for (let j = 0; j < textureWidth; ++j) {\n flipped[flippedRow + j] = bufferView[row + j];\n }\n }\n return flipped;\n};\n\n/**\n * @private\n */\nPixelFormat.toInternalFormat = function (pixelFormat, pixelDatatype, context) {\n // WebGL 1 require internalFormat to be the same as PixelFormat\n if (!context.webgl2) {\n return pixelFormat;\n }\n\n // Convert pixelFormat to correct internalFormat for WebGL 2\n if (pixelFormat === PixelFormat.DEPTH_STENCIL) {\n return WebGLConstants.DEPTH24_STENCIL8;\n }\n\n if (pixelFormat === PixelFormat.DEPTH_COMPONENT) {\n if (pixelDatatype === PixelDatatype.UNSIGNED_SHORT) {\n return WebGLConstants.DEPTH_COMPONENT16;\n } else if (pixelDatatype === PixelDatatype.UNSIGNED_INT) {\n return WebGLConstants.DEPTH_COMPONENT24;\n }\n }\n\n if (pixelDatatype === PixelDatatype.FLOAT) {\n switch (pixelFormat) {\n case PixelFormat.RGBA:\n return WebGLConstants.RGBA32F;\n case PixelFormat.RGB:\n return WebGLConstants.RGB32F;\n case PixelFormat.RG:\n return WebGLConstants.RG32F;\n case PixelFormat.R:\n return WebGLConstants.R32F;\n }\n }\n\n if (pixelDatatype === PixelDatatype.HALF_FLOAT) {\n switch (pixelFormat) {\n case PixelFormat.RGBA:\n return WebGLConstants.RGBA16F;\n case PixelFormat.RGB:\n return WebGLConstants.RGB16F;\n case PixelFormat.RG:\n return WebGLConstants.RG16F;\n case PixelFormat.R:\n return WebGLConstants.R16F;\n }\n }\n\n return pixelFormat;\n};\n\nexport default Object.freeze(PixelFormat);\n","/**\n * Enum containing Vulkan Constant values by name.\n *\n * These match the constants from the {@link https://www.khronos.org/registry/vulkan/specs/1.2-extensions/html/vkspec.html#formats-definition|Vulkan 1.2 specification}.\n *\n * @enum {Number}\n * @private\n */\nconst VulkanConstants = {\n VK_FORMAT_UNDEFINED: 0,\n VK_FORMAT_R4G4_UNORM_PACK8: 1,\n VK_FORMAT_R4G4B4A4_UNORM_PACK16: 2,\n VK_FORMAT_B4G4R4A4_UNORM_PACK16: 3,\n VK_FORMAT_R5G6B5_UNORM_PACK16: 4,\n VK_FORMAT_B5G6R5_UNORM_PACK16: 5,\n VK_FORMAT_R5G5B5A1_UNORM_PACK16: 6,\n VK_FORMAT_B5G5R5A1_UNORM_PACK16: 7,\n VK_FORMAT_A1R5G5B5_UNORM_PACK16: 8,\n VK_FORMAT_R8_UNORM: 9,\n VK_FORMAT_R8_SNORM: 10,\n VK_FORMAT_R8_USCALED: 11,\n VK_FORMAT_R8_SSCALED: 12,\n VK_FORMAT_R8_UINT: 13,\n VK_FORMAT_R8_SINT: 14,\n VK_FORMAT_R8_SRGB: 15,\n VK_FORMAT_R8G8_UNORM: 16,\n VK_FORMAT_R8G8_SNORM: 17,\n VK_FORMAT_R8G8_USCALED: 18,\n VK_FORMAT_R8G8_SSCALED: 19,\n VK_FORMAT_R8G8_UINT: 20,\n VK_FORMAT_R8G8_SINT: 21,\n VK_FORMAT_R8G8_SRGB: 22,\n VK_FORMAT_R8G8B8_UNORM: 23,\n VK_FORMAT_R8G8B8_SNORM: 24,\n VK_FORMAT_R8G8B8_USCALED: 25,\n VK_FORMAT_R8G8B8_SSCALED: 26,\n VK_FORMAT_R8G8B8_UINT: 27,\n VK_FORMAT_R8G8B8_SINT: 28,\n VK_FORMAT_R8G8B8_SRGB: 29,\n VK_FORMAT_B8G8R8_UNORM: 30,\n VK_FORMAT_B8G8R8_SNORM: 31,\n VK_FORMAT_B8G8R8_USCALED: 32,\n VK_FORMAT_B8G8R8_SSCALED: 33,\n VK_FORMAT_B8G8R8_UINT: 34,\n VK_FORMAT_B8G8R8_SINT: 35,\n VK_FORMAT_B8G8R8_SRGB: 36,\n VK_FORMAT_R8G8B8A8_UNORM: 37,\n VK_FORMAT_R8G8B8A8_SNORM: 38,\n VK_FORMAT_R8G8B8A8_USCALED: 39,\n VK_FORMAT_R8G8B8A8_SSCALED: 40,\n VK_FORMAT_R8G8B8A8_UINT: 41,\n VK_FORMAT_R8G8B8A8_SINT: 42,\n VK_FORMAT_R8G8B8A8_SRGB: 43,\n VK_FORMAT_B8G8R8A8_UNORM: 44,\n VK_FORMAT_B8G8R8A8_SNORM: 45,\n VK_FORMAT_B8G8R8A8_USCALED: 46,\n VK_FORMAT_B8G8R8A8_SSCALED: 47,\n VK_FORMAT_B8G8R8A8_UINT: 48,\n VK_FORMAT_B8G8R8A8_SINT: 49,\n VK_FORMAT_B8G8R8A8_SRGB: 50,\n VK_FORMAT_A8B8G8R8_UNORM_PACK32: 51,\n VK_FORMAT_A8B8G8R8_SNORM_PACK32: 52,\n VK_FORMAT_A8B8G8R8_USCALED_PACK32: 53,\n VK_FORMAT_A8B8G8R8_SSCALED_PACK32: 54,\n VK_FORMAT_A8B8G8R8_UINT_PACK32: 55,\n VK_FORMAT_A8B8G8R8_SINT_PACK32: 56,\n VK_FORMAT_A8B8G8R8_SRGB_PACK32: 57,\n VK_FORMAT_A2R10G10B10_UNORM_PACK32: 58,\n VK_FORMAT_A2R10G10B10_SNORM_PACK32: 59,\n VK_FORMAT_A2R10G10B10_USCALED_PACK32: 60,\n VK_FORMAT_A2R10G10B10_SSCALED_PACK32: 61,\n VK_FORMAT_A2R10G10B10_UINT_PACK32: 62,\n VK_FORMAT_A2R10G10B10_SINT_PACK32: 63,\n VK_FORMAT_A2B10G10R10_UNORM_PACK32: 64,\n VK_FORMAT_A2B10G10R10_SNORM_PACK32: 65,\n VK_FORMAT_A2B10G10R10_USCALED_PACK32: 66,\n VK_FORMAT_A2B10G10R10_SSCALED_PACK32: 67,\n VK_FORMAT_A2B10G10R10_UINT_PACK32: 68,\n VK_FORMAT_A2B10G10R10_SINT_PACK32: 69,\n VK_FORMAT_R16_UNORM: 70,\n VK_FORMAT_R16_SNORM: 71,\n VK_FORMAT_R16_USCALED: 72,\n VK_FORMAT_R16_SSCALED: 73,\n VK_FORMAT_R16_UINT: 74,\n VK_FORMAT_R16_SINT: 75,\n VK_FORMAT_R16_SFLOAT: 76,\n VK_FORMAT_R16G16_UNORM: 77,\n VK_FORMAT_R16G16_SNORM: 78,\n VK_FORMAT_R16G16_USCALED: 79,\n VK_FORMAT_R16G16_SSCALED: 80,\n VK_FORMAT_R16G16_UINT: 81,\n VK_FORMAT_R16G16_SINT: 82,\n VK_FORMAT_R16G16_SFLOAT: 83,\n VK_FORMAT_R16G16B16_UNORM: 84,\n VK_FORMAT_R16G16B16_SNORM: 85,\n VK_FORMAT_R16G16B16_USCALED: 86,\n VK_FORMAT_R16G16B16_SSCALED: 87,\n VK_FORMAT_R16G16B16_UINT: 88,\n VK_FORMAT_R16G16B16_SINT: 89,\n VK_FORMAT_R16G16B16_SFLOAT: 90,\n VK_FORMAT_R16G16B16A16_UNORM: 91,\n VK_FORMAT_R16G16B16A16_SNORM: 92,\n VK_FORMAT_R16G16B16A16_USCALED: 93,\n VK_FORMAT_R16G16B16A16_SSCALED: 94,\n VK_FORMAT_R16G16B16A16_UINT: 95,\n VK_FORMAT_R16G16B16A16_SINT: 96,\n VK_FORMAT_R16G16B16A16_SFLOAT: 97,\n VK_FORMAT_R32_UINT: 98,\n VK_FORMAT_R32_SINT: 99,\n VK_FORMAT_R32_SFLOAT: 100,\n VK_FORMAT_R32G32_UINT: 101,\n VK_FORMAT_R32G32_SINT: 102,\n VK_FORMAT_R32G32_SFLOAT: 103,\n VK_FORMAT_R32G32B32_UINT: 104,\n VK_FORMAT_R32G32B32_SINT: 105,\n VK_FORMAT_R32G32B32_SFLOAT: 106,\n VK_FORMAT_R32G32B32A32_UINT: 107,\n VK_FORMAT_R32G32B32A32_SINT: 108,\n VK_FORMAT_R32G32B32A32_SFLOAT: 109,\n VK_FORMAT_R64_UINT: 110,\n VK_FORMAT_R64_SINT: 111,\n VK_FORMAT_R64_SFLOAT: 112,\n VK_FORMAT_R64G64_UINT: 113,\n VK_FORMAT_R64G64_SINT: 114,\n VK_FORMAT_R64G64_SFLOAT: 115,\n VK_FORMAT_R64G64B64_UINT: 116,\n VK_FORMAT_R64G64B64_SINT: 117,\n VK_FORMAT_R64G64B64_SFLOAT: 118,\n VK_FORMAT_R64G64B64A64_UINT: 119,\n VK_FORMAT_R64G64B64A64_SINT: 120,\n VK_FORMAT_R64G64B64A64_SFLOAT: 121,\n VK_FORMAT_B10G11R11_UFLOAT_PACK32: 122,\n VK_FORMAT_E5B9G9R9_UFLOAT_PACK32: 123,\n VK_FORMAT_D16_UNORM: 124,\n VK_FORMAT_X8_D24_UNORM_PACK32: 125,\n VK_FORMAT_D32_SFLOAT: 126,\n VK_FORMAT_S8_UINT: 127,\n VK_FORMAT_D16_UNORM_S8_UINT: 128,\n VK_FORMAT_D24_UNORM_S8_UINT: 129,\n VK_FORMAT_D32_SFLOAT_S8_UINT: 130,\n VK_FORMAT_BC1_RGB_UNORM_BLOCK: 131,\n VK_FORMAT_BC1_RGB_SRGB_BLOCK: 132,\n VK_FORMAT_BC1_RGBA_UNORM_BLOCK: 133,\n VK_FORMAT_BC1_RGBA_SRGB_BLOCK: 134,\n VK_FORMAT_BC2_UNORM_BLOCK: 135,\n VK_FORMAT_BC2_SRGB_BLOCK: 136,\n VK_FORMAT_BC3_UNORM_BLOCK: 137,\n VK_FORMAT_BC3_SRGB_BLOCK: 138,\n VK_FORMAT_BC4_UNORM_BLOCK: 139,\n VK_FORMAT_BC4_SNORM_BLOCK: 140,\n VK_FORMAT_BC5_UNORM_BLOCK: 141,\n VK_FORMAT_BC5_SNORM_BLOCK: 142,\n VK_FORMAT_BC6H_UFLOAT_BLOCK: 143,\n VK_FORMAT_BC6H_SFLOAT_BLOCK: 144,\n VK_FORMAT_BC7_UNORM_BLOCK: 145,\n VK_FORMAT_BC7_SRGB_BLOCK: 146,\n VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK: 147,\n VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK: 148,\n VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK: 149,\n VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK: 150,\n VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK: 151,\n VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK: 152,\n VK_FORMAT_EAC_R11_UNORM_BLOCK: 153,\n VK_FORMAT_EAC_R11_SNORM_BLOCK: 154,\n VK_FORMAT_EAC_R11G11_UNORM_BLOCK: 155,\n VK_FORMAT_EAC_R11G11_SNORM_BLOCK: 156,\n VK_FORMAT_ASTC_4x4_UNORM_BLOCK: 157,\n VK_FORMAT_ASTC_4x4_SRGB_BLOCK: 158,\n VK_FORMAT_ASTC_5x4_UNORM_BLOCK: 159,\n VK_FORMAT_ASTC_5x4_SRGB_BLOCK: 160,\n VK_FORMAT_ASTC_5x5_UNORM_BLOCK: 161,\n VK_FORMAT_ASTC_5x5_SRGB_BLOCK: 162,\n VK_FORMAT_ASTC_6x5_UNORM_BLOCK: 163,\n VK_FORMAT_ASTC_6x5_SRGB_BLOCK: 164,\n VK_FORMAT_ASTC_6x6_UNORM_BLOCK: 165,\n VK_FORMAT_ASTC_6x6_SRGB_BLOCK: 166,\n VK_FORMAT_ASTC_8x5_UNORM_BLOCK: 167,\n VK_FORMAT_ASTC_8x5_SRGB_BLOCK: 168,\n VK_FORMAT_ASTC_8x6_UNORM_BLOCK: 169,\n VK_FORMAT_ASTC_8x6_SRGB_BLOCK: 170,\n VK_FORMAT_ASTC_8x8_UNORM_BLOCK: 171,\n VK_FORMAT_ASTC_8x8_SRGB_BLOCK: 172,\n VK_FORMAT_ASTC_10x5_UNORM_BLOCK: 173,\n VK_FORMAT_ASTC_10x5_SRGB_BLOCK: 174,\n VK_FORMAT_ASTC_10x6_UNORM_BLOCK: 175,\n VK_FORMAT_ASTC_10x6_SRGB_BLOCK: 176,\n VK_FORMAT_ASTC_10x8_UNORM_BLOCK: 177,\n VK_FORMAT_ASTC_10x8_SRGB_BLOCK: 178,\n VK_FORMAT_ASTC_10x10_UNORM_BLOCK: 179,\n VK_FORMAT_ASTC_10x10_SRGB_BLOCK: 180,\n VK_FORMAT_ASTC_12x10_UNORM_BLOCK: 181,\n VK_FORMAT_ASTC_12x10_SRGB_BLOCK: 182,\n VK_FORMAT_ASTC_12x12_UNORM_BLOCK: 183,\n VK_FORMAT_ASTC_12x12_SRGB_BLOCK: 184,\n VK_FORMAT_G8B8G8R8_422_UNORM: 1000156000,\n VK_FORMAT_B8G8R8G8_422_UNORM: 1000156001,\n VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM: 1000156002,\n VK_FORMAT_G8_B8R8_2PLANE_420_UNORM: 1000156003,\n VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM: 1000156004,\n VK_FORMAT_G8_B8R8_2PLANE_422_UNORM: 1000156005,\n VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM: 1000156006,\n VK_FORMAT_R10X6_UNORM_PACK16: 1000156007,\n VK_FORMAT_R10X6G10X6_UNORM_2PACK16: 1000156008,\n VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16: 1000156009,\n VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16: 1000156010,\n VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16: 1000156011,\n VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16: 1000156012,\n VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16: 1000156013,\n VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16: 1000156014,\n VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16: 1000156015,\n VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16: 1000156016,\n VK_FORMAT_R12X4_UNORM_PACK16: 1000156017,\n VK_FORMAT_R12X4G12X4_UNORM_2PACK16: 1000156018,\n VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16: 1000156019,\n VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16: 1000156020,\n VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16: 1000156021,\n VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16: 1000156022,\n VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16: 1000156023,\n VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16: 1000156024,\n VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16: 1000156025,\n VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16: 1000156026,\n VK_FORMAT_G16B16G16R16_422_UNORM: 1000156027,\n VK_FORMAT_B16G16R16G16_422_UNORM: 1000156028,\n VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM: 1000156029,\n VK_FORMAT_G16_B16R16_2PLANE_420_UNORM: 1000156030,\n VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM: 1000156031,\n VK_FORMAT_G16_B16R16_2PLANE_422_UNORM: 1000156032,\n VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM: 1000156033,\n VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG: 1000054000,\n VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG: 1000054001,\n VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG: 1000054002,\n VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG: 1000054003,\n VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG: 1000054004,\n VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG: 1000054005,\n VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG: 1000054006,\n VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG: 1000054007,\n VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT: 1000066000,\n VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT: 1000066001,\n VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT: 1000066002,\n VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT: 1000066003,\n VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT: 1000066004,\n VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT: 1000066005,\n VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT: 1000066006,\n VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT: 1000066007,\n VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT: 1000066008,\n VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT: 1000066009,\n VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT: 1000066010,\n VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT: 1000066011,\n VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT: 1000066012,\n VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT: 1000066013,\n VK_FORMAT_G8B8G8R8_422_UNORM_KHR: 1000156000,\n VK_FORMAT_B8G8R8G8_422_UNORM_KHR: 1000156001,\n VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR: 1000156002,\n VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR: 1000156003,\n VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR: 1000156004,\n VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR: 1000156005,\n VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR: 1000156006,\n VK_FORMAT_R10X6_UNORM_PACK16_KHR: 1000156007,\n VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR: 1000156008,\n VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR: 1000156009,\n VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR: 1000156010,\n VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR: 1000156011,\n VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR: 1000156012,\n VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR: 1000156013,\n VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR: 1000156014,\n VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR: 1000156015,\n VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR: 1000156016,\n VK_FORMAT_R12X4_UNORM_PACK16_KHR: 1000156017,\n VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR: 1000156018,\n VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR: 1000156019,\n VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR: 1000156020,\n VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR: 1000156021,\n VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR: 1000156022,\n VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR: 1000156023,\n VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR: 1000156024,\n VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR: 1000156025,\n VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR: 1000156026,\n VK_FORMAT_G16B16G16R16_422_UNORM_KHR: 1000156027,\n VK_FORMAT_B16G16R16G16_422_UNORM_KHR: 1000156028,\n VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR: 1000156029,\n VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR: 1000156030,\n VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR: 1000156031,\n VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR: 1000156032,\n VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR: 1000156033,\n};\nexport default Object.freeze(VulkanConstants);\n","/* This file is automatically rebuilt by the Cesium build process. */\nconst e=[171,75,84,88,32,50,48,187,13,10,26,10];var n,i,s,a,r,o,l,f;!function(t){t[t.NONE=0]=\"NONE\",t[t.BASISLZ=1]=\"BASISLZ\",t[t.ZSTD=2]=\"ZSTD\",t[t.ZLIB=3]=\"ZLIB\";}(n||(n={})),function(t){t[t.BASICFORMAT=0]=\"BASICFORMAT\";}(i||(i={})),function(t){t[t.UNSPECIFIED=0]=\"UNSPECIFIED\",t[t.ETC1S=163]=\"ETC1S\",t[t.UASTC=166]=\"UASTC\";}(s||(s={})),function(t){t[t.UNSPECIFIED=0]=\"UNSPECIFIED\",t[t.SRGB=1]=\"SRGB\";}(a||(a={})),function(t){t[t.UNSPECIFIED=0]=\"UNSPECIFIED\",t[t.LINEAR=1]=\"LINEAR\",t[t.SRGB=2]=\"SRGB\",t[t.ITU=3]=\"ITU\",t[t.NTSC=4]=\"NTSC\",t[t.SLOG=5]=\"SLOG\",t[t.SLOG2=6]=\"SLOG2\";}(r||(r={})),function(t){t[t.ALPHA_STRAIGHT=0]=\"ALPHA_STRAIGHT\",t[t.ALPHA_PREMULTIPLIED=1]=\"ALPHA_PREMULTIPLIED\";}(o||(o={})),function(t){t[t.RGB=0]=\"RGB\",t[t.RRR=3]=\"RRR\",t[t.GGG=4]=\"GGG\",t[t.AAA=15]=\"AAA\";}(l||(l={})),function(t){t[t.RGB=0]=\"RGB\",t[t.RGBA=3]=\"RGBA\",t[t.RRR=4]=\"RRR\",t[t.RRRG=5]=\"RRRG\";}(f||(f={}));class U{constructor(){this.vkFormat=0,this.typeSize=1,this.pixelWidth=0,this.pixelHeight=0,this.pixelDepth=0,this.layerCount=0,this.faceCount=1,this.supercompressionScheme=n.NONE,this.levels=[],this.dataFormatDescriptor=[{vendorId:0,descriptorType:i.BASICFORMAT,versionNumber:2,descriptorBlockSize:40,colorModel:s.UNSPECIFIED,colorPrimaries:a.SRGB,transferFunction:a.SRGB,flags:o.ALPHA_STRAIGHT,texelBlockDimension:{x:4,y:4,z:1,w:1},bytesPlane:[],samples:[]}],this.keyValue={},this.globalData=null;}}class c{constructor(t,e,n,i){this._dataView=new DataView(t.buffer,t.byteOffset+e,n),this._littleEndian=i,this._offset=0;}_nextUint8(){const t=this._dataView.getUint8(this._offset);return this._offset+=1,t}_nextUint16(){const t=this._dataView.getUint16(this._offset,this._littleEndian);return this._offset+=2,t}_nextUint32(){const t=this._dataView.getUint32(this._offset,this._littleEndian);return this._offset+=4,t}_nextUint64(){const t=this._dataView.getUint32(this._offset,this._littleEndian)+2**32*this._dataView.getUint32(this._offset+4,this._littleEndian);return this._offset+=8,t}_skip(t){return this._offset+=t,this}_scan(t,e=0){const n=this._offset;let i=0;for(;this._dataView.getUint8(this._offset)!==e&&i<t;)i++,this._offset++;return i<t&&this._offset++,new Uint8Array(this._dataView.buffer,this._dataView.byteOffset+n,i)}}function _(t){return \"undefined\"!=typeof TextDecoder?(new TextDecoder).decode(t):Buffer.from(t).toString(\"utf8\")}function p(t){const n=new Uint8Array(t.buffer,t.byteOffset,e.length);if(n[0]!==e[0]||n[1]!==e[1]||n[2]!==e[2]||n[3]!==e[3]||n[4]!==e[4]||n[5]!==e[5]||n[6]!==e[6]||n[7]!==e[7]||n[8]!==e[8]||n[9]!==e[9]||n[10]!==e[10]||n[11]!==e[11])throw new Error(\"Missing KTX 2.0 identifier.\");const i=new U,s=17*Uint32Array.BYTES_PER_ELEMENT,a=new c(t,e.length,s,!0);i.vkFormat=a._nextUint32(),i.typeSize=a._nextUint32(),i.pixelWidth=a._nextUint32(),i.pixelHeight=a._nextUint32(),i.pixelDepth=a._nextUint32(),i.layerCount=a._nextUint32(),i.faceCount=a._nextUint32();const r=a._nextUint32();i.supercompressionScheme=a._nextUint32();const o=a._nextUint32(),l=a._nextUint32(),f=a._nextUint32(),h=a._nextUint32(),g=a._nextUint64(),p=a._nextUint64(),x=new c(t,e.length+s,3*r*8,!0);for(let e=0;e<r;e++)i.levels.push({levelData:new Uint8Array(t.buffer,t.byteOffset+x._nextUint64(),x._nextUint64()),uncompressedByteLength:x._nextUint64()});const u=new c(t,o,l,!0),y={vendorId:u._skip(4)._nextUint16(),descriptorType:u._nextUint16(),versionNumber:u._nextUint16(),descriptorBlockSize:u._nextUint16(),colorModel:u._nextUint8(),colorPrimaries:u._nextUint8(),transferFunction:u._nextUint8(),flags:u._nextUint8(),texelBlockDimension:{x:u._nextUint8()+1,y:u._nextUint8()+1,z:u._nextUint8()+1,w:u._nextUint8()+1},bytesPlane:[u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8()],samples:[]},D=(y.descriptorBlockSize/4-6)/4;for(let t=0;t<D;t++)y.samples[t]={bitOffset:u._nextUint16(),bitLength:u._nextUint8(),channelID:u._nextUint8(),samplePosition:[u._nextUint8(),u._nextUint8(),u._nextUint8(),u._nextUint8()],sampleLower:u._nextUint32(),sampleUpper:u._nextUint32()};i.dataFormatDescriptor.length=0,i.dataFormatDescriptor.push(y);const b=new c(t,f,h,!0);for(;b._offset<h;){const t=b._nextUint32(),e=b._scan(t),n=_(e),s=b._scan(t-e.byteLength);i.keyValue[n]=n.match(/^ktx/i)?_(s):s,b._offset%4&&b._skip(4-b._offset%4);}if(p<=0)return i;const d=new c(t,g,p,!0),B=d._nextUint16(),w=d._nextUint16(),A=d._nextUint32(),S=d._nextUint32(),m=d._nextUint32(),L=d._nextUint32(),I=[];for(let t=0;t<r;t++)I.push({imageFlags:d._nextUint32(),rgbSliceByteOffset:d._nextUint32(),rgbSliceByteLength:d._nextUint32(),alphaSliceByteOffset:d._nextUint32(),alphaSliceByteLength:d._nextUint32()});const R=g+d._offset,E=R+A,T=E+S,O=T+m,P=new Uint8Array(t.buffer,t.byteOffset+R,A),C=new Uint8Array(t.buffer,t.byteOffset+E,S),F=new Uint8Array(t.buffer,t.byteOffset+T,m),G=new Uint8Array(t.buffer,t.byteOffset+O,L);return i.globalData={endpointCount:B,selectorCount:w,imageDescs:I,endpointsData:P,selectorsData:C,tablesData:F,extendedData:G},i}\n\nexport { p as default };\n","/* global require */\nimport defined from \"../Core/defined.js\";\nimport Check from \"../Core/Check.js\";\nimport PixelFormat from \"../Core/PixelFormat.js\";\nimport RuntimeError from \"../Core/RuntimeError.js\";\nimport VulkanConstants from \"../Core//VulkanConstants.js\";\nimport PixelDatatype from \"../Renderer/PixelDatatype.js\";\nimport createTaskProcessorWorker from \"./createTaskProcessorWorker.js\";\nimport ktx_parse from \"../ThirdParty/ktx-parse.js\";\n\nconst faceOrder = [\n \"positiveX\",\n \"negativeX\",\n \"positiveY\",\n \"negativeY\",\n \"positiveZ\",\n \"negativeZ\",\n];\n\n// Flags\nconst colorModelETC1S = 163;\nconst colorModelUASTC = 166;\n\nlet transcoderModule;\nfunction transcode(parameters, transferableObjects) {\n //>>includeStart('debug', pragmas.debug);\n Check.typeOf.object(\"transcoderModule\", transcoderModule);\n //>>includeEnd('debug');\n\n const data = parameters.ktx2Buffer;\n const supportedTargetFormats = parameters.supportedTargetFormats;\n let header;\n try {\n header = ktx_parse(data);\n } catch (e) {\n throw new RuntimeError(\"Invalid KTX2 file.\");\n }\n\n if (header.layerCount !== 0) {\n throw new RuntimeError(\"KTX2 texture arrays are not supported.\");\n }\n\n if (header.pixelDepth !== 0) {\n throw new RuntimeError(\"KTX2 3D textures are unsupported.\");\n }\n\n const dfd = header.dataFormatDescriptor[0];\n const result = new Array(header.levelCount);\n\n if (\n header.vkFormat === 0x0 &&\n (dfd.colorModel === colorModelETC1S || dfd.colorModel === colorModelUASTC)\n ) {\n // Compressed, initialize transcoder module\n transcodeCompressed(\n data,\n header,\n supportedTargetFormats,\n transcoderModule,\n transferableObjects,\n result\n );\n } else {\n transferableObjects.push(data.buffer);\n parseUncompressed(header, result);\n }\n\n return result;\n}\n\n// Parser for uncompressed\nfunction parseUncompressed(header, result) {\n const internalFormat =\n header.vkFormat === VulkanConstants.VK_FORMAT_R8G8B8_SRGB\n ? PixelFormat.RGB\n : PixelFormat.RGBA;\n let datatype;\n if (header.vkFormat === VulkanConstants.VK_FORMAT_R8G8B8A8_UNORM) {\n datatype = PixelDatatype.UNSIGNED_BYTE;\n } else if (\n header.vkFormat === VulkanConstants.VK_FORMAT_R16G16B16A16_SFLOAT\n ) {\n datatype = PixelDatatype.HALF_FLOAT;\n } else if (\n header.vkFormat === VulkanConstants.VK_FORMAT_R32G32B32A32_SFLOAT\n ) {\n datatype = PixelDatatype.FLOAT;\n }\n\n for (let i = 0; i < header.levels.length; ++i) {\n const level = {};\n result[i] = level;\n const levelBuffer = header.levels[i].levelData;\n\n const width = header.pixelWidth >> i;\n const height = header.pixelHeight >> i;\n const faceLength =\n width * height * PixelFormat.componentsLength(internalFormat);\n\n for (let j = 0; j < header.faceCount; ++j) {\n // multiply levelBuffer.byteOffset by the size in bytes of the pixel data type\n const faceByteOffset =\n levelBuffer.byteOffset + faceLength * header.typeSize * j;\n let faceView;\n if (!defined(datatype) || PixelDatatype.sizeInBytes(datatype) === 1) {\n faceView = new Uint8Array(\n levelBuffer.buffer,\n faceByteOffset,\n faceLength\n );\n } else if (PixelDatatype.sizeInBytes(datatype) === 2) {\n faceView = new Uint16Array(\n levelBuffer.buffer,\n faceByteOffset,\n faceLength\n );\n } else {\n faceView = new Float32Array(\n levelBuffer.buffer,\n faceByteOffset,\n faceLength\n );\n }\n\n level[faceOrder[j]] = {\n internalFormat: internalFormat,\n datatype: datatype,\n width: width,\n height: height,\n levelBuffer: faceView,\n };\n }\n }\n}\n\nfunction transcodeCompressed(\n data,\n header,\n supportedTargetFormats,\n transcoderModule,\n transferableObjects,\n result\n) {\n const ktx2File = new transcoderModule.KTX2File(data);\n let width = ktx2File.getWidth();\n let height = ktx2File.getHeight();\n const levels = ktx2File.getLevels();\n const hasAlpha = ktx2File.getHasAlpha();\n\n if (!(width > 0) || !(height > 0) || !(levels > 0)) {\n ktx2File.close();\n ktx2File.delete();\n throw new RuntimeError(\"Invalid KTX2 file\");\n }\n\n let internalFormat, transcoderFormat;\n const dfd = header.dataFormatDescriptor[0];\n const BasisFormat = transcoderModule.transcoder_texture_format;\n\n // Determine target format based on platform support\n if (dfd.colorModel === colorModelETC1S) {\n if (supportedTargetFormats.etc) {\n internalFormat = hasAlpha\n ? PixelFormat.RGBA8_ETC2_EAC\n : PixelFormat.RGB8_ETC2;\n transcoderFormat = hasAlpha\n ? BasisFormat.cTFETC2_RGBA\n : BasisFormat.cTFETC1_RGB;\n } else if (supportedTargetFormats.etc1 && !hasAlpha) {\n internalFormat = PixelFormat.RGB_ETC1;\n transcoderFormat = BasisFormat.cTFETC1_RGB;\n } else if (supportedTargetFormats.s3tc) {\n internalFormat = hasAlpha ? PixelFormat.RGBA_DXT5 : PixelFormat.RGB_DXT1;\n transcoderFormat = hasAlpha\n ? BasisFormat.cTFBC3_RGBA\n : BasisFormat.cTFBC1_RGB;\n } else if (supportedTargetFormats.pvrtc) {\n internalFormat = hasAlpha\n ? PixelFormat.RGBA_PVRTC_4BPPV1\n : PixelFormat.RGB_PVRTC_4BPPV1;\n transcoderFormat = hasAlpha\n ? BasisFormat.cTFPVRTC1_4_RGBA\n : BasisFormat.cTFPVRTC1_4_RGB;\n } else if (supportedTargetFormats.astc) {\n internalFormat = PixelFormat.RGBA_ASTC;\n transcoderFormat = BasisFormat.cTFASTC_4x4_RGBA;\n } else if (supportedTargetFormats.bc7) {\n internalFormat = PixelFormat.RGBA_BC7;\n transcoderFormat = BasisFormat.cTFBC7_RGBA;\n } else {\n throw new RuntimeError(\n \"No transcoding format target available for ETC1S compressed ktx2.\"\n );\n }\n } else if (dfd.colorModel === colorModelUASTC) {\n if (supportedTargetFormats.astc) {\n internalFormat = PixelFormat.RGBA_ASTC;\n transcoderFormat = BasisFormat.cTFASTC_4x4_RGBA;\n } else if (supportedTargetFormats.bc7) {\n internalFormat = PixelFormat.RGBA_BC7;\n transcoderFormat = BasisFormat.cTFBC7_RGBA;\n } else if (supportedTargetFormats.s3tc) {\n internalFormat = hasAlpha ? PixelFormat.RGBA_DXT5 : PixelFormat.RGB_DXT1;\n transcoderFormat = hasAlpha\n ? BasisFormat.cTFBC3_RGBA\n : BasisFormat.cTFBC1_RGB;\n } else if (supportedTargetFormats.etc) {\n internalFormat = hasAlpha\n ? PixelFormat.RGBA8_ETC2_EAC\n : PixelFormat.RGB8_ETC2;\n transcoderFormat = hasAlpha\n ? BasisFormat.cTFETC2_RGBA\n : BasisFormat.cTFETC1_RGB;\n } else if (supportedTargetFormats.etc1 && !hasAlpha) {\n internalFormat = PixelFormat.RGB_ETC1;\n transcoderFormat = BasisFormat.cTFETC1_RGB;\n } else if (supportedTargetFormats.pvrtc) {\n internalFormat = hasAlpha\n ? PixelFormat.RGBA_PVRTC_4BPPV1\n : PixelFormat.RGB_PVRTC_4BPPV1;\n transcoderFormat = hasAlpha\n ? BasisFormat.cTFPVRTC1_4_RGBA\n : BasisFormat.cTFPVRTC1_4_RGB;\n } else {\n throw new RuntimeError(\n \"No transcoding format target available for UASTC compressed ktx2.\"\n );\n }\n }\n\n if (!ktx2File.startTranscoding()) {\n ktx2File.close();\n ktx2File.delete();\n throw new RuntimeError(\"startTranscoding() failed\");\n }\n\n for (let i = 0; i < header.levels.length; ++i) {\n const level = {};\n result[i] = level;\n width = header.pixelWidth >> i;\n height = header.pixelHeight >> i;\n\n // Since supercompressed cubemaps are unsupported, this function\n // does not iterate over KTX2 faces and assumes faceCount = 1.\n\n const dstSize = ktx2File.getImageTranscodedSizeInBytes(\n i, // level index\n 0, // layer index\n 0, // face index\n transcoderFormat.value\n );\n const dst = new Uint8Array(dstSize);\n\n const transcoded = ktx2File.transcodeImage(\n dst,\n i, // level index\n 0, // layer index\n 0, // face index\n transcoderFormat.value,\n 0, // get_alpha_for_opaque_formats\n -1, // channel0\n -1 // channel1\n );\n\n if (!defined(transcoded)) {\n throw new RuntimeError(\"transcodeImage() failed.\");\n }\n\n transferableObjects.push(dst.buffer);\n\n level[faceOrder[0]] = {\n internalFormat: internalFormat,\n width: width,\n height: height,\n levelBuffer: dst,\n };\n }\n\n ktx2File.close();\n ktx2File.delete();\n return result;\n}\n\nfunction initWorker(compiledModule) {\n transcoderModule = compiledModule;\n transcoderModule.initializeBasis();\n\n self.onmessage = createTaskProcessorWorker(transcode);\n self.postMessage(true);\n}\n\nfunction transcodeKTX2(event) {\n const data = event.data;\n\n // Expect the first message to be to load a web assembly module\n const wasmConfig = data.webAssemblyConfig;\n if (defined(wasmConfig)) {\n // Require and compile WebAssembly module, or use fallback if not supported\n return require([wasmConfig.modulePath], function (mscBasisTranscoder) {\n if (defined(wasmConfig.wasmBinaryFile)) {\n if (!defined(mscBasisTranscoder)) {\n mscBasisTranscoder = self.MSC_TRANSCODER;\n }\n\n mscBasisTranscoder(wasmConfig).then(function (compiledModule) {\n initWorker(compiledModule);\n });\n } else {\n return mscBasisTranscoder().then(function (transcoder) {\n initWorker(transcoder);\n });\n }\n });\n }\n}\nexport default transcodeKTX2;\n"],"names":["WebGLConstants","PixelDatatype","Check","ktx_parse","RuntimeError","VulkanConstants","PixelFormat","defined"],"mappings":"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AoB;EACxD,IAAI;EACJ,CAAC,CAAC;AACF;AACA,wBAAe,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC;;EC9F3C;EACA;EACA;EACA;EACA;EACA,MAAM,WAAW,GAAG;EACpB;EACA;EACA;EACA;EACA;EACA;EACA,EAAE,eAAe,EAAEA,6BAAc,CAAC,eAAe;AACjD;EACA;EACA;EACA;EACA;EACA;EACA;EACA,EAAE,aAAa,EAAEA,6BAAc,CAAC,aAAa;AAC7C;EACA;EACA;EACA;EACA;EACA;EACA;EACA,EAAE,KAAK,EAAEA,6BAAc,CAAC,KAAK;AAC7B;EACA;EACA;EACA;EACA;EACA;EACA;EACA,EAAE,GAAG,EAAEA,6BAAc,CAAC,GAAG;AACzB;EACA;EACA;EACA;EACA;EACA;EACA;EACA,EAAE,IAAI,EAAEA,6BAAc,CAAC,IAAI;AAC3B;EACA;EACA;EACA;EACA;EACA;EACA;EACA,EAAE,SAAS,EAAEA,6BAAc,CAAC,SAAS;AACrC;EACA;EACA;EACA;EACA;EACA;EACA;EACA,EAAE,eAAe,EAAEA,6BAAc,CAAC,eAAe;AACjD;EACA;EACA;EACA;EACA;EACA;EACA;EACA,EAAE,QAAQ,EAAEA,6BAAc,CAAC,4BAA4B;AACvD;EACA;EACA;EACA;EACA;EACA;EACA;EACA,EAAE,SAAS,EAAEA,6BAAc,CAAC,6BAA6B;AACzD;EACA;EACA;EACA;EACA;EACA;EACA;EACA,EAAE,SAAS,EAAEA,6BAAc,CAAC,6BAA6B;AACzD;EACA;EACA;EACA;EACA;EACA;EACA;EACA,EAAE,SAAS,EAAEA,6BAAc,CAAC,6BAA6B;AACzD;EACA;EACA;EACA;EACA;EACA;EACA;EACA,EAAE,gBAAgB,EAAEA,6BAAc,CAAC,+BAA+B;AAClE;EACA;EACA;EACA;EACA;EACA;EACA;EACA,EAAE,gBAAgB,EAAEA,6BAAc,CAAC,+BAA+B;AAClE;EACA;EACA;EACA;EACA;EACA;EACA;EACA,EAAE,iBAAiB,EAAEA,6BAAc,CAAC,gCAAgC;AACpE;EACA;EACA;EACA;EACA;EACA;EACA;EAC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"} |