@babylonjs/viewer 7.41.0-alpha → 7.41.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 (619) hide show
  1. package/configuration/configuration.d.ts +107 -0
  2. package/configuration/configuration.js +16 -0
  3. package/configuration/configuration.js.map +1 -0
  4. package/configuration/configurationCompatibility.d.ts +8 -0
  5. package/configuration/configurationCompatibility.js +66 -0
  6. package/configuration/configurationCompatibility.js.map +1 -0
  7. package/configuration/configurationContainer.d.ts +10 -0
  8. package/configuration/configurationContainer.js +10 -0
  9. package/configuration/configurationContainer.js.map +1 -0
  10. package/configuration/globals.d.ts +6 -0
  11. package/configuration/globals.js +18 -0
  12. package/configuration/globals.js.map +1 -0
  13. package/configuration/index.d.ts +2 -0
  14. package/configuration/index.js +4 -0
  15. package/configuration/index.js.map +1 -0
  16. package/configuration/interfaces/cameraConfiguration.d.ts +31 -0
  17. package/configuration/interfaces/cameraConfiguration.js +2 -0
  18. package/configuration/interfaces/cameraConfiguration.js.map +1 -0
  19. package/configuration/interfaces/colorGradingConfiguration.d.ts +81 -0
  20. package/configuration/interfaces/colorGradingConfiguration.js +2 -0
  21. package/configuration/interfaces/colorGradingConfiguration.js.map +1 -0
  22. package/configuration/interfaces/defaultRenderingPipelineConfiguration.d.ts +20 -0
  23. package/configuration/interfaces/defaultRenderingPipelineConfiguration.js +2 -0
  24. package/configuration/interfaces/defaultRenderingPipelineConfiguration.js.map +1 -0
  25. package/configuration/interfaces/environmentMapConfiguration.d.ts +22 -0
  26. package/configuration/interfaces/environmentMapConfiguration.js +2 -0
  27. package/configuration/interfaces/environmentMapConfiguration.js.map +1 -0
  28. package/configuration/interfaces/groundConfiguration.d.ts +24 -0
  29. package/configuration/interfaces/groundConfiguration.js +2 -0
  30. package/configuration/interfaces/groundConfiguration.js.map +1 -0
  31. package/configuration/interfaces/imageProcessingConfiguration.d.ts +45 -0
  32. package/configuration/interfaces/imageProcessingConfiguration.js +2 -0
  33. package/configuration/interfaces/imageProcessingConfiguration.js.map +1 -0
  34. package/configuration/interfaces/index.d.ts +15 -0
  35. package/configuration/interfaces/index.js +16 -0
  36. package/configuration/interfaces/index.js.map +1 -0
  37. package/configuration/interfaces/lightConfiguration.d.ts +60 -0
  38. package/configuration/interfaces/lightConfiguration.js +2 -0
  39. package/configuration/interfaces/lightConfiguration.js.map +1 -0
  40. package/configuration/interfaces/modelAnimationConfiguration.d.ts +26 -0
  41. package/configuration/interfaces/modelAnimationConfiguration.js +2 -0
  42. package/configuration/interfaces/modelAnimationConfiguration.js.map +1 -0
  43. package/configuration/interfaces/modelConfiguration.d.ts +65 -0
  44. package/configuration/interfaces/modelConfiguration.js +2 -0
  45. package/configuration/interfaces/modelConfiguration.js.map +1 -0
  46. package/configuration/interfaces/observersConfiguration.d.ts +5 -0
  47. package/configuration/interfaces/observersConfiguration.js +2 -0
  48. package/configuration/interfaces/observersConfiguration.js.map +1 -0
  49. package/configuration/interfaces/sceneConfiguration.d.ts +48 -0
  50. package/configuration/interfaces/sceneConfiguration.js +2 -0
  51. package/configuration/interfaces/sceneConfiguration.js.map +1 -0
  52. package/configuration/interfaces/sceneOptimizerConfiguration.d.ts +23 -0
  53. package/configuration/interfaces/sceneOptimizerConfiguration.js +2 -0
  54. package/configuration/interfaces/sceneOptimizerConfiguration.js.map +1 -0
  55. package/configuration/interfaces/skyboxConfiguration.d.ts +21 -0
  56. package/configuration/interfaces/skyboxConfiguration.js +2 -0
  57. package/configuration/interfaces/skyboxConfiguration.js.map +1 -0
  58. package/configuration/interfaces/templateConfiguration.d.ts +67 -0
  59. package/configuration/interfaces/templateConfiguration.js +2 -0
  60. package/configuration/interfaces/templateConfiguration.js.map +1 -0
  61. package/configuration/interfaces/vrConfiguration.d.ts +16 -0
  62. package/configuration/interfaces/vrConfiguration.js +2 -0
  63. package/configuration/interfaces/vrConfiguration.js.map +1 -0
  64. package/configuration/loader.d.ts +4 -0
  65. package/configuration/loader.js +17 -0
  66. package/configuration/loader.js.map +1 -0
  67. package/configuration/mappers.d.ts +43 -0
  68. package/configuration/mappers.js +193 -0
  69. package/configuration/mappers.js.map +1 -0
  70. package/configuration/renderOnlyLoader.d.ts +33 -0
  71. package/configuration/renderOnlyLoader.js +162 -0
  72. package/configuration/renderOnlyLoader.js.map +1 -0
  73. package/configuration/types/default.d.ts +6 -0
  74. package/configuration/types/default.js +121 -0
  75. package/configuration/types/default.js.map +1 -0
  76. package/configuration/types/environmentMap.d.ts +5 -0
  77. package/configuration/types/environmentMap.js +14 -0
  78. package/configuration/types/environmentMap.js.map +1 -0
  79. package/configuration/types/extended.d.ts +6 -0
  80. package/configuration/types/extended.js +317 -0
  81. package/configuration/types/extended.js.map +1 -0
  82. package/configuration/types/index.d.ts +14 -0
  83. package/configuration/types/index.js +51 -0
  84. package/configuration/types/index.js.map +1 -0
  85. package/configuration/types/minimal.d.ts +6 -0
  86. package/configuration/types/minimal.js +43 -0
  87. package/configuration/types/minimal.js.map +1 -0
  88. package/configuration/types/renderOnlyDefault.d.ts +30 -0
  89. package/configuration/types/renderOnlyDefault.js +31 -0
  90. package/configuration/types/renderOnlyDefault.js.map +1 -0
  91. package/configuration/types/shadowLight.d.ts +9 -0
  92. package/configuration/types/shadowLight.js +64 -0
  93. package/configuration/types/shadowLight.js.map +1 -0
  94. package/helper/index.d.ts +29 -0
  95. package/helper/index.js +66 -0
  96. package/helper/index.js.map +1 -0
  97. package/index.d.ts +30 -0
  98. package/index.js +46 -0
  99. package/index.js.map +1 -0
  100. package/initializer.d.ts +11 -0
  101. package/initializer.js +35 -0
  102. package/initializer.js.map +1 -0
  103. package/interfaces.d.ts +5 -0
  104. package/interfaces.js +7 -0
  105. package/interfaces.js.map +1 -0
  106. package/labs/environmentSerializer.d.ts +126 -0
  107. package/labs/environmentSerializer.js +191 -0
  108. package/labs/environmentSerializer.js.map +1 -0
  109. package/labs/texture.d.ts +183 -0
  110. package/labs/texture.js +351 -0
  111. package/labs/texture.js.map +1 -0
  112. package/labs/viewerLabs.d.ts +51 -0
  113. package/labs/viewerLabs.js +134 -0
  114. package/labs/viewerLabs.js.map +1 -0
  115. package/loader/modelLoader.d.ts +56 -0
  116. package/loader/modelLoader.js +202 -0
  117. package/loader/modelLoader.js.map +1 -0
  118. package/loader/plugins/applyMaterialConfig.d.ts +12 -0
  119. package/loader/plugins/applyMaterialConfig.js +16 -0
  120. package/loader/plugins/applyMaterialConfig.js.map +1 -0
  121. package/loader/plugins/extendedMaterialLoaderPlugin.d.ts +9 -0
  122. package/loader/plugins/extendedMaterialLoaderPlugin.js +16 -0
  123. package/loader/plugins/extendedMaterialLoaderPlugin.js.map +1 -0
  124. package/loader/plugins/index.d.ts +19 -0
  125. package/loader/plugins/index.js +44 -0
  126. package/loader/plugins/index.js.map +1 -0
  127. package/loader/plugins/loaderPlugin.d.ts +24 -0
  128. package/loader/plugins/loaderPlugin.js +2 -0
  129. package/loader/plugins/loaderPlugin.js.map +1 -0
  130. package/loader/plugins/msftLodLoaderPlugin.d.ts +12 -0
  131. package/loader/plugins/msftLodLoaderPlugin.js +21 -0
  132. package/loader/plugins/msftLodLoaderPlugin.js.map +1 -0
  133. package/loader/plugins/telemetryLoaderPlugin.d.ts +12 -0
  134. package/loader/plugins/telemetryLoaderPlugin.js +36 -0
  135. package/loader/plugins/telemetryLoaderPlugin.js.map +1 -0
  136. package/managers/observablesManager.d.ts +66 -0
  137. package/managers/observablesManager.js +35 -0
  138. package/managers/observablesManager.js.map +1 -0
  139. package/managers/sceneManager.d.ts +245 -0
  140. package/managers/sceneManager.js +1375 -0
  141. package/managers/sceneManager.js.map +1 -0
  142. package/managers/telemetryManager.d.ts +78 -0
  143. package/managers/telemetryManager.js +117 -0
  144. package/managers/telemetryManager.js.map +1 -0
  145. package/model/modelAnimation.d.ts +215 -0
  146. package/model/modelAnimation.js +237 -0
  147. package/model/modelAnimation.js.map +1 -0
  148. package/model/viewerModel.d.ts +233 -0
  149. package/model/viewerModel.js +673 -0
  150. package/model/viewerModel.js.map +1 -0
  151. package/optimizer/custom/extended.d.ts +13 -0
  152. package/optimizer/custom/extended.js +101 -0
  153. package/optimizer/custom/extended.js.map +1 -0
  154. package/optimizer/custom/index.d.ts +9 -0
  155. package/optimizer/custom/index.js +26 -0
  156. package/optimizer/custom/index.js.map +1 -0
  157. package/package.json +28 -19
  158. package/readme.md +28 -28
  159. package/renderOnlyIndex.d.ts +11 -0
  160. package/renderOnlyIndex.js +18 -0
  161. package/renderOnlyIndex.js.map +1 -0
  162. package/templating/eventManager.d.ts +35 -0
  163. package/templating/eventManager.js +66 -0
  164. package/templating/eventManager.js.map +1 -0
  165. package/templating/plugins/hdButtonPlugin.d.ts +9 -0
  166. package/templating/plugins/hdButtonPlugin.js +22 -0
  167. package/templating/plugins/hdButtonPlugin.js.map +1 -0
  168. package/templating/plugins/printButton.d.ts +9 -0
  169. package/templating/plugins/printButton.js +41 -0
  170. package/templating/plugins/printButton.js.map +1 -0
  171. package/templating/templateManager.d.ts +197 -0
  172. package/templating/templateManager.js +561 -0
  173. package/templating/templateManager.js.map +1 -0
  174. package/templating/viewerTemplatePlugin.d.ts +21 -0
  175. package/templating/viewerTemplatePlugin.js +69 -0
  176. package/templating/viewerTemplatePlugin.js.map +1 -0
  177. package/viewer/defaultViewer.d.ts +130 -0
  178. package/viewer/defaultViewer.js +672 -0
  179. package/viewer/defaultViewer.js.map +1 -0
  180. package/viewer/renderOnlyViewer.d.ts +9 -0
  181. package/viewer/renderOnlyViewer.js +46 -0
  182. package/viewer/renderOnlyViewer.js.map +1 -0
  183. package/viewer/viewer.d.ts +258 -0
  184. package/viewer/viewer.js +783 -0
  185. package/viewer/viewer.js.map +1 -0
  186. package/viewer/viewerManager.d.ts +58 -0
  187. package/viewer/viewerManager.js +91 -0
  188. package/viewer/viewerManager.js.map +1 -0
  189. package/viewer/viewerWithTemplate.d.ts +9 -0
  190. package/viewer/viewerWithTemplate.js +20 -0
  191. package/viewer/viewerWithTemplate.js.map +1 -0
  192. package/assets/photoStudio.env +0 -0
  193. package/dist/babylon-viewer.esm.js +0 -2
  194. package/dist/babylon-viewer.esm.js.map +0 -1
  195. package/dist/babylon-viewer.esm.min.js +0 -2
  196. package/dist/babylon-viewer.esm.min.js.map +0 -1
  197. package/dist/chunks/EXT_lights_ies-CFzvmxxg.esm.min.js +0 -2
  198. package/dist/chunks/EXT_lights_ies-CFzvmxxg.esm.min.js.map +0 -1
  199. package/dist/chunks/EXT_lights_ies-cyFdY7yl.esm.js +0 -84
  200. package/dist/chunks/EXT_lights_ies-cyFdY7yl.esm.js.map +0 -1
  201. package/dist/chunks/EXT_lights_image_based-BNmSqx40.esm.min.js +0 -2
  202. package/dist/chunks/EXT_lights_image_based-BNmSqx40.esm.min.js.map +0 -1
  203. package/dist/chunks/EXT_lights_image_based-CC48JVU0.esm.js +0 -171
  204. package/dist/chunks/EXT_lights_image_based-CC48JVU0.esm.js.map +0 -1
  205. package/dist/chunks/EXT_mesh_gpu_instancing-B2qj3kQu.esm.js +0 -86
  206. package/dist/chunks/EXT_mesh_gpu_instancing-B2qj3kQu.esm.js.map +0 -1
  207. package/dist/chunks/EXT_mesh_gpu_instancing-lanrAAoi.esm.min.js +0 -2
  208. package/dist/chunks/EXT_mesh_gpu_instancing-lanrAAoi.esm.min.js.map +0 -1
  209. package/dist/chunks/EXT_meshopt_compression-DjvHx7gJ.esm.js +0 -134
  210. package/dist/chunks/EXT_meshopt_compression-DjvHx7gJ.esm.js.map +0 -1
  211. package/dist/chunks/EXT_meshopt_compression-oH6HzGir.esm.min.js +0 -2
  212. package/dist/chunks/EXT_meshopt_compression-oH6HzGir.esm.min.js.map +0 -1
  213. package/dist/chunks/EXT_texture_avif-BYWETW7-.esm.min.js +0 -2
  214. package/dist/chunks/EXT_texture_avif-BYWETW7-.esm.min.js.map +0 -1
  215. package/dist/chunks/EXT_texture_avif-CKXEq29h.esm.js +0 -44
  216. package/dist/chunks/EXT_texture_avif-CKXEq29h.esm.js.map +0 -1
  217. package/dist/chunks/EXT_texture_webp-Dl4GPoEU.esm.min.js +0 -2
  218. package/dist/chunks/EXT_texture_webp-Dl4GPoEU.esm.min.js.map +0 -1
  219. package/dist/chunks/EXT_texture_webp-fAiSgaNl.esm.js +0 -43
  220. package/dist/chunks/EXT_texture_webp-fAiSgaNl.esm.js.map +0 -1
  221. package/dist/chunks/ExtrasAsMetadata-BUQ3X3M6.esm.js +0 -64
  222. package/dist/chunks/ExtrasAsMetadata-BUQ3X3M6.esm.js.map +0 -1
  223. package/dist/chunks/ExtrasAsMetadata-C_M9nxb4.esm.min.js +0 -2
  224. package/dist/chunks/ExtrasAsMetadata-C_M9nxb4.esm.min.js.map +0 -1
  225. package/dist/chunks/KHR_animation_pointer-BdFZyLUq.esm.js +0 -352
  226. package/dist/chunks/KHR_animation_pointer-BdFZyLUq.esm.js.map +0 -1
  227. package/dist/chunks/KHR_animation_pointer-CBqZcURZ.esm.min.js +0 -2
  228. package/dist/chunks/KHR_animation_pointer-CBqZcURZ.esm.min.js.map +0 -1
  229. package/dist/chunks/KHR_draco_mesh_compression-DU2Rk2nj.esm.min.js +0 -2
  230. package/dist/chunks/KHR_draco_mesh_compression-DU2Rk2nj.esm.min.js.map +0 -1
  231. package/dist/chunks/KHR_draco_mesh_compression-hVF9XuFz.esm.js +0 -610
  232. package/dist/chunks/KHR_draco_mesh_compression-hVF9XuFz.esm.js.map +0 -1
  233. package/dist/chunks/KHR_interactivity-COE1p684.esm.min.js +0 -2
  234. package/dist/chunks/KHR_interactivity-COE1p684.esm.min.js.map +0 -1
  235. package/dist/chunks/KHR_interactivity-Cv1s_pea.esm.js +0 -4033
  236. package/dist/chunks/KHR_interactivity-Cv1s_pea.esm.js.map +0 -1
  237. package/dist/chunks/KHR_lights_punctual-CHf5kbKi.esm.js +0 -581
  238. package/dist/chunks/KHR_lights_punctual-CHf5kbKi.esm.js.map +0 -1
  239. package/dist/chunks/KHR_lights_punctual-DIEAP5SG.esm.min.js +0 -2
  240. package/dist/chunks/KHR_lights_punctual-DIEAP5SG.esm.min.js.map +0 -1
  241. package/dist/chunks/KHR_materials_anisotropy-CU-xxV6y.esm.js +0 -65
  242. package/dist/chunks/KHR_materials_anisotropy-CU-xxV6y.esm.js.map +0 -1
  243. package/dist/chunks/KHR_materials_anisotropy-Cq6CU4qW.esm.min.js +0 -2
  244. package/dist/chunks/KHR_materials_anisotropy-Cq6CU4qW.esm.min.js.map +0 -1
  245. package/dist/chunks/KHR_materials_clearcoat-BSjcmIju.esm.js +0 -96
  246. package/dist/chunks/KHR_materials_clearcoat-BSjcmIju.esm.js.map +0 -1
  247. package/dist/chunks/KHR_materials_clearcoat-CVNNhJRE.esm.min.js +0 -2
  248. package/dist/chunks/KHR_materials_clearcoat-CVNNhJRE.esm.min.js.map +0 -1
  249. package/dist/chunks/KHR_materials_diffuse_transmission-BDuGIkOh.esm.min.js +0 -2
  250. package/dist/chunks/KHR_materials_diffuse_transmission-BDuGIkOh.esm.min.js.map +0 -1
  251. package/dist/chunks/KHR_materials_diffuse_transmission-BZ-9rJUf.esm.js +0 -97
  252. package/dist/chunks/KHR_materials_diffuse_transmission-BZ-9rJUf.esm.js.map +0 -1
  253. package/dist/chunks/KHR_materials_dispersion-BxiGElVU.esm.min.js +0 -2
  254. package/dist/chunks/KHR_materials_dispersion-BxiGElVU.esm.min.js.map +0 -1
  255. package/dist/chunks/KHR_materials_dispersion-UI4zH1V_.esm.js +0 -62
  256. package/dist/chunks/KHR_materials_dispersion-UI4zH1V_.esm.js.map +0 -1
  257. package/dist/chunks/KHR_materials_emissive_strength-BT-Nu60T.esm.js +0 -55
  258. package/dist/chunks/KHR_materials_emissive_strength-BT-Nu60T.esm.js.map +0 -1
  259. package/dist/chunks/KHR_materials_emissive_strength-CwkVNmN7.esm.min.js +0 -2
  260. package/dist/chunks/KHR_materials_emissive_strength-CwkVNmN7.esm.min.js.map +0 -1
  261. package/dist/chunks/KHR_materials_ior-BGUUe5AW.esm.min.js +0 -2
  262. package/dist/chunks/KHR_materials_ior-BGUUe5AW.esm.min.js.map +0 -1
  263. package/dist/chunks/KHR_materials_ior-BbBQF-yw.esm.js +0 -64
  264. package/dist/chunks/KHR_materials_ior-BbBQF-yw.esm.js.map +0 -1
  265. package/dist/chunks/KHR_materials_iridescence-IFN2ewvr.esm.min.js +0 -2
  266. package/dist/chunks/KHR_materials_iridescence-IFN2ewvr.esm.min.js.map +0 -1
  267. package/dist/chunks/KHR_materials_iridescence-nLZDN7sc.esm.js +0 -72
  268. package/dist/chunks/KHR_materials_iridescence-nLZDN7sc.esm.js.map +0 -1
  269. package/dist/chunks/KHR_materials_pbrSpecularGlossiness-CyNVQC-W.esm.js +0 -81
  270. package/dist/chunks/KHR_materials_pbrSpecularGlossiness-CyNVQC-W.esm.js.map +0 -1
  271. package/dist/chunks/KHR_materials_pbrSpecularGlossiness-zxcydJdp.esm.min.js +0 -2
  272. package/dist/chunks/KHR_materials_pbrSpecularGlossiness-zxcydJdp.esm.min.js.map +0 -1
  273. package/dist/chunks/KHR_materials_sheen-BWL9yo8Z.esm.min.js +0 -2
  274. package/dist/chunks/KHR_materials_sheen-BWL9yo8Z.esm.min.js.map +0 -1
  275. package/dist/chunks/KHR_materials_sheen-DSThWwq2.esm.js +0 -85
  276. package/dist/chunks/KHR_materials_sheen-DSThWwq2.esm.js.map +0 -1
  277. package/dist/chunks/KHR_materials_specular-B96NRFEV.esm.js +0 -75
  278. package/dist/chunks/KHR_materials_specular-B96NRFEV.esm.js.map +0 -1
  279. package/dist/chunks/KHR_materials_specular-D2JwOdxw.esm.min.js +0 -2
  280. package/dist/chunks/KHR_materials_specular-D2JwOdxw.esm.min.js.map +0 -1
  281. package/dist/chunks/KHR_materials_transmission-BvqtJXfD.esm.js +0 -307
  282. package/dist/chunks/KHR_materials_transmission-BvqtJXfD.esm.js.map +0 -1
  283. package/dist/chunks/KHR_materials_transmission-ljXN4y_0.esm.min.js +0 -2
  284. package/dist/chunks/KHR_materials_transmission-ljXN4y_0.esm.min.js.map +0 -1
  285. package/dist/chunks/KHR_materials_unlit-CjGTXU3z.esm.min.js +0 -2
  286. package/dist/chunks/KHR_materials_unlit-CjGTXU3z.esm.min.js.map +0 -1
  287. package/dist/chunks/KHR_materials_unlit-ww00IloC.esm.js +0 -74
  288. package/dist/chunks/KHR_materials_unlit-ww00IloC.esm.js.map +0 -1
  289. package/dist/chunks/KHR_materials_variants-D0pVU1lm.esm.min.js +0 -2
  290. package/dist/chunks/KHR_materials_variants-D0pVU1lm.esm.min.js.map +0 -1
  291. package/dist/chunks/KHR_materials_variants-D3IDOJfB.esm.js +0 -262
  292. package/dist/chunks/KHR_materials_variants-D3IDOJfB.esm.js.map +0 -1
  293. package/dist/chunks/KHR_materials_volume-BfZR8rbr.esm.min.js +0 -2
  294. package/dist/chunks/KHR_materials_volume-BfZR8rbr.esm.min.js.map +0 -1
  295. package/dist/chunks/KHR_materials_volume-CLkC_Bvi.esm.js +0 -87
  296. package/dist/chunks/KHR_materials_volume-CLkC_Bvi.esm.js.map +0 -1
  297. package/dist/chunks/KHR_mesh_quantization-BJv1P2Wt.esm.js +0 -26
  298. package/dist/chunks/KHR_mesh_quantization-BJv1P2Wt.esm.js.map +0 -1
  299. package/dist/chunks/KHR_mesh_quantization-D69X_5bR.esm.min.js +0 -2
  300. package/dist/chunks/KHR_mesh_quantization-D69X_5bR.esm.min.js.map +0 -1
  301. package/dist/chunks/KHR_node_hoverability-CG6s7hhs.esm.min.js +0 -2
  302. package/dist/chunks/KHR_node_hoverability-CG6s7hhs.esm.min.js.map +0 -1
  303. package/dist/chunks/KHR_node_hoverability-xgvyZ_r-.esm.js +0 -39
  304. package/dist/chunks/KHR_node_hoverability-xgvyZ_r-.esm.js.map +0 -1
  305. package/dist/chunks/KHR_node_visibility-DUozjXRR.esm.min.js +0 -2
  306. package/dist/chunks/KHR_node_visibility-DUozjXRR.esm.min.js.map +0 -1
  307. package/dist/chunks/KHR_node_visibility-aAs5Kkey.esm.js +0 -46
  308. package/dist/chunks/KHR_node_visibility-aAs5Kkey.esm.js.map +0 -1
  309. package/dist/chunks/KHR_texture_basisu-Bjw0jG1d.esm.js +0 -43
  310. package/dist/chunks/KHR_texture_basisu-Bjw0jG1d.esm.js.map +0 -1
  311. package/dist/chunks/KHR_texture_basisu-FWm46QOj.esm.min.js +0 -2
  312. package/dist/chunks/KHR_texture_basisu-FWm46QOj.esm.min.js.map +0 -1
  313. package/dist/chunks/KHR_texture_transform-BZYr2brj.esm.min.js +0 -2
  314. package/dist/chunks/KHR_texture_transform-BZYr2brj.esm.min.js.map +0 -1
  315. package/dist/chunks/KHR_texture_transform-DdsN6SA_.esm.js +0 -63
  316. package/dist/chunks/KHR_texture_transform-DdsN6SA_.esm.js.map +0 -1
  317. package/dist/chunks/KHR_xmp_json_ld-DhFD64vh.esm.min.js +0 -2
  318. package/dist/chunks/KHR_xmp_json_ld-DhFD64vh.esm.min.js.map +0 -1
  319. package/dist/chunks/KHR_xmp_json_ld-sTn6N13E.esm.js +0 -51
  320. package/dist/chunks/KHR_xmp_json_ld-sTn6N13E.esm.js.map +0 -1
  321. package/dist/chunks/MSFT_audio_emitter-5lrNj8-c.esm.min.js +0 -2
  322. package/dist/chunks/MSFT_audio_emitter-5lrNj8-c.esm.min.js.map +0 -1
  323. package/dist/chunks/MSFT_audio_emitter-B7RJSCaF.esm.js +0 -2201
  324. package/dist/chunks/MSFT_audio_emitter-B7RJSCaF.esm.js.map +0 -1
  325. package/dist/chunks/MSFT_lod-BJBjM7Gp.esm.js +0 -337
  326. package/dist/chunks/MSFT_lod-BJBjM7Gp.esm.js.map +0 -1
  327. package/dist/chunks/MSFT_lod-DpEZMnoU.esm.min.js +0 -2
  328. package/dist/chunks/MSFT_lod-DpEZMnoU.esm.min.js.map +0 -1
  329. package/dist/chunks/MSFT_minecraftMesh-CXHPdyar.esm.min.js +0 -2
  330. package/dist/chunks/MSFT_minecraftMesh-CXHPdyar.esm.min.js.map +0 -1
  331. package/dist/chunks/MSFT_minecraftMesh-DRC2tMvY.esm.js +0 -46
  332. package/dist/chunks/MSFT_minecraftMesh-DRC2tMvY.esm.js.map +0 -1
  333. package/dist/chunks/MSFT_sRGBFactors-Db1asZRk.esm.js +0 -47
  334. package/dist/chunks/MSFT_sRGBFactors-Db1asZRk.esm.js.map +0 -1
  335. package/dist/chunks/MSFT_sRGBFactors-RhAtY3q7.esm.min.js +0 -2
  336. package/dist/chunks/MSFT_sRGBFactors-RhAtY3q7.esm.min.js.map +0 -1
  337. package/dist/chunks/animationGroup-CjaFhT87.esm.min.js +0 -2
  338. package/dist/chunks/animationGroup-CjaFhT87.esm.min.js.map +0 -1
  339. package/dist/chunks/animationGroup-Ctc6BUYh.esm.js +0 -2482
  340. package/dist/chunks/animationGroup-Ctc6BUYh.esm.js.map +0 -1
  341. package/dist/chunks/assetContainer-DDEska5G.esm.min.js +0 -2
  342. package/dist/chunks/assetContainer-DDEska5G.esm.min.js.map +0 -1
  343. package/dist/chunks/assetContainer-QD3gUzyx.esm.js +0 -1720
  344. package/dist/chunks/assetContainer-QD3gUzyx.esm.js.map +0 -1
  345. package/dist/chunks/audioEngine-C6R2Ow6e.esm.js +0 -305
  346. package/dist/chunks/audioEngine-C6R2Ow6e.esm.js.map +0 -1
  347. package/dist/chunks/audioEngine-FKYFzzDb.esm.min.js +0 -2
  348. package/dist/chunks/audioEngine-FKYFzzDb.esm.min.js.map +0 -1
  349. package/dist/chunks/bakedVertexAnimation-DKR6lpIg.esm.min.js +0 -2
  350. package/dist/chunks/bakedVertexAnimation-DKR6lpIg.esm.min.js.map +0 -1
  351. package/dist/chunks/bakedVertexAnimation-Hxn22qoJ.esm.js +0 -114
  352. package/dist/chunks/bakedVertexAnimation-Hxn22qoJ.esm.js.map +0 -1
  353. package/dist/chunks/basisTextureLoader-BcNAHqjw.esm.min.js +0 -2
  354. package/dist/chunks/basisTextureLoader-BcNAHqjw.esm.min.js.map +0 -1
  355. package/dist/chunks/basisTextureLoader-Dr2d0ez5.esm.js +0 -600
  356. package/dist/chunks/basisTextureLoader-Dr2d0ez5.esm.js.map +0 -1
  357. package/dist/chunks/dds-CFrq_XFM.esm.js +0 -540
  358. package/dist/chunks/dds-CFrq_XFM.esm.js.map +0 -1
  359. package/dist/chunks/dds-D1NTXLIL.esm.min.js +0 -2
  360. package/dist/chunks/dds-D1NTXLIL.esm.min.js.map +0 -1
  361. package/dist/chunks/ddsTextureLoader-DbvffCUa.esm.min.js +0 -2
  362. package/dist/chunks/ddsTextureLoader-DbvffCUa.esm.min.js.map +0 -1
  363. package/dist/chunks/ddsTextureLoader-wyjUdBoO.esm.js +0 -88
  364. package/dist/chunks/ddsTextureLoader-wyjUdBoO.esm.js.map +0 -1
  365. package/dist/chunks/decalFragment-CGto5zyq.esm.js +0 -18
  366. package/dist/chunks/decalFragment-CGto5zyq.esm.js.map +0 -1
  367. package/dist/chunks/decalFragment-CU64C8uG.esm.min.js +0 -2
  368. package/dist/chunks/decalFragment-CU64C8uG.esm.min.js.map +0 -1
  369. package/dist/chunks/default.fragment-B2bhCC4E.esm.js +0 -446
  370. package/dist/chunks/default.fragment-B2bhCC4E.esm.js.map +0 -1
  371. package/dist/chunks/default.fragment-Boq79lom.esm.min.js +0 -2
  372. package/dist/chunks/default.fragment-Boq79lom.esm.min.js.map +0 -1
  373. package/dist/chunks/default.fragment-CluFtXFp.esm.min.js +0 -2
  374. package/dist/chunks/default.fragment-CluFtXFp.esm.min.js.map +0 -1
  375. package/dist/chunks/default.fragment-Dshl5Uqc.esm.js +0 -515
  376. package/dist/chunks/default.fragment-Dshl5Uqc.esm.js.map +0 -1
  377. package/dist/chunks/default.vertex-BAAgCiYo.esm.min.js +0 -2
  378. package/dist/chunks/default.vertex-BAAgCiYo.esm.min.js.map +0 -1
  379. package/dist/chunks/default.vertex-BhOIicZW.esm.min.js +0 -2
  380. package/dist/chunks/default.vertex-BhOIicZW.esm.min.js.map +0 -1
  381. package/dist/chunks/default.vertex-DL7IogGB.esm.js +0 -211
  382. package/dist/chunks/default.vertex-DL7IogGB.esm.js.map +0 -1
  383. package/dist/chunks/default.vertex-DOXcZEQ0.esm.js +0 -190
  384. package/dist/chunks/default.vertex-DOXcZEQ0.esm.js.map +0 -1
  385. package/dist/chunks/defaultUboDeclaration-1qBz6EuF.esm.js +0 -15
  386. package/dist/chunks/defaultUboDeclaration-1qBz6EuF.esm.js.map +0 -1
  387. package/dist/chunks/defaultUboDeclaration-B9LzMzlw.esm.min.js +0 -2
  388. package/dist/chunks/defaultUboDeclaration-B9LzMzlw.esm.min.js.map +0 -1
  389. package/dist/chunks/defaultUboDeclaration-CXdodf7i.esm.js +0 -13
  390. package/dist/chunks/defaultUboDeclaration-CXdodf7i.esm.js.map +0 -1
  391. package/dist/chunks/defaultUboDeclaration-CZlCaxgu.esm.min.js +0 -2
  392. package/dist/chunks/defaultUboDeclaration-CZlCaxgu.esm.min.js.map +0 -1
  393. package/dist/chunks/drawWrapper.functions-CKg3_9x4.esm.js +0 -11
  394. package/dist/chunks/drawWrapper.functions-CKg3_9x4.esm.js.map +0 -1
  395. package/dist/chunks/drawWrapper.functions-ng7lvueZ.esm.min.js +0 -2
  396. package/dist/chunks/drawWrapper.functions-ng7lvueZ.esm.min.js.map +0 -1
  397. package/dist/chunks/dumpTools-C3vcqEdz.esm.js +0 -200
  398. package/dist/chunks/dumpTools-C3vcqEdz.esm.js.map +0 -1
  399. package/dist/chunks/dumpTools-C8ZzlWEh.esm.min.js +0 -2
  400. package/dist/chunks/dumpTools-C8ZzlWEh.esm.min.js.map +0 -1
  401. package/dist/chunks/engine-_wVL12I1.esm.js +0 -2213
  402. package/dist/chunks/engine-_wVL12I1.esm.js.map +0 -1
  403. package/dist/chunks/engine-nCWszV_w.esm.min.js +0 -2
  404. package/dist/chunks/engine-nCWszV_w.esm.min.js.map +0 -1
  405. package/dist/chunks/engine.common-BuPfo1Wj.esm.min.js +0 -2
  406. package/dist/chunks/engine.common-BuPfo1Wj.esm.min.js.map +0 -1
  407. package/dist/chunks/engine.common-CT5iq3ZT.esm.js +0 -1162
  408. package/dist/chunks/engine.common-CT5iq3ZT.esm.js.map +0 -1
  409. package/dist/chunks/envTextureLoader-D7L0fVXR.esm.min.js +0 -2
  410. package/dist/chunks/envTextureLoader-D7L0fVXR.esm.min.js.map +0 -1
  411. package/dist/chunks/envTextureLoader-PtuRNDrr.esm.js +0 -64
  412. package/dist/chunks/envTextureLoader-PtuRNDrr.esm.js.map +0 -1
  413. package/dist/chunks/environmentTextureTools-BjmCbfSf.esm.min.js +0 -2
  414. package/dist/chunks/environmentTextureTools-BjmCbfSf.esm.min.js.map +0 -1
  415. package/dist/chunks/environmentTextureTools-DYbFmR95.esm.js +0 -382
  416. package/dist/chunks/environmentTextureTools-DYbFmR95.esm.js.map +0 -1
  417. package/dist/chunks/exrTextureLoader-BIPK0bPG.esm.min.js +0 -2
  418. package/dist/chunks/exrTextureLoader-BIPK0bPG.esm.min.js.map +0 -1
  419. package/dist/chunks/exrTextureLoader-CEhv_7O9.esm.js +0 -1683
  420. package/dist/chunks/exrTextureLoader-CEhv_7O9.esm.js.map +0 -1
  421. package/dist/chunks/fogFragment-B7_evZbY.esm.js +0 -102
  422. package/dist/chunks/fogFragment-B7_evZbY.esm.js.map +0 -1
  423. package/dist/chunks/fogFragment-CoZPb7oI.esm.min.js +0 -2
  424. package/dist/chunks/fogFragment-CoZPb7oI.esm.min.js.map +0 -1
  425. package/dist/chunks/fogFragment-DSO97-dc.esm.min.js +0 -2
  426. package/dist/chunks/fogFragment-DSO97-dc.esm.min.js.map +0 -1
  427. package/dist/chunks/fogFragment-wY2jQ7fb.esm.js +0 -101
  428. package/dist/chunks/fogFragment-wY2jQ7fb.esm.js.map +0 -1
  429. package/dist/chunks/fresnelFunction-BSEp5SCT.esm.js +0 -12
  430. package/dist/chunks/fresnelFunction-BSEp5SCT.esm.js.map +0 -1
  431. package/dist/chunks/fresnelFunction-Cg-NNSrz.esm.min.js +0 -2
  432. package/dist/chunks/fresnelFunction-Cg-NNSrz.esm.min.js.map +0 -1
  433. package/dist/chunks/glTFLoader-3ZUBWawQ.esm.min.js +0 -2
  434. package/dist/chunks/glTFLoader-3ZUBWawQ.esm.min.js.map +0 -1
  435. package/dist/chunks/glTFLoader-DVoAJl_A.esm.js +0 -7658
  436. package/dist/chunks/glTFLoader-DVoAJl_A.esm.js.map +0 -1
  437. package/dist/chunks/glTFLoaderAnimation-By7yP8sQ.esm.js +0 -77
  438. package/dist/chunks/glTFLoaderAnimation-By7yP8sQ.esm.js.map +0 -1
  439. package/dist/chunks/glTFLoaderAnimation-C9g-SHaJ.esm.min.js +0 -2
  440. package/dist/chunks/glTFLoaderAnimation-C9g-SHaJ.esm.min.js.map +0 -1
  441. package/dist/chunks/gltfPathToObjectConverter-Dyt_Y9jE.esm.min.js +0 -2
  442. package/dist/chunks/gltfPathToObjectConverter-Dyt_Y9jE.esm.min.js.map +0 -1
  443. package/dist/chunks/gltfPathToObjectConverter-GcUmfOyo.esm.js +0 -67
  444. package/dist/chunks/gltfPathToObjectConverter-GcUmfOyo.esm.js.map +0 -1
  445. package/dist/chunks/harmonicsFunctions-B8pgRSdd.esm.min.js +0 -2
  446. package/dist/chunks/harmonicsFunctions-B8pgRSdd.esm.min.js.map +0 -1
  447. package/dist/chunks/harmonicsFunctions-BcfkM4gb.esm.js +0 -35
  448. package/dist/chunks/harmonicsFunctions-BcfkM4gb.esm.js.map +0 -1
  449. package/dist/chunks/harmonicsFunctions-DF1x585z.esm.min.js +0 -2
  450. package/dist/chunks/harmonicsFunctions-DF1x585z.esm.min.js.map +0 -1
  451. package/dist/chunks/harmonicsFunctions-a48Ki58F.esm.js +0 -34
  452. package/dist/chunks/harmonicsFunctions-a48Ki58F.esm.js.map +0 -1
  453. package/dist/chunks/hdrTextureLoader-BWnO8u1r.esm.js +0 -253
  454. package/dist/chunks/hdrTextureLoader-BWnO8u1r.esm.js.map +0 -1
  455. package/dist/chunks/hdrTextureLoader-Bii9QpYI.esm.min.js +0 -2
  456. package/dist/chunks/hdrTextureLoader-Bii9QpYI.esm.min.js.map +0 -1
  457. package/dist/chunks/helperFunctions-BinFB44e.esm.js +0 -110
  458. package/dist/chunks/helperFunctions-BinFB44e.esm.js.map +0 -1
  459. package/dist/chunks/helperFunctions-CZAyJNTJ.esm.min.js +0 -2
  460. package/dist/chunks/helperFunctions-CZAyJNTJ.esm.min.js.map +0 -1
  461. package/dist/chunks/helperFunctions-DjoUVhI2.esm.min.js +0 -2
  462. package/dist/chunks/helperFunctions-DjoUVhI2.esm.min.js.map +0 -1
  463. package/dist/chunks/helperFunctions-Ds3-3-tu.esm.js +0 -83
  464. package/dist/chunks/helperFunctions-Ds3-3-tu.esm.js.map +0 -1
  465. package/dist/chunks/iesTextureLoader-CsnjIN7M.esm.js +0 -189
  466. package/dist/chunks/iesTextureLoader-CsnjIN7M.esm.js.map +0 -1
  467. package/dist/chunks/iesTextureLoader-DkmTomCD.esm.min.js +0 -2
  468. package/dist/chunks/iesTextureLoader-DkmTomCD.esm.min.js.map +0 -1
  469. package/dist/chunks/index-Cw2FZpYY.esm.js +0 -74870
  470. package/dist/chunks/index-Cw2FZpYY.esm.js.map +0 -1
  471. package/dist/chunks/index-DRbhrB0j.esm.min.js +0 -57
  472. package/dist/chunks/index-DRbhrB0j.esm.min.js.map +0 -1
  473. package/dist/chunks/ktxTextureLoader-B4pmAFQl.esm.js +0 -814
  474. package/dist/chunks/ktxTextureLoader-B4pmAFQl.esm.js.map +0 -1
  475. package/dist/chunks/ktxTextureLoader-B8Rlj2T0.esm.min.js +0 -2
  476. package/dist/chunks/ktxTextureLoader-B8Rlj2T0.esm.min.js.map +0 -1
  477. package/dist/chunks/logDepthDeclaration-CGz2sG_K.esm.js +0 -11
  478. package/dist/chunks/logDepthDeclaration-CGz2sG_K.esm.js.map +0 -1
  479. package/dist/chunks/logDepthDeclaration-CfVFs2QC.esm.min.js +0 -2
  480. package/dist/chunks/logDepthDeclaration-CfVFs2QC.esm.min.js.map +0 -1
  481. package/dist/chunks/logDepthDeclaration-CzVshpad.esm.min.js +0 -2
  482. package/dist/chunks/logDepthDeclaration-CzVshpad.esm.min.js.map +0 -1
  483. package/dist/chunks/logDepthDeclaration-xOwnAKtd.esm.js +0 -35
  484. package/dist/chunks/logDepthDeclaration-xOwnAKtd.esm.js.map +0 -1
  485. package/dist/chunks/logDepthVertex-BRgUZAsw.esm.js +0 -81
  486. package/dist/chunks/logDepthVertex-BRgUZAsw.esm.js.map +0 -1
  487. package/dist/chunks/logDepthVertex-CWfPfN9-.esm.min.js +0 -2
  488. package/dist/chunks/logDepthVertex-CWfPfN9-.esm.min.js.map +0 -1
  489. package/dist/chunks/logDepthVertex-HDlt7vTP.esm.min.js +0 -2
  490. package/dist/chunks/logDepthVertex-HDlt7vTP.esm.min.js.map +0 -1
  491. package/dist/chunks/logDepthVertex-l0uEG89p.esm.js +0 -77
  492. package/dist/chunks/logDepthVertex-l0uEG89p.esm.js.map +0 -1
  493. package/dist/chunks/mainUVVaryingDeclaration-B72zV2P9.esm.min.js +0 -2
  494. package/dist/chunks/mainUVVaryingDeclaration-B72zV2P9.esm.min.js.map +0 -1
  495. package/dist/chunks/mainUVVaryingDeclaration-BDogjZrz.esm.js +0 -11
  496. package/dist/chunks/mainUVVaryingDeclaration-BDogjZrz.esm.js.map +0 -1
  497. package/dist/chunks/mainUVVaryingDeclaration-DO5HJKyl.esm.min.js +0 -2
  498. package/dist/chunks/mainUVVaryingDeclaration-DO5HJKyl.esm.min.js.map +0 -1
  499. package/dist/chunks/mainUVVaryingDeclaration-DqzNajlu.esm.js +0 -11
  500. package/dist/chunks/mainUVVaryingDeclaration-DqzNajlu.esm.js.map +0 -1
  501. package/dist/chunks/mesh.vertexData.functions-B_pMCAzZ.esm.js +0 -119
  502. package/dist/chunks/mesh.vertexData.functions-B_pMCAzZ.esm.js.map +0 -1
  503. package/dist/chunks/mesh.vertexData.functions-Bo7e6Of9.esm.min.js +0 -2
  504. package/dist/chunks/mesh.vertexData.functions-Bo7e6Of9.esm.min.js.map +0 -1
  505. package/dist/chunks/meshUboDeclaration-BCO87lfZ.esm.js +0 -26
  506. package/dist/chunks/meshUboDeclaration-BCO87lfZ.esm.js.map +0 -1
  507. package/dist/chunks/meshUboDeclaration-o4Xf2fwW.esm.min.js +0 -2
  508. package/dist/chunks/meshUboDeclaration-o4Xf2fwW.esm.min.js.map +0 -1
  509. package/dist/chunks/objFileLoader-BfPYM2Sh.esm.min.js +0 -2
  510. package/dist/chunks/objFileLoader-BfPYM2Sh.esm.min.js.map +0 -1
  511. package/dist/chunks/objFileLoader-D1emf4Qh.esm.js +0 -1338
  512. package/dist/chunks/objFileLoader-D1emf4Qh.esm.js.map +0 -1
  513. package/dist/chunks/oitFragment-B92YpEfj.esm.min.js +0 -2
  514. package/dist/chunks/oitFragment-B92YpEfj.esm.min.js.map +0 -1
  515. package/dist/chunks/oitFragment-BoFKkDNv.esm.js +0 -1078
  516. package/dist/chunks/oitFragment-BoFKkDNv.esm.js.map +0 -1
  517. package/dist/chunks/oitFragment-Cfx3g0iX.esm.js +0 -1240
  518. package/dist/chunks/oitFragment-Cfx3g0iX.esm.js.map +0 -1
  519. package/dist/chunks/oitFragment-CiA7gld-.esm.min.js +0 -2
  520. package/dist/chunks/oitFragment-CiA7gld-.esm.min.js.map +0 -1
  521. package/dist/chunks/pass.fragment-BLbIViJ7.esm.js +0 -15
  522. package/dist/chunks/pass.fragment-BLbIViJ7.esm.js.map +0 -1
  523. package/dist/chunks/pass.fragment-BqMk9ouF.esm.min.js +0 -2
  524. package/dist/chunks/pass.fragment-BqMk9ouF.esm.min.js.map +0 -1
  525. package/dist/chunks/pass.fragment-BuVDFNSR.esm.js +0 -15
  526. package/dist/chunks/pass.fragment-BuVDFNSR.esm.js.map +0 -1
  527. package/dist/chunks/pass.fragment-cM5FBHLm.esm.min.js +0 -2
  528. package/dist/chunks/pass.fragment-cM5FBHLm.esm.min.js.map +0 -1
  529. package/dist/chunks/pbr.fragment-5L_F7nGn.esm.js +0 -3222
  530. package/dist/chunks/pbr.fragment-5L_F7nGn.esm.js.map +0 -1
  531. package/dist/chunks/pbr.fragment-BJNPHSa-.esm.min.js +0 -2
  532. package/dist/chunks/pbr.fragment-BJNPHSa-.esm.min.js.map +0 -1
  533. package/dist/chunks/pbr.fragment-CTLrOzV2.esm.js +0 -3269
  534. package/dist/chunks/pbr.fragment-CTLrOzV2.esm.js.map +0 -1
  535. package/dist/chunks/pbr.fragment-D9MJFOr2.esm.min.js +0 -2
  536. package/dist/chunks/pbr.fragment-D9MJFOr2.esm.min.js.map +0 -1
  537. package/dist/chunks/pbr.vertex-BJyjq_fb.esm.js +0 -223
  538. package/dist/chunks/pbr.vertex-BJyjq_fb.esm.js.map +0 -1
  539. package/dist/chunks/pbr.vertex-Bm8Ng4Sx.esm.min.js +0 -2
  540. package/dist/chunks/pbr.vertex-Bm8Ng4Sx.esm.min.js.map +0 -1
  541. package/dist/chunks/pbr.vertex-CAKPUhfb.esm.min.js +0 -2
  542. package/dist/chunks/pbr.vertex-CAKPUhfb.esm.min.js.map +0 -1
  543. package/dist/chunks/pbr.vertex-DJd_-MvE.esm.js +0 -348
  544. package/dist/chunks/pbr.vertex-DJd_-MvE.esm.js.map +0 -1
  545. package/dist/chunks/postprocess.vertex-BjRX5eGi.esm.min.js +0 -2
  546. package/dist/chunks/postprocess.vertex-BjRX5eGi.esm.min.js.map +0 -1
  547. package/dist/chunks/postprocess.vertex-CFaKNIU-.esm.js +0 -20
  548. package/dist/chunks/postprocess.vertex-CFaKNIU-.esm.js.map +0 -1
  549. package/dist/chunks/rawTexture-ByD8l28R.esm.min.js +0 -2
  550. package/dist/chunks/rawTexture-ByD8l28R.esm.min.js.map +0 -1
  551. package/dist/chunks/rawTexture-DGz22uaX.esm.js +0 -191
  552. package/dist/chunks/rawTexture-DGz22uaX.esm.js.map +0 -1
  553. package/dist/chunks/ray-ByafiITx.esm.js +0 -946
  554. package/dist/chunks/ray-ByafiITx.esm.js.map +0 -1
  555. package/dist/chunks/ray-ChSTYrPm.esm.min.js +0 -2
  556. package/dist/chunks/ray-ChSTYrPm.esm.min.js.map +0 -1
  557. package/dist/chunks/rgbdDecode.fragment-CJ7PpH1N.esm.js +0 -13
  558. package/dist/chunks/rgbdDecode.fragment-CJ7PpH1N.esm.js.map +0 -1
  559. package/dist/chunks/rgbdDecode.fragment-DJ9crbPP.esm.js +0 -13
  560. package/dist/chunks/rgbdDecode.fragment-DJ9crbPP.esm.js.map +0 -1
  561. package/dist/chunks/rgbdDecode.fragment-DLpb3z18.esm.min.js +0 -2
  562. package/dist/chunks/rgbdDecode.fragment-DLpb3z18.esm.min.js.map +0 -1
  563. package/dist/chunks/rgbdDecode.fragment-ygeOUzIi.esm.min.js +0 -2
  564. package/dist/chunks/rgbdDecode.fragment-ygeOUzIi.esm.min.js.map +0 -1
  565. package/dist/chunks/rgbdEncode.fragment-BTG_wbck.esm.min.js +0 -2
  566. package/dist/chunks/rgbdEncode.fragment-BTG_wbck.esm.min.js.map +0 -1
  567. package/dist/chunks/rgbdEncode.fragment-C2s4AQaM.esm.js +0 -13
  568. package/dist/chunks/rgbdEncode.fragment-C2s4AQaM.esm.js.map +0 -1
  569. package/dist/chunks/rgbdEncode.fragment-C6LKySQH.esm.js +0 -13
  570. package/dist/chunks/rgbdEncode.fragment-C6LKySQH.esm.js.map +0 -1
  571. package/dist/chunks/rgbdEncode.fragment-CKB2lpgL.esm.min.js +0 -2
  572. package/dist/chunks/rgbdEncode.fragment-CKB2lpgL.esm.min.js.map +0 -1
  573. package/dist/chunks/splatFileLoader-BtSUlfZs.esm.min.js +0 -2
  574. package/dist/chunks/splatFileLoader-BtSUlfZs.esm.min.js.map +0 -1
  575. package/dist/chunks/splatFileLoader-Wn5sDtLq.esm.js +0 -3379
  576. package/dist/chunks/splatFileLoader-Wn5sDtLq.esm.js.map +0 -1
  577. package/dist/chunks/spotLight-CmDQEB8V.esm.js +0 -701
  578. package/dist/chunks/spotLight-CmDQEB8V.esm.js.map +0 -1
  579. package/dist/chunks/spotLight-hg94aMJD.esm.min.js +0 -2
  580. package/dist/chunks/spotLight-hg94aMJD.esm.min.js.map +0 -1
  581. package/dist/chunks/standardMaterial-BhIiLn1_.esm.js +0 -1806
  582. package/dist/chunks/standardMaterial-BhIiLn1_.esm.js.map +0 -1
  583. package/dist/chunks/standardMaterial-DQii8fRL.esm.min.js +0 -2
  584. package/dist/chunks/standardMaterial-DQii8fRL.esm.min.js.map +0 -1
  585. package/dist/chunks/stlFileLoader-D83u9BOr.esm.js +0 -238
  586. package/dist/chunks/stlFileLoader-D83u9BOr.esm.js.map +0 -1
  587. package/dist/chunks/stlFileLoader-DkXWqjZo.esm.min.js +0 -2
  588. package/dist/chunks/stlFileLoader-DkXWqjZo.esm.min.js.map +0 -1
  589. package/dist/chunks/tgaTextureLoader-C9xl6cvE.esm.js +0 -349
  590. package/dist/chunks/tgaTextureLoader-C9xl6cvE.esm.js.map +0 -1
  591. package/dist/chunks/tgaTextureLoader-DfzjGulW.esm.min.js +0 -2
  592. package/dist/chunks/tgaTextureLoader-DfzjGulW.esm.min.js.map +0 -1
  593. package/dist/chunks/thinEngine-Cu21aOSC.esm.min.js +0 -2
  594. package/dist/chunks/thinEngine-Cu21aOSC.esm.min.js.map +0 -1
  595. package/dist/chunks/thinEngine-IzS60pqU.esm.js +0 -3853
  596. package/dist/chunks/thinEngine-IzS60pqU.esm.js.map +0 -1
  597. package/dist/chunks/thinInstanceMesh-BN8Ev-h8.esm.js +0 -314
  598. package/dist/chunks/thinInstanceMesh-BN8Ev-h8.esm.js.map +0 -1
  599. package/dist/chunks/thinInstanceMesh-Bm9vmKU4.esm.min.js +0 -2
  600. package/dist/chunks/thinInstanceMesh-Bm9vmKU4.esm.min.js.map +0 -1
  601. package/dist/chunks/vertexColorMixing-Cazf4vEl.esm.min.js +0 -2
  602. package/dist/chunks/vertexColorMixing-Cazf4vEl.esm.min.js.map +0 -1
  603. package/dist/chunks/vertexColorMixing-DGvq3Fju.esm.js +0 -421
  604. package/dist/chunks/vertexColorMixing-DGvq3Fju.esm.js.map +0 -1
  605. package/dist/chunks/vertexColorMixing-D_6ZvivZ.esm.min.js +0 -2
  606. package/dist/chunks/vertexColorMixing-D_6ZvivZ.esm.min.js.map +0 -1
  607. package/dist/chunks/vertexColorMixing-DuYHnuUm.esm.js +0 -531
  608. package/dist/chunks/vertexColorMixing-DuYHnuUm.esm.js.map +0 -1
  609. package/dist/chunks/webgpuEngine-DHaXinU4.esm.min.js +0 -2
  610. package/dist/chunks/webgpuEngine-DHaXinU4.esm.min.js.map +0 -1
  611. package/dist/chunks/webgpuEngine-Dxev7pbz.esm.js +0 -11538
  612. package/dist/chunks/webgpuEngine-Dxev7pbz.esm.js.map +0 -1
  613. package/dist/chunks/workerPool-BUOov2K1.esm.js +0 -122
  614. package/dist/chunks/workerPool-BUOov2K1.esm.js.map +0 -1
  615. package/dist/chunks/workerPool-BWHiDmEZ.esm.min.js +0 -2
  616. package/dist/chunks/workerPool-BWHiDmEZ.esm.min.js.map +0 -1
  617. package/lib/index.d.ts +0 -591
  618. package/lib/index.js +0 -2165
  619. package/lib/index.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"basisTextureLoader-Dr2d0ez5.esm.js","sources":["../../../../../dev/core/dist/Misc/basisWorker.js","../../../../../dev/core/dist/Misc/basis.js","../../../../../dev/core/dist/Materials/Textures/Loaders/basisTextureLoader.js"],"sourcesContent":["import { Tools } from \"./tools\";\n/**\n * The worker function that gets converted to a blob url to pass into a worker.\n * To be used if a developer wants to create their own worker instance and inject it instead of using the default worker.\n */\nexport function workerFunction() {\n const _BASIS_FORMAT = {\n cTFETC1: 0,\n cTFETC2: 1,\n cTFBC1: 2,\n cTFBC3: 3,\n cTFBC4: 4,\n cTFBC5: 5,\n cTFBC7: 6,\n cTFPVRTC1_4_RGB: 8,\n cTFPVRTC1_4_RGBA: 9,\n cTFASTC_4x4: 10,\n cTFATC_RGB: 11,\n cTFATC_RGBA_INTERPOLATED_ALPHA: 12,\n cTFRGBA32: 13,\n cTFRGB565: 14,\n cTFBGR565: 15,\n cTFRGBA4444: 16,\n cTFFXT1_RGB: 17,\n cTFPVRTC2_4_RGB: 18,\n cTFPVRTC2_4_RGBA: 19,\n cTFETC2_EAC_R11: 20,\n cTFETC2_EAC_RG11: 21,\n };\n let transcoderModulePromise = null;\n onmessage = (event) => {\n if (event.data.action === \"init\") {\n // Load the transcoder if it hasn't been yet\n if (event.data.url) {\n // make sure we loaded the script correctly\n try {\n importScripts(event.data.url);\n }\n catch (e) {\n postMessage({ action: \"error\", error: e });\n }\n }\n if (!transcoderModulePromise) {\n transcoderModulePromise = BASIS({\n // Override wasm binary\n wasmBinary: event.data.wasmBinary,\n });\n }\n if (transcoderModulePromise !== null) {\n transcoderModulePromise.then((m) => {\n BASIS = m;\n m.initializeBasis();\n postMessage({ action: \"init\" });\n });\n }\n }\n else if (event.data.action === \"transcode\") {\n // Transcode the basis image and return the resulting pixels\n const config = event.data.config;\n const imgData = event.data.imageData;\n const loadedFile = new BASIS.BasisFile(imgData);\n const fileInfo = GetFileInfo(loadedFile);\n let format = event.data.ignoreSupportedFormats ? null : GetSupportedTranscodeFormat(event.data.config, fileInfo);\n let needsConversion = false;\n if (format === null) {\n needsConversion = true;\n format = fileInfo.hasAlpha ? _BASIS_FORMAT.cTFBC3 : _BASIS_FORMAT.cTFBC1;\n }\n // Begin transcode\n let success = true;\n if (!loadedFile.startTranscoding()) {\n success = false;\n }\n const buffers = [];\n for (let imageIndex = 0; imageIndex < fileInfo.images.length; imageIndex++) {\n if (!success) {\n break;\n }\n const image = fileInfo.images[imageIndex];\n if (config.loadSingleImage === undefined || config.loadSingleImage === imageIndex) {\n let mipCount = image.levels.length;\n if (config.loadMipmapLevels === false) {\n mipCount = 1;\n }\n for (let levelIndex = 0; levelIndex < mipCount; levelIndex++) {\n const levelInfo = image.levels[levelIndex];\n const pixels = TranscodeLevel(loadedFile, imageIndex, levelIndex, format, needsConversion);\n if (!pixels) {\n success = false;\n break;\n }\n levelInfo.transcodedPixels = pixels;\n buffers.push(levelInfo.transcodedPixels.buffer);\n }\n }\n }\n // Close file\n loadedFile.close();\n loadedFile.delete();\n if (needsConversion) {\n format = -1;\n }\n if (!success) {\n postMessage({ action: \"transcode\", success: success, id: event.data.id });\n }\n else {\n postMessage({ action: \"transcode\", success: success, id: event.data.id, fileInfo: fileInfo, format: format }, buffers);\n }\n }\n };\n /**\n * Detects the supported transcode format for the file\n * @param config transcode config\n * @param fileInfo info about the file\n * @returns the chosed format or null if none are supported\n */\n function GetSupportedTranscodeFormat(config, fileInfo) {\n let format = null;\n if (config.supportedCompressionFormats) {\n if (config.supportedCompressionFormats.astc) {\n format = _BASIS_FORMAT.cTFASTC_4x4;\n }\n else if (config.supportedCompressionFormats.bc7) {\n format = _BASIS_FORMAT.cTFBC7;\n }\n else if (config.supportedCompressionFormats.s3tc) {\n format = fileInfo.hasAlpha ? _BASIS_FORMAT.cTFBC3 : _BASIS_FORMAT.cTFBC1;\n }\n else if (config.supportedCompressionFormats.pvrtc) {\n format = fileInfo.hasAlpha ? _BASIS_FORMAT.cTFPVRTC1_4_RGBA : _BASIS_FORMAT.cTFPVRTC1_4_RGB;\n }\n else if (config.supportedCompressionFormats.etc2) {\n format = _BASIS_FORMAT.cTFETC2;\n }\n else if (config.supportedCompressionFormats.etc1) {\n format = _BASIS_FORMAT.cTFETC1;\n }\n else {\n format = _BASIS_FORMAT.cTFRGB565;\n }\n }\n return format;\n }\n /**\n * Retrieves information about the basis file eg. dimensions\n * @param basisFile the basis file to get the info from\n * @returns information about the basis file\n */\n function GetFileInfo(basisFile) {\n const hasAlpha = basisFile.getHasAlpha();\n const imageCount = basisFile.getNumImages();\n const images = [];\n for (let i = 0; i < imageCount; i++) {\n const imageInfo = {\n levels: [],\n };\n const levelCount = basisFile.getNumLevels(i);\n for (let level = 0; level < levelCount; level++) {\n const levelInfo = {\n width: basisFile.getImageWidth(i, level),\n height: basisFile.getImageHeight(i, level),\n };\n imageInfo.levels.push(levelInfo);\n }\n images.push(imageInfo);\n }\n const info = { hasAlpha, images };\n return info;\n }\n function TranscodeLevel(loadedFile, imageIndex, levelIndex, format, convertToRgb565) {\n const dstSize = loadedFile.getImageTranscodedSizeInBytes(imageIndex, levelIndex, format);\n let dst = new Uint8Array(dstSize);\n if (!loadedFile.transcodeImage(dst, imageIndex, levelIndex, format, 1, 0)) {\n return null;\n }\n // If no supported format is found, load as dxt and convert to rgb565\n if (convertToRgb565) {\n const alignedWidth = (loadedFile.getImageWidth(imageIndex, levelIndex) + 3) & ~3;\n const alignedHeight = (loadedFile.getImageHeight(imageIndex, levelIndex) + 3) & ~3;\n dst = ConvertDxtToRgb565(dst, 0, alignedWidth, alignedHeight);\n }\n return dst;\n }\n /**\n * From https://github.com/BinomialLLC/basis_universal/blob/master/webgl/texture/dxt-to-rgb565.js\n * An unoptimized version of dxtToRgb565. Also, the floating\n * point math used to compute the colors actually results in\n * slightly different colors compared to hardware DXT decoders.\n * @param src dxt src pixels\n * @param srcByteOffset offset for the start of src\n * @param width aligned width of the image\n * @param height aligned height of the image\n * @returns the converted pixels\n */\n function ConvertDxtToRgb565(src, srcByteOffset, width, height) {\n const c = new Uint16Array(4);\n const dst = new Uint16Array(width * height);\n const blockWidth = width / 4;\n const blockHeight = height / 4;\n for (let blockY = 0; blockY < blockHeight; blockY++) {\n for (let blockX = 0; blockX < blockWidth; blockX++) {\n const i = srcByteOffset + 8 * (blockY * blockWidth + blockX);\n c[0] = src[i] | (src[i + 1] << 8);\n c[1] = src[i + 2] | (src[i + 3] << 8);\n c[2] =\n ((2 * (c[0] & 0x1f) + 1 * (c[1] & 0x1f)) / 3) |\n (((2 * (c[0] & 0x7e0) + 1 * (c[1] & 0x7e0)) / 3) & 0x7e0) |\n (((2 * (c[0] & 0xf800) + 1 * (c[1] & 0xf800)) / 3) & 0xf800);\n c[3] =\n ((2 * (c[1] & 0x1f) + 1 * (c[0] & 0x1f)) / 3) |\n (((2 * (c[1] & 0x7e0) + 1 * (c[0] & 0x7e0)) / 3) & 0x7e0) |\n (((2 * (c[1] & 0xf800) + 1 * (c[0] & 0xf800)) / 3) & 0xf800);\n for (let row = 0; row < 4; row++) {\n const m = src[i + 4 + row];\n let dstI = (blockY * 4 + row) * width + blockX * 4;\n dst[dstI++] = c[m & 0x3];\n dst[dstI++] = c[(m >> 2) & 0x3];\n dst[dstI++] = c[(m >> 4) & 0x3];\n dst[dstI++] = c[(m >> 6) & 0x3];\n }\n }\n }\n return dst;\n }\n}\n/**\n * Initialize a web worker with the basis transcoder\n * @param worker the worker to initialize\n * @param wasmBinary the wasm binary to load into the worker\n * @param moduleUrl the url to the basis transcoder module\n * @returns a promise that resolves when the worker is initialized\n */\nexport function initializeWebWorker(worker, wasmBinary, moduleUrl) {\n return new Promise((res, reject) => {\n const initHandler = (msg) => {\n if (msg.data.action === \"init\") {\n worker.removeEventListener(\"message\", initHandler);\n res(worker);\n }\n else if (msg.data.action === \"error\") {\n reject(msg.data.error || \"error initializing worker\");\n }\n };\n worker.addEventListener(\"message\", initHandler);\n // we can use transferable objects here because the worker will own the ArrayBuffer\n worker.postMessage({ action: \"init\", url: moduleUrl ? Tools.GetBabylonScriptURL(moduleUrl) : undefined, wasmBinary }, [wasmBinary]);\n });\n}\n//# sourceMappingURL=basisWorker.js.map","import { Tools } from \"./tools\";\nimport { Texture } from \"../Materials/Textures/texture\";\nimport { InternalTexture } from \"../Materials/Textures/internalTexture\";\nimport { Constants } from \"../Engines/constants\";\nimport { initializeWebWorker, workerFunction } from \"./basisWorker\";\n/**\n * Info about the .basis files\n */\nexport class BasisFileInfo {\n}\n/**\n * Result of transcoding a basis file\n */\nclass TranscodeResult {\n}\n/**\n * Configuration options for the Basis transcoder\n */\nexport class BasisTranscodeConfiguration {\n}\n/**\n * @internal\n * Enum of basis transcoder formats\n */\nvar BASIS_FORMATS;\n(function (BASIS_FORMATS) {\n BASIS_FORMATS[BASIS_FORMATS[\"cTFETC1\"] = 0] = \"cTFETC1\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFETC2\"] = 1] = \"cTFETC2\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFBC1\"] = 2] = \"cTFBC1\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFBC3\"] = 3] = \"cTFBC3\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFBC4\"] = 4] = \"cTFBC4\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFBC5\"] = 5] = \"cTFBC5\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFBC7\"] = 6] = \"cTFBC7\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFPVRTC1_4_RGB\"] = 8] = \"cTFPVRTC1_4_RGB\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFPVRTC1_4_RGBA\"] = 9] = \"cTFPVRTC1_4_RGBA\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFASTC_4x4\"] = 10] = \"cTFASTC_4x4\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFATC_RGB\"] = 11] = \"cTFATC_RGB\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFATC_RGBA_INTERPOLATED_ALPHA\"] = 12] = \"cTFATC_RGBA_INTERPOLATED_ALPHA\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFRGBA32\"] = 13] = \"cTFRGBA32\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFRGB565\"] = 14] = \"cTFRGB565\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFBGR565\"] = 15] = \"cTFBGR565\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFRGBA4444\"] = 16] = \"cTFRGBA4444\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFFXT1_RGB\"] = 17] = \"cTFFXT1_RGB\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFPVRTC2_4_RGB\"] = 18] = \"cTFPVRTC2_4_RGB\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFPVRTC2_4_RGBA\"] = 19] = \"cTFPVRTC2_4_RGBA\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFETC2_EAC_R11\"] = 20] = \"cTFETC2_EAC_R11\";\n BASIS_FORMATS[BASIS_FORMATS[\"cTFETC2_EAC_RG11\"] = 21] = \"cTFETC2_EAC_RG11\";\n})(BASIS_FORMATS || (BASIS_FORMATS = {}));\n/**\n * Used to load .Basis files\n * See https://github.com/BinomialLLC/basis_universal/tree/master/webgl\n */\nexport const BasisToolsOptions = {\n /**\n * URL to use when loading the basis transcoder\n */\n JSModuleURL: `${Tools._DefaultCdnUrl}/basisTranscoder/1/basis_transcoder.js`,\n /**\n * URL to use when loading the wasm module for the transcoder\n */\n WasmModuleURL: `${Tools._DefaultCdnUrl}/basisTranscoder/1/basis_transcoder.wasm`,\n};\n/**\n * Get the internal format to be passed to texImage2D corresponding to the .basis format value\n * @param basisFormat format chosen from GetSupportedTranscodeFormat\n * @param engine\n * @returns internal format corresponding to the Basis format\n */\n// eslint-disable-next-line @typescript-eslint/no-unused-vars\nexport const GetInternalFormatFromBasisFormat = (basisFormat, engine) => {\n let format;\n switch (basisFormat) {\n case BASIS_FORMATS.cTFETC1:\n format = Constants.TEXTUREFORMAT_COMPRESSED_RGB_ETC1_WEBGL;\n break;\n case BASIS_FORMATS.cTFBC1:\n format = Constants.TEXTUREFORMAT_COMPRESSED_RGB_S3TC_DXT1;\n break;\n case BASIS_FORMATS.cTFBC4:\n format = Constants.TEXTUREFORMAT_COMPRESSED_RGBA_S3TC_DXT5;\n break;\n case BASIS_FORMATS.cTFASTC_4x4:\n format = Constants.TEXTUREFORMAT_COMPRESSED_RGBA_ASTC_4x4;\n break;\n case BASIS_FORMATS.cTFETC2:\n format = Constants.TEXTUREFORMAT_COMPRESSED_RGBA8_ETC2_EAC;\n break;\n case BASIS_FORMATS.cTFBC7:\n format = Constants.TEXTUREFORMAT_COMPRESSED_RGBA_BPTC_UNORM;\n break;\n }\n if (format === undefined) {\n // eslint-disable-next-line no-throw-literal\n throw \"The chosen Basis transcoder format is not currently supported\";\n }\n return format;\n};\nlet _WorkerPromise = null;\nlet _Worker = null;\nlet _actionId = 0;\nconst _IgnoreSupportedFormats = false;\nconst _CreateWorkerAsync = () => {\n if (!_WorkerPromise) {\n _WorkerPromise = new Promise((res, reject) => {\n if (_Worker) {\n res(_Worker);\n }\n else {\n Tools.LoadFileAsync(Tools.GetBabylonScriptURL(BasisToolsOptions.WasmModuleURL))\n .then((wasmBinary) => {\n if (typeof URL !== \"function\") {\n return reject(\"Basis transcoder requires an environment with a URL constructor\");\n }\n const workerBlobUrl = URL.createObjectURL(new Blob([`(${workerFunction})()`], { type: \"application/javascript\" }));\n _Worker = new Worker(workerBlobUrl);\n initializeWebWorker(_Worker, wasmBinary, BasisToolsOptions.JSModuleURL).then(res, reject);\n })\n .catch(reject);\n }\n });\n }\n return _WorkerPromise;\n};\n/**\n * Set the worker to use for transcoding\n * @param worker The worker that will be used for transcoding\n */\nexport const SetBasisTranscoderWorker = (worker) => {\n _Worker = worker;\n};\n/**\n * Transcodes a loaded image file to compressed pixel data\n * @param data image data to transcode\n * @param config configuration options for the transcoding\n * @returns a promise resulting in the transcoded image\n */\nexport const TranscodeAsync = (data, config) => {\n const dataView = data instanceof ArrayBuffer ? new Uint8Array(data) : data;\n return new Promise((res, rej) => {\n _CreateWorkerAsync().then(() => {\n const actionId = _actionId++;\n const messageHandler = (msg) => {\n if (msg.data.action === \"transcode\" && msg.data.id === actionId) {\n _Worker.removeEventListener(\"message\", messageHandler);\n if (!msg.data.success) {\n rej(\"Transcode is not supported on this device\");\n }\n else {\n res(msg.data);\n }\n }\n };\n _Worker.addEventListener(\"message\", messageHandler);\n const dataViewCopy = new Uint8Array(dataView.byteLength);\n dataViewCopy.set(new Uint8Array(dataView.buffer, dataView.byteOffset, dataView.byteLength));\n _Worker.postMessage({ action: \"transcode\", id: actionId, imageData: dataViewCopy, config: config, ignoreSupportedFormats: _IgnoreSupportedFormats }, [\n dataViewCopy.buffer,\n ]);\n }, (error) => {\n rej(error);\n });\n });\n};\n/**\n * Binds a texture according to its underlying target.\n * @param texture texture to bind\n * @param engine the engine to bind the texture in\n */\nconst BindTexture = (texture, engine) => {\n let target = engine._gl?.TEXTURE_2D;\n if (texture.isCube) {\n target = engine._gl?.TEXTURE_CUBE_MAP;\n }\n engine._bindTextureDirectly(target, texture, true);\n};\n/**\n * Loads a texture from the transcode result\n * @param texture texture load to\n * @param transcodeResult the result of transcoding the basis file to load from\n */\nexport const LoadTextureFromTranscodeResult = (texture, transcodeResult) => {\n const engine = texture.getEngine();\n for (let i = 0; i < transcodeResult.fileInfo.images.length; i++) {\n const rootImage = transcodeResult.fileInfo.images[i].levels[0];\n texture._invertVScale = texture.invertY;\n if (transcodeResult.format === -1 || transcodeResult.format === BASIS_FORMATS.cTFRGB565) {\n // No compatable compressed format found, fallback to RGB\n texture.type = Constants.TEXTURETYPE_UNSIGNED_SHORT_5_6_5;\n texture.format = Constants.TEXTUREFORMAT_RGB;\n if (engine._features.basisNeedsPOT && (Math.log2(rootImage.width) % 1 !== 0 || Math.log2(rootImage.height) % 1 !== 0)) {\n // Create non power of two texture\n const source = new InternalTexture(engine, 2 /* InternalTextureSource.Temp */);\n texture._invertVScale = texture.invertY;\n source.type = Constants.TEXTURETYPE_UNSIGNED_SHORT_5_6_5;\n source.format = Constants.TEXTUREFORMAT_RGB;\n // Fallback requires aligned width/height\n source.width = (rootImage.width + 3) & ~3;\n source.height = (rootImage.height + 3) & ~3;\n BindTexture(source, engine);\n engine._uploadDataToTextureDirectly(source, new Uint16Array(rootImage.transcodedPixels.buffer), i, 0, Constants.TEXTUREFORMAT_RGB, true);\n // Resize to power of two\n engine._rescaleTexture(source, texture, engine.scenes[0], engine._getInternalFormat(Constants.TEXTUREFORMAT_RGB), () => {\n engine._releaseTexture(source);\n BindTexture(texture, engine);\n });\n }\n else {\n // Fallback is already inverted\n texture._invertVScale = !texture.invertY;\n // Upload directly\n texture.width = (rootImage.width + 3) & ~3;\n texture.height = (rootImage.height + 3) & ~3;\n texture.samplingMode = Constants.TEXTURE_LINEAR_LINEAR;\n BindTexture(texture, engine);\n engine._uploadDataToTextureDirectly(texture, new Uint16Array(rootImage.transcodedPixels.buffer), i, 0, Constants.TEXTUREFORMAT_RGB, true);\n }\n }\n else {\n texture.width = rootImage.width;\n texture.height = rootImage.height;\n texture.generateMipMaps = transcodeResult.fileInfo.images[i].levels.length > 1;\n const format = BasisTools.GetInternalFormatFromBasisFormat(transcodeResult.format, engine);\n texture.format = format;\n BindTexture(texture, engine);\n // Upload all mip levels in the file\n transcodeResult.fileInfo.images[i].levels.forEach((level, index) => {\n engine._uploadCompressedDataToTextureDirectly(texture, format, level.width, level.height, level.transcodedPixels, i, index);\n });\n if (engine._features.basisNeedsPOT && (Math.log2(texture.width) % 1 !== 0 || Math.log2(texture.height) % 1 !== 0)) {\n Tools.Warn(\"Loaded .basis texture width and height are not a power of two. Texture wrapping will be set to Texture.CLAMP_ADDRESSMODE as other modes are not supported with non power of two dimensions in webGL 1.\");\n texture._cachedWrapU = Texture.CLAMP_ADDRESSMODE;\n texture._cachedWrapV = Texture.CLAMP_ADDRESSMODE;\n }\n }\n }\n};\n/**\n * Used to load .Basis files\n * See https://github.com/BinomialLLC/basis_universal/tree/master/webgl\n */\nexport const BasisTools = {\n /**\n * URL to use when loading the basis transcoder\n */\n JSModuleURL: BasisToolsOptions.JSModuleURL,\n /**\n * URL to use when loading the wasm module for the transcoder\n */\n WasmModuleURL: BasisToolsOptions.WasmModuleURL,\n /**\n * Get the internal format to be passed to texImage2D corresponding to the .basis format value\n * @param basisFormat format chosen from GetSupportedTranscodeFormat\n * @returns internal format corresponding to the Basis format\n */\n GetInternalFormatFromBasisFormat,\n /**\n * Transcodes a loaded image file to compressed pixel data\n * @param data image data to transcode\n * @param config configuration options for the transcoding\n * @returns a promise resulting in the transcoded image\n */\n TranscodeAsync,\n /**\n * Loads a texture from the transcode result\n * @param texture texture load to\n * @param transcodeResult the result of transcoding the basis file to load from\n */\n LoadTextureFromTranscodeResult,\n};\nObject.defineProperty(BasisTools, \"JSModuleURL\", {\n get: function () {\n return BasisToolsOptions.JSModuleURL;\n },\n set: function (value) {\n BasisToolsOptions.JSModuleURL = value;\n },\n});\nObject.defineProperty(BasisTools, \"WasmModuleURL\", {\n get: function () {\n return BasisToolsOptions.WasmModuleURL;\n },\n set: function (value) {\n BasisToolsOptions.WasmModuleURL = value;\n },\n});\n//# sourceMappingURL=basis.js.map","import { LoadTextureFromTranscodeResult, TranscodeAsync } from \"../../../Misc/basis\";\nimport { Tools } from \"../../../Misc/tools\";\n/**\n * Loader for .basis file format\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport class _BasisTextureLoader {\n constructor() {\n /**\n * Defines whether the loader supports cascade loading the different faces.\n */\n this.supportCascades = false;\n }\n /**\n * Uploads the cube texture data to the WebGL texture. It has already been bound.\n * @param data contains the texture data\n * @param texture defines the BabylonJS internal texture\n * @param createPolynomials will be true if polynomials have been requested\n * @param onLoad defines the callback to trigger once the texture is ready\n * @param onError defines the callback to trigger in case of error\n */\n loadCubeData(data, texture, createPolynomials, onLoad, onError) {\n if (Array.isArray(data)) {\n return;\n }\n const caps = texture.getEngine().getCaps();\n const transcodeConfig = {\n supportedCompressionFormats: {\n etc1: caps.etc1 ? true : false,\n s3tc: caps.s3tc ? true : false,\n pvrtc: caps.pvrtc ? true : false,\n etc2: caps.etc2 ? true : false,\n astc: caps.astc ? true : false,\n bc7: caps.bptc ? true : false,\n },\n };\n TranscodeAsync(data, transcodeConfig)\n .then((result) => {\n const hasMipmap = result.fileInfo.images[0].levels.length > 1 && texture.generateMipMaps;\n LoadTextureFromTranscodeResult(texture, result);\n texture.getEngine()._setCubeMapTextureParams(texture, hasMipmap);\n texture.isReady = true;\n texture.onLoadedObservable.notifyObservers(texture);\n texture.onLoadedObservable.clear();\n if (onLoad) {\n onLoad();\n }\n })\n .catch((err) => {\n const errorMessage = \"Failed to transcode Basis file, transcoding may not be supported on this device\";\n Tools.Warn(errorMessage);\n texture.isReady = true;\n if (onError) {\n onError(err);\n }\n });\n }\n /**\n * Uploads the 2D texture data to the WebGL texture. It has already been bound once in the callback.\n * @param data contains the texture data\n * @param texture defines the BabylonJS internal texture\n * @param callback defines the method to call once ready to upload\n */\n loadData(data, texture, callback) {\n const caps = texture.getEngine().getCaps();\n const transcodeConfig = {\n supportedCompressionFormats: {\n etc1: caps.etc1 ? true : false,\n s3tc: caps.s3tc ? true : false,\n pvrtc: caps.pvrtc ? true : false,\n etc2: caps.etc2 ? true : false,\n astc: caps.astc ? true : false,\n bc7: caps.bptc ? true : false,\n },\n };\n TranscodeAsync(data, transcodeConfig)\n .then((result) => {\n const rootImage = result.fileInfo.images[0].levels[0];\n const hasMipmap = result.fileInfo.images[0].levels.length > 1 && texture.generateMipMaps;\n callback(rootImage.width, rootImage.height, hasMipmap, result.format !== -1, () => {\n LoadTextureFromTranscodeResult(texture, result);\n });\n })\n .catch((err) => {\n Tools.Warn(\"Failed to transcode Basis file, transcoding may not be supported on this device\");\n Tools.Warn(`Failed to transcode Basis file: ${err}`);\n callback(0, 0, false, false, () => { }, true);\n });\n }\n}\n//# sourceMappingURL=basisTextureLoader.js.map"],"names":[],"mappings":"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"}
@@ -1,540 +0,0 @@
1
- import { f as FromHalfFloat, a9 as ToHalfFloat, bz as Clamp, L as Logger, C as Constants, bG as CubeMapToSphericalPolynomialTools } from './index-Cw2FZpYY.esm.js';
2
-
3
- /* eslint-disable @typescript-eslint/naming-convention */
4
- // Based on demo done by Brandon Jones - http://media.tojicode.com/webgl-samples/dds.html
5
- // All values and structures referenced from:
6
- // http://msdn.microsoft.com/en-us/library/bb943991.aspx/
7
- const DDS_MAGIC = 0x20534444;
8
- const //DDSD_CAPS = 0x1,
9
- //DDSD_HEIGHT = 0x2,
10
- //DDSD_WIDTH = 0x4,
11
- //DDSD_PITCH = 0x8,
12
- //DDSD_PIXELFORMAT = 0x1000,
13
- DDSD_MIPMAPCOUNT = 0x20000;
14
- //DDSD_LINEARSIZE = 0x80000,
15
- //DDSD_DEPTH = 0x800000;
16
- // var DDSCAPS_COMPLEX = 0x8,
17
- // DDSCAPS_MIPMAP = 0x400000,
18
- // DDSCAPS_TEXTURE = 0x1000;
19
- const DDSCAPS2_CUBEMAP = 0x200;
20
- // DDSCAPS2_CUBEMAP_POSITIVEX = 0x400,
21
- // DDSCAPS2_CUBEMAP_NEGATIVEX = 0x800,
22
- // DDSCAPS2_CUBEMAP_POSITIVEY = 0x1000,
23
- // DDSCAPS2_CUBEMAP_NEGATIVEY = 0x2000,
24
- // DDSCAPS2_CUBEMAP_POSITIVEZ = 0x4000,
25
- // DDSCAPS2_CUBEMAP_NEGATIVEZ = 0x8000,
26
- // DDSCAPS2_VOLUME = 0x200000;
27
- const //DDPF_ALPHAPIXELS = 0x1,
28
- //DDPF_ALPHA = 0x2,
29
- DDPF_FOURCC = 0x4, DDPF_RGB = 0x40,
30
- //DDPF_YUV = 0x200,
31
- DDPF_LUMINANCE = 0x20000;
32
- function FourCCToInt32(value) {
33
- return value.charCodeAt(0) + (value.charCodeAt(1) << 8) + (value.charCodeAt(2) << 16) + (value.charCodeAt(3) << 24);
34
- }
35
- function Int32ToFourCC(value) {
36
- return String.fromCharCode(value & 0xff, (value >> 8) & 0xff, (value >> 16) & 0xff, (value >> 24) & 0xff);
37
- }
38
- const FOURCC_DXT1 = FourCCToInt32("DXT1");
39
- const FOURCC_DXT3 = FourCCToInt32("DXT3");
40
- const FOURCC_DXT5 = FourCCToInt32("DXT5");
41
- const FOURCC_DX10 = FourCCToInt32("DX10");
42
- const FOURCC_D3DFMT_R16G16B16A16F = 113;
43
- const FOURCC_D3DFMT_R32G32B32A32F = 116;
44
- const DXGI_FORMAT_R32G32B32A32_FLOAT = 2;
45
- const DXGI_FORMAT_R16G16B16A16_FLOAT = 10;
46
- const DXGI_FORMAT_B8G8R8X8_UNORM = 88;
47
- const headerLengthInt = 31; // The header length in 32 bit ints
48
- // Offsets into the header array
49
- const off_magic = 0;
50
- const off_size = 1;
51
- const off_flags = 2;
52
- const off_height = 3;
53
- const off_width = 4;
54
- const off_mipmapCount = 7;
55
- const off_pfFlags = 20;
56
- const off_pfFourCC = 21;
57
- const off_RGBbpp = 22;
58
- const off_RMask = 23;
59
- const off_GMask = 24;
60
- const off_BMask = 25;
61
- const off_AMask = 26;
62
- // var off_caps1 = 27;
63
- const off_caps2 = 28;
64
- // var off_caps3 = 29;
65
- // var off_caps4 = 30;
66
- const off_dxgiFormat = 32;
67
- /**
68
- * Class used to provide DDS decompression tools
69
- */
70
- class DDSTools {
71
- /**
72
- * Gets DDS information from an array buffer
73
- * @param data defines the array buffer view to read data from
74
- * @returns the DDS information
75
- */
76
- static GetDDSInfo(data) {
77
- const header = new Int32Array(data.buffer, data.byteOffset, headerLengthInt);
78
- const extendedHeader = new Int32Array(data.buffer, data.byteOffset, headerLengthInt + 4);
79
- let mipmapCount = 1;
80
- if (header[off_flags] & DDSD_MIPMAPCOUNT) {
81
- mipmapCount = Math.max(1, header[off_mipmapCount]);
82
- }
83
- const fourCC = header[off_pfFourCC];
84
- const dxgiFormat = fourCC === FOURCC_DX10 ? extendedHeader[off_dxgiFormat] : 0;
85
- let textureType = Constants.TEXTURETYPE_UNSIGNED_BYTE;
86
- switch (fourCC) {
87
- case FOURCC_D3DFMT_R16G16B16A16F:
88
- textureType = Constants.TEXTURETYPE_HALF_FLOAT;
89
- break;
90
- case FOURCC_D3DFMT_R32G32B32A32F:
91
- textureType = Constants.TEXTURETYPE_FLOAT;
92
- break;
93
- case FOURCC_DX10:
94
- if (dxgiFormat === DXGI_FORMAT_R16G16B16A16_FLOAT) {
95
- textureType = Constants.TEXTURETYPE_HALF_FLOAT;
96
- break;
97
- }
98
- if (dxgiFormat === DXGI_FORMAT_R32G32B32A32_FLOAT) {
99
- textureType = Constants.TEXTURETYPE_FLOAT;
100
- break;
101
- }
102
- }
103
- return {
104
- width: header[off_width],
105
- height: header[off_height],
106
- mipmapCount: mipmapCount,
107
- isFourCC: (header[off_pfFlags] & DDPF_FOURCC) === DDPF_FOURCC,
108
- isRGB: (header[off_pfFlags] & DDPF_RGB) === DDPF_RGB,
109
- isLuminance: (header[off_pfFlags] & DDPF_LUMINANCE) === DDPF_LUMINANCE,
110
- isCube: (header[off_caps2] & DDSCAPS2_CUBEMAP) === DDSCAPS2_CUBEMAP,
111
- isCompressed: fourCC === FOURCC_DXT1 || fourCC === FOURCC_DXT3 || fourCC === FOURCC_DXT5,
112
- dxgiFormat: dxgiFormat,
113
- textureType: textureType,
114
- };
115
- }
116
- static _GetHalfFloatAsFloatRGBAArrayBuffer(width, height, dataOffset, dataLength, arrayBuffer, lod) {
117
- const destArray = new Float32Array(dataLength);
118
- const srcData = new Uint16Array(arrayBuffer, dataOffset);
119
- let index = 0;
120
- for (let y = 0; y < height; y++) {
121
- for (let x = 0; x < width; x++) {
122
- const srcPos = (x + y * width) * 4;
123
- destArray[index] = FromHalfFloat(srcData[srcPos]);
124
- destArray[index + 1] = FromHalfFloat(srcData[srcPos + 1]);
125
- destArray[index + 2] = FromHalfFloat(srcData[srcPos + 2]);
126
- if (DDSTools.StoreLODInAlphaChannel) {
127
- destArray[index + 3] = lod;
128
- }
129
- else {
130
- destArray[index + 3] = FromHalfFloat(srcData[srcPos + 3]);
131
- }
132
- index += 4;
133
- }
134
- }
135
- return destArray;
136
- }
137
- static _GetHalfFloatRGBAArrayBuffer(width, height, dataOffset, dataLength, arrayBuffer, lod) {
138
- if (DDSTools.StoreLODInAlphaChannel) {
139
- const destArray = new Uint16Array(dataLength);
140
- const srcData = new Uint16Array(arrayBuffer, dataOffset);
141
- let index = 0;
142
- for (let y = 0; y < height; y++) {
143
- for (let x = 0; x < width; x++) {
144
- const srcPos = (x + y * width) * 4;
145
- destArray[index] = srcData[srcPos];
146
- destArray[index + 1] = srcData[srcPos + 1];
147
- destArray[index + 2] = srcData[srcPos + 2];
148
- destArray[index + 3] = ToHalfFloat(lod);
149
- index += 4;
150
- }
151
- }
152
- return destArray;
153
- }
154
- return new Uint16Array(arrayBuffer, dataOffset, dataLength);
155
- }
156
- static _GetFloatRGBAArrayBuffer(width, height, dataOffset, dataLength, arrayBuffer, lod) {
157
- if (DDSTools.StoreLODInAlphaChannel) {
158
- const destArray = new Float32Array(dataLength);
159
- const srcData = new Float32Array(arrayBuffer, dataOffset);
160
- let index = 0;
161
- for (let y = 0; y < height; y++) {
162
- for (let x = 0; x < width; x++) {
163
- const srcPos = (x + y * width) * 4;
164
- destArray[index] = srcData[srcPos];
165
- destArray[index + 1] = srcData[srcPos + 1];
166
- destArray[index + 2] = srcData[srcPos + 2];
167
- destArray[index + 3] = lod;
168
- index += 4;
169
- }
170
- }
171
- return destArray;
172
- }
173
- return new Float32Array(arrayBuffer, dataOffset, dataLength);
174
- }
175
- static _GetFloatAsHalfFloatRGBAArrayBuffer(width, height, dataOffset, dataLength, arrayBuffer, lod) {
176
- const destArray = new Uint16Array(dataLength);
177
- const srcData = new Float32Array(arrayBuffer, dataOffset);
178
- let index = 0;
179
- for (let y = 0; y < height; y++) {
180
- for (let x = 0; x < width; x++) {
181
- destArray[index] = ToHalfFloat(srcData[index]);
182
- destArray[index + 1] = ToHalfFloat(srcData[index + 1]);
183
- destArray[index + 2] = ToHalfFloat(srcData[index + 2]);
184
- if (DDSTools.StoreLODInAlphaChannel) {
185
- destArray[index + 3] = ToHalfFloat(lod);
186
- }
187
- else {
188
- destArray[index + 3] = ToHalfFloat(srcData[index + 3]);
189
- }
190
- index += 4;
191
- }
192
- }
193
- return destArray;
194
- }
195
- static _GetFloatAsUIntRGBAArrayBuffer(width, height, dataOffset, dataLength, arrayBuffer, lod) {
196
- const destArray = new Uint8Array(dataLength);
197
- const srcData = new Float32Array(arrayBuffer, dataOffset);
198
- let index = 0;
199
- for (let y = 0; y < height; y++) {
200
- for (let x = 0; x < width; x++) {
201
- const srcPos = (x + y * width) * 4;
202
- destArray[index] = Clamp(srcData[srcPos]) * 255;
203
- destArray[index + 1] = Clamp(srcData[srcPos + 1]) * 255;
204
- destArray[index + 2] = Clamp(srcData[srcPos + 2]) * 255;
205
- if (DDSTools.StoreLODInAlphaChannel) {
206
- destArray[index + 3] = lod;
207
- }
208
- else {
209
- destArray[index + 3] = Clamp(srcData[srcPos + 3]) * 255;
210
- }
211
- index += 4;
212
- }
213
- }
214
- return destArray;
215
- }
216
- static _GetHalfFloatAsUIntRGBAArrayBuffer(width, height, dataOffset, dataLength, arrayBuffer, lod) {
217
- const destArray = new Uint8Array(dataLength);
218
- const srcData = new Uint16Array(arrayBuffer, dataOffset);
219
- let index = 0;
220
- for (let y = 0; y < height; y++) {
221
- for (let x = 0; x < width; x++) {
222
- const srcPos = (x + y * width) * 4;
223
- destArray[index] = Clamp(FromHalfFloat(srcData[srcPos])) * 255;
224
- destArray[index + 1] = Clamp(FromHalfFloat(srcData[srcPos + 1])) * 255;
225
- destArray[index + 2] = Clamp(FromHalfFloat(srcData[srcPos + 2])) * 255;
226
- if (DDSTools.StoreLODInAlphaChannel) {
227
- destArray[index + 3] = lod;
228
- }
229
- else {
230
- destArray[index + 3] = Clamp(FromHalfFloat(srcData[srcPos + 3])) * 255;
231
- }
232
- index += 4;
233
- }
234
- }
235
- return destArray;
236
- }
237
- static _GetRGBAArrayBuffer(width, height, dataOffset, dataLength, arrayBuffer, rOffset, gOffset, bOffset, aOffset) {
238
- const byteArray = new Uint8Array(dataLength);
239
- const srcData = new Uint8Array(arrayBuffer, dataOffset);
240
- let index = 0;
241
- for (let y = 0; y < height; y++) {
242
- for (let x = 0; x < width; x++) {
243
- const srcPos = (x + y * width) * 4;
244
- byteArray[index] = srcData[srcPos + rOffset];
245
- byteArray[index + 1] = srcData[srcPos + gOffset];
246
- byteArray[index + 2] = srcData[srcPos + bOffset];
247
- byteArray[index + 3] = srcData[srcPos + aOffset];
248
- index += 4;
249
- }
250
- }
251
- return byteArray;
252
- }
253
- static _ExtractLongWordOrder(value) {
254
- if (value === 0 || value === 255 || value === -16777216) {
255
- return 0;
256
- }
257
- return 1 + DDSTools._ExtractLongWordOrder(value >> 8);
258
- }
259
- static _GetRGBArrayBuffer(width, height, dataOffset, dataLength, arrayBuffer, rOffset, gOffset, bOffset) {
260
- const byteArray = new Uint8Array(dataLength);
261
- const srcData = new Uint8Array(arrayBuffer, dataOffset);
262
- let index = 0;
263
- for (let y = 0; y < height; y++) {
264
- for (let x = 0; x < width; x++) {
265
- const srcPos = (x + y * width) * 3;
266
- byteArray[index] = srcData[srcPos + rOffset];
267
- byteArray[index + 1] = srcData[srcPos + gOffset];
268
- byteArray[index + 2] = srcData[srcPos + bOffset];
269
- index += 3;
270
- }
271
- }
272
- return byteArray;
273
- }
274
- static _GetLuminanceArrayBuffer(width, height, dataOffset, dataLength, arrayBuffer) {
275
- const byteArray = new Uint8Array(dataLength);
276
- const srcData = new Uint8Array(arrayBuffer, dataOffset);
277
- let index = 0;
278
- for (let y = 0; y < height; y++) {
279
- for (let x = 0; x < width; x++) {
280
- const srcPos = x + y * width;
281
- byteArray[index] = srcData[srcPos];
282
- index++;
283
- }
284
- }
285
- return byteArray;
286
- }
287
- /**
288
- * Uploads DDS Levels to a Babylon Texture
289
- * @internal
290
- */
291
- static UploadDDSLevels(engine, texture, data, info, loadMipmaps, faces, lodIndex = -1, currentFace, destTypeMustBeFilterable = true) {
292
- let sphericalPolynomialFaces = null;
293
- if (info.sphericalPolynomial) {
294
- sphericalPolynomialFaces = [];
295
- }
296
- const ext = !!engine.getCaps().s3tc;
297
- // TODO WEBGPU Once generateMipMaps is split into generateMipMaps + hasMipMaps in InternalTexture this line can be removed
298
- texture.generateMipMaps = loadMipmaps;
299
- const header = new Int32Array(data.buffer, data.byteOffset, headerLengthInt);
300
- let fourCC, width, height, dataLength = 0, dataOffset;
301
- let byteArray, mipmapCount, mip;
302
- let internalCompressedFormat = 0;
303
- let blockBytes = 1;
304
- if (header[off_magic] !== DDS_MAGIC) {
305
- Logger.Error("Invalid magic number in DDS header");
306
- return;
307
- }
308
- if (!info.isFourCC && !info.isRGB && !info.isLuminance) {
309
- Logger.Error("Unsupported format, must contain a FourCC, RGB or LUMINANCE code");
310
- return;
311
- }
312
- if (info.isCompressed && !ext) {
313
- Logger.Error("Compressed textures are not supported on this platform.");
314
- return;
315
- }
316
- let bpp = header[off_RGBbpp];
317
- dataOffset = header[off_size] + 4;
318
- let computeFormats = false;
319
- if (info.isFourCC) {
320
- fourCC = header[off_pfFourCC];
321
- switch (fourCC) {
322
- case FOURCC_DXT1:
323
- blockBytes = 8;
324
- internalCompressedFormat = Constants.TEXTUREFORMAT_COMPRESSED_RGBA_S3TC_DXT1;
325
- break;
326
- case FOURCC_DXT3:
327
- blockBytes = 16;
328
- internalCompressedFormat = Constants.TEXTUREFORMAT_COMPRESSED_RGBA_S3TC_DXT3;
329
- break;
330
- case FOURCC_DXT5:
331
- blockBytes = 16;
332
- internalCompressedFormat = Constants.TEXTUREFORMAT_COMPRESSED_RGBA_S3TC_DXT5;
333
- break;
334
- case FOURCC_D3DFMT_R16G16B16A16F:
335
- computeFormats = true;
336
- bpp = 64;
337
- break;
338
- case FOURCC_D3DFMT_R32G32B32A32F:
339
- computeFormats = true;
340
- bpp = 128;
341
- break;
342
- case FOURCC_DX10: {
343
- // There is an additionnal header so dataOffset need to be changed
344
- dataOffset += 5 * 4; // 5 uints
345
- let supported = false;
346
- switch (info.dxgiFormat) {
347
- case DXGI_FORMAT_R16G16B16A16_FLOAT:
348
- computeFormats = true;
349
- bpp = 64;
350
- supported = true;
351
- break;
352
- case DXGI_FORMAT_R32G32B32A32_FLOAT:
353
- computeFormats = true;
354
- bpp = 128;
355
- supported = true;
356
- break;
357
- case DXGI_FORMAT_B8G8R8X8_UNORM:
358
- info.isRGB = true;
359
- info.isFourCC = false;
360
- bpp = 32;
361
- supported = true;
362
- break;
363
- }
364
- if (supported) {
365
- break;
366
- }
367
- }
368
- // eslint-disable-next-line no-fallthrough
369
- default:
370
- Logger.Error(["Unsupported FourCC code:", Int32ToFourCC(fourCC)]);
371
- return;
372
- }
373
- }
374
- const rOffset = DDSTools._ExtractLongWordOrder(header[off_RMask]);
375
- const gOffset = DDSTools._ExtractLongWordOrder(header[off_GMask]);
376
- const bOffset = DDSTools._ExtractLongWordOrder(header[off_BMask]);
377
- const aOffset = DDSTools._ExtractLongWordOrder(header[off_AMask]);
378
- if (computeFormats) {
379
- internalCompressedFormat = engine._getRGBABufferInternalSizedFormat(info.textureType);
380
- }
381
- mipmapCount = 1;
382
- if (header[off_flags] & DDSD_MIPMAPCOUNT && loadMipmaps !== false) {
383
- mipmapCount = Math.max(1, header[off_mipmapCount]);
384
- }
385
- const startFace = currentFace || 0;
386
- const caps = engine.getCaps();
387
- for (let face = startFace; face < faces; face++) {
388
- width = header[off_width];
389
- height = header[off_height];
390
- for (mip = 0; mip < mipmapCount; ++mip) {
391
- if (lodIndex === -1 || lodIndex === mip) {
392
- // In case of fixed LOD, if the lod has just been uploaded, early exit.
393
- const i = lodIndex === -1 ? mip : 0;
394
- if (!info.isCompressed && info.isFourCC) {
395
- texture.format = Constants.TEXTUREFORMAT_RGBA;
396
- dataLength = width * height * 4;
397
- let floatArray = null;
398
- if (engine._badOS || engine._badDesktopOS || (!caps.textureHalfFloat && !caps.textureFloat)) {
399
- // Required because iOS has many issues with float and half float generation
400
- if (bpp === 128) {
401
- floatArray = DDSTools._GetFloatAsUIntRGBAArrayBuffer(width, height, data.byteOffset + dataOffset, dataLength, data.buffer, i);
402
- if (sphericalPolynomialFaces && i == 0) {
403
- sphericalPolynomialFaces.push(DDSTools._GetFloatRGBAArrayBuffer(width, height, data.byteOffset + dataOffset, dataLength, data.buffer, i));
404
- }
405
- }
406
- else if (bpp === 64) {
407
- floatArray = DDSTools._GetHalfFloatAsUIntRGBAArrayBuffer(width, height, data.byteOffset + dataOffset, dataLength, data.buffer, i);
408
- if (sphericalPolynomialFaces && i == 0) {
409
- sphericalPolynomialFaces.push(DDSTools._GetHalfFloatAsFloatRGBAArrayBuffer(width, height, data.byteOffset + dataOffset, dataLength, data.buffer, i));
410
- }
411
- }
412
- texture.type = Constants.TEXTURETYPE_UNSIGNED_BYTE;
413
- }
414
- else {
415
- const floatAvailable = caps.textureFloat && ((destTypeMustBeFilterable && caps.textureFloatLinearFiltering) || !destTypeMustBeFilterable);
416
- const halfFloatAvailable = caps.textureHalfFloat && ((destTypeMustBeFilterable && caps.textureHalfFloatLinearFiltering) || !destTypeMustBeFilterable);
417
- const destType = (bpp === 128 || (bpp === 64 && !halfFloatAvailable)) && floatAvailable
418
- ? Constants.TEXTURETYPE_FLOAT
419
- : (bpp === 64 || (bpp === 128 && !floatAvailable)) && halfFloatAvailable
420
- ? Constants.TEXTURETYPE_HALF_FLOAT
421
- : Constants.TEXTURETYPE_UNSIGNED_BYTE;
422
- let dataGetter;
423
- let dataGetterPolynomial = null;
424
- switch (bpp) {
425
- case 128: {
426
- switch (destType) {
427
- case Constants.TEXTURETYPE_FLOAT:
428
- dataGetter = DDSTools._GetFloatRGBAArrayBuffer;
429
- dataGetterPolynomial = null;
430
- break;
431
- case Constants.TEXTURETYPE_HALF_FLOAT:
432
- dataGetter = DDSTools._GetFloatAsHalfFloatRGBAArrayBuffer;
433
- dataGetterPolynomial = DDSTools._GetFloatRGBAArrayBuffer;
434
- break;
435
- case Constants.TEXTURETYPE_UNSIGNED_BYTE:
436
- dataGetter = DDSTools._GetFloatAsUIntRGBAArrayBuffer;
437
- dataGetterPolynomial = DDSTools._GetFloatRGBAArrayBuffer;
438
- break;
439
- }
440
- break;
441
- }
442
- default: {
443
- // 64 bpp
444
- switch (destType) {
445
- case Constants.TEXTURETYPE_FLOAT:
446
- dataGetter = DDSTools._GetHalfFloatAsFloatRGBAArrayBuffer;
447
- dataGetterPolynomial = null;
448
- break;
449
- case Constants.TEXTURETYPE_HALF_FLOAT:
450
- dataGetter = DDSTools._GetHalfFloatRGBAArrayBuffer;
451
- dataGetterPolynomial = DDSTools._GetHalfFloatAsFloatRGBAArrayBuffer;
452
- break;
453
- case Constants.TEXTURETYPE_UNSIGNED_BYTE:
454
- dataGetter = DDSTools._GetHalfFloatAsUIntRGBAArrayBuffer;
455
- dataGetterPolynomial = DDSTools._GetHalfFloatAsFloatRGBAArrayBuffer;
456
- break;
457
- }
458
- break;
459
- }
460
- }
461
- texture.type = destType;
462
- floatArray = dataGetter(width, height, data.byteOffset + dataOffset, dataLength, data.buffer, i);
463
- if (sphericalPolynomialFaces && i == 0) {
464
- sphericalPolynomialFaces.push(dataGetterPolynomial ? dataGetterPolynomial(width, height, data.byteOffset + dataOffset, dataLength, data.buffer, i) : floatArray);
465
- }
466
- }
467
- if (floatArray) {
468
- engine._uploadDataToTextureDirectly(texture, floatArray, face, i);
469
- }
470
- }
471
- else if (info.isRGB) {
472
- texture.type = Constants.TEXTURETYPE_UNSIGNED_BYTE;
473
- if (bpp === 24) {
474
- texture.format = Constants.TEXTUREFORMAT_RGB;
475
- dataLength = width * height * 3;
476
- byteArray = DDSTools._GetRGBArrayBuffer(width, height, data.byteOffset + dataOffset, dataLength, data.buffer, rOffset, gOffset, bOffset);
477
- engine._uploadDataToTextureDirectly(texture, byteArray, face, i);
478
- }
479
- else {
480
- // 32
481
- texture.format = Constants.TEXTUREFORMAT_RGBA;
482
- dataLength = width * height * 4;
483
- byteArray = DDSTools._GetRGBAArrayBuffer(width, height, data.byteOffset + dataOffset, dataLength, data.buffer, rOffset, gOffset, bOffset, aOffset);
484
- engine._uploadDataToTextureDirectly(texture, byteArray, face, i);
485
- }
486
- }
487
- else if (info.isLuminance) {
488
- const unpackAlignment = engine._getUnpackAlignement();
489
- const unpaddedRowSize = width;
490
- const paddedRowSize = Math.floor((width + unpackAlignment - 1) / unpackAlignment) * unpackAlignment;
491
- dataLength = paddedRowSize * (height - 1) + unpaddedRowSize;
492
- byteArray = DDSTools._GetLuminanceArrayBuffer(width, height, data.byteOffset + dataOffset, dataLength, data.buffer);
493
- texture.format = Constants.TEXTUREFORMAT_LUMINANCE;
494
- texture.type = Constants.TEXTURETYPE_UNSIGNED_BYTE;
495
- engine._uploadDataToTextureDirectly(texture, byteArray, face, i);
496
- }
497
- else {
498
- dataLength = (((Math.max(4, width) / 4) * Math.max(4, height)) / 4) * blockBytes;
499
- byteArray = new Uint8Array(data.buffer, data.byteOffset + dataOffset, dataLength);
500
- texture.type = Constants.TEXTURETYPE_UNSIGNED_BYTE;
501
- engine._uploadCompressedDataToTextureDirectly(texture, internalCompressedFormat, width, height, byteArray, face, i);
502
- }
503
- }
504
- dataOffset += bpp ? width * height * (bpp / 8) : dataLength;
505
- width *= 0.5;
506
- height *= 0.5;
507
- width = Math.max(1.0, width);
508
- height = Math.max(1.0, height);
509
- }
510
- if (currentFace !== undefined) {
511
- // Loading a single face
512
- break;
513
- }
514
- }
515
- if (sphericalPolynomialFaces && sphericalPolynomialFaces.length > 0) {
516
- info.sphericalPolynomial = CubeMapToSphericalPolynomialTools.ConvertCubeMapToSphericalPolynomial({
517
- size: header[off_width],
518
- right: sphericalPolynomialFaces[0],
519
- left: sphericalPolynomialFaces[1],
520
- up: sphericalPolynomialFaces[2],
521
- down: sphericalPolynomialFaces[3],
522
- front: sphericalPolynomialFaces[4],
523
- back: sphericalPolynomialFaces[5],
524
- format: Constants.TEXTUREFORMAT_RGBA,
525
- type: Constants.TEXTURETYPE_FLOAT,
526
- gammaSpace: false,
527
- });
528
- }
529
- else {
530
- info.sphericalPolynomial = undefined;
531
- }
532
- }
533
- }
534
- /**
535
- * Gets or sets a boolean indicating that LOD info is stored in alpha channel (false by default)
536
- */
537
- DDSTools.StoreLODInAlphaChannel = false;
538
-
539
- export { DDSTools };
540
- //# sourceMappingURL=dds-CFrq_XFM.esm.js.map