@loaders.gl/textures 3.1.0-beta.2 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/dist/basis-worker.js +33 -9
  2. package/dist/bundle.js +185 -119
  3. package/dist/compressed-texture-loader.d.ts +1 -15
  4. package/dist/compressed-texture-loader.d.ts.map +1 -1
  5. package/dist/compressed-texture-worker.js +174 -108
  6. package/dist/crunch-worker.js +11 -11
  7. package/dist/es5/basis-loader.js +13 -5
  8. package/dist/es5/basis-loader.js.map +1 -1
  9. package/dist/es5/bundle.js +1 -1
  10. package/dist/es5/bundle.js.map +1 -1
  11. package/dist/es5/compressed-texture-loader.js +59 -20
  12. package/dist/es5/compressed-texture-loader.js.map +1 -1
  13. package/dist/es5/compressed-texture-writer.js +2 -2
  14. package/dist/es5/compressed-texture-writer.js.map +1 -1
  15. package/dist/es5/crunch-loader.js +2 -2
  16. package/dist/es5/crunch-loader.js.map +1 -1
  17. package/dist/es5/index.js +19 -19
  18. package/dist/es5/index.js.map +1 -1
  19. package/dist/es5/ktx2-basis-universal-texture-writer.js +2 -2
  20. package/dist/es5/ktx2-basis-universal-texture-writer.js.map +1 -1
  21. package/dist/es5/lib/encoders/encode-ktx.js +1 -1
  22. package/dist/es5/lib/encoders/encode-ktx.js.map +1 -1
  23. package/dist/es5/lib/encoders/encode-ktx2-basis-texture.js +76 -32
  24. package/dist/es5/lib/encoders/encode-ktx2-basis-texture.js.map +1 -1
  25. package/dist/es5/lib/encoders/encode-texture.js +41 -13
  26. package/dist/es5/lib/encoders/encode-texture.js.map +1 -1
  27. package/dist/es5/lib/{gl-constants.js → gl-extensions.js} +4 -4
  28. package/dist/es5/lib/gl-extensions.js.map +1 -0
  29. package/dist/es5/lib/parsers/basis-module-loader.js +195 -51
  30. package/dist/es5/lib/parsers/basis-module-loader.js.map +1 -1
  31. package/dist/es5/lib/parsers/crunch-module-loader.js +71 -15
  32. package/dist/es5/lib/parsers/crunch-module-loader.js.map +1 -1
  33. package/dist/es5/lib/parsers/parse-basis.js +137 -85
  34. package/dist/es5/lib/parsers/parse-basis.js.map +1 -1
  35. package/dist/es5/lib/parsers/parse-crunch.js +80 -59
  36. package/dist/es5/lib/parsers/parse-crunch.js.map +1 -1
  37. package/dist/es5/lib/parsers/parse-dds.js +30 -30
  38. package/dist/es5/lib/parsers/parse-dds.js.map +1 -1
  39. package/dist/es5/lib/parsers/parse-ktx.js +16 -14
  40. package/dist/es5/lib/parsers/parse-ktx.js.map +1 -1
  41. package/dist/es5/lib/parsers/parse-npy.js +28 -25
  42. package/dist/es5/lib/parsers/parse-npy.js.map +1 -1
  43. package/dist/es5/lib/parsers/parse-pvr.js +49 -49
  44. package/dist/es5/lib/parsers/parse-pvr.js.map +1 -1
  45. package/dist/es5/lib/texture-api/async-deep-map.js +156 -27
  46. package/dist/es5/lib/texture-api/async-deep-map.js.map +1 -1
  47. package/dist/es5/lib/texture-api/deep-load.js +67 -6
  48. package/dist/es5/lib/texture-api/deep-load.js.map +1 -1
  49. package/dist/es5/lib/texture-api/generate-url.js +10 -4
  50. package/dist/es5/lib/texture-api/generate-url.js.map +1 -1
  51. package/dist/es5/lib/texture-api/load-image-array.js +76 -12
  52. package/dist/es5/lib/texture-api/load-image-array.js.map +1 -1
  53. package/dist/es5/lib/texture-api/load-image-cube.js +96 -27
  54. package/dist/es5/lib/texture-api/load-image-cube.js.map +1 -1
  55. package/dist/es5/lib/texture-api/load-image.js +142 -35
  56. package/dist/es5/lib/texture-api/load-image.js.map +1 -1
  57. package/dist/es5/lib/utils/extract-mipmap-images.js +9 -9
  58. package/dist/es5/lib/utils/extract-mipmap-images.js.map +1 -1
  59. package/dist/es5/lib/utils/ktx-format-helper.js +68 -68
  60. package/dist/es5/lib/utils/ktx-format-helper.js.map +1 -1
  61. package/dist/es5/lib/utils/texture-formats.js +27 -9
  62. package/dist/es5/lib/utils/texture-formats.js.map +1 -1
  63. package/dist/es5/lib/utils/version.js +1 -1
  64. package/dist/es5/lib/utils/version.js.map +1 -1
  65. package/dist/es5/npy-loader.js +42 -7
  66. package/dist/es5/npy-loader.js.map +1 -1
  67. package/dist/es5/workers/crunch-worker.js +11 -2
  68. package/dist/es5/workers/crunch-worker.js.map +1 -1
  69. package/dist/esm/index.js +1 -1
  70. package/dist/esm/index.js.map +1 -1
  71. package/dist/esm/lib/encoders/encode-ktx2-basis-texture.js +1 -1
  72. package/dist/esm/lib/encoders/encode-ktx2-basis-texture.js.map +1 -1
  73. package/dist/esm/lib/{gl-constants.js → gl-extensions.js} +2 -2
  74. package/dist/esm/lib/gl-extensions.js.map +1 -0
  75. package/dist/esm/lib/parsers/basis-module-loader.js +1 -1
  76. package/dist/esm/lib/parsers/basis-module-loader.js.map +1 -1
  77. package/dist/esm/lib/parsers/parse-basis.js +7 -7
  78. package/dist/esm/lib/parsers/parse-basis.js.map +1 -1
  79. package/dist/esm/lib/parsers/parse-crunch.js +4 -4
  80. package/dist/esm/lib/parsers/parse-crunch.js.map +1 -1
  81. package/dist/esm/lib/parsers/parse-dds.js +7 -7
  82. package/dist/esm/lib/parsers/parse-dds.js.map +1 -1
  83. package/dist/esm/lib/parsers/parse-pvr.js +28 -28
  84. package/dist/esm/lib/parsers/parse-pvr.js.map +1 -1
  85. package/dist/esm/lib/utils/ktx-format-helper.js +67 -67
  86. package/dist/esm/lib/utils/ktx-format-helper.js.map +1 -1
  87. package/dist/esm/lib/utils/version.js +1 -1
  88. package/dist/esm/lib/utils/version.js.map +1 -1
  89. package/dist/index.d.ts +1 -1
  90. package/dist/index.d.ts.map +1 -1
  91. package/dist/index.js +3 -3
  92. package/dist/lib/encoders/encode-ktx2-basis-texture.d.ts +1 -1
  93. package/dist/lib/encoders/encode-ktx2-basis-texture.d.ts.map +1 -1
  94. package/dist/lib/encoders/encode-ktx2-basis-texture.js +1 -1
  95. package/dist/lib/{gl-constants.d.ts → gl-extensions.d.ts} +2 -2
  96. package/dist/lib/gl-extensions.d.ts.map +1 -0
  97. package/dist/lib/{gl-constants.js → gl-extensions.js} +2 -2
  98. package/dist/lib/parsers/parse-basis.d.ts +2 -16
  99. package/dist/lib/parsers/parse-basis.d.ts.map +1 -1
  100. package/dist/lib/parsers/parse-basis.js +31 -7
  101. package/dist/lib/parsers/parse-crunch.js +4 -4
  102. package/dist/lib/parsers/parse-dds.js +7 -7
  103. package/dist/lib/parsers/parse-pvr.d.ts.map +1 -1
  104. package/dist/lib/parsers/parse-pvr.js +70 -28
  105. package/dist/lib/utils/ktx-format-helper.js +67 -67
  106. package/package.json +5 -5
  107. package/src/index.ts +1 -1
  108. package/src/lib/encoders/encode-ktx2-basis-texture.ts +2 -2
  109. package/src/lib/{gl-constants.ts → gl-extensions.ts} +1 -1
  110. package/src/lib/parsers/{parse-basis.js → parse-basis.ts} +34 -10
  111. package/src/lib/parsers/parse-crunch.ts +4 -4
  112. package/src/lib/parsers/parse-dds.ts +7 -7
  113. package/src/lib/parsers/parse-pvr.ts +70 -28
  114. package/src/lib/utils/ktx-format-helper.ts +67 -67
  115. package/dist/es5/lib/gl-constants.js.map +0 -1
  116. package/dist/esm/lib/gl-constants.js.map +0 -1
  117. package/dist/lib/gl-constants.d.ts.map +0 -1
  118. package/src/lib/parsers/parse-ktx.js +0 -42
  119. package/src/lib/parsers/parse-npy.js +0 -82
@@ -1,4 +1,4 @@
1
- import { GL } from '../gl-constants';
1
+ import { GL_EXTENSIONS_CONSTANTS } from '../gl-extensions';
2
2
  import { extractMipmapImages } from '../utils/extract-mipmap-images';
3
3
  const PVR_CONSTANTS = {
4
4
  MAGIC_NUMBER: 0x03525650,
@@ -14,33 +14,33 @@ const PVR_CONSTANTS = {
14
14
  METADATA_SIZE_INDEX: 12
15
15
  };
16
16
  const PVR_PIXEL_FORMATS = {
17
- 0: [GL.COMPRESSED_RGB_PVRTC_2BPPV1_IMG],
18
- 1: [GL.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG],
19
- 2: [GL.COMPRESSED_RGB_PVRTC_4BPPV1_IMG],
20
- 3: [GL.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG],
21
- 6: [GL.COMPRESSED_RGB_ETC1_WEBGL],
22
- 7: [GL.COMPRESSED_RGB_S3TC_DXT1_EXT],
23
- 9: [GL.COMPRESSED_RGBA_S3TC_DXT3_EXT],
24
- 11: [GL.COMPRESSED_RGBA_S3TC_DXT5_EXT],
25
- 22: [GL.COMPRESSED_RGB8_ETC2],
26
- 23: [GL.COMPRESSED_RGBA8_ETC2_EAC],
27
- 24: [GL.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2],
28
- 25: [GL.COMPRESSED_R11_EAC],
29
- 26: [GL.COMPRESSED_RG11_EAC],
30
- 27: [GL.COMPRESSED_RGBA_ASTC_4X4_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR],
31
- 28: [GL.COMPRESSED_RGBA_ASTC_5X4_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR],
32
- 29: [GL.COMPRESSED_RGBA_ASTC_5X5_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR],
33
- 30: [GL.COMPRESSED_RGBA_ASTC_6X5_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR],
34
- 31: [GL.COMPRESSED_RGBA_ASTC_6X6_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR],
35
- 32: [GL.COMPRESSED_RGBA_ASTC_8X5_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR],
36
- 33: [GL.COMPRESSED_RGBA_ASTC_8X6_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR],
37
- 34: [GL.COMPRESSED_RGBA_ASTC_8X8_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR],
38
- 35: [GL.COMPRESSED_RGBA_ASTC_10X5_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR],
39
- 36: [GL.COMPRESSED_RGBA_ASTC_10X6_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR],
40
- 37: [GL.COMPRESSED_RGBA_ASTC_10X8_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR],
41
- 38: [GL.COMPRESSED_RGBA_ASTC_10X10_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR],
42
- 39: [GL.COMPRESSED_RGBA_ASTC_12X10_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR],
43
- 40: [GL.COMPRESSED_RGBA_ASTC_12X12_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR]
17
+ 0: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_2BPPV1_IMG],
18
+ 1: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG],
19
+ 2: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG],
20
+ 3: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG],
21
+ 6: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ETC1_WEBGL],
22
+ 7: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT],
23
+ 9: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT],
24
+ 11: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT],
25
+ 22: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_ETC2],
26
+ 23: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA8_ETC2_EAC],
27
+ 24: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2],
28
+ 25: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_R11_EAC],
29
+ 26: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RG11_EAC],
30
+ 27: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4X4_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR],
31
+ 28: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5X4_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR],
32
+ 29: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5X5_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR],
33
+ 30: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6X5_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR],
34
+ 31: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6X6_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR],
35
+ 32: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X5_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR],
36
+ 33: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X6_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR],
37
+ 34: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X8_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR],
38
+ 35: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X5_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR],
39
+ 36: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X6_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR],
40
+ 37: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X8_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR],
41
+ 38: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X10_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR],
42
+ 39: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12X10_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR],
43
+ 40: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12X12_KHR, GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR]
44
44
  };
45
45
  const PVR_SIZE_FUNCTIONS = {
46
46
  0: pvrtc2bppSize,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/lib/parsers/parse-pvr.ts"],"names":["GL","extractMipmapImages","PVR_CONSTANTS","MAGIC_NUMBER","MAGIC_NUMBER_EXTRA","HEADER_LENGTH","HEADER_SIZE","MAGIC_NUMBER_INDEX","PIXEL_FORMAT_INDEX","COLOUR_SPACE_INDEX","HEIGHT_INDEX","WIDTH_INDEX","MIPMAPCOUNT_INDEX","METADATA_SIZE_INDEX","PVR_PIXEL_FORMATS","COMPRESSED_RGB_PVRTC_2BPPV1_IMG","COMPRESSED_RGBA_PVRTC_2BPPV1_IMG","COMPRESSED_RGB_PVRTC_4BPPV1_IMG","COMPRESSED_RGBA_PVRTC_4BPPV1_IMG","COMPRESSED_RGB_ETC1_WEBGL","COMPRESSED_RGB_S3TC_DXT1_EXT","COMPRESSED_RGBA_S3TC_DXT3_EXT","COMPRESSED_RGBA_S3TC_DXT5_EXT","COMPRESSED_RGB8_ETC2","COMPRESSED_RGBA8_ETC2_EAC","COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2","COMPRESSED_R11_EAC","COMPRESSED_RG11_EAC","COMPRESSED_RGBA_ASTC_4X4_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR","COMPRESSED_RGBA_ASTC_5X4_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR","COMPRESSED_RGBA_ASTC_5X5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR","COMPRESSED_RGBA_ASTC_6X5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR","COMPRESSED_RGBA_ASTC_6X6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR","COMPRESSED_RGBA_ASTC_8X5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR","COMPRESSED_RGBA_ASTC_8X6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR","COMPRESSED_RGBA_ASTC_8X8_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR","COMPRESSED_RGBA_ASTC_10X5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR","COMPRESSED_RGBA_ASTC_10X6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR","COMPRESSED_RGBA_ASTC_10X8_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR","COMPRESSED_RGBA_ASTC_10X10_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR","COMPRESSED_RGBA_ASTC_12X10_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR","COMPRESSED_RGBA_ASTC_12X12_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR","PVR_SIZE_FUNCTIONS","pvrtc2bppSize","pvrtc4bppSize","dxtEtcSmallSize","dxtEtcAstcBigSize","atc5x4Size","atc5x5Size","atc6x5Size","atc6x6Size","atc8x5Size","atc8x6Size","atc8x8Size","atc10x5Size","atc10x6Size","atc10x8Size","atc10x10Size","atc12x10Size","atc12x12Size","isPVR","data","header","Uint32Array","version","parsePVR","pvrFormat","colourSpace","pixelFormats","internalFormat","length","sizeFunction","mipMapLevels","width","height","dataOffset","image","Uint8Array","Math","max","floor"],"mappings":"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","sourcesContent":["import {TextureLevel} from '../../types';\n/* eslint-disable camelcase */\n// Forked from PicoGL: https://github.com/tsherif/picogl.js/blob/master/examples/utils/utils.js\n// Copyright (c) 2017 Tarek Sherif, The MIT License (MIT)\nimport {GL} from '../gl-constants';\nimport {extractMipmapImages} from '../utils/extract-mipmap-images';\n\nconst PVR_CONSTANTS: Record<string, number> = {\n MAGIC_NUMBER: 0x03525650,\n MAGIC_NUMBER_EXTRA: 0x50565203,\n HEADER_LENGTH: 13,\n HEADER_SIZE: 52,\n MAGIC_NUMBER_INDEX: 0,\n PIXEL_FORMAT_INDEX: 2,\n COLOUR_SPACE_INDEX: 4,\n HEIGHT_INDEX: 6,\n WIDTH_INDEX: 7,\n MIPMAPCOUNT_INDEX: 11,\n METADATA_SIZE_INDEX: 12\n};\n\nconst PVR_PIXEL_FORMATS: Record<number, number[]> = {\n 0: [GL.COMPRESSED_RGB_PVRTC_2BPPV1_IMG],\n 1: [GL.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG],\n 2: [GL.COMPRESSED_RGB_PVRTC_4BPPV1_IMG],\n 3: [GL.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG],\n 6: [GL.COMPRESSED_RGB_ETC1_WEBGL],\n 7: [GL.COMPRESSED_RGB_S3TC_DXT1_EXT],\n 9: [GL.COMPRESSED_RGBA_S3TC_DXT3_EXT],\n 11: [GL.COMPRESSED_RGBA_S3TC_DXT5_EXT],\n 22: [GL.COMPRESSED_RGB8_ETC2],\n 23: [GL.COMPRESSED_RGBA8_ETC2_EAC],\n 24: [GL.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2],\n 25: [GL.COMPRESSED_R11_EAC],\n 26: [GL.COMPRESSED_RG11_EAC],\n 27: [GL.COMPRESSED_RGBA_ASTC_4X4_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR],\n 28: [GL.COMPRESSED_RGBA_ASTC_5X4_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR],\n 29: [GL.COMPRESSED_RGBA_ASTC_5X5_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR],\n 30: [GL.COMPRESSED_RGBA_ASTC_6X5_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR],\n 31: [GL.COMPRESSED_RGBA_ASTC_6X6_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR],\n 32: [GL.COMPRESSED_RGBA_ASTC_8X5_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR],\n 33: [GL.COMPRESSED_RGBA_ASTC_8X6_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR],\n 34: [GL.COMPRESSED_RGBA_ASTC_8X8_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR],\n 35: [GL.COMPRESSED_RGBA_ASTC_10X5_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR],\n 36: [GL.COMPRESSED_RGBA_ASTC_10X6_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR],\n 37: [GL.COMPRESSED_RGBA_ASTC_10X8_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR],\n 38: [GL.COMPRESSED_RGBA_ASTC_10X10_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR],\n 39: [GL.COMPRESSED_RGBA_ASTC_12X10_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR],\n 40: [GL.COMPRESSED_RGBA_ASTC_12X12_KHR, GL.COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR]\n};\n\nconst PVR_SIZE_FUNCTIONS: Record<number, (width: number, height: number) => number> = {\n 0: pvrtc2bppSize,\n 1: pvrtc2bppSize,\n 2: pvrtc4bppSize,\n 3: pvrtc4bppSize,\n 6: dxtEtcSmallSize,\n 7: dxtEtcSmallSize,\n 9: dxtEtcAstcBigSize,\n 11: dxtEtcAstcBigSize,\n 22: dxtEtcSmallSize,\n 23: dxtEtcAstcBigSize,\n 24: dxtEtcSmallSize,\n 25: dxtEtcSmallSize,\n 26: dxtEtcAstcBigSize,\n 27: dxtEtcAstcBigSize,\n 28: atc5x4Size,\n 29: atc5x5Size,\n 30: atc6x5Size,\n 31: atc6x6Size,\n 32: atc8x5Size,\n 33: atc8x6Size,\n 34: atc8x8Size,\n 35: atc10x5Size,\n 36: atc10x6Size,\n 37: atc10x8Size,\n 38: atc10x10Size,\n 39: atc12x10Size,\n 40: atc12x12Size\n};\n\n/**\n * Check if data is in \"PVR\" format by its magic number\n * @param data - binary data of compressed texture\n * @returns true - data in \"PVR\" format, else - false\n */\nexport function isPVR(data: ArrayBuffer): boolean {\n const header = new Uint32Array(data, 0, PVR_CONSTANTS.HEADER_LENGTH);\n const version = header[PVR_CONSTANTS.MAGIC_NUMBER_INDEX];\n\n return version === PVR_CONSTANTS.MAGIC_NUMBER || version === PVR_CONSTANTS.MAGIC_NUMBER_EXTRA;\n}\n\n/**\n * Parse texture data as \"PVR\" format\n * @param data - binary data of compressed texture\n * @returns Array of the texture levels\n * @see http://cdn.imgtec.com/sdk-documentation/PVR+File+Format.Specification.pdf\n */\nexport function parsePVR(data: ArrayBuffer): TextureLevel[] {\n const header = new Uint32Array(data, 0, PVR_CONSTANTS.HEADER_LENGTH);\n\n const pvrFormat = header[PVR_CONSTANTS.PIXEL_FORMAT_INDEX];\n const colourSpace = header[PVR_CONSTANTS.COLOUR_SPACE_INDEX];\n const pixelFormats = PVR_PIXEL_FORMATS[pvrFormat] || [];\n const internalFormat = pixelFormats.length > 1 && colourSpace ? pixelFormats[1] : pixelFormats[0];\n\n const sizeFunction = PVR_SIZE_FUNCTIONS[pvrFormat];\n\n const mipMapLevels = header[PVR_CONSTANTS.MIPMAPCOUNT_INDEX];\n\n const width = header[PVR_CONSTANTS.WIDTH_INDEX];\n const height = header[PVR_CONSTANTS.HEIGHT_INDEX];\n\n const dataOffset = PVR_CONSTANTS.HEADER_SIZE + header[PVR_CONSTANTS.METADATA_SIZE_INDEX];\n\n const image = new Uint8Array(data, dataOffset);\n\n return extractMipmapImages(image, {\n mipMapLevels,\n width,\n height,\n sizeFunction,\n internalFormat\n });\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_pvrtc/\nfunction pvrtc2bppSize(width: number, height: number): number {\n width = Math.max(width, 16);\n height = Math.max(height, 8);\n\n return (width * height) / 4;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_pvrtc/\nfunction pvrtc4bppSize(width: number, height: number): number {\n width = Math.max(width, 8);\n height = Math.max(height, 8);\n\n return (width * height) / 2;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_s3tc/\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_etc/\n// Size for:\n// COMPRESSED_RGB_S3TC_DXT1_EXT\n// COMPRESSED_R11_EAC\n// COMPRESSED_SIGNED_R11_EAC\n// COMPRESSED_RGB8_ETC2\n// COMPRESSED_SRGB8_ETC2\n// COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2\n// COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2\nfunction dxtEtcSmallSize(width: number, height: number): number {\n return Math.floor((width + 3) / 4) * Math.floor((height + 3) / 4) * 8;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_s3tc/\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_etc/\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\n// Size for:\n// COMPRESSED_RGBA_S3TC_DXT3_EXT\n// COMPRESSED_RGBA_S3TC_DXT5_EXT\n// COMPRESSED_RG11_EAC\n// COMPRESSED_SIGNED_RG11_EAC\n// COMPRESSED_RGBA8_ETC2_EAC\n// COMPRESSED_SRGB8_ALPHA8_ETC2_EAC\n// COMPRESSED_RGBA_ASTC_4x4_KHR\nfunction dxtEtcAstcBigSize(width: number, height: number): number {\n return Math.floor((width + 3) / 4) * Math.floor((height + 3) / 4) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc5x4Size(width: number, height: number): number {\n return Math.floor((width + 4) / 5) * Math.floor((height + 3) / 4) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc5x5Size(width: number, height: number): number {\n return Math.floor((width + 4) / 5) * Math.floor((height + 4) / 5) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc6x5Size(width: number, height: number): number {\n return Math.floor((width + 5) / 6) * Math.floor((height + 4) / 5) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc6x6Size(width: number, height: number): number {\n return Math.floor((width + 5) / 6) * Math.floor((height + 5) / 6) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc8x5Size(width: number, height: number): number {\n return Math.floor((width + 7) / 8) * Math.floor((height + 4) / 5) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc8x6Size(width: number, height: number): number {\n return Math.floor((width + 7) / 8) * Math.floor((height + 5) / 6) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc8x8Size(width: number, height: number): number {\n return Math.floor((width + 7) / 8) * Math.floor((height + 7) / 8) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc10x5Size(width: number, height: number): number {\n return Math.floor((width + 9) / 10) * Math.floor((height + 4) / 5) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc10x6Size(width: number, height: number): number {\n return Math.floor((width + 9) / 10) * Math.floor((height + 5) / 6) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc10x8Size(width: number, height: number): number {\n return Math.floor((width + 9) / 10) * Math.floor((height + 7) / 8) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc10x10Size(width: number, height: number): number {\n return Math.floor((width + 9) / 10) * Math.floor((height + 9) / 10) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc12x10Size(width: number, height: number): number {\n return Math.floor((width + 11) / 12) * Math.floor((height + 9) / 10) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc12x12Size(width: number, height: number): number {\n return Math.floor((width + 11) / 12) * Math.floor((height + 11) / 12) * 16;\n}\n"],"file":"parse-pvr.js"}
1
+ {"version":3,"sources":["../../../../src/lib/parsers/parse-pvr.ts"],"names":["GL_EXTENSIONS_CONSTANTS","extractMipmapImages","PVR_CONSTANTS","MAGIC_NUMBER","MAGIC_NUMBER_EXTRA","HEADER_LENGTH","HEADER_SIZE","MAGIC_NUMBER_INDEX","PIXEL_FORMAT_INDEX","COLOUR_SPACE_INDEX","HEIGHT_INDEX","WIDTH_INDEX","MIPMAPCOUNT_INDEX","METADATA_SIZE_INDEX","PVR_PIXEL_FORMATS","COMPRESSED_RGB_PVRTC_2BPPV1_IMG","COMPRESSED_RGBA_PVRTC_2BPPV1_IMG","COMPRESSED_RGB_PVRTC_4BPPV1_IMG","COMPRESSED_RGBA_PVRTC_4BPPV1_IMG","COMPRESSED_RGB_ETC1_WEBGL","COMPRESSED_RGB_S3TC_DXT1_EXT","COMPRESSED_RGBA_S3TC_DXT3_EXT","COMPRESSED_RGBA_S3TC_DXT5_EXT","COMPRESSED_RGB8_ETC2","COMPRESSED_RGBA8_ETC2_EAC","COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2","COMPRESSED_R11_EAC","COMPRESSED_RG11_EAC","COMPRESSED_RGBA_ASTC_4X4_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR","COMPRESSED_RGBA_ASTC_5X4_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR","COMPRESSED_RGBA_ASTC_5X5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR","COMPRESSED_RGBA_ASTC_6X5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR","COMPRESSED_RGBA_ASTC_6X6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR","COMPRESSED_RGBA_ASTC_8X5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR","COMPRESSED_RGBA_ASTC_8X6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR","COMPRESSED_RGBA_ASTC_8X8_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR","COMPRESSED_RGBA_ASTC_10X5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR","COMPRESSED_RGBA_ASTC_10X6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR","COMPRESSED_RGBA_ASTC_10X8_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR","COMPRESSED_RGBA_ASTC_10X10_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR","COMPRESSED_RGBA_ASTC_12X10_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR","COMPRESSED_RGBA_ASTC_12X12_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR","PVR_SIZE_FUNCTIONS","pvrtc2bppSize","pvrtc4bppSize","dxtEtcSmallSize","dxtEtcAstcBigSize","atc5x4Size","atc5x5Size","atc6x5Size","atc6x6Size","atc8x5Size","atc8x6Size","atc8x8Size","atc10x5Size","atc10x6Size","atc10x8Size","atc10x10Size","atc12x10Size","atc12x12Size","isPVR","data","header","Uint32Array","version","parsePVR","pvrFormat","colourSpace","pixelFormats","internalFormat","length","sizeFunction","mipMapLevels","width","height","dataOffset","image","Uint8Array","Math","max","floor"],"mappings":"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","sourcesContent":["import {TextureLevel} from '../../types';\n/* eslint-disable camelcase */\n// Forked from PicoGL: https://github.com/tsherif/picogl.js/blob/master/examples/utils/utils.js\n// Copyright (c) 2017 Tarek Sherif, The MIT License (MIT)\nimport {GL_EXTENSIONS_CONSTANTS} from '../gl-extensions';\nimport {extractMipmapImages} from '../utils/extract-mipmap-images';\n\nconst PVR_CONSTANTS: Record<string, number> = {\n MAGIC_NUMBER: 0x03525650,\n MAGIC_NUMBER_EXTRA: 0x50565203,\n HEADER_LENGTH: 13,\n HEADER_SIZE: 52,\n MAGIC_NUMBER_INDEX: 0,\n PIXEL_FORMAT_INDEX: 2,\n COLOUR_SPACE_INDEX: 4,\n HEIGHT_INDEX: 6,\n WIDTH_INDEX: 7,\n MIPMAPCOUNT_INDEX: 11,\n METADATA_SIZE_INDEX: 12\n};\n\nconst PVR_PIXEL_FORMATS: Record<number, number[]> = {\n 0: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_2BPPV1_IMG],\n 1: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG],\n 2: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG],\n 3: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG],\n 6: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ETC1_WEBGL],\n 7: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT],\n 9: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT],\n 11: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT],\n 22: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_ETC2],\n 23: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA8_ETC2_EAC],\n 24: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2],\n 25: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_R11_EAC],\n 26: [GL_EXTENSIONS_CONSTANTS.COMPRESSED_RG11_EAC],\n 27: [\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4X4_KHR,\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_4X4_KHR\n ],\n 28: [\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5X4_KHR,\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR\n ],\n 29: [\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5X5_KHR,\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X5_KHR\n ],\n 30: [\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6X5_KHR,\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6X5_KHR\n ],\n 31: [\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6X6_KHR,\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6X6_KHR\n ],\n 32: [\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X5_KHR,\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X5_KHR\n ],\n 33: [\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X6_KHR,\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X6_KHR\n ],\n 34: [\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8X8_KHR,\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8X8_KHR\n ],\n 35: [\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X5_KHR,\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X5_KHR\n ],\n 36: [\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X6_KHR,\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X6_KHR\n ],\n 37: [\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X8_KHR,\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X8_KHR\n ],\n 38: [\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10X10_KHR,\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10X10_KHR\n ],\n 39: [\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12X10_KHR,\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12X10_KHR\n ],\n 40: [\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12X12_KHR,\n GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12X12_KHR\n ]\n};\n\nconst PVR_SIZE_FUNCTIONS: Record<number, (width: number, height: number) => number> = {\n 0: pvrtc2bppSize,\n 1: pvrtc2bppSize,\n 2: pvrtc4bppSize,\n 3: pvrtc4bppSize,\n 6: dxtEtcSmallSize,\n 7: dxtEtcSmallSize,\n 9: dxtEtcAstcBigSize,\n 11: dxtEtcAstcBigSize,\n 22: dxtEtcSmallSize,\n 23: dxtEtcAstcBigSize,\n 24: dxtEtcSmallSize,\n 25: dxtEtcSmallSize,\n 26: dxtEtcAstcBigSize,\n 27: dxtEtcAstcBigSize,\n 28: atc5x4Size,\n 29: atc5x5Size,\n 30: atc6x5Size,\n 31: atc6x6Size,\n 32: atc8x5Size,\n 33: atc8x6Size,\n 34: atc8x8Size,\n 35: atc10x5Size,\n 36: atc10x6Size,\n 37: atc10x8Size,\n 38: atc10x10Size,\n 39: atc12x10Size,\n 40: atc12x12Size\n};\n\n/**\n * Check if data is in \"PVR\" format by its magic number\n * @param data - binary data of compressed texture\n * @returns true - data in \"PVR\" format, else - false\n */\nexport function isPVR(data: ArrayBuffer): boolean {\n const header = new Uint32Array(data, 0, PVR_CONSTANTS.HEADER_LENGTH);\n const version = header[PVR_CONSTANTS.MAGIC_NUMBER_INDEX];\n\n return version === PVR_CONSTANTS.MAGIC_NUMBER || version === PVR_CONSTANTS.MAGIC_NUMBER_EXTRA;\n}\n\n/**\n * Parse texture data as \"PVR\" format\n * @param data - binary data of compressed texture\n * @returns Array of the texture levels\n * @see http://cdn.imgtec.com/sdk-documentation/PVR+File+Format.Specification.pdf\n */\nexport function parsePVR(data: ArrayBuffer): TextureLevel[] {\n const header = new Uint32Array(data, 0, PVR_CONSTANTS.HEADER_LENGTH);\n\n const pvrFormat = header[PVR_CONSTANTS.PIXEL_FORMAT_INDEX];\n const colourSpace = header[PVR_CONSTANTS.COLOUR_SPACE_INDEX];\n const pixelFormats = PVR_PIXEL_FORMATS[pvrFormat] || [];\n const internalFormat = pixelFormats.length > 1 && colourSpace ? pixelFormats[1] : pixelFormats[0];\n\n const sizeFunction = PVR_SIZE_FUNCTIONS[pvrFormat];\n\n const mipMapLevels = header[PVR_CONSTANTS.MIPMAPCOUNT_INDEX];\n\n const width = header[PVR_CONSTANTS.WIDTH_INDEX];\n const height = header[PVR_CONSTANTS.HEIGHT_INDEX];\n\n const dataOffset = PVR_CONSTANTS.HEADER_SIZE + header[PVR_CONSTANTS.METADATA_SIZE_INDEX];\n\n const image = new Uint8Array(data, dataOffset);\n\n return extractMipmapImages(image, {\n mipMapLevels,\n width,\n height,\n sizeFunction,\n internalFormat\n });\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_pvrtc/\nfunction pvrtc2bppSize(width: number, height: number): number {\n width = Math.max(width, 16);\n height = Math.max(height, 8);\n\n return (width * height) / 4;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_pvrtc/\nfunction pvrtc4bppSize(width: number, height: number): number {\n width = Math.max(width, 8);\n height = Math.max(height, 8);\n\n return (width * height) / 2;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_s3tc/\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_etc/\n// Size for:\n// COMPRESSED_RGB_S3TC_DXT1_EXT\n// COMPRESSED_R11_EAC\n// COMPRESSED_SIGNED_R11_EAC\n// COMPRESSED_RGB8_ETC2\n// COMPRESSED_SRGB8_ETC2\n// COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2\n// COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2\nfunction dxtEtcSmallSize(width: number, height: number): number {\n return Math.floor((width + 3) / 4) * Math.floor((height + 3) / 4) * 8;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_s3tc/\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_etc/\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\n// Size for:\n// COMPRESSED_RGBA_S3TC_DXT3_EXT\n// COMPRESSED_RGBA_S3TC_DXT5_EXT\n// COMPRESSED_RG11_EAC\n// COMPRESSED_SIGNED_RG11_EAC\n// COMPRESSED_RGBA8_ETC2_EAC\n// COMPRESSED_SRGB8_ALPHA8_ETC2_EAC\n// COMPRESSED_RGBA_ASTC_4x4_KHR\nfunction dxtEtcAstcBigSize(width: number, height: number): number {\n return Math.floor((width + 3) / 4) * Math.floor((height + 3) / 4) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc5x4Size(width: number, height: number): number {\n return Math.floor((width + 4) / 5) * Math.floor((height + 3) / 4) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc5x5Size(width: number, height: number): number {\n return Math.floor((width + 4) / 5) * Math.floor((height + 4) / 5) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc6x5Size(width: number, height: number): number {\n return Math.floor((width + 5) / 6) * Math.floor((height + 4) / 5) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc6x6Size(width: number, height: number): number {\n return Math.floor((width + 5) / 6) * Math.floor((height + 5) / 6) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc8x5Size(width: number, height: number): number {\n return Math.floor((width + 7) / 8) * Math.floor((height + 4) / 5) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc8x6Size(width: number, height: number): number {\n return Math.floor((width + 7) / 8) * Math.floor((height + 5) / 6) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc8x8Size(width: number, height: number): number {\n return Math.floor((width + 7) / 8) * Math.floor((height + 7) / 8) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc10x5Size(width: number, height: number): number {\n return Math.floor((width + 9) / 10) * Math.floor((height + 4) / 5) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc10x6Size(width: number, height: number): number {\n return Math.floor((width + 9) / 10) * Math.floor((height + 5) / 6) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc10x8Size(width: number, height: number): number {\n return Math.floor((width + 9) / 10) * Math.floor((height + 7) / 8) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc10x10Size(width: number, height: number): number {\n return Math.floor((width + 9) / 10) * Math.floor((height + 9) / 10) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc12x10Size(width: number, height: number): number {\n return Math.floor((width + 11) / 12) * Math.floor((height + 9) / 10) * 16;\n}\n\n// https://www.khronos.org/registry/webgl/extensions/WEBGL_compressed_texture_astc/\nfunction atc12x12Size(width: number, height: number): number {\n return Math.floor((width + 11) / 12) * Math.floor((height + 11) / 12) * 16;\n}\n"],"file":"parse-pvr.js"}
@@ -1,71 +1,71 @@
1
- import { GL } from '../gl-constants';
1
+ import { GL_EXTENSIONS_CONSTANTS } from '../gl-extensions';
2
2
  const VULKAN_TO_WEBGL_FORMAT_MAP = {
3
- 131: GL.COMPRESSED_RGB_S3TC_DXT1_EXT,
4
- 132: GL.COMPRESSED_SRGB_S3TC_DXT1_EXT,
5
- 133: GL.COMPRESSED_RGBA_S3TC_DXT1_EXT,
6
- 134: GL.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,
7
- 135: GL.COMPRESSED_RGBA_S3TC_DXT3_EXT,
8
- 136: GL.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,
9
- 137: GL.COMPRESSED_RGBA_S3TC_DXT5_EXT,
10
- 138: GL.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,
11
- 139: GL.COMPRESSED_RED_RGTC1_EXT,
12
- 140: GL.COMPRESSED_SIGNED_RED_RGTC1_EXT,
13
- 141: GL.COMPRESSED_RED_GREEN_RGTC2_EXT,
14
- 142: GL.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,
15
- 147: GL.COMPRESSED_RGB8_ETC2,
16
- 148: GL.COMPRESSED_SRGB8_ETC2,
17
- 149: GL.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,
18
- 150: GL.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,
19
- 151: GL.COMPRESSED_RGBA8_ETC2_EAC,
20
- 152: GL.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,
21
- 153: GL.COMPRESSED_R11_EAC,
22
- 154: GL.COMPRESSED_SIGNED_R11_EAC,
23
- 155: GL.COMPRESSED_RG11_EAC,
24
- 156: GL.COMPRESSED_SIGNED_RG11_EAC,
25
- 157: GL.COMPRESSED_RGBA_ASTC_4x4_KHR,
26
- 158: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,
27
- 159: GL.COMPRESSED_RGBA_ASTC_5x4_KHR,
28
- 160: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR,
29
- 161: GL.COMPRESSED_RGBA_ASTC_5x5_KHR,
30
- 162: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,
31
- 163: GL.COMPRESSED_RGBA_ASTC_6x5_KHR,
32
- 164: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,
33
- 165: GL.COMPRESSED_RGBA_ASTC_6x6_KHR,
34
- 166: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,
35
- 167: GL.COMPRESSED_RGBA_ASTC_8x5_KHR,
36
- 168: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,
37
- 169: GL.COMPRESSED_RGBA_ASTC_8x6_KHR,
38
- 170: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,
39
- 171: GL.COMPRESSED_RGBA_ASTC_8x8_KHR,
40
- 172: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,
41
- 173: GL.COMPRESSED_RGBA_ASTC_10x5_KHR,
42
- 174: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR,
43
- 175: GL.COMPRESSED_RGBA_ASTC_10x6_KHR,
44
- 176: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,
45
- 177: GL.COMPRESSED_RGBA_ASTC_10x8_KHR,
46
- 178: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,
47
- 179: GL.COMPRESSED_RGBA_ASTC_10x10_KHR,
48
- 180: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,
49
- 181: GL.COMPRESSED_RGBA_ASTC_12x10_KHR,
50
- 182: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,
51
- 183: GL.COMPRESSED_RGBA_ASTC_12x12_KHR,
52
- 184: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR,
53
- 1000054000: GL.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,
54
- 1000054001: GL.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,
55
- 1000066000: GL.COMPRESSED_RGBA_ASTC_4x4_KHR,
56
- 1000066001: GL.COMPRESSED_RGBA_ASTC_5x4_KHR,
57
- 1000066002: GL.COMPRESSED_RGBA_ASTC_5x5_KHR,
58
- 1000066003: GL.COMPRESSED_RGBA_ASTC_6x5_KHR,
59
- 1000066004: GL.COMPRESSED_RGBA_ASTC_6x6_KHR,
60
- 1000066005: GL.COMPRESSED_RGBA_ASTC_8x5_KHR,
61
- 1000066006: GL.COMPRESSED_RGBA_ASTC_8x6_KHR,
62
- 1000066007: GL.COMPRESSED_RGBA_ASTC_8x8_KHR,
63
- 1000066008: GL.COMPRESSED_RGBA_ASTC_10x5_KHR,
64
- 1000066009: GL.COMPRESSED_RGBA_ASTC_10x6_KHR,
65
- 1000066010: GL.COMPRESSED_RGBA_ASTC_10x8_KHR,
66
- 1000066011: GL.COMPRESSED_RGBA_ASTC_10x10_KHR,
67
- 1000066012: GL.COMPRESSED_RGBA_ASTC_12x10_KHR,
68
- 1000066013: GL.COMPRESSED_RGBA_ASTC_12x12_KHR
3
+ 131: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT,
4
+ 132: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_S3TC_DXT1_EXT,
5
+ 133: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT1_EXT,
6
+ 134: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,
7
+ 135: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT,
8
+ 136: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,
9
+ 137: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT,
10
+ 138: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,
11
+ 139: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RED_RGTC1_EXT,
12
+ 140: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RED_RGTC1_EXT,
13
+ 141: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RED_GREEN_RGTC2_EXT,
14
+ 142: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,
15
+ 147: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_ETC2,
16
+ 148: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ETC2,
17
+ 149: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,
18
+ 150: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,
19
+ 151: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA8_ETC2_EAC,
20
+ 152: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,
21
+ 153: GL_EXTENSIONS_CONSTANTS.COMPRESSED_R11_EAC,
22
+ 154: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_R11_EAC,
23
+ 155: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RG11_EAC,
24
+ 156: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RG11_EAC,
25
+ 157: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4x4_KHR,
26
+ 158: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,
27
+ 159: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x4_KHR,
28
+ 160: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR,
29
+ 161: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x5_KHR,
30
+ 162: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,
31
+ 163: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x5_KHR,
32
+ 164: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,
33
+ 165: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x6_KHR,
34
+ 166: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,
35
+ 167: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x5_KHR,
36
+ 168: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,
37
+ 169: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x6_KHR,
38
+ 170: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,
39
+ 171: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x8_KHR,
40
+ 172: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,
41
+ 173: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x5_KHR,
42
+ 174: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR,
43
+ 175: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x6_KHR,
44
+ 176: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,
45
+ 177: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x8_KHR,
46
+ 178: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,
47
+ 179: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x10_KHR,
48
+ 180: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,
49
+ 181: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x10_KHR,
50
+ 182: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,
51
+ 183: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x12_KHR,
52
+ 184: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR,
53
+ 1000054000: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,
54
+ 1000054001: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,
55
+ 1000066000: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4x4_KHR,
56
+ 1000066001: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x4_KHR,
57
+ 1000066002: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x5_KHR,
58
+ 1000066003: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x5_KHR,
59
+ 1000066004: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x6_KHR,
60
+ 1000066005: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x5_KHR,
61
+ 1000066006: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x6_KHR,
62
+ 1000066007: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x8_KHR,
63
+ 1000066008: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x5_KHR,
64
+ 1000066009: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x6_KHR,
65
+ 1000066010: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x8_KHR,
66
+ 1000066011: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x10_KHR,
67
+ 1000066012: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x10_KHR,
68
+ 1000066013: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x12_KHR
69
69
  };
70
70
  export function mapVkFormatToWebGL(vkFormat) {
71
71
  return VULKAN_TO_WEBGL_FORMAT_MAP[vkFormat];
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/lib/utils/ktx-format-helper.ts"],"names":["GL","VULKAN_TO_WEBGL_FORMAT_MAP","COMPRESSED_RGB_S3TC_DXT1_EXT","COMPRESSED_SRGB_S3TC_DXT1_EXT","COMPRESSED_RGBA_S3TC_DXT1_EXT","COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT","COMPRESSED_RGBA_S3TC_DXT3_EXT","COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT","COMPRESSED_RGBA_S3TC_DXT5_EXT","COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT","COMPRESSED_RED_RGTC1_EXT","COMPRESSED_SIGNED_RED_RGTC1_EXT","COMPRESSED_RED_GREEN_RGTC2_EXT","COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT","COMPRESSED_RGB8_ETC2","COMPRESSED_SRGB8_ETC2","COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2","COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2","COMPRESSED_RGBA8_ETC2_EAC","COMPRESSED_SRGB8_ALPHA8_ETC2_EAC","COMPRESSED_R11_EAC","COMPRESSED_SIGNED_R11_EAC","COMPRESSED_RG11_EAC","COMPRESSED_SIGNED_RG11_EAC","COMPRESSED_RGBA_ASTC_4x4_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR","COMPRESSED_RGBA_ASTC_5x4_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR","COMPRESSED_RGBA_ASTC_5x5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR","COMPRESSED_RGBA_ASTC_6x5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR","COMPRESSED_RGBA_ASTC_6x6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR","COMPRESSED_RGBA_ASTC_8x5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR","COMPRESSED_RGBA_ASTC_8x6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR","COMPRESSED_RGBA_ASTC_8x8_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR","COMPRESSED_RGBA_ASTC_10x5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR","COMPRESSED_RGBA_ASTC_10x6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR","COMPRESSED_RGBA_ASTC_10x8_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR","COMPRESSED_RGBA_ASTC_10x10_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR","COMPRESSED_RGBA_ASTC_12x10_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR","COMPRESSED_RGBA_ASTC_12x12_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR","COMPRESSED_RGBA_PVRTC_2BPPV1_IMG","COMPRESSED_RGBA_PVRTC_4BPPV1_IMG","mapVkFormatToWebGL","vkFormat"],"mappings":"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","sourcesContent":["import {GL} from '../gl-constants';\n\nconst VULKAN_TO_WEBGL_FORMAT_MAP: Record<number, number> = {\n 131: GL.COMPRESSED_RGB_S3TC_DXT1_EXT,\n 132: GL.COMPRESSED_SRGB_S3TC_DXT1_EXT,\n 133: GL.COMPRESSED_RGBA_S3TC_DXT1_EXT,\n 134: GL.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,\n 135: GL.COMPRESSED_RGBA_S3TC_DXT3_EXT,\n 136: GL.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,\n 137: GL.COMPRESSED_RGBA_S3TC_DXT5_EXT,\n 138: GL.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,\n 139: GL.COMPRESSED_RED_RGTC1_EXT,\n 140: GL.COMPRESSED_SIGNED_RED_RGTC1_EXT,\n 141: GL.COMPRESSED_RED_GREEN_RGTC2_EXT,\n 142: GL.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,\n 147: GL.COMPRESSED_RGB8_ETC2,\n 148: GL.COMPRESSED_SRGB8_ETC2,\n 149: GL.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,\n 150: GL.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,\n 151: GL.COMPRESSED_RGBA8_ETC2_EAC,\n 152: GL.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,\n 153: GL.COMPRESSED_R11_EAC,\n 154: GL.COMPRESSED_SIGNED_R11_EAC,\n 155: GL.COMPRESSED_RG11_EAC,\n 156: GL.COMPRESSED_SIGNED_RG11_EAC,\n // @ts-ignore\n 157: GL.COMPRESSED_RGBA_ASTC_4x4_KHR,\n // @ts-ignore\n 158: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,\n // @ts-ignore\n 159: GL.COMPRESSED_RGBA_ASTC_5x4_KHR,\n // @ts-ignore\n 160: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR,\n // @ts-ignore\n 161: GL.COMPRESSED_RGBA_ASTC_5x5_KHR,\n // @ts-ignore\n 162: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,\n // @ts-ignore\n 163: GL.COMPRESSED_RGBA_ASTC_6x5_KHR,\n // @ts-ignore\n 164: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,\n // @ts-ignore\n 165: GL.COMPRESSED_RGBA_ASTC_6x6_KHR,\n // @ts-ignore\n 166: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,\n // @ts-ignore\n 167: GL.COMPRESSED_RGBA_ASTC_8x5_KHR,\n // @ts-ignore\n 168: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,\n // @ts-ignore\n 169: GL.COMPRESSED_RGBA_ASTC_8x6_KHR,\n // @ts-ignore\n 170: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,\n // @ts-ignore\n 171: GL.COMPRESSED_RGBA_ASTC_8x8_KHR,\n // @ts-ignore\n 172: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,\n // @ts-ignore\n 173: GL.COMPRESSED_RGBA_ASTC_10x5_KHR,\n // @ts-ignore\n 174: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR,\n // @ts-ignore\n 175: GL.COMPRESSED_RGBA_ASTC_10x6_KHR,\n // @ts-ignore\n 176: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,\n // @ts-ignore\n 177: GL.COMPRESSED_RGBA_ASTC_10x8_KHR,\n // @ts-ignore\n 178: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,\n // @ts-ignore\n 179: GL.COMPRESSED_RGBA_ASTC_10x10_KHR,\n // @ts-ignore\n 180: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,\n // @ts-ignore\n 181: GL.COMPRESSED_RGBA_ASTC_12x10_KHR,\n // @ts-ignore\n 182: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,\n // @ts-ignore\n 183: GL.COMPRESSED_RGBA_ASTC_12x12_KHR,\n // @ts-ignore\n 184: GL.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR,\n 1000054000: GL.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,\n 1000054001: GL.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,\n // @ts-ignore\n 1000066000: GL.COMPRESSED_RGBA_ASTC_4x4_KHR,\n // @ts-ignore\n 1000066001: GL.COMPRESSED_RGBA_ASTC_5x4_KHR,\n // @ts-ignore\n 1000066002: GL.COMPRESSED_RGBA_ASTC_5x5_KHR,\n // @ts-ignore\n 1000066003: GL.COMPRESSED_RGBA_ASTC_6x5_KHR,\n // @ts-ignore\n 1000066004: GL.COMPRESSED_RGBA_ASTC_6x6_KHR,\n // @ts-ignore\n 1000066005: GL.COMPRESSED_RGBA_ASTC_8x5_KHR,\n // @ts-ignore\n 1000066006: GL.COMPRESSED_RGBA_ASTC_8x6_KHR,\n // @ts-ignore\n 1000066007: GL.COMPRESSED_RGBA_ASTC_8x8_KHR,\n // @ts-ignore\n 1000066008: GL.COMPRESSED_RGBA_ASTC_10x5_KHR,\n // @ts-ignore\n 1000066009: GL.COMPRESSED_RGBA_ASTC_10x6_KHR,\n // @ts-ignore\n 1000066010: GL.COMPRESSED_RGBA_ASTC_10x8_KHR,\n // @ts-ignore\n 1000066011: GL.COMPRESSED_RGBA_ASTC_10x10_KHR,\n // @ts-ignore\n 1000066012: GL.COMPRESSED_RGBA_ASTC_12x10_KHR,\n // @ts-ignore\n 1000066013: GL.COMPRESSED_RGBA_ASTC_12x12_KHR\n};\n\n/**\n * Returns WebGl format based on Vulkan format\n * Vulkan to WebGl format mapping provided here http://github.khronos.org/KTX-Specification/#formatMapping\n * Vulkan name to format number mapping provided here: https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkFormat.html\n * @param vkFormat\n * @returns WebGL / OpenGL constant\n */\nexport function mapVkFormatToWebGL(vkFormat: number): number {\n return VULKAN_TO_WEBGL_FORMAT_MAP[vkFormat];\n}\n"],"file":"ktx-format-helper.js"}
1
+ {"version":3,"sources":["../../../../src/lib/utils/ktx-format-helper.ts"],"names":["GL_EXTENSIONS_CONSTANTS","VULKAN_TO_WEBGL_FORMAT_MAP","COMPRESSED_RGB_S3TC_DXT1_EXT","COMPRESSED_SRGB_S3TC_DXT1_EXT","COMPRESSED_RGBA_S3TC_DXT1_EXT","COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT","COMPRESSED_RGBA_S3TC_DXT3_EXT","COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT","COMPRESSED_RGBA_S3TC_DXT5_EXT","COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT","COMPRESSED_RED_RGTC1_EXT","COMPRESSED_SIGNED_RED_RGTC1_EXT","COMPRESSED_RED_GREEN_RGTC2_EXT","COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT","COMPRESSED_RGB8_ETC2","COMPRESSED_SRGB8_ETC2","COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2","COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2","COMPRESSED_RGBA8_ETC2_EAC","COMPRESSED_SRGB8_ALPHA8_ETC2_EAC","COMPRESSED_R11_EAC","COMPRESSED_SIGNED_R11_EAC","COMPRESSED_RG11_EAC","COMPRESSED_SIGNED_RG11_EAC","COMPRESSED_RGBA_ASTC_4x4_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR","COMPRESSED_RGBA_ASTC_5x4_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR","COMPRESSED_RGBA_ASTC_5x5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR","COMPRESSED_RGBA_ASTC_6x5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR","COMPRESSED_RGBA_ASTC_6x6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR","COMPRESSED_RGBA_ASTC_8x5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR","COMPRESSED_RGBA_ASTC_8x6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR","COMPRESSED_RGBA_ASTC_8x8_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR","COMPRESSED_RGBA_ASTC_10x5_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR","COMPRESSED_RGBA_ASTC_10x6_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR","COMPRESSED_RGBA_ASTC_10x8_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR","COMPRESSED_RGBA_ASTC_10x10_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR","COMPRESSED_RGBA_ASTC_12x10_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR","COMPRESSED_RGBA_ASTC_12x12_KHR","COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR","COMPRESSED_RGBA_PVRTC_2BPPV1_IMG","COMPRESSED_RGBA_PVRTC_4BPPV1_IMG","mapVkFormatToWebGL","vkFormat"],"mappings":"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","sourcesContent":["import {GL_EXTENSIONS_CONSTANTS} from '../gl-extensions';\n\nconst VULKAN_TO_WEBGL_FORMAT_MAP: Record<number, number> = {\n 131: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT,\n 132: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_S3TC_DXT1_EXT,\n 133: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT1_EXT,\n 134: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT,\n 135: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT,\n 136: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT,\n 137: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT,\n 138: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT,\n 139: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RED_RGTC1_EXT,\n 140: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RED_RGTC1_EXT,\n 141: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RED_GREEN_RGTC2_EXT,\n 142: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RED_GREEN_RGTC2_EXT,\n 147: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_ETC2,\n 148: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ETC2,\n 149: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2,\n 150: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2,\n 151: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA8_ETC2_EAC,\n 152: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ETC2_EAC,\n 153: GL_EXTENSIONS_CONSTANTS.COMPRESSED_R11_EAC,\n 154: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_R11_EAC,\n 155: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RG11_EAC,\n 156: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SIGNED_RG11_EAC,\n // @ts-ignore\n 157: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4x4_KHR,\n // @ts-ignore\n 158: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR,\n // @ts-ignore\n 159: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x4_KHR,\n // @ts-ignore\n 160: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5X4_KHR,\n // @ts-ignore\n 161: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x5_KHR,\n // @ts-ignore\n 162: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR,\n // @ts-ignore\n 163: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x5_KHR,\n // @ts-ignore\n 164: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR,\n // @ts-ignore\n 165: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x6_KHR,\n // @ts-ignore\n 166: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR,\n // @ts-ignore\n 167: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x5_KHR,\n // @ts-ignore\n 168: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR,\n // @ts-ignore\n 169: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x6_KHR,\n // @ts-ignore\n 170: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR,\n // @ts-ignore\n 171: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x8_KHR,\n // @ts-ignore\n 172: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR,\n // @ts-ignore\n 173: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x5_KHR,\n // @ts-ignore\n 174: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR,\n // @ts-ignore\n 175: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x6_KHR,\n // @ts-ignore\n 176: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR,\n // @ts-ignore\n 177: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x8_KHR,\n // @ts-ignore\n 178: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR,\n // @ts-ignore\n 179: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x10_KHR,\n // @ts-ignore\n 180: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR,\n // @ts-ignore\n 181: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x10_KHR,\n // @ts-ignore\n 182: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR,\n // @ts-ignore\n 183: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x12_KHR,\n // @ts-ignore\n 184: GL_EXTENSIONS_CONSTANTS.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR,\n 1000054000: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,\n 1000054001: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,\n // @ts-ignore\n 1000066000: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4x4_KHR,\n // @ts-ignore\n 1000066001: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x4_KHR,\n // @ts-ignore\n 1000066002: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_5x5_KHR,\n // @ts-ignore\n 1000066003: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x5_KHR,\n // @ts-ignore\n 1000066004: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_6x6_KHR,\n // @ts-ignore\n 1000066005: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x5_KHR,\n // @ts-ignore\n 1000066006: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x6_KHR,\n // @ts-ignore\n 1000066007: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_8x8_KHR,\n // @ts-ignore\n 1000066008: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x5_KHR,\n // @ts-ignore\n 1000066009: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x6_KHR,\n // @ts-ignore\n 1000066010: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x8_KHR,\n // @ts-ignore\n 1000066011: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_10x10_KHR,\n // @ts-ignore\n 1000066012: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x10_KHR,\n // @ts-ignore\n 1000066013: GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_12x12_KHR\n};\n\n/**\n * Returns WebGl format based on Vulkan format\n * Vulkan to WebGl format mapping provided here http://github.khronos.org/KTX-Specification/#formatMapping\n * Vulkan name to format number mapping provided here: https://www.khronos.org/registry/vulkan/specs/1.2-extensions/man/html/VkFormat.html\n * @param vkFormat\n * @returns WebGL / OpenGL constant\n */\nexport function mapVkFormatToWebGL(vkFormat: number): number {\n return VULKAN_TO_WEBGL_FORMAT_MAP[vkFormat];\n}\n"],"file":"ktx-format-helper.js"}
@@ -1,2 +1,2 @@
1
- export const VERSION = typeof "3.1.0-beta.2" !== 'undefined' ? "3.1.0-beta.2" : 'beta';
1
+ export const VERSION = typeof "3.1.0" !== 'undefined' ? "3.1.0" : 'beta';
2
2
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/lib/utils/version.ts"],"names":["VERSION"],"mappings":"AAIA,OAAO,MAAMA,OAAO,GAAG,0BAAuB,WAAvB,oBAAmD,MAAnE","sourcesContent":["// Version constant cannot be imported, it needs to correspond to the build version of **this** module.\n// __VERSION__ is injected by babel-plugin-version-inline\n// TODO: use 'latest' instead of 'beta' when 3.0.0 version is released as 'latest'\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nexport const VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'beta';\n"],"file":"version.js"}
1
+ {"version":3,"sources":["../../../../src/lib/utils/version.ts"],"names":["VERSION"],"mappings":"AAIA,OAAO,MAAMA,OAAO,GAAG,mBAAuB,WAAvB,aAAmD,MAAnE","sourcesContent":["// Version constant cannot be imported, it needs to correspond to the build version of **this** module.\n// __VERSION__ is injected by babel-plugin-version-inline\n// TODO: use 'latest' instead of 'beta' when 3.0.0 version is released as 'latest'\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nexport const VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'beta';\n"],"file":"version.js"}
package/dist/index.d.ts CHANGED
@@ -9,7 +9,7 @@ export { KTX2BasisUniversalTextureWriter } from './ktx2-basis-universal-texture-
9
9
  export { loadImageTexture } from './lib/texture-api/load-image';
10
10
  export { loadImageTextureArray } from './lib/texture-api/load-image-array';
11
11
  export { loadImageTextureCube } from './lib/texture-api/load-image-cube';
12
- export { GL as GL_CONSTANTS } from './lib/gl-constants';
12
+ export { GL_EXTENSIONS_CONSTANTS } from './lib/gl-extensions';
13
13
  export { selectSupportedBasisFormat } from './lib/parsers/parse-basis';
14
14
  export { getSupportedGPUTextureFormats } from './lib/utils/texture-formats';
15
15
  export { CrunchLoader as CrunchWorkerLoader } from './crunch-loader';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAC,gBAAgB,EAAC,MAAM,SAAS,CAAC;AAC9C,YAAY,EAAC,oBAAoB,EAAC,MAAM,6BAA6B,CAAC;AAGtE,OAAO,EAAC,WAAW,EAAE,iBAAiB,EAAC,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAC,uBAAuB,EAAE,6BAA6B,EAAC,MAAM,6BAA6B,CAAC;AACnG,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAC,SAAS,EAAE,eAAe,EAAC,MAAM,cAAc,CAAC;AAGxD,OAAO,EAAC,uBAAuB,EAAC,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAC,+BAA+B,EAAC,MAAM,uCAAuC,CAAC;AAGtF,OAAO,EAAC,gBAAgB,EAAC,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAC,qBAAqB,EAAC,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAC,oBAAoB,EAAC,MAAM,mCAAmC,CAAC;AAGvE,OAAO,EAAC,EAAE,IAAI,YAAY,EAAC,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAC,0BAA0B,EAAC,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAC,6BAA6B,EAAC,MAAM,6BAA6B,CAAC;AAG1E,OAAO,EAAC,YAAY,IAAI,kBAAkB,EAAC,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,YAAY,EAAC,gBAAgB,EAAC,MAAM,SAAS,CAAC;AAC9C,YAAY,EAAC,oBAAoB,EAAC,MAAM,6BAA6B,CAAC;AAGtE,OAAO,EAAC,WAAW,EAAE,iBAAiB,EAAC,MAAM,gBAAgB,CAAC;AAC9D,OAAO,EAAC,uBAAuB,EAAE,6BAA6B,EAAC,MAAM,6BAA6B,CAAC;AACnG,OAAO,EAAC,YAAY,EAAC,MAAM,iBAAiB,CAAC;AAC7C,OAAO,EAAC,SAAS,EAAE,eAAe,EAAC,MAAM,cAAc,CAAC;AAGxD,OAAO,EAAC,uBAAuB,EAAC,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAC,+BAA+B,EAAC,MAAM,uCAAuC,CAAC;AAGtF,OAAO,EAAC,gBAAgB,EAAC,MAAM,8BAA8B,CAAC;AAC9D,OAAO,EAAC,qBAAqB,EAAC,MAAM,oCAAoC,CAAC;AACzE,OAAO,EAAC,oBAAoB,EAAC,MAAM,mCAAmC,CAAC;AAGvE,OAAO,EAAC,uBAAuB,EAAC,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAC,0BAA0B,EAAC,MAAM,2BAA2B,CAAC;AACrE,OAAO,EAAC,6BAA6B,EAAC,MAAM,6BAA6B,CAAC;AAG1E,OAAO,EAAC,YAAY,IAAI,kBAAkB,EAAC,MAAM,iBAAiB,CAAC"}
package/dist/index.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CrunchWorkerLoader = exports.getSupportedGPUTextureFormats = exports.selectSupportedBasisFormat = exports.GL_CONSTANTS = exports.loadImageTextureCube = exports.loadImageTextureArray = exports.loadImageTexture = exports.KTX2BasisUniversalTextureWriter = exports.CompressedTextureWriter = exports.NPYWorkerLoader = exports.NPYLoader = exports.CrunchLoader = exports.CompressedTextureWorkerLoader = exports.CompressedTextureLoader = exports.BasisWorkerLoader = exports.BasisLoader = void 0;
3
+ exports.CrunchWorkerLoader = exports.getSupportedGPUTextureFormats = exports.selectSupportedBasisFormat = exports.GL_EXTENSIONS_CONSTANTS = exports.loadImageTextureCube = exports.loadImageTextureArray = exports.loadImageTexture = exports.KTX2BasisUniversalTextureWriter = exports.CompressedTextureWriter = exports.NPYWorkerLoader = exports.NPYLoader = exports.CrunchLoader = exports.CompressedTextureWorkerLoader = exports.CompressedTextureLoader = exports.BasisWorkerLoader = exports.BasisLoader = void 0;
4
4
  // Loaders
5
5
  var basis_loader_1 = require("./basis-loader");
6
6
  Object.defineProperty(exports, "BasisLoader", { enumerable: true, get: function () { return basis_loader_1.BasisLoader; } });
@@ -26,8 +26,8 @@ Object.defineProperty(exports, "loadImageTextureArray", { enumerable: true, get:
26
26
  var load_image_cube_1 = require("./lib/texture-api/load-image-cube");
27
27
  Object.defineProperty(exports, "loadImageTextureCube", { enumerable: true, get: function () { return load_image_cube_1.loadImageTextureCube; } });
28
28
  // Utilities
29
- var gl_constants_1 = require("./lib/gl-constants");
30
- Object.defineProperty(exports, "GL_CONSTANTS", { enumerable: true, get: function () { return gl_constants_1.GL; } });
29
+ var gl_extensions_1 = require("./lib/gl-extensions");
30
+ Object.defineProperty(exports, "GL_EXTENSIONS_CONSTANTS", { enumerable: true, get: function () { return gl_extensions_1.GL_EXTENSIONS_CONSTANTS; } });
31
31
  var parse_basis_1 = require("./lib/parsers/parse-basis");
32
32
  Object.defineProperty(exports, "selectSupportedBasisFormat", { enumerable: true, get: function () { return parse_basis_1.selectSupportedBasisFormat; } });
33
33
  var texture_formats_1 = require("./lib/utils/texture-formats");
@@ -6,5 +6,5 @@ import type { ImageDataType } from '@loaders.gl/images';
6
6
  * @param image
7
7
  * @param options
8
8
  */
9
- export declare function encodeKTX2BasisTexture(image: ImageDataType, options?: any): Promise<Uint8Array>;
9
+ export declare function encodeKTX2BasisTexture(image: ImageDataType, options?: any): Promise<ArrayBuffer>;
10
10
  //# sourceMappingURL=encode-ktx2-basis-texture.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"encode-ktx2-basis-texture.d.ts","sourceRoot":"","sources":["../../../src/lib/encoders/encode-ktx2-basis-texture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAGtD;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,aAAa,EACpB,OAAO,GAAE,GAAQ,GAChB,OAAO,CAAC,UAAU,CAAC,CA8BrB"}
1
+ {"version":3,"file":"encode-ktx2-basis-texture.d.ts","sourceRoot":"","sources":["../../../src/lib/encoders/encode-ktx2-basis-texture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,oBAAoB,CAAC;AAGtD;;;;;;GAMG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,aAAa,EACpB,OAAO,GAAE,GAAQ,GAChB,OAAO,CAAC,WAAW,CAAC,CA8BtB"}
@@ -26,7 +26,7 @@ async function encodeKTX2BasisTexture(image, options = {}) {
26
26
  basisEncoder.setUASTC(encodeUASTC);
27
27
  basisEncoder.setMipGen(mipmaps);
28
28
  const numOutputBytes = basisEncoder.encode(basisFileData);
29
- const actualKTX2FileData = new Uint8Array(basisFileData.buffer, 0, numOutputBytes);
29
+ const actualKTX2FileData = basisFileData.subarray(0, numOutputBytes).buffer;
30
30
  return actualKTX2FileData;
31
31
  }
32
32
  catch (error) {
@@ -1,4 +1,4 @@
1
- export declare const GL: {
1
+ export declare const GL_EXTENSIONS_CONSTANTS: {
2
2
  COMPRESSED_RGB_S3TC_DXT1_EXT: number;
3
3
  COMPRESSED_RGBA_S3TC_DXT1_EXT: number;
4
4
  COMPRESSED_RGBA_S3TC_DXT3_EXT: number;
@@ -58,4 +58,4 @@ export declare const GL: {
58
58
  COMPRESSED_SRGB_ALPHA_S3TC_DXT3_EXT: number;
59
59
  COMPRESSED_SRGB_ALPHA_S3TC_DXT5_EXT: number;
60
60
  };
61
- //# sourceMappingURL=gl-constants.d.ts.map
61
+ //# sourceMappingURL=gl-extensions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gl-extensions.d.ts","sourceRoot":"","sources":["../../src/lib/gl-extensions.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkFnC,CAAC"}
@@ -1,8 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.GL = void 0;
3
+ exports.GL_EXTENSIONS_CONSTANTS = void 0;
4
4
  /* eslint-disable camelcase */
5
- exports.GL = {
5
+ exports.GL_EXTENSIONS_CONSTANTS = {
6
6
  // WEBGL_compressed_texture_s3tc
7
7
  COMPRESSED_RGB_S3TC_DXT1_EXT: 0x83f0,
8
8
  COMPRESSED_RGBA_S3TC_DXT1_EXT: 0x83f1,
@@ -4,26 +4,12 @@
4
4
  * @param {*} options
5
5
  * @returns compressed texture data
6
6
  */
7
- export default function parseBasis(data: ArrayBuffer, options: any): Promise<({
8
- width: any;
9
- height: any;
10
- data: Uint8Array;
11
- compressed: any;
12
- alphaFlag: any;
13
- format: any;
14
- } | null)[] | ({
15
- width: any;
16
- height: any;
17
- data: Uint8Array;
18
- compressed: any;
19
- hasAlpha: any;
20
- format: any;
21
- } | null)[][] | null>;
7
+ export default function parseBasis(data: any, options: any): Promise<any[] | null>;
22
8
  /**
23
9
  * Select transcode format from the list of supported formats
24
10
  * @returns key for OutputFormat map
25
11
  */
26
- export function selectSupportedBasisFormat(): "etc1" | "etc2" | "astc-4x4" | "rgb565" | {
12
+ export declare function selectSupportedBasisFormat(): "etc1" | "etc2" | "astc-4x4" | "rgb565" | {
27
13
  alpha: string;
28
14
  noAlpha: string;
29
15
  };
@@ -1 +1 @@
1
- {"version":3,"file":"parse-basis.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-basis.js"],"names":[],"mappings":"AAyBA;;;;;GAKG;AACH,yCAJW,WAAW;;;;;;;;;;;;;;sBA4BrB;AA8KD;;;GAGG;AACH;;;EAoBC"}
1
+ {"version":3,"file":"parse-basis.d.ts","sourceRoot":"","sources":["../../../src/lib/parsers/parse-basis.ts"],"names":[],"mappings":"AAiDA;;;;;GAKG;AACH,wBAA8B,UAAU,CAAC,IAAI,KAAA,EAAE,OAAO,KAAA,yBAwBrD;AA8KD;;;GAGG;AACH,wBAAgB,0BAA0B;;;EAoBzC"}
@@ -2,21 +2,45 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.selectSupportedBasisFormat = void 0;
4
4
  const basis_module_loader_1 = require("./basis-module-loader");
5
- const gl_constants_1 = require("../gl-constants");
5
+ const gl_extensions_1 = require("../gl-extensions");
6
6
  const texture_formats_1 = require("../utils/texture-formats");
7
7
  const parse_ktx_1 = require("./parse-ktx");
8
8
  const OutputFormat = {
9
- etc1: { basisFormat: 0, compressed: true, format: gl_constants_1.GL.COMPRESSED_RGB_ETC1_WEBGL },
9
+ etc1: {
10
+ basisFormat: 0,
11
+ compressed: true,
12
+ format: gl_extensions_1.GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_ETC1_WEBGL
13
+ },
10
14
  etc2: { basisFormat: 1, compressed: true },
11
- bc1: { basisFormat: 2, compressed: true, format: gl_constants_1.GL.COMPRESSED_RGB_S3TC_DXT1_EXT },
12
- bc3: { basisFormat: 3, compressed: true, format: gl_constants_1.GL.COMPRESSED_RGBA_S3TC_DXT5_EXT },
15
+ bc1: {
16
+ basisFormat: 2,
17
+ compressed: true,
18
+ format: gl_extensions_1.GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT
19
+ },
20
+ bc3: {
21
+ basisFormat: 3,
22
+ compressed: true,
23
+ format: gl_extensions_1.GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT
24
+ },
13
25
  bc4: { basisFormat: 4, compressed: true },
14
26
  bc5: { basisFormat: 5, compressed: true },
15
27
  'bc7-m6-opaque-only': { basisFormat: 6, compressed: true },
16
28
  'bc7-m5': { basisFormat: 7, compressed: true },
17
- 'pvrtc1-4-rgb': { basisFormat: 8, compressed: true, format: gl_constants_1.GL.COMPRESSED_RGB_PVRTC_4BPPV1_IMG },
18
- 'pvrtc1-4-rgba': { basisFormat: 9, compressed: true, format: gl_constants_1.GL.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG },
19
- 'astc-4x4': { basisFormat: 10, compressed: true, format: gl_constants_1.GL.COMPRESSED_RGBA_ASTC_4X4_KHR },
29
+ 'pvrtc1-4-rgb': {
30
+ basisFormat: 8,
31
+ compressed: true,
32
+ format: gl_extensions_1.GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_PVRTC_4BPPV1_IMG
33
+ },
34
+ 'pvrtc1-4-rgba': {
35
+ basisFormat: 9,
36
+ compressed: true,
37
+ format: gl_extensions_1.GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG
38
+ },
39
+ 'astc-4x4': {
40
+ basisFormat: 10,
41
+ compressed: true,
42
+ format: gl_extensions_1.GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_ASTC_4X4_KHR
43
+ },
20
44
  'atc-rgb': { basisFormat: 11, compressed: true },
21
45
  'atc-rgba-interpolated-alpha': { basisFormat: 12, compressed: true },
22
46
  rgba32: { basisFormat: 13, compressed: false },
@@ -2,7 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.parseCrunch = void 0;
4
4
  const crunch_module_loader_1 = require("./crunch-module-loader");
5
- const gl_constants_1 = require("../gl-constants");
5
+ const gl_extensions_1 = require("../gl-extensions");
6
6
  const loader_utils_1 = require("@loaders.gl/loader-utils");
7
7
  const parse_dds_1 = require("./parse-dds");
8
8
  const extract_mipmap_images_1 = require("../utils/extract-mipmap-images");
@@ -18,15 +18,15 @@ const CRN_FORMAT = {
18
18
  // Mapping of Crunch formats to DXT formats.
19
19
  const DXT_FORMAT_MAP = {};
20
20
  DXT_FORMAT_MAP[CRN_FORMAT.cCRNFmtDXT1] = {
21
- pixelFormat: gl_constants_1.GL.COMPRESSED_RGB_S3TC_DXT1_EXT,
21
+ pixelFormat: gl_extensions_1.GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGB_S3TC_DXT1_EXT,
22
22
  sizeFunction: parse_dds_1.getDxt1LevelSize
23
23
  };
24
24
  DXT_FORMAT_MAP[CRN_FORMAT.cCRNFmtDXT3] = {
25
- pixelFormat: gl_constants_1.GL.COMPRESSED_RGBA_S3TC_DXT3_EXT,
25
+ pixelFormat: gl_extensions_1.GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT3_EXT,
26
26
  sizeFunction: parse_dds_1.getDxtXLevelSize
27
27
  };
28
28
  DXT_FORMAT_MAP[CRN_FORMAT.cCRNFmtDXT5] = {
29
- pixelFormat: gl_constants_1.GL.COMPRESSED_RGBA_S3TC_DXT5_EXT,
29
+ pixelFormat: gl_extensions_1.GL_EXTENSIONS_CONSTANTS.COMPRESSED_RGBA_S3TC_DXT5_EXT,
30
30
  sizeFunction: parse_dds_1.getDxtXLevelSize
31
31
  };
32
32
  let cachedDstSize = 0;