@babylonjs/viewer 7.23.1-alpha → 7.23.1

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 (522) 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 +192 -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 +199 -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 +27 -17
  158. package/readme.md +21 -35
  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 +21 -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 +40 -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 +675 -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/dist/babylon-viewer.esm.js +0 -2
  193. package/dist/babylon-viewer.esm.js.map +0 -1
  194. package/dist/babylon-viewer.esm.min.js +0 -2
  195. package/dist/babylon-viewer.esm.min.js.map +0 -1
  196. package/dist/chunks/EXT_lights_image_based-D3ZBYLgC.esm.js +0 -170
  197. package/dist/chunks/EXT_lights_image_based-D3ZBYLgC.esm.js.map +0 -1
  198. package/dist/chunks/EXT_lights_image_based-DyWZGFdC.esm.min.js +0 -2
  199. package/dist/chunks/EXT_lights_image_based-DyWZGFdC.esm.min.js.map +0 -1
  200. package/dist/chunks/EXT_mesh_gpu_instancing-BsSuxC3A.esm.js +0 -86
  201. package/dist/chunks/EXT_mesh_gpu_instancing-BsSuxC3A.esm.js.map +0 -1
  202. package/dist/chunks/EXT_mesh_gpu_instancing-DtTWXKzv.esm.min.js +0 -2
  203. package/dist/chunks/EXT_mesh_gpu_instancing-DtTWXKzv.esm.min.js.map +0 -1
  204. package/dist/chunks/EXT_meshopt_compression-BncKn2rD.esm.js +0 -134
  205. package/dist/chunks/EXT_meshopt_compression-BncKn2rD.esm.js.map +0 -1
  206. package/dist/chunks/EXT_meshopt_compression-CjW8GcrA.esm.min.js +0 -2
  207. package/dist/chunks/EXT_meshopt_compression-CjW8GcrA.esm.min.js.map +0 -1
  208. package/dist/chunks/EXT_texture_avif-DLrVqqUz.esm.min.js +0 -2
  209. package/dist/chunks/EXT_texture_avif-DLrVqqUz.esm.min.js.map +0 -1
  210. package/dist/chunks/EXT_texture_avif-wG4GNQfZ.esm.js +0 -44
  211. package/dist/chunks/EXT_texture_avif-wG4GNQfZ.esm.js.map +0 -1
  212. package/dist/chunks/EXT_texture_webp-BccV6Svg.esm.js +0 -43
  213. package/dist/chunks/EXT_texture_webp-BccV6Svg.esm.js.map +0 -1
  214. package/dist/chunks/EXT_texture_webp-DNAe2ii8.esm.min.js +0 -2
  215. package/dist/chunks/EXT_texture_webp-DNAe2ii8.esm.min.js.map +0 -1
  216. package/dist/chunks/ExtrasAsMetadata-BA0NyQBn.esm.js +0 -64
  217. package/dist/chunks/ExtrasAsMetadata-BA0NyQBn.esm.js.map +0 -1
  218. package/dist/chunks/ExtrasAsMetadata-BN02lRw7.esm.min.js +0 -2
  219. package/dist/chunks/ExtrasAsMetadata-BN02lRw7.esm.min.js.map +0 -1
  220. package/dist/chunks/KHR_animation_pointer-B7mk-XJN.esm.min.js +0 -2
  221. package/dist/chunks/KHR_animation_pointer-B7mk-XJN.esm.min.js.map +0 -1
  222. package/dist/chunks/KHR_animation_pointer-BFFpQV4X.esm.js +0 -343
  223. package/dist/chunks/KHR_animation_pointer-BFFpQV4X.esm.js.map +0 -1
  224. package/dist/chunks/KHR_draco_mesh_compression-7zqRIpZt.esm.js +0 -610
  225. package/dist/chunks/KHR_draco_mesh_compression-7zqRIpZt.esm.js.map +0 -1
  226. package/dist/chunks/KHR_draco_mesh_compression-Bw4rV4ln.esm.min.js +0 -2
  227. package/dist/chunks/KHR_draco_mesh_compression-Bw4rV4ln.esm.min.js.map +0 -1
  228. package/dist/chunks/KHR_interactivity-Bd_6hpGb.esm.js +0 -4033
  229. package/dist/chunks/KHR_interactivity-Bd_6hpGb.esm.js.map +0 -1
  230. package/dist/chunks/KHR_interactivity-DIJyLERv.esm.min.js +0 -2
  231. package/dist/chunks/KHR_interactivity-DIJyLERv.esm.min.js.map +0 -1
  232. package/dist/chunks/KHR_lights_punctual-CFUUYlNK.esm.min.js +0 -2
  233. package/dist/chunks/KHR_lights_punctual-CFUUYlNK.esm.min.js.map +0 -1
  234. package/dist/chunks/KHR_lights_punctual-XL2dnY2h.esm.js +0 -1253
  235. package/dist/chunks/KHR_lights_punctual-XL2dnY2h.esm.js.map +0 -1
  236. package/dist/chunks/KHR_materials_anisotropy-04SftzV0.esm.min.js +0 -2
  237. package/dist/chunks/KHR_materials_anisotropy-04SftzV0.esm.min.js.map +0 -1
  238. package/dist/chunks/KHR_materials_anisotropy-gAd08wDG.esm.js +0 -64
  239. package/dist/chunks/KHR_materials_anisotropy-gAd08wDG.esm.js.map +0 -1
  240. package/dist/chunks/KHR_materials_clearcoat-9GQaVx6k.esm.min.js +0 -2
  241. package/dist/chunks/KHR_materials_clearcoat-9GQaVx6k.esm.min.js.map +0 -1
  242. package/dist/chunks/KHR_materials_clearcoat-Cv_yIIaW.esm.js +0 -96
  243. package/dist/chunks/KHR_materials_clearcoat-Cv_yIIaW.esm.js.map +0 -1
  244. package/dist/chunks/KHR_materials_diffuse_transmission-Dj9EU7q2.esm.js +0 -96
  245. package/dist/chunks/KHR_materials_diffuse_transmission-Dj9EU7q2.esm.js.map +0 -1
  246. package/dist/chunks/KHR_materials_diffuse_transmission-fmv70uuH.esm.min.js +0 -2
  247. package/dist/chunks/KHR_materials_diffuse_transmission-fmv70uuH.esm.min.js.map +0 -1
  248. package/dist/chunks/KHR_materials_dispersion-CCzM2Avp.esm.min.js +0 -2
  249. package/dist/chunks/KHR_materials_dispersion-CCzM2Avp.esm.min.js.map +0 -1
  250. package/dist/chunks/KHR_materials_dispersion-JNxGdAqc.esm.js +0 -63
  251. package/dist/chunks/KHR_materials_dispersion-JNxGdAqc.esm.js.map +0 -1
  252. package/dist/chunks/KHR_materials_emissive_strength-D25-ItKl.esm.min.js +0 -2
  253. package/dist/chunks/KHR_materials_emissive_strength-D25-ItKl.esm.min.js.map +0 -1
  254. package/dist/chunks/KHR_materials_emissive_strength-DlkptyaM.esm.js +0 -55
  255. package/dist/chunks/KHR_materials_emissive_strength-DlkptyaM.esm.js.map +0 -1
  256. package/dist/chunks/KHR_materials_ior-Jqj5Ph_V.esm.min.js +0 -2
  257. package/dist/chunks/KHR_materials_ior-Jqj5Ph_V.esm.min.js.map +0 -1
  258. package/dist/chunks/KHR_materials_ior-KGZBae4Y.esm.js +0 -64
  259. package/dist/chunks/KHR_materials_ior-KGZBae4Y.esm.js.map +0 -1
  260. package/dist/chunks/KHR_materials_iridescence-ByOHUtdO.esm.min.js +0 -2
  261. package/dist/chunks/KHR_materials_iridescence-ByOHUtdO.esm.min.js.map +0 -1
  262. package/dist/chunks/KHR_materials_iridescence-FmAV1QDy.esm.js +0 -72
  263. package/dist/chunks/KHR_materials_iridescence-FmAV1QDy.esm.js.map +0 -1
  264. package/dist/chunks/KHR_materials_pbrSpecularGlossiness-BiqCrcmj.esm.min.js +0 -2
  265. package/dist/chunks/KHR_materials_pbrSpecularGlossiness-BiqCrcmj.esm.min.js.map +0 -1
  266. package/dist/chunks/KHR_materials_pbrSpecularGlossiness-CRnlTYx-.esm.js +0 -81
  267. package/dist/chunks/KHR_materials_pbrSpecularGlossiness-CRnlTYx-.esm.js.map +0 -1
  268. package/dist/chunks/KHR_materials_sheen-7li6Dlkh.esm.js +0 -85
  269. package/dist/chunks/KHR_materials_sheen-7li6Dlkh.esm.js.map +0 -1
  270. package/dist/chunks/KHR_materials_sheen-BL2qM8Rp.esm.min.js +0 -2
  271. package/dist/chunks/KHR_materials_sheen-BL2qM8Rp.esm.min.js.map +0 -1
  272. package/dist/chunks/KHR_materials_specular-C2ks7gPC.esm.js +0 -75
  273. package/dist/chunks/KHR_materials_specular-C2ks7gPC.esm.js.map +0 -1
  274. package/dist/chunks/KHR_materials_specular-DCAt3T_l.esm.min.js +0 -2
  275. package/dist/chunks/KHR_materials_specular-DCAt3T_l.esm.min.js.map +0 -1
  276. package/dist/chunks/KHR_materials_transmission-B8w41MT6.esm.min.js +0 -2
  277. package/dist/chunks/KHR_materials_transmission-B8w41MT6.esm.min.js.map +0 -1
  278. package/dist/chunks/KHR_materials_transmission-DRL9BE9q.esm.js +0 -307
  279. package/dist/chunks/KHR_materials_transmission-DRL9BE9q.esm.js.map +0 -1
  280. package/dist/chunks/KHR_materials_unlit-B-il-TRX.esm.min.js +0 -2
  281. package/dist/chunks/KHR_materials_unlit-B-il-TRX.esm.min.js.map +0 -1
  282. package/dist/chunks/KHR_materials_unlit-B44Oqon6.esm.js +0 -74
  283. package/dist/chunks/KHR_materials_unlit-B44Oqon6.esm.js.map +0 -1
  284. package/dist/chunks/KHR_materials_variants-BCdEgpch.esm.js +0 -238
  285. package/dist/chunks/KHR_materials_variants-BCdEgpch.esm.js.map +0 -1
  286. package/dist/chunks/KHR_materials_variants-ClQElTeo.esm.min.js +0 -2
  287. package/dist/chunks/KHR_materials_variants-ClQElTeo.esm.min.js.map +0 -1
  288. package/dist/chunks/KHR_materials_volume-BXv3M95S.esm.min.js +0 -2
  289. package/dist/chunks/KHR_materials_volume-BXv3M95S.esm.min.js.map +0 -1
  290. package/dist/chunks/KHR_materials_volume-BuUrRniE.esm.js +0 -88
  291. package/dist/chunks/KHR_materials_volume-BuUrRniE.esm.js.map +0 -1
  292. package/dist/chunks/KHR_mesh_quantization-WPngIGGs.esm.min.js +0 -2
  293. package/dist/chunks/KHR_mesh_quantization-WPngIGGs.esm.min.js.map +0 -1
  294. package/dist/chunks/KHR_mesh_quantization-p2nyy6Ym.esm.js +0 -26
  295. package/dist/chunks/KHR_mesh_quantization-p2nyy6Ym.esm.js.map +0 -1
  296. package/dist/chunks/KHR_texture_basisu-BHsmOUDV.esm.js +0 -43
  297. package/dist/chunks/KHR_texture_basisu-BHsmOUDV.esm.js.map +0 -1
  298. package/dist/chunks/KHR_texture_basisu-DObdWvzE.esm.min.js +0 -2
  299. package/dist/chunks/KHR_texture_basisu-DObdWvzE.esm.min.js.map +0 -1
  300. package/dist/chunks/KHR_texture_transform-B7NCdTO_.esm.js +0 -63
  301. package/dist/chunks/KHR_texture_transform-B7NCdTO_.esm.js.map +0 -1
  302. package/dist/chunks/KHR_texture_transform-D6Ee6UiP.esm.min.js +0 -2
  303. package/dist/chunks/KHR_texture_transform-D6Ee6UiP.esm.min.js.map +0 -1
  304. package/dist/chunks/KHR_xmp_json_ld-Coh_hfCi.esm.js +0 -51
  305. package/dist/chunks/KHR_xmp_json_ld-Coh_hfCi.esm.js.map +0 -1
  306. package/dist/chunks/KHR_xmp_json_ld-ijOY8DMb.esm.min.js +0 -2
  307. package/dist/chunks/KHR_xmp_json_ld-ijOY8DMb.esm.min.js.map +0 -1
  308. package/dist/chunks/MSFT_audio_emitter-CGjUSgI2.esm.min.js +0 -2
  309. package/dist/chunks/MSFT_audio_emitter-CGjUSgI2.esm.min.js.map +0 -1
  310. package/dist/chunks/MSFT_audio_emitter-fFvTv2YK.esm.js +0 -1600
  311. package/dist/chunks/MSFT_audio_emitter-fFvTv2YK.esm.js.map +0 -1
  312. package/dist/chunks/MSFT_lod-Bql1icOF.esm.js +0 -337
  313. package/dist/chunks/MSFT_lod-Bql1icOF.esm.js.map +0 -1
  314. package/dist/chunks/MSFT_lod-Du_akN0I.esm.min.js +0 -2
  315. package/dist/chunks/MSFT_lod-Du_akN0I.esm.min.js.map +0 -1
  316. package/dist/chunks/MSFT_minecraftMesh-Brch3HUo.esm.min.js +0 -2
  317. package/dist/chunks/MSFT_minecraftMesh-Brch3HUo.esm.min.js.map +0 -1
  318. package/dist/chunks/MSFT_minecraftMesh-jrYC8YE9.esm.js +0 -46
  319. package/dist/chunks/MSFT_minecraftMesh-jrYC8YE9.esm.js.map +0 -1
  320. package/dist/chunks/MSFT_sRGBFactors-Dp3CtJ9B.esm.js +0 -47
  321. package/dist/chunks/MSFT_sRGBFactors-Dp3CtJ9B.esm.js.map +0 -1
  322. package/dist/chunks/MSFT_sRGBFactors-LZM-HF4P.esm.min.js +0 -2
  323. package/dist/chunks/MSFT_sRGBFactors-LZM-HF4P.esm.min.js.map +0 -1
  324. package/dist/chunks/assetContainer-Bo08Fxv3.esm.min.js +0 -2
  325. package/dist/chunks/assetContainer-Bo08Fxv3.esm.min.js.map +0 -1
  326. package/dist/chunks/assetContainer-DVOdWL9b.esm.js +0 -1598
  327. package/dist/chunks/assetContainer-DVOdWL9b.esm.js.map +0 -1
  328. package/dist/chunks/basisTextureLoader-C2Or-Jx_.esm.min.js +0 -2
  329. package/dist/chunks/basisTextureLoader-C2Or-Jx_.esm.min.js.map +0 -1
  330. package/dist/chunks/basisTextureLoader-DiYg6uNN.esm.js +0 -600
  331. package/dist/chunks/basisTextureLoader-DiYg6uNN.esm.js.map +0 -1
  332. package/dist/chunks/ddsTextureLoader-CDlttCBi.esm.js +0 -87
  333. package/dist/chunks/ddsTextureLoader-CDlttCBi.esm.js.map +0 -1
  334. package/dist/chunks/ddsTextureLoader-T_I1TPiz.esm.min.js +0 -2
  335. package/dist/chunks/ddsTextureLoader-T_I1TPiz.esm.min.js.map +0 -1
  336. package/dist/chunks/default.fragment-C8ZCxgTK.esm.js +0 -515
  337. package/dist/chunks/default.fragment-C8ZCxgTK.esm.js.map +0 -1
  338. package/dist/chunks/default.fragment-Conpp30r.esm.js +0 -452
  339. package/dist/chunks/default.fragment-Conpp30r.esm.js.map +0 -1
  340. package/dist/chunks/default.fragment-DTP98j1l.esm.min.js +0 -2
  341. package/dist/chunks/default.fragment-DTP98j1l.esm.min.js.map +0 -1
  342. package/dist/chunks/default.fragment-DjistPBR.esm.min.js +0 -2
  343. package/dist/chunks/default.fragment-DjistPBR.esm.min.js.map +0 -1
  344. package/dist/chunks/default.vertex-BSCjzhXG.esm.js +0 -178
  345. package/dist/chunks/default.vertex-BSCjzhXG.esm.js.map +0 -1
  346. package/dist/chunks/default.vertex-Ba7zxY0T.esm.min.js +0 -2
  347. package/dist/chunks/default.vertex-Ba7zxY0T.esm.min.js.map +0 -1
  348. package/dist/chunks/default.vertex-CPurFhOJ.esm.js +0 -199
  349. package/dist/chunks/default.vertex-CPurFhOJ.esm.js.map +0 -1
  350. package/dist/chunks/default.vertex-D_4jDtBx.esm.min.js +0 -2
  351. package/dist/chunks/default.vertex-D_4jDtBx.esm.min.js.map +0 -1
  352. package/dist/chunks/defaultUboDeclaration-BjT2yBnm.esm.js +0 -15
  353. package/dist/chunks/defaultUboDeclaration-BjT2yBnm.esm.js.map +0 -1
  354. package/dist/chunks/defaultUboDeclaration-BuAk9gJA.esm.min.js +0 -2
  355. package/dist/chunks/defaultUboDeclaration-BuAk9gJA.esm.min.js.map +0 -1
  356. package/dist/chunks/defaultUboDeclaration-CC8YfLoS.esm.min.js +0 -2
  357. package/dist/chunks/defaultUboDeclaration-CC8YfLoS.esm.min.js.map +0 -1
  358. package/dist/chunks/defaultUboDeclaration-ClvuiT6M.esm.js +0 -13
  359. package/dist/chunks/defaultUboDeclaration-ClvuiT6M.esm.js.map +0 -1
  360. package/dist/chunks/envTextureLoader-DuE-52NK.esm.min.js +0 -2
  361. package/dist/chunks/envTextureLoader-DuE-52NK.esm.min.js.map +0 -1
  362. package/dist/chunks/envTextureLoader-ENMUumOz.esm.js +0 -63
  363. package/dist/chunks/envTextureLoader-ENMUumOz.esm.js.map +0 -1
  364. package/dist/chunks/environmentTextureTools-Cw-ZbYYv.esm.js +0 -381
  365. package/dist/chunks/environmentTextureTools-Cw-ZbYYv.esm.js.map +0 -1
  366. package/dist/chunks/environmentTextureTools-mWXMV1Cr.esm.min.js +0 -2
  367. package/dist/chunks/environmentTextureTools-mWXMV1Cr.esm.min.js.map +0 -1
  368. package/dist/chunks/exrTextureLoader-9ioAK1Ph.esm.js +0 -1682
  369. package/dist/chunks/exrTextureLoader-9ioAK1Ph.esm.js.map +0 -1
  370. package/dist/chunks/exrTextureLoader-zc2N62c3.esm.min.js +0 -2
  371. package/dist/chunks/exrTextureLoader-zc2N62c3.esm.min.js.map +0 -1
  372. package/dist/chunks/fogFragment-DLguActo.esm.min.js +0 -2
  373. package/dist/chunks/fogFragment-DLguActo.esm.min.js.map +0 -1
  374. package/dist/chunks/fogFragment-sACeXatv.esm.js +0 -102
  375. package/dist/chunks/fogFragment-sACeXatv.esm.js.map +0 -1
  376. package/dist/chunks/glTFLoader-BuxqXvJ-.esm.min.js +0 -2
  377. package/dist/chunks/glTFLoader-BuxqXvJ-.esm.min.js.map +0 -1
  378. package/dist/chunks/glTFLoader-DB7AOurF.esm.js +0 -7552
  379. package/dist/chunks/glTFLoader-DB7AOurF.esm.js.map +0 -1
  380. package/dist/chunks/glTFLoaderAnimation-BWhMcDgk.esm.min.js +0 -2
  381. package/dist/chunks/glTFLoaderAnimation-BWhMcDgk.esm.min.js.map +0 -1
  382. package/dist/chunks/glTFLoaderAnimation-DK5fvCTY.esm.js +0 -77
  383. package/dist/chunks/glTFLoaderAnimation-DK5fvCTY.esm.js.map +0 -1
  384. package/dist/chunks/gltfPathToObjectConverter-Dyt_Y9jE.esm.min.js +0 -2
  385. package/dist/chunks/gltfPathToObjectConverter-Dyt_Y9jE.esm.min.js.map +0 -1
  386. package/dist/chunks/gltfPathToObjectConverter-GcUmfOyo.esm.js +0 -67
  387. package/dist/chunks/gltfPathToObjectConverter-GcUmfOyo.esm.js.map +0 -1
  388. package/dist/chunks/harmonicsFunctions-BMUi3P6Y.esm.js +0 -35
  389. package/dist/chunks/harmonicsFunctions-BMUi3P6Y.esm.js.map +0 -1
  390. package/dist/chunks/harmonicsFunctions-BWj3xZKa.esm.min.js +0 -2
  391. package/dist/chunks/harmonicsFunctions-BWj3xZKa.esm.min.js.map +0 -1
  392. package/dist/chunks/harmonicsFunctions-D9GUclWs.esm.min.js +0 -2
  393. package/dist/chunks/harmonicsFunctions-D9GUclWs.esm.min.js.map +0 -1
  394. package/dist/chunks/harmonicsFunctions-DQngcILt.esm.js +0 -34
  395. package/dist/chunks/harmonicsFunctions-DQngcILt.esm.js.map +0 -1
  396. package/dist/chunks/hdrTextureLoader-3TOTpFyV.esm.min.js +0 -2
  397. package/dist/chunks/hdrTextureLoader-3TOTpFyV.esm.min.js.map +0 -1
  398. package/dist/chunks/hdrTextureLoader-zIHMNTOp.esm.js +0 -252
  399. package/dist/chunks/hdrTextureLoader-zIHMNTOp.esm.js.map +0 -1
  400. package/dist/chunks/helperFunctions-B_yzbgEv.esm.min.js +0 -2
  401. package/dist/chunks/helperFunctions-B_yzbgEv.esm.min.js.map +0 -1
  402. package/dist/chunks/helperFunctions-BjYz-6zr.esm.js +0 -108
  403. package/dist/chunks/helperFunctions-BjYz-6zr.esm.js.map +0 -1
  404. package/dist/chunks/helperFunctions-CXLST6hZ.esm.js +0 -80
  405. package/dist/chunks/helperFunctions-CXLST6hZ.esm.js.map +0 -1
  406. package/dist/chunks/helperFunctions-DTBzTIjJ.esm.min.js +0 -2
  407. package/dist/chunks/helperFunctions-DTBzTIjJ.esm.min.js.map +0 -1
  408. package/dist/chunks/index-CTNAO7X0.esm.js +0 -81630
  409. package/dist/chunks/index-CTNAO7X0.esm.js.map +0 -1
  410. package/dist/chunks/index-DYqHhEAk.esm.min.js +0 -57
  411. package/dist/chunks/index-DYqHhEAk.esm.min.js.map +0 -1
  412. package/dist/chunks/ktxTextureLoader-9AGBpjf1.esm.js +0 -814
  413. package/dist/chunks/ktxTextureLoader-9AGBpjf1.esm.js.map +0 -1
  414. package/dist/chunks/ktxTextureLoader-DbSU4wBV.esm.min.js +0 -2
  415. package/dist/chunks/ktxTextureLoader-DbSU4wBV.esm.min.js.map +0 -1
  416. package/dist/chunks/logDepthDeclaration-BCN89cGc.esm.min.js +0 -2
  417. package/dist/chunks/logDepthDeclaration-BCN89cGc.esm.min.js.map +0 -1
  418. package/dist/chunks/logDepthDeclaration-CZCatKgj.esm.js +0 -42
  419. package/dist/chunks/logDepthDeclaration-CZCatKgj.esm.js.map +0 -1
  420. package/dist/chunks/logDepthDeclaration-_gJVcKC2.esm.js +0 -35
  421. package/dist/chunks/logDepthDeclaration-_gJVcKC2.esm.js.map +0 -1
  422. package/dist/chunks/logDepthDeclaration-cpc5vyCy.esm.min.js +0 -2
  423. package/dist/chunks/logDepthDeclaration-cpc5vyCy.esm.min.js.map +0 -1
  424. package/dist/chunks/logDepthVertex-7sCVTIjr.esm.min.js +0 -2
  425. package/dist/chunks/logDepthVertex-7sCVTIjr.esm.min.js.map +0 -1
  426. package/dist/chunks/logDepthVertex-B09oc-mi.esm.js +0 -77
  427. package/dist/chunks/logDepthVertex-B09oc-mi.esm.js.map +0 -1
  428. package/dist/chunks/logDepthVertex-Bq3-XtSp.esm.min.js +0 -2
  429. package/dist/chunks/logDepthVertex-Bq3-XtSp.esm.min.js.map +0 -1
  430. package/dist/chunks/logDepthVertex-DZoye-59.esm.js +0 -605
  431. package/dist/chunks/logDepthVertex-DZoye-59.esm.js.map +0 -1
  432. package/dist/chunks/mainUVVaryingDeclaration-LHNQQPPQ.esm.js +0 -11
  433. package/dist/chunks/mainUVVaryingDeclaration-LHNQQPPQ.esm.js.map +0 -1
  434. package/dist/chunks/mainUVVaryingDeclaration-wmRFnah8.esm.min.js +0 -2
  435. package/dist/chunks/mainUVVaryingDeclaration-wmRFnah8.esm.min.js.map +0 -1
  436. package/dist/chunks/objFileLoader-BvWwH6aj.esm.js +0 -1280
  437. package/dist/chunks/objFileLoader-BvWwH6aj.esm.js.map +0 -1
  438. package/dist/chunks/objFileLoader-LDP87u1T.esm.min.js +0 -2
  439. package/dist/chunks/objFileLoader-LDP87u1T.esm.min.js.map +0 -1
  440. package/dist/chunks/oitFragment-BAVtrG6V.esm.min.js +0 -2
  441. package/dist/chunks/oitFragment-BAVtrG6V.esm.min.js.map +0 -1
  442. package/dist/chunks/oitFragment-BqzVjWja.esm.js +0 -1210
  443. package/dist/chunks/oitFragment-BqzVjWja.esm.js.map +0 -1
  444. package/dist/chunks/oitFragment-CIelz994.esm.js +0 -1166
  445. package/dist/chunks/oitFragment-CIelz994.esm.js.map +0 -1
  446. package/dist/chunks/oitFragment-P20Uiy73.esm.min.js +0 -2
  447. package/dist/chunks/oitFragment-P20Uiy73.esm.min.js.map +0 -1
  448. package/dist/chunks/pass.fragment-D-67YTNJ.esm.min.js +0 -2
  449. package/dist/chunks/pass.fragment-D-67YTNJ.esm.min.js.map +0 -1
  450. package/dist/chunks/pass.fragment-ke3_LMQY.esm.js +0 -15
  451. package/dist/chunks/pass.fragment-ke3_LMQY.esm.js.map +0 -1
  452. package/dist/chunks/pbr.fragment-3QJykQmh.esm.js +0 -3228
  453. package/dist/chunks/pbr.fragment-3QJykQmh.esm.js.map +0 -1
  454. package/dist/chunks/pbr.fragment-BfhoPEE4.esm.js +0 -3163
  455. package/dist/chunks/pbr.fragment-BfhoPEE4.esm.js.map +0 -1
  456. package/dist/chunks/pbr.fragment-BpCKAJQO.esm.min.js +0 -2
  457. package/dist/chunks/pbr.fragment-BpCKAJQO.esm.min.js.map +0 -1
  458. package/dist/chunks/pbr.fragment-Buc8F3ii.esm.min.js +0 -2
  459. package/dist/chunks/pbr.fragment-Buc8F3ii.esm.min.js.map +0 -1
  460. package/dist/chunks/pbr.vertex-Bwl6238q.esm.min.js +0 -2
  461. package/dist/chunks/pbr.vertex-Bwl6238q.esm.min.js.map +0 -1
  462. package/dist/chunks/pbr.vertex-COtog_7X.esm.js +0 -335
  463. package/dist/chunks/pbr.vertex-COtog_7X.esm.js.map +0 -1
  464. package/dist/chunks/pbr.vertex-CX-ksiMG.esm.min.js +0 -2
  465. package/dist/chunks/pbr.vertex-CX-ksiMG.esm.min.js.map +0 -1
  466. package/dist/chunks/pbr.vertex-WxxbIMZL.esm.js +0 -208
  467. package/dist/chunks/pbr.vertex-WxxbIMZL.esm.js.map +0 -1
  468. package/dist/chunks/postprocess.vertex-6VuephE3.esm.min.js +0 -2
  469. package/dist/chunks/postprocess.vertex-6VuephE3.esm.min.js.map +0 -1
  470. package/dist/chunks/postprocess.vertex-y9rNSbFH.esm.js +0 -20
  471. package/dist/chunks/postprocess.vertex-y9rNSbFH.esm.js.map +0 -1
  472. package/dist/chunks/rawTexture-BjAjz6eU.esm.min.js +0 -2
  473. package/dist/chunks/rawTexture-BjAjz6eU.esm.min.js.map +0 -1
  474. package/dist/chunks/rawTexture-DzCCPFKA.esm.js +0 -562
  475. package/dist/chunks/rawTexture-DzCCPFKA.esm.js.map +0 -1
  476. package/dist/chunks/rgbdDecode.fragment-B2z-Bt71.esm.js +0 -17
  477. package/dist/chunks/rgbdDecode.fragment-B2z-Bt71.esm.js.map +0 -1
  478. package/dist/chunks/rgbdDecode.fragment-CdzoW-6f.esm.min.js +0 -2
  479. package/dist/chunks/rgbdDecode.fragment-CdzoW-6f.esm.min.js.map +0 -1
  480. package/dist/chunks/rgbdDecode.fragment-DrLvcO8Q.esm.js +0 -17
  481. package/dist/chunks/rgbdDecode.fragment-DrLvcO8Q.esm.js.map +0 -1
  482. package/dist/chunks/rgbdDecode.fragment-DuXK_20s.esm.min.js +0 -2
  483. package/dist/chunks/rgbdDecode.fragment-DuXK_20s.esm.min.js.map +0 -1
  484. package/dist/chunks/rgbdEncode.fragment-B8TjBZ9S.esm.js +0 -17
  485. package/dist/chunks/rgbdEncode.fragment-B8TjBZ9S.esm.js.map +0 -1
  486. package/dist/chunks/rgbdEncode.fragment-CGQHcoVr.esm.min.js +0 -2
  487. package/dist/chunks/rgbdEncode.fragment-CGQHcoVr.esm.min.js.map +0 -1
  488. package/dist/chunks/rgbdEncode.fragment-CHPMUGpL.esm.js +0 -17
  489. package/dist/chunks/rgbdEncode.fragment-CHPMUGpL.esm.js.map +0 -1
  490. package/dist/chunks/rgbdEncode.fragment-Ch8KaRMn.esm.min.js +0 -2
  491. package/dist/chunks/rgbdEncode.fragment-Ch8KaRMn.esm.min.js.map +0 -1
  492. package/dist/chunks/splatFileLoader-BOlEs8up.esm.min.js +0 -2
  493. package/dist/chunks/splatFileLoader-BOlEs8up.esm.min.js.map +0 -1
  494. package/dist/chunks/splatFileLoader-bjTdN6CH.esm.js +0 -3137
  495. package/dist/chunks/splatFileLoader-bjTdN6CH.esm.js.map +0 -1
  496. package/dist/chunks/standardMaterial-AtuI8LET.esm.min.js +0 -2
  497. package/dist/chunks/standardMaterial-AtuI8LET.esm.min.js.map +0 -1
  498. package/dist/chunks/standardMaterial-pkPTNFQZ.esm.js +0 -1809
  499. package/dist/chunks/standardMaterial-pkPTNFQZ.esm.js.map +0 -1
  500. package/dist/chunks/stlFileLoader-D_S8zIWi.esm.min.js +0 -2
  501. package/dist/chunks/stlFileLoader-D_S8zIWi.esm.min.js.map +0 -1
  502. package/dist/chunks/stlFileLoader-LAl8UbnA.esm.js +0 -237
  503. package/dist/chunks/stlFileLoader-LAl8UbnA.esm.js.map +0 -1
  504. package/dist/chunks/tgaTextureLoader-6J7hFLap.esm.min.js +0 -2
  505. package/dist/chunks/tgaTextureLoader-6J7hFLap.esm.min.js.map +0 -1
  506. package/dist/chunks/tgaTextureLoader-C9bFUsSu.esm.js +0 -349
  507. package/dist/chunks/tgaTextureLoader-C9bFUsSu.esm.js.map +0 -1
  508. package/dist/chunks/thinInstanceMesh-01jRjs2y.esm.js +0 -314
  509. package/dist/chunks/thinInstanceMesh-01jRjs2y.esm.js.map +0 -1
  510. package/dist/chunks/thinInstanceMesh-BkM6bBqz.esm.min.js +0 -2
  511. package/dist/chunks/thinInstanceMesh-BkM6bBqz.esm.min.js.map +0 -1
  512. package/dist/chunks/vertexColorMixing-BQURABk9.esm.js +0 -528
  513. package/dist/chunks/vertexColorMixing-BQURABk9.esm.js.map +0 -1
  514. package/dist/chunks/vertexColorMixing-DtyijcYJ.esm.min.js +0 -2
  515. package/dist/chunks/vertexColorMixing-DtyijcYJ.esm.min.js.map +0 -1
  516. package/dist/chunks/workerPool-BUOov2K1.esm.js +0 -122
  517. package/dist/chunks/workerPool-BUOov2K1.esm.js.map +0 -1
  518. package/dist/chunks/workerPool-BWHiDmEZ.esm.min.js +0 -2
  519. package/dist/chunks/workerPool-BWHiDmEZ.esm.min.js.map +0 -1
  520. package/lib/index.d.ts +0 -237
  521. package/lib/index.js +0 -871
  522. package/lib/index.js.map +0 -1
@@ -1,237 +0,0 @@
1
- import { ag as STLFileLoaderMetadata, M as Mesh, e as Tools, c as VertexBuffer, r as registerSceneLoaderPlugin } from './index-CTNAO7X0.esm.js';
2
- import { A as AssetContainer } from './assetContainer-DVOdWL9b.esm.js';
3
-
4
- /**
5
- * STL file type loader.
6
- * This is a babylon scene loader plugin.
7
- */
8
- class STLFileLoader {
9
- constructor() {
10
- /** @internal */
11
- this.solidPattern = /solid (\S*)([\S\s]*?)endsolid[ ]*(\S*)/g;
12
- /** @internal */
13
- this.facetsPattern = /facet([\s\S]*?)endfacet/g;
14
- /** @internal */
15
- this.normalPattern = /normal[\s]+([-+]?[0-9]+\.?[0-9]*([eE][-+]?[0-9]+)?)+[\s]+([-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?)+[\s]+([-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?)+/g;
16
- /** @internal */
17
- this.vertexPattern = /vertex[\s]+([-+]?[0-9]+\.?[0-9]*([eE][-+]?[0-9]+)?)+[\s]+([-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?)+[\s]+([-+]?[0-9]*\.?[0-9]+([eE][-+]?[0-9]+)?)+/g;
18
- /**
19
- * Defines the name of the plugin.
20
- */
21
- this.name = STLFileLoaderMetadata.name;
22
- /**
23
- * Defines the extensions the stl loader is able to load.
24
- * force data to come in as an ArrayBuffer
25
- * we'll convert to string if it looks like it's an ASCII .stl
26
- */
27
- this.extensions = STLFileLoaderMetadata.extensions;
28
- }
29
- /**
30
- * Import meshes into a scene.
31
- * @param meshesNames An array of mesh names, a single mesh name, or empty string for all meshes that filter what meshes are imported
32
- * @param scene The scene to import into
33
- * @param data The data to import
34
- * @param rootUrl The root url for scene and resources
35
- * @param meshes The meshes array to import into
36
- * @returns True if successful or false otherwise
37
- */
38
- importMesh(meshesNames, scene, data, rootUrl, meshes) {
39
- let matches;
40
- if (typeof data !== "string") {
41
- if (this._isBinary(data)) {
42
- // binary .stl
43
- const babylonMesh = new Mesh("stlmesh", scene);
44
- this._parseBinary(babylonMesh, data);
45
- if (meshes) {
46
- meshes.push(babylonMesh);
47
- }
48
- return true;
49
- }
50
- // ASCII .stl
51
- // convert to string
52
- data = new TextDecoder().decode(new Uint8Array(data));
53
- }
54
- //if arrived here, data is a string, containing the STLA data.
55
- while ((matches = this.solidPattern.exec(data))) {
56
- let meshName = matches[1];
57
- const meshNameFromEnd = matches[3];
58
- if (meshNameFromEnd && meshName != meshNameFromEnd) {
59
- Tools.Error("Error in STL, solid name != endsolid name");
60
- return false;
61
- }
62
- // check meshesNames
63
- if (meshesNames && meshName) {
64
- if (meshesNames instanceof Array) {
65
- if (!meshesNames.indexOf(meshName)) {
66
- continue;
67
- }
68
- }
69
- else {
70
- if (meshName !== meshesNames) {
71
- continue;
72
- }
73
- }
74
- }
75
- // stl mesh name can be empty as well
76
- meshName = meshName || "stlmesh";
77
- const babylonMesh = new Mesh(meshName, scene);
78
- this._parseASCII(babylonMesh, matches[2]);
79
- if (meshes) {
80
- meshes.push(babylonMesh);
81
- }
82
- }
83
- return true;
84
- }
85
- /**
86
- * Load into a scene.
87
- * @param scene The scene to load into
88
- * @param data The data to import
89
- * @param rootUrl The root url for scene and resources
90
- * @returns true if successful or false otherwise
91
- */
92
- load(scene, data, rootUrl) {
93
- const result = this.importMesh(null, scene, data, rootUrl, null);
94
- return result;
95
- }
96
- /**
97
- * Load into an asset container.
98
- * @param scene The scene to load into
99
- * @param data The data to import
100
- * @param rootUrl The root url for scene and resources
101
- * @returns The loaded asset container
102
- */
103
- loadAssetContainer(scene, data, rootUrl) {
104
- const container = new AssetContainer(scene);
105
- scene._blockEntityCollection = true;
106
- this.importMesh(null, scene, data, rootUrl, container.meshes);
107
- scene._blockEntityCollection = false;
108
- return container;
109
- }
110
- _isBinary(data) {
111
- // check if file size is correct for binary stl
112
- const reader = new DataView(data);
113
- // A Binary STL header is 80 bytes, if the data size is not great than
114
- // that then it's not a binary STL.
115
- if (reader.byteLength <= 80) {
116
- return false;
117
- }
118
- const faceSize = (32 / 8) * 3 + (32 / 8) * 3 * 3 + 16 / 8;
119
- const nFaces = reader.getUint32(80, true);
120
- if (80 + 32 / 8 + nFaces * faceSize === reader.byteLength) {
121
- return true;
122
- }
123
- // US-ASCII begin with 's', 'o', 'l', 'i', 'd'
124
- const ascii = [115, 111, 108, 105, 100];
125
- for (let off = 0; off < 5; off++) {
126
- if (reader.getUint8(off) !== ascii[off]) {
127
- return true;
128
- }
129
- }
130
- return false;
131
- }
132
- _parseBinary(mesh, data) {
133
- const reader = new DataView(data);
134
- const faces = reader.getUint32(80, true);
135
- const dataOffset = 84;
136
- const faceLength = 12 * 4 + 2;
137
- let offset = 0;
138
- const positions = new Float32Array(faces * 3 * 3);
139
- const normals = new Float32Array(faces * 3 * 3);
140
- const indices = new Uint32Array(faces * 3);
141
- let indicesCount = 0;
142
- for (let face = 0; face < faces; face++) {
143
- const start = dataOffset + face * faceLength;
144
- const normalX = reader.getFloat32(start, true);
145
- const normalY = reader.getFloat32(start + 4, true);
146
- const normalZ = reader.getFloat32(start + 8, true);
147
- for (let i = 1; i <= 3; i++) {
148
- const vertexstart = start + i * 12;
149
- // ordering is intentional to match ascii import
150
- positions[offset] = reader.getFloat32(vertexstart, true);
151
- normals[offset] = normalX;
152
- if (!STLFileLoader.DO_NOT_ALTER_FILE_COORDINATES) {
153
- positions[offset + 2] = reader.getFloat32(vertexstart + 4, true);
154
- positions[offset + 1] = reader.getFloat32(vertexstart + 8, true);
155
- normals[offset + 2] = normalY;
156
- normals[offset + 1] = normalZ;
157
- }
158
- else {
159
- positions[offset + 1] = reader.getFloat32(vertexstart + 4, true);
160
- positions[offset + 2] = reader.getFloat32(vertexstart + 8, true);
161
- normals[offset + 1] = normalY;
162
- normals[offset + 2] = normalZ;
163
- }
164
- offset += 3;
165
- }
166
- if (STLFileLoader.DO_NOT_ALTER_FILE_COORDINATES) {
167
- indices[indicesCount] = indicesCount;
168
- indices[indicesCount + 1] = indicesCount + 2;
169
- indices[indicesCount + 2] = indicesCount + 1;
170
- indicesCount += 3;
171
- }
172
- else {
173
- indices[indicesCount] = indicesCount++;
174
- indices[indicesCount] = indicesCount++;
175
- indices[indicesCount] = indicesCount++;
176
- }
177
- }
178
- mesh.setVerticesData(VertexBuffer.PositionKind, positions);
179
- mesh.setVerticesData(VertexBuffer.NormalKind, normals);
180
- mesh.setIndices(indices);
181
- mesh.computeWorldMatrix(true);
182
- }
183
- _parseASCII(mesh, solidData) {
184
- const positions = [];
185
- const normals = [];
186
- const indices = [];
187
- let indicesCount = 0;
188
- //load facets, ignoring loop as the standard doesn't define it can contain more than vertices
189
- let matches;
190
- while ((matches = this.facetsPattern.exec(solidData))) {
191
- const facet = matches[1];
192
- //one normal per face
193
- const normalMatches = this.normalPattern.exec(facet);
194
- this.normalPattern.lastIndex = 0;
195
- if (!normalMatches) {
196
- continue;
197
- }
198
- const normal = [Number(normalMatches[1]), Number(normalMatches[5]), Number(normalMatches[3])];
199
- let vertexMatch;
200
- while ((vertexMatch = this.vertexPattern.exec(facet))) {
201
- if (!STLFileLoader.DO_NOT_ALTER_FILE_COORDINATES) {
202
- positions.push(Number(vertexMatch[1]), Number(vertexMatch[5]), Number(vertexMatch[3]));
203
- normals.push(normal[0], normal[1], normal[2]);
204
- }
205
- else {
206
- positions.push(Number(vertexMatch[1]), Number(vertexMatch[3]), Number(vertexMatch[5]));
207
- // Flipping the second and third component because inverted
208
- // when normal was declared.
209
- normals.push(normal[0], normal[2], normal[1]);
210
- }
211
- }
212
- if (STLFileLoader.DO_NOT_ALTER_FILE_COORDINATES) {
213
- indices.push(indicesCount, indicesCount + 2, indicesCount + 1);
214
- indicesCount += 3;
215
- }
216
- else {
217
- indices.push(indicesCount++, indicesCount++, indicesCount++);
218
- }
219
- this.vertexPattern.lastIndex = 0;
220
- }
221
- this.facetsPattern.lastIndex = 0;
222
- mesh.setVerticesData(VertexBuffer.PositionKind, positions);
223
- mesh.setVerticesData(VertexBuffer.NormalKind, normals);
224
- mesh.setIndices(indices);
225
- mesh.computeWorldMatrix(true);
226
- }
227
- }
228
- /**
229
- * Defines if Y and Z axes are swapped or not when loading an STL file.
230
- * The default is false to maintain backward compatibility. When set to
231
- * true, coordinates from the STL file are used without change.
232
- */
233
- STLFileLoader.DO_NOT_ALTER_FILE_COORDINATES = false;
234
- registerSceneLoaderPlugin(new STLFileLoader());
235
-
236
- export { STLFileLoader };
237
- //# sourceMappingURL=stlFileLoader-LAl8UbnA.esm.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"stlFileLoader-LAl8UbnA.esm.js","sources":["../../../../../dev/loaders/dist/STL/stlFileLoader.js"],"sourcesContent":["import { Tools } from \"core/Misc/tools\";\nimport { VertexBuffer } from \"core/Buffers/buffer\";\nimport { Mesh } from \"core/Meshes/mesh\";\nimport { registerSceneLoaderPlugin } from \"core/Loading/sceneLoader\";\nimport { AssetContainer } from \"core/assetContainer\";\nimport { STLFileLoaderMetadata } from \"./stlFileLoader.metadata\";\n/**\n * STL file type loader.\n * This is a babylon scene loader plugin.\n */\nexport class STLFileLoader {\n constructor() {\n /** @internal */\n this.solidPattern = /solid (\\S*)([\\S\\s]*?)endsolid[ ]*(\\S*)/g;\n /** @internal */\n this.facetsPattern = /facet([\\s\\S]*?)endfacet/g;\n /** @internal */\n this.normalPattern = /normal[\\s]+([-+]?[0-9]+\\.?[0-9]*([eE][-+]?[0-9]+)?)+[\\s]+([-+]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?)+[\\s]+([-+]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?)+/g;\n /** @internal */\n this.vertexPattern = /vertex[\\s]+([-+]?[0-9]+\\.?[0-9]*([eE][-+]?[0-9]+)?)+[\\s]+([-+]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?)+[\\s]+([-+]?[0-9]*\\.?[0-9]+([eE][-+]?[0-9]+)?)+/g;\n /**\n * Defines the name of the plugin.\n */\n this.name = STLFileLoaderMetadata.name;\n /**\n * Defines the extensions the stl loader is able to load.\n * force data to come in as an ArrayBuffer\n * we'll convert to string if it looks like it's an ASCII .stl\n */\n this.extensions = STLFileLoaderMetadata.extensions;\n }\n /**\n * Import meshes into a scene.\n * @param meshesNames An array of mesh names, a single mesh name, or empty string for all meshes that filter what meshes are imported\n * @param scene The scene to import into\n * @param data The data to import\n * @param rootUrl The root url for scene and resources\n * @param meshes The meshes array to import into\n * @returns True if successful or false otherwise\n */\n importMesh(meshesNames, scene, data, rootUrl, meshes) {\n let matches;\n if (typeof data !== \"string\") {\n if (this._isBinary(data)) {\n // binary .stl\n const babylonMesh = new Mesh(\"stlmesh\", scene);\n this._parseBinary(babylonMesh, data);\n if (meshes) {\n meshes.push(babylonMesh);\n }\n return true;\n }\n // ASCII .stl\n // convert to string\n data = new TextDecoder().decode(new Uint8Array(data));\n }\n //if arrived here, data is a string, containing the STLA data.\n while ((matches = this.solidPattern.exec(data))) {\n let meshName = matches[1];\n const meshNameFromEnd = matches[3];\n if (meshNameFromEnd && meshName != meshNameFromEnd) {\n Tools.Error(\"Error in STL, solid name != endsolid name\");\n return false;\n }\n // check meshesNames\n if (meshesNames && meshName) {\n if (meshesNames instanceof Array) {\n if (!meshesNames.indexOf(meshName)) {\n continue;\n }\n }\n else {\n if (meshName !== meshesNames) {\n continue;\n }\n }\n }\n // stl mesh name can be empty as well\n meshName = meshName || \"stlmesh\";\n const babylonMesh = new Mesh(meshName, scene);\n this._parseASCII(babylonMesh, matches[2]);\n if (meshes) {\n meshes.push(babylonMesh);\n }\n }\n return true;\n }\n /**\n * Load into a scene.\n * @param scene The scene to load into\n * @param data The data to import\n * @param rootUrl The root url for scene and resources\n * @returns true if successful or false otherwise\n */\n load(scene, data, rootUrl) {\n const result = this.importMesh(null, scene, data, rootUrl, null);\n return result;\n }\n /**\n * Load into an asset container.\n * @param scene The scene to load into\n * @param data The data to import\n * @param rootUrl The root url for scene and resources\n * @returns The loaded asset container\n */\n loadAssetContainer(scene, data, rootUrl) {\n const container = new AssetContainer(scene);\n scene._blockEntityCollection = true;\n this.importMesh(null, scene, data, rootUrl, container.meshes);\n scene._blockEntityCollection = false;\n return container;\n }\n _isBinary(data) {\n // check if file size is correct for binary stl\n const reader = new DataView(data);\n // A Binary STL header is 80 bytes, if the data size is not great than\n // that then it's not a binary STL.\n if (reader.byteLength <= 80) {\n return false;\n }\n const faceSize = (32 / 8) * 3 + (32 / 8) * 3 * 3 + 16 / 8;\n const nFaces = reader.getUint32(80, true);\n if (80 + 32 / 8 + nFaces * faceSize === reader.byteLength) {\n return true;\n }\n // US-ASCII begin with 's', 'o', 'l', 'i', 'd'\n const ascii = [115, 111, 108, 105, 100];\n for (let off = 0; off < 5; off++) {\n if (reader.getUint8(off) !== ascii[off]) {\n return true;\n }\n }\n return false;\n }\n _parseBinary(mesh, data) {\n const reader = new DataView(data);\n const faces = reader.getUint32(80, true);\n const dataOffset = 84;\n const faceLength = 12 * 4 + 2;\n let offset = 0;\n const positions = new Float32Array(faces * 3 * 3);\n const normals = new Float32Array(faces * 3 * 3);\n const indices = new Uint32Array(faces * 3);\n let indicesCount = 0;\n for (let face = 0; face < faces; face++) {\n const start = dataOffset + face * faceLength;\n const normalX = reader.getFloat32(start, true);\n const normalY = reader.getFloat32(start + 4, true);\n const normalZ = reader.getFloat32(start + 8, true);\n for (let i = 1; i <= 3; i++) {\n const vertexstart = start + i * 12;\n // ordering is intentional to match ascii import\n positions[offset] = reader.getFloat32(vertexstart, true);\n normals[offset] = normalX;\n if (!STLFileLoader.DO_NOT_ALTER_FILE_COORDINATES) {\n positions[offset + 2] = reader.getFloat32(vertexstart + 4, true);\n positions[offset + 1] = reader.getFloat32(vertexstart + 8, true);\n normals[offset + 2] = normalY;\n normals[offset + 1] = normalZ;\n }\n else {\n positions[offset + 1] = reader.getFloat32(vertexstart + 4, true);\n positions[offset + 2] = reader.getFloat32(vertexstart + 8, true);\n normals[offset + 1] = normalY;\n normals[offset + 2] = normalZ;\n }\n offset += 3;\n }\n if (STLFileLoader.DO_NOT_ALTER_FILE_COORDINATES) {\n indices[indicesCount] = indicesCount;\n indices[indicesCount + 1] = indicesCount + 2;\n indices[indicesCount + 2] = indicesCount + 1;\n indicesCount += 3;\n }\n else {\n indices[indicesCount] = indicesCount++;\n indices[indicesCount] = indicesCount++;\n indices[indicesCount] = indicesCount++;\n }\n }\n mesh.setVerticesData(VertexBuffer.PositionKind, positions);\n mesh.setVerticesData(VertexBuffer.NormalKind, normals);\n mesh.setIndices(indices);\n mesh.computeWorldMatrix(true);\n }\n _parseASCII(mesh, solidData) {\n const positions = [];\n const normals = [];\n const indices = [];\n let indicesCount = 0;\n //load facets, ignoring loop as the standard doesn't define it can contain more than vertices\n let matches;\n while ((matches = this.facetsPattern.exec(solidData))) {\n const facet = matches[1];\n //one normal per face\n const normalMatches = this.normalPattern.exec(facet);\n this.normalPattern.lastIndex = 0;\n if (!normalMatches) {\n continue;\n }\n const normal = [Number(normalMatches[1]), Number(normalMatches[5]), Number(normalMatches[3])];\n let vertexMatch;\n while ((vertexMatch = this.vertexPattern.exec(facet))) {\n if (!STLFileLoader.DO_NOT_ALTER_FILE_COORDINATES) {\n positions.push(Number(vertexMatch[1]), Number(vertexMatch[5]), Number(vertexMatch[3]));\n normals.push(normal[0], normal[1], normal[2]);\n }\n else {\n positions.push(Number(vertexMatch[1]), Number(vertexMatch[3]), Number(vertexMatch[5]));\n // Flipping the second and third component because inverted\n // when normal was declared.\n normals.push(normal[0], normal[2], normal[1]);\n }\n }\n if (STLFileLoader.DO_NOT_ALTER_FILE_COORDINATES) {\n indices.push(indicesCount, indicesCount + 2, indicesCount + 1);\n indicesCount += 3;\n }\n else {\n indices.push(indicesCount++, indicesCount++, indicesCount++);\n }\n this.vertexPattern.lastIndex = 0;\n }\n this.facetsPattern.lastIndex = 0;\n mesh.setVerticesData(VertexBuffer.PositionKind, positions);\n mesh.setVerticesData(VertexBuffer.NormalKind, normals);\n mesh.setIndices(indices);\n mesh.computeWorldMatrix(true);\n }\n}\n/**\n * Defines if Y and Z axes are swapped or not when loading an STL file.\n * The default is false to maintain backward compatibility. When set to\n * true, coordinates from the STL file are used without change.\n */\nSTLFileLoader.DO_NOT_ALTER_FILE_COORDINATES = false;\nregisterSceneLoaderPlugin(new STLFileLoader());\n//# sourceMappingURL=stlFileLoader.js.map"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import{L as t}from"./index-DYqHhEAk.esm.min.js";function e(t){let e=0;return{id_length:t[e++],colormap_type:t[e++],image_type:t[e++],colormap_index:t[e++]|t[e++]<<8,colormap_length:t[e++]|t[e++]<<8,colormap_size:t[e++],origin:[t[e++]|t[e++]<<8,t[e++]|t[e++]<<8],width:t[e++]|t[e++]<<8,height:t[e++]|t[e++]<<8,pixel_size:t[e++],flags:t[e++]}}function r(r,a){if(a.length<19)return void t.Error("Unable to load TGA file - Not enough data to contain header");let i=18;const o=e(a);if(o.id_length+i>a.length)return void t.Error("Unable to load TGA file - Not enough data");i+=o.id_length;let s,h=!1,c=!1,g=!1;switch(o.image_type){case 9:h=!0;case 1:c=!0;break;case 10:h=!0;case 2:break;case 11:h=!0;case 3:g=!0}const l=o.pixel_size>>3,f=o.width*o.height*l;let d,u,w,p,_,b,y;if(c&&(d=a.subarray(i,i+=o.colormap_length*(o.colormap_size>>3))),h){let t,e,r;s=new Uint8Array(f);let n=0;const o=new Uint8Array(l);for(;i<f&&n<f;)if(t=a[i++],e=1+(127&t),128&t){for(r=0;r<l;++r)o[r]=a[i++];for(r=0;r<e;++r)s.set(o,n+r*l);n+=l*e}else{for(e*=l,r=0;r<e;++r)s[n+r]=a[i++];n+=e}}else s=a.subarray(i,i+=c?o.width*o.height:f);switch((48&o.flags)>>4){default:case 2:u=0,p=1,y=o.width,w=0,_=1,b=o.height;break;case 0:u=0,p=1,y=o.width,w=o.height-1,_=-1,b=-1;break;case 3:u=o.width-1,p=-1,y=-1,w=0,_=1,b=o.height;break;case 1:u=o.width-1,p=-1,y=-1,w=o.height-1,_=-1,b=-1}const m="_getImageData"+(g?"Grey":"")+o.pixel_size+"bits",A=n[m](o,d,s,w,_,b,u,p,y);r.getEngine()._uploadDataToTextureDirectly(r,A)}const n={GetTGAHeader:e,UploadContent:r,_getImageData8bits:function(t,e,r,n,a,i,o,s,h){const c=r,g=e,l=t.width,f=t.height;let d,u,w,p=0;const _=new Uint8Array(l*f*4);for(w=n;w!==i;w+=a)for(u=o;u!==h;u+=s,p++)d=c[p],_[4*(u+l*w)+3]=255,_[4*(u+l*w)+2]=g[3*d+0],_[4*(u+l*w)+1]=g[3*d+1],_[4*(u+l*w)+0]=g[3*d+2];return _},_getImageData16bits:function(t,e,r,n,a,i,o,s,h){const c=r,g=t.width,l=t.height;let f,d,u,w=0;const p=new Uint8Array(g*l*4);for(u=n;u!==i;u+=a)for(d=o;d!==h;d+=s,w+=2){f=c[w+0]+(c[w+1]<<8);const t=255*((31744&f)>>10)/31|0,e=255*((992&f)>>5)/31|0,r=255*(31&f)/31|0;p[4*(d+g*u)+0]=t,p[4*(d+g*u)+1]=e,p[4*(d+g*u)+2]=r,p[4*(d+g*u)+3]=32768&f?0:255}return p},_getImageData24bits:function(t,e,r,n,a,i,o,s,h){const c=r,g=t.width,l=t.height;let f,d,u=0;const w=new Uint8Array(g*l*4);for(d=n;d!==i;d+=a)for(f=o;f!==h;f+=s,u+=3)w[4*(f+g*d)+3]=255,w[4*(f+g*d)+2]=c[u+0],w[4*(f+g*d)+1]=c[u+1],w[4*(f+g*d)+0]=c[u+2];return w},_getImageData32bits:function(t,e,r,n,a,i,o,s,h){const c=r,g=t.width,l=t.height;let f,d,u=0;const w=new Uint8Array(g*l*4);for(d=n;d!==i;d+=a)for(f=o;f!==h;f+=s,u+=4)w[4*(f+g*d)+2]=c[u+0],w[4*(f+g*d)+1]=c[u+1],w[4*(f+g*d)+0]=c[u+2],w[4*(f+g*d)+3]=c[u+3];return w},_getImageDataGrey8bits:function(t,e,r,n,a,i,o,s,h){const c=r,g=t.width,l=t.height;let f,d,u,w=0;const p=new Uint8Array(g*l*4);for(u=n;u!==i;u+=a)for(d=o;d!==h;d+=s,w++)f=c[w],p[4*(d+g*u)+0]=f,p[4*(d+g*u)+1]=f,p[4*(d+g*u)+2]=f,p[4*(d+g*u)+3]=255;return p},_getImageDataGrey16bits:function(t,e,r,n,a,i,o,s,h){const c=r,g=t.width,l=t.height;let f,d,u=0;const w=new Uint8Array(g*l*4);for(d=n;d!==i;d+=a)for(f=o;f!==h;f+=s,u+=2)w[4*(f+g*d)+0]=c[u+0],w[4*(f+g*d)+1]=c[u+0],w[4*(f+g*d)+2]=c[u+0],w[4*(f+g*d)+3]=c[u+1];return w}};class a{constructor(){this.supportCascades=!1}loadCubeData(){throw".env not supported in Cube."}loadData(t,n,a){const i=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),o=e(i);a(o.width,o.height,n.generateMipMaps,!1,(()=>{r(n,i)}))}}export{a as _TGATextureLoader};
2
- //# sourceMappingURL=tgaTextureLoader-6J7hFLap.esm.min.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tgaTextureLoader-6J7hFLap.esm.min.js","sources":["../../../../../dev/core/dist/Misc/tga.js","../../../../../dev/core/dist/Materials/Textures/Loaders/tgaTextureLoader.js"],"sourcesContent":["import { Logger } from \"../Misc/logger\";\n//private static _TYPE_NO_DATA = 0;\nconst _TYPE_INDEXED = 1;\nconst _TYPE_RGB = 2;\nconst _TYPE_GREY = 3;\nconst _TYPE_RLE_INDEXED = 9;\nconst _TYPE_RLE_RGB = 10;\nconst _TYPE_RLE_GREY = 11;\nconst _ORIGIN_MASK = 0x30;\nconst _ORIGIN_SHIFT = 0x04;\nconst _ORIGIN_BL = 0x00;\nconst _ORIGIN_BR = 0x01;\nconst _ORIGIN_UL = 0x02;\nconst _ORIGIN_UR = 0x03;\n/**\n * Gets the header of a TGA file\n * @param data defines the TGA data\n * @returns the header\n */\nexport function GetTGAHeader(data) {\n let offset = 0;\n const header = {\n id_length: data[offset++],\n colormap_type: data[offset++],\n image_type: data[offset++],\n colormap_index: data[offset++] | (data[offset++] << 8),\n colormap_length: data[offset++] | (data[offset++] << 8),\n colormap_size: data[offset++],\n origin: [data[offset++] | (data[offset++] << 8), data[offset++] | (data[offset++] << 8)],\n width: data[offset++] | (data[offset++] << 8),\n height: data[offset++] | (data[offset++] << 8),\n pixel_size: data[offset++],\n flags: data[offset++],\n };\n return header;\n}\n/**\n * Uploads TGA content to a Babylon Texture\n * @internal\n */\nexport function UploadContent(texture, data) {\n // Not enough data to contain header ?\n if (data.length < 19) {\n Logger.Error(\"Unable to load TGA file - Not enough data to contain header\");\n return;\n }\n // Read Header\n let offset = 18;\n const header = GetTGAHeader(data);\n // Assume it's a valid Targa file.\n if (header.id_length + offset > data.length) {\n Logger.Error(\"Unable to load TGA file - Not enough data\");\n return;\n }\n // Skip not needed data\n offset += header.id_length;\n let use_rle = false;\n let use_pal = false;\n let use_grey = false;\n // Get some informations.\n switch (header.image_type) {\n case _TYPE_RLE_INDEXED:\n use_rle = true;\n // eslint-disable-next-line no-fallthrough\n case _TYPE_INDEXED:\n use_pal = true;\n break;\n case _TYPE_RLE_RGB:\n use_rle = true;\n // eslint-disable-next-line no-fallthrough\n case _TYPE_RGB:\n // use_rgb = true;\n break;\n case _TYPE_RLE_GREY:\n use_rle = true;\n // eslint-disable-next-line no-fallthrough\n case _TYPE_GREY:\n use_grey = true;\n break;\n }\n let pixel_data;\n // var numAlphaBits = header.flags & 0xf;\n const pixel_size = header.pixel_size >> 3;\n const pixel_total = header.width * header.height * pixel_size;\n // Read palettes\n let palettes;\n if (use_pal) {\n palettes = data.subarray(offset, (offset += header.colormap_length * (header.colormap_size >> 3)));\n }\n // Read LRE\n if (use_rle) {\n pixel_data = new Uint8Array(pixel_total);\n let c, count, i;\n let localOffset = 0;\n const pixels = new Uint8Array(pixel_size);\n while (offset < pixel_total && localOffset < pixel_total) {\n c = data[offset++];\n count = (c & 0x7f) + 1;\n // RLE pixels\n if (c & 0x80) {\n // Bind pixel tmp array\n for (i = 0; i < pixel_size; ++i) {\n pixels[i] = data[offset++];\n }\n // Copy pixel array\n for (i = 0; i < count; ++i) {\n pixel_data.set(pixels, localOffset + i * pixel_size);\n }\n localOffset += pixel_size * count;\n }\n // Raw pixels\n else {\n count *= pixel_size;\n for (i = 0; i < count; ++i) {\n pixel_data[localOffset + i] = data[offset++];\n }\n localOffset += count;\n }\n }\n }\n // RAW Pixels\n else {\n pixel_data = data.subarray(offset, (offset += use_pal ? header.width * header.height : pixel_total));\n }\n // Load to texture\n let x_start, y_start, x_step, y_step, y_end, x_end;\n switch ((header.flags & _ORIGIN_MASK) >> _ORIGIN_SHIFT) {\n default:\n case _ORIGIN_UL:\n x_start = 0;\n x_step = 1;\n x_end = header.width;\n y_start = 0;\n y_step = 1;\n y_end = header.height;\n break;\n case _ORIGIN_BL:\n x_start = 0;\n x_step = 1;\n x_end = header.width;\n y_start = header.height - 1;\n y_step = -1;\n y_end = -1;\n break;\n case _ORIGIN_UR:\n x_start = header.width - 1;\n x_step = -1;\n x_end = -1;\n y_start = 0;\n y_step = 1;\n y_end = header.height;\n break;\n case _ORIGIN_BR:\n x_start = header.width - 1;\n x_step = -1;\n x_end = -1;\n y_start = header.height - 1;\n y_step = -1;\n y_end = -1;\n break;\n }\n // Load the specify method\n const func = \"_getImageData\" + (use_grey ? \"Grey\" : \"\") + header.pixel_size + \"bits\";\n const imageData = TGATools[func](header, palettes, pixel_data, y_start, y_step, y_end, x_start, x_step, x_end);\n const engine = texture.getEngine();\n engine._uploadDataToTextureDirectly(texture, imageData);\n}\n/**\n * @internal\n */\nfunction _getImageData8bits(header, palettes, pixel_data, y_start, y_step, y_end, x_start, x_step, x_end) {\n const image = pixel_data, colormap = palettes;\n const width = header.width, height = header.height;\n let color, i = 0, x, y;\n const imageData = new Uint8Array(width * height * 4);\n for (y = y_start; y !== y_end; y += y_step) {\n for (x = x_start; x !== x_end; x += x_step, i++) {\n color = image[i];\n imageData[(x + width * y) * 4 + 3] = 255;\n imageData[(x + width * y) * 4 + 2] = colormap[color * 3 + 0];\n imageData[(x + width * y) * 4 + 1] = colormap[color * 3 + 1];\n imageData[(x + width * y) * 4 + 0] = colormap[color * 3 + 2];\n }\n }\n return imageData;\n}\n/**\n * @internal\n */\nfunction _getImageData16bits(header, palettes, pixel_data, y_start, y_step, y_end, x_start, x_step, x_end) {\n const image = pixel_data;\n const width = header.width, height = header.height;\n let color, i = 0, x, y;\n const imageData = new Uint8Array(width * height * 4);\n for (y = y_start; y !== y_end; y += y_step) {\n for (x = x_start; x !== x_end; x += x_step, i += 2) {\n color = image[i + 0] + (image[i + 1] << 8); // Inversed ?\n const r = ((((color & 0x7c00) >> 10) * 255) / 0x1f) | 0;\n const g = ((((color & 0x03e0) >> 5) * 255) / 0x1f) | 0;\n const b = (((color & 0x001f) * 255) / 0x1f) | 0;\n imageData[(x + width * y) * 4 + 0] = r;\n imageData[(x + width * y) * 4 + 1] = g;\n imageData[(x + width * y) * 4 + 2] = b;\n imageData[(x + width * y) * 4 + 3] = color & 0x8000 ? 0 : 255;\n }\n }\n return imageData;\n}\n/**\n * @internal\n */\nfunction _getImageData24bits(header, palettes, pixel_data, y_start, y_step, y_end, x_start, x_step, x_end) {\n const image = pixel_data;\n const width = header.width, height = header.height;\n let i = 0, x, y;\n const imageData = new Uint8Array(width * height * 4);\n for (y = y_start; y !== y_end; y += y_step) {\n for (x = x_start; x !== x_end; x += x_step, i += 3) {\n imageData[(x + width * y) * 4 + 3] = 255;\n imageData[(x + width * y) * 4 + 2] = image[i + 0];\n imageData[(x + width * y) * 4 + 1] = image[i + 1];\n imageData[(x + width * y) * 4 + 0] = image[i + 2];\n }\n }\n return imageData;\n}\n/**\n * @internal\n */\nfunction _getImageData32bits(header, palettes, pixel_data, y_start, y_step, y_end, x_start, x_step, x_end) {\n const image = pixel_data;\n const width = header.width, height = header.height;\n let i = 0, x, y;\n const imageData = new Uint8Array(width * height * 4);\n for (y = y_start; y !== y_end; y += y_step) {\n for (x = x_start; x !== x_end; x += x_step, i += 4) {\n imageData[(x + width * y) * 4 + 2] = image[i + 0];\n imageData[(x + width * y) * 4 + 1] = image[i + 1];\n imageData[(x + width * y) * 4 + 0] = image[i + 2];\n imageData[(x + width * y) * 4 + 3] = image[i + 3];\n }\n }\n return imageData;\n}\n/**\n * @internal\n */\nfunction _getImageDataGrey8bits(header, palettes, pixel_data, y_start, y_step, y_end, x_start, x_step, x_end) {\n const image = pixel_data;\n const width = header.width, height = header.height;\n let color, i = 0, x, y;\n const imageData = new Uint8Array(width * height * 4);\n for (y = y_start; y !== y_end; y += y_step) {\n for (x = x_start; x !== x_end; x += x_step, i++) {\n color = image[i];\n imageData[(x + width * y) * 4 + 0] = color;\n imageData[(x + width * y) * 4 + 1] = color;\n imageData[(x + width * y) * 4 + 2] = color;\n imageData[(x + width * y) * 4 + 3] = 255;\n }\n }\n return imageData;\n}\n/**\n * @internal\n */\nfunction _getImageDataGrey16bits(header, palettes, pixel_data, y_start, y_step, y_end, x_start, x_step, x_end) {\n const image = pixel_data;\n const width = header.width, height = header.height;\n let i = 0, x, y;\n const imageData = new Uint8Array(width * height * 4);\n for (y = y_start; y !== y_end; y += y_step) {\n for (x = x_start; x !== x_end; x += x_step, i += 2) {\n imageData[(x + width * y) * 4 + 0] = image[i + 0];\n imageData[(x + width * y) * 4 + 1] = image[i + 0];\n imageData[(x + width * y) * 4 + 2] = image[i + 0];\n imageData[(x + width * y) * 4 + 3] = image[i + 1];\n }\n }\n return imageData;\n}\n/**\n * Based on jsTGALoader - Javascript loader for TGA file\n * By Vincent Thibault\n * @see http://blog.robrowser.com/javascript-tga-loader.html\n */\nexport const TGATools = {\n /**\n * Gets the header of a TGA file\n * @param data defines the TGA data\n * @returns the header\n */\n GetTGAHeader,\n /**\n * Uploads TGA content to a Babylon Texture\n * @internal\n */\n UploadContent,\n /** @internal */\n _getImageData8bits,\n /** @internal */\n _getImageData16bits,\n /** @internal */\n _getImageData24bits,\n /** @internal */\n _getImageData32bits,\n /** @internal */\n _getImageDataGrey8bits,\n /** @internal */\n _getImageDataGrey16bits,\n};\n//# sourceMappingURL=tga.js.map","import { GetTGAHeader, UploadContent } from \"../../../Misc/tga\";\n/**\n * Implementation of the TGA Texture Loader.\n * @internal\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport class _TGATextureLoader {\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 */\n loadCubeData() {\n // eslint-disable-next-line no-throw-literal\n throw \".env not supported in Cube.\";\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 bytes = new Uint8Array(data.buffer, data.byteOffset, data.byteLength);\n const header = GetTGAHeader(bytes);\n callback(header.width, header.height, texture.generateMipMaps, false, () => {\n UploadContent(texture, bytes);\n });\n }\n}\n//# sourceMappingURL=tgaTextureLoader.js.map"],"names":["GetTGAHeader","data","offset","id_length","colormap_type","image_type","colormap_index","colormap_length","colormap_size","origin","width","height","pixel_size","flags","UploadContent","texture","length","Logger","Error","header","pixel_data","use_rle","use_pal","use_grey","pixel_total","palettes","x_start","y_start","x_step","y_step","y_end","x_end","subarray","c","count","i","Uint8Array","localOffset","pixels","set","func","imageData","TGATools","getEngine","_uploadDataToTextureDirectly","_getImageData8bits","image","colormap","color","x","y","_getImageData16bits","r","g","b","_getImageData24bits","_getImageData32bits","_getImageDataGrey8bits","_getImageDataGrey16bits","_TGATextureLoader","constructor","this","supportCascades","loadCubeData","loadData","callback","bytes","buffer","byteOffset","byteLength","generateMipMaps"],"mappings":"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"}