@babylonjs/viewer 7.30.1 → 7.31.0-alpha

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 (587) hide show
  1. package/assets/photoStudio.env +0 -0
  2. package/dist/babylon-viewer.esm.js +2 -0
  3. package/dist/babylon-viewer.esm.js.map +1 -0
  4. package/dist/babylon-viewer.esm.min.js +2 -0
  5. package/dist/babylon-viewer.esm.min.js.map +1 -0
  6. package/dist/chunks/EXT_lights_image_based-1Sn4IFKs.esm.min.js +2 -0
  7. package/dist/chunks/EXT_lights_image_based-1Sn4IFKs.esm.min.js.map +1 -0
  8. package/dist/chunks/EXT_lights_image_based-D3t-ue9C.esm.js +172 -0
  9. package/dist/chunks/EXT_lights_image_based-D3t-ue9C.esm.js.map +1 -0
  10. package/dist/chunks/EXT_mesh_gpu_instancing-CzXou_C5.esm.min.js +2 -0
  11. package/dist/chunks/EXT_mesh_gpu_instancing-CzXou_C5.esm.min.js.map +1 -0
  12. package/dist/chunks/EXT_mesh_gpu_instancing-DNqfkZKe.esm.js +86 -0
  13. package/dist/chunks/EXT_mesh_gpu_instancing-DNqfkZKe.esm.js.map +1 -0
  14. package/dist/chunks/EXT_meshopt_compression-BFcdcCqV.esm.js +134 -0
  15. package/dist/chunks/EXT_meshopt_compression-BFcdcCqV.esm.js.map +1 -0
  16. package/dist/chunks/EXT_meshopt_compression-ypfe6hxf.esm.min.js +2 -0
  17. package/dist/chunks/EXT_meshopt_compression-ypfe6hxf.esm.min.js.map +1 -0
  18. package/dist/chunks/EXT_texture_avif-BY8qfvRI.esm.min.js +2 -0
  19. package/dist/chunks/EXT_texture_avif-BY8qfvRI.esm.min.js.map +1 -0
  20. package/dist/chunks/EXT_texture_avif-Rv3zIg4n.esm.js +44 -0
  21. package/dist/chunks/EXT_texture_avif-Rv3zIg4n.esm.js.map +1 -0
  22. package/dist/chunks/EXT_texture_webp-D2O_CsAp.esm.js +43 -0
  23. package/dist/chunks/EXT_texture_webp-D2O_CsAp.esm.js.map +1 -0
  24. package/dist/chunks/EXT_texture_webp-oE-jrE0E.esm.min.js +2 -0
  25. package/dist/chunks/EXT_texture_webp-oE-jrE0E.esm.min.js.map +1 -0
  26. package/dist/chunks/ExtrasAsMetadata-BhuY0e54.esm.js +64 -0
  27. package/dist/chunks/ExtrasAsMetadata-BhuY0e54.esm.js.map +1 -0
  28. package/dist/chunks/ExtrasAsMetadata-qFEtoYbf.esm.min.js +2 -0
  29. package/dist/chunks/ExtrasAsMetadata-qFEtoYbf.esm.min.js.map +1 -0
  30. package/dist/chunks/KHR_animation_pointer-Bj6qGv9V.esm.min.js +2 -0
  31. package/dist/chunks/KHR_animation_pointer-Bj6qGv9V.esm.min.js.map +1 -0
  32. package/dist/chunks/KHR_animation_pointer-e5LnBZe7.esm.js +343 -0
  33. package/dist/chunks/KHR_animation_pointer-e5LnBZe7.esm.js.map +1 -0
  34. package/dist/chunks/KHR_draco_mesh_compression-BnFvVWE1.esm.js +610 -0
  35. package/dist/chunks/KHR_draco_mesh_compression-BnFvVWE1.esm.js.map +1 -0
  36. package/dist/chunks/KHR_draco_mesh_compression-CVQu_5W6.esm.min.js +2 -0
  37. package/dist/chunks/KHR_draco_mesh_compression-CVQu_5W6.esm.min.js.map +1 -0
  38. package/dist/chunks/KHR_interactivity-D7Zg2GDq.esm.js +4033 -0
  39. package/dist/chunks/KHR_interactivity-D7Zg2GDq.esm.js.map +1 -0
  40. package/dist/chunks/KHR_interactivity-xGH2Adpb.esm.min.js +2 -0
  41. package/dist/chunks/KHR_interactivity-xGH2Adpb.esm.min.js.map +1 -0
  42. package/dist/chunks/KHR_lights_punctual-BBAuDZDL.esm.js +1253 -0
  43. package/dist/chunks/KHR_lights_punctual-BBAuDZDL.esm.js.map +1 -0
  44. package/dist/chunks/KHR_lights_punctual-By9M6UVy.esm.min.js +2 -0
  45. package/dist/chunks/KHR_lights_punctual-By9M6UVy.esm.min.js.map +1 -0
  46. package/dist/chunks/KHR_materials_anisotropy-Dkjoca14.esm.min.js +2 -0
  47. package/dist/chunks/KHR_materials_anisotropy-Dkjoca14.esm.min.js.map +1 -0
  48. package/dist/chunks/KHR_materials_anisotropy-qH3HobA9.esm.js +64 -0
  49. package/dist/chunks/KHR_materials_anisotropy-qH3HobA9.esm.js.map +1 -0
  50. package/dist/chunks/KHR_materials_clearcoat-DAuJsTVp.esm.min.js +2 -0
  51. package/dist/chunks/KHR_materials_clearcoat-DAuJsTVp.esm.min.js.map +1 -0
  52. package/dist/chunks/KHR_materials_clearcoat-Rh6mwG6v.esm.js +96 -0
  53. package/dist/chunks/KHR_materials_clearcoat-Rh6mwG6v.esm.js.map +1 -0
  54. package/dist/chunks/KHR_materials_diffuse_transmission-CaxPwhcF.esm.min.js +2 -0
  55. package/dist/chunks/KHR_materials_diffuse_transmission-CaxPwhcF.esm.min.js.map +1 -0
  56. package/dist/chunks/KHR_materials_diffuse_transmission-jR3LYlsn.esm.js +97 -0
  57. package/dist/chunks/KHR_materials_diffuse_transmission-jR3LYlsn.esm.js.map +1 -0
  58. package/dist/chunks/KHR_materials_dispersion-BRhiELQt.esm.js +62 -0
  59. package/dist/chunks/KHR_materials_dispersion-BRhiELQt.esm.js.map +1 -0
  60. package/dist/chunks/KHR_materials_dispersion-c6lYSa9v.esm.min.js +2 -0
  61. package/dist/chunks/KHR_materials_dispersion-c6lYSa9v.esm.min.js.map +1 -0
  62. package/dist/chunks/KHR_materials_emissive_strength-C4KADmHK.esm.min.js +2 -0
  63. package/dist/chunks/KHR_materials_emissive_strength-C4KADmHK.esm.min.js.map +1 -0
  64. package/dist/chunks/KHR_materials_emissive_strength-COLYrrO0.esm.js +55 -0
  65. package/dist/chunks/KHR_materials_emissive_strength-COLYrrO0.esm.js.map +1 -0
  66. package/dist/chunks/KHR_materials_ior-9bOEUBVJ.esm.min.js +2 -0
  67. package/dist/chunks/KHR_materials_ior-9bOEUBVJ.esm.min.js.map +1 -0
  68. package/dist/chunks/KHR_materials_ior-CfRDQILO.esm.js +64 -0
  69. package/dist/chunks/KHR_materials_ior-CfRDQILO.esm.js.map +1 -0
  70. package/dist/chunks/KHR_materials_iridescence-BK4vIyb6.esm.js +72 -0
  71. package/dist/chunks/KHR_materials_iridescence-BK4vIyb6.esm.js.map +1 -0
  72. package/dist/chunks/KHR_materials_iridescence-DMeUVUvt.esm.min.js +2 -0
  73. package/dist/chunks/KHR_materials_iridescence-DMeUVUvt.esm.min.js.map +1 -0
  74. package/dist/chunks/KHR_materials_pbrSpecularGlossiness-CWS40ry_.esm.min.js +2 -0
  75. package/dist/chunks/KHR_materials_pbrSpecularGlossiness-CWS40ry_.esm.min.js.map +1 -0
  76. package/dist/chunks/KHR_materials_pbrSpecularGlossiness-cT4jFxi_.esm.js +81 -0
  77. package/dist/chunks/KHR_materials_pbrSpecularGlossiness-cT4jFxi_.esm.js.map +1 -0
  78. package/dist/chunks/KHR_materials_sheen-BsgoALiy.esm.min.js +2 -0
  79. package/dist/chunks/KHR_materials_sheen-BsgoALiy.esm.min.js.map +1 -0
  80. package/dist/chunks/KHR_materials_sheen-CvenDbqD.esm.js +85 -0
  81. package/dist/chunks/KHR_materials_sheen-CvenDbqD.esm.js.map +1 -0
  82. package/dist/chunks/KHR_materials_specular-BeN-G9hP.esm.js +75 -0
  83. package/dist/chunks/KHR_materials_specular-BeN-G9hP.esm.js.map +1 -0
  84. package/dist/chunks/KHR_materials_specular-Czv7IKcP.esm.min.js +2 -0
  85. package/dist/chunks/KHR_materials_specular-Czv7IKcP.esm.min.js.map +1 -0
  86. package/dist/chunks/KHR_materials_transmission-Bak4NBR7.esm.min.js +2 -0
  87. package/dist/chunks/KHR_materials_transmission-Bak4NBR7.esm.min.js.map +1 -0
  88. package/dist/chunks/KHR_materials_transmission-heOgvXed.esm.js +307 -0
  89. package/dist/chunks/KHR_materials_transmission-heOgvXed.esm.js.map +1 -0
  90. package/dist/chunks/KHR_materials_unlit-IBVAhMFj.esm.min.js +2 -0
  91. package/dist/chunks/KHR_materials_unlit-IBVAhMFj.esm.min.js.map +1 -0
  92. package/dist/chunks/KHR_materials_unlit-wxh2_v42.esm.js +74 -0
  93. package/dist/chunks/KHR_materials_unlit-wxh2_v42.esm.js.map +1 -0
  94. package/dist/chunks/KHR_materials_variants-BsiSr1O-.esm.js +238 -0
  95. package/dist/chunks/KHR_materials_variants-BsiSr1O-.esm.js.map +1 -0
  96. package/dist/chunks/KHR_materials_variants-Dj5fUGRW.esm.min.js +2 -0
  97. package/dist/chunks/KHR_materials_variants-Dj5fUGRW.esm.min.js.map +1 -0
  98. package/dist/chunks/KHR_materials_volume-CZH9egfT.esm.js +87 -0
  99. package/dist/chunks/KHR_materials_volume-CZH9egfT.esm.js.map +1 -0
  100. package/dist/chunks/KHR_materials_volume-DfCuukn0.esm.min.js +2 -0
  101. package/dist/chunks/KHR_materials_volume-DfCuukn0.esm.min.js.map +1 -0
  102. package/dist/chunks/KHR_mesh_quantization-BIobOHHb.esm.min.js +2 -0
  103. package/dist/chunks/KHR_mesh_quantization-BIobOHHb.esm.min.js.map +1 -0
  104. package/dist/chunks/KHR_mesh_quantization-QON7M_53.esm.js +26 -0
  105. package/dist/chunks/KHR_mesh_quantization-QON7M_53.esm.js.map +1 -0
  106. package/dist/chunks/KHR_texture_basisu-BoG2JtnT.esm.js +43 -0
  107. package/dist/chunks/KHR_texture_basisu-BoG2JtnT.esm.js.map +1 -0
  108. package/dist/chunks/KHR_texture_basisu-CzUzxtEH.esm.min.js +2 -0
  109. package/dist/chunks/KHR_texture_basisu-CzUzxtEH.esm.min.js.map +1 -0
  110. package/dist/chunks/KHR_texture_transform-B3PKgt19.esm.min.js +2 -0
  111. package/dist/chunks/KHR_texture_transform-B3PKgt19.esm.min.js.map +1 -0
  112. package/dist/chunks/KHR_texture_transform-Da8RjC5v.esm.js +63 -0
  113. package/dist/chunks/KHR_texture_transform-Da8RjC5v.esm.js.map +1 -0
  114. package/dist/chunks/KHR_xmp_json_ld-BXaa7VXe.esm.js +51 -0
  115. package/dist/chunks/KHR_xmp_json_ld-BXaa7VXe.esm.js.map +1 -0
  116. package/dist/chunks/KHR_xmp_json_ld-HVJ543WV.esm.min.js +2 -0
  117. package/dist/chunks/KHR_xmp_json_ld-HVJ543WV.esm.min.js.map +1 -0
  118. package/dist/chunks/MSFT_audio_emitter-BYUSVj_s.esm.js +2207 -0
  119. package/dist/chunks/MSFT_audio_emitter-BYUSVj_s.esm.js.map +1 -0
  120. package/dist/chunks/MSFT_audio_emitter-Bf4t92OW.esm.min.js +2 -0
  121. package/dist/chunks/MSFT_audio_emitter-Bf4t92OW.esm.min.js.map +1 -0
  122. package/dist/chunks/MSFT_lod-BTk5ksDE.esm.min.js +2 -0
  123. package/dist/chunks/MSFT_lod-BTk5ksDE.esm.min.js.map +1 -0
  124. package/dist/chunks/MSFT_lod-D5456UFP.esm.js +337 -0
  125. package/dist/chunks/MSFT_lod-D5456UFP.esm.js.map +1 -0
  126. package/dist/chunks/MSFT_minecraftMesh-CCs8f9du.esm.js +46 -0
  127. package/dist/chunks/MSFT_minecraftMesh-CCs8f9du.esm.js.map +1 -0
  128. package/dist/chunks/MSFT_minecraftMesh-CgKnODjc.esm.min.js +2 -0
  129. package/dist/chunks/MSFT_minecraftMesh-CgKnODjc.esm.min.js.map +1 -0
  130. package/dist/chunks/MSFT_sRGBFactors-BNCv6Gre.esm.min.js +2 -0
  131. package/dist/chunks/MSFT_sRGBFactors-BNCv6Gre.esm.min.js.map +1 -0
  132. package/dist/chunks/MSFT_sRGBFactors-C3nCz417.esm.js +47 -0
  133. package/dist/chunks/MSFT_sRGBFactors-C3nCz417.esm.js.map +1 -0
  134. package/dist/chunks/animationGroup-B_FlMnip.esm.js +2479 -0
  135. package/dist/chunks/animationGroup-B_FlMnip.esm.js.map +1 -0
  136. package/dist/chunks/animationGroup-U_g242TE.esm.min.js +2 -0
  137. package/dist/chunks/animationGroup-U_g242TE.esm.min.js.map +1 -0
  138. package/dist/chunks/assetContainer-DJXgbG9e.esm.min.js +2 -0
  139. package/dist/chunks/assetContainer-DJXgbG9e.esm.min.js.map +1 -0
  140. package/dist/chunks/assetContainer-shLWEkis.esm.js +1720 -0
  141. package/dist/chunks/assetContainer-shLWEkis.esm.js.map +1 -0
  142. package/dist/chunks/audioEngine-BdqCvyFS.esm.min.js +2 -0
  143. package/dist/chunks/audioEngine-BdqCvyFS.esm.min.js.map +1 -0
  144. package/dist/chunks/audioEngine-CSl97t3Y.esm.js +305 -0
  145. package/dist/chunks/audioEngine-CSl97t3Y.esm.js.map +1 -0
  146. package/dist/chunks/bakedVertexAnimation-C225r8bl.esm.min.js +2 -0
  147. package/dist/chunks/bakedVertexAnimation-C225r8bl.esm.min.js.map +1 -0
  148. package/dist/chunks/bakedVertexAnimation-Dne6l1Oz.esm.js +119 -0
  149. package/dist/chunks/bakedVertexAnimation-Dne6l1Oz.esm.js.map +1 -0
  150. package/dist/chunks/basisTextureLoader-BfheE-xD.esm.min.js +2 -0
  151. package/dist/chunks/basisTextureLoader-BfheE-xD.esm.min.js.map +1 -0
  152. package/dist/chunks/basisTextureLoader-VQfGwMJX.esm.js +600 -0
  153. package/dist/chunks/basisTextureLoader-VQfGwMJX.esm.js.map +1 -0
  154. package/dist/chunks/dds-CPxH79qD.esm.min.js +2 -0
  155. package/dist/chunks/dds-CPxH79qD.esm.min.js.map +1 -0
  156. package/dist/chunks/dds-jupK5Xca.esm.js +540 -0
  157. package/dist/chunks/dds-jupK5Xca.esm.js.map +1 -0
  158. package/dist/chunks/ddsTextureLoader-CWwCoP7e.esm.js +88 -0
  159. package/dist/chunks/ddsTextureLoader-CWwCoP7e.esm.js.map +1 -0
  160. package/dist/chunks/ddsTextureLoader-ee9z1K7d.esm.min.js +2 -0
  161. package/dist/chunks/ddsTextureLoader-ee9z1K7d.esm.min.js.map +1 -0
  162. package/dist/chunks/decalFragment-Bgt_beL3.esm.min.js +2 -0
  163. package/dist/chunks/decalFragment-Bgt_beL3.esm.min.js.map +1 -0
  164. package/dist/chunks/decalFragment-U3dusC_b.esm.js +18 -0
  165. package/dist/chunks/decalFragment-U3dusC_b.esm.js.map +1 -0
  166. package/dist/chunks/default.fragment-755hWDS-.esm.min.js +2 -0
  167. package/dist/chunks/default.fragment-755hWDS-.esm.min.js.map +1 -0
  168. package/dist/chunks/default.fragment-D_6g-4FJ.esm.min.js +2 -0
  169. package/dist/chunks/default.fragment-D_6g-4FJ.esm.min.js.map +1 -0
  170. package/dist/chunks/default.fragment-gPrZWAN-.esm.js +515 -0
  171. package/dist/chunks/default.fragment-gPrZWAN-.esm.js.map +1 -0
  172. package/dist/chunks/default.fragment-nUN83GhL.esm.js +449 -0
  173. package/dist/chunks/default.fragment-nUN83GhL.esm.js.map +1 -0
  174. package/dist/chunks/default.vertex-DtF9_kYE.esm.min.js +2 -0
  175. package/dist/chunks/default.vertex-DtF9_kYE.esm.min.js.map +1 -0
  176. package/dist/chunks/default.vertex-DvTIJZKP.esm.min.js +2 -0
  177. package/dist/chunks/default.vertex-DvTIJZKP.esm.min.js.map +1 -0
  178. package/dist/chunks/default.vertex-F2GFvisP.esm.js +199 -0
  179. package/dist/chunks/default.vertex-F2GFvisP.esm.js.map +1 -0
  180. package/dist/chunks/default.vertex-OWU0h_CV.esm.js +180 -0
  181. package/dist/chunks/default.vertex-OWU0h_CV.esm.js.map +1 -0
  182. package/dist/chunks/defaultUboDeclaration-BaqLnFSv.esm.js +15 -0
  183. package/dist/chunks/defaultUboDeclaration-BaqLnFSv.esm.js.map +1 -0
  184. package/dist/chunks/defaultUboDeclaration-CUGFIA-Y.esm.min.js +2 -0
  185. package/dist/chunks/defaultUboDeclaration-CUGFIA-Y.esm.min.js.map +1 -0
  186. package/dist/chunks/defaultUboDeclaration-DbiYbpus.esm.min.js +2 -0
  187. package/dist/chunks/defaultUboDeclaration-DbiYbpus.esm.min.js.map +1 -0
  188. package/dist/chunks/defaultUboDeclaration-DlF6YqnH.esm.js +13 -0
  189. package/dist/chunks/defaultUboDeclaration-DlF6YqnH.esm.js.map +1 -0
  190. package/dist/chunks/drawWrapper.functions-CKg3_9x4.esm.js +11 -0
  191. package/dist/chunks/drawWrapper.functions-CKg3_9x4.esm.js.map +1 -0
  192. package/dist/chunks/drawWrapper.functions-ng7lvueZ.esm.min.js +2 -0
  193. package/dist/chunks/drawWrapper.functions-ng7lvueZ.esm.min.js.map +1 -0
  194. package/dist/chunks/dumpTools-CC7eSIIa.esm.min.js +2 -0
  195. package/dist/chunks/dumpTools-CC7eSIIa.esm.min.js.map +1 -0
  196. package/dist/chunks/dumpTools-CP5neapl.esm.js +402 -0
  197. package/dist/chunks/dumpTools-CP5neapl.esm.js.map +1 -0
  198. package/dist/chunks/engine-CXvt3UCI.esm.min.js +2 -0
  199. package/dist/chunks/engine-CXvt3UCI.esm.min.js.map +1 -0
  200. package/dist/chunks/engine-trgW7_81.esm.js +2174 -0
  201. package/dist/chunks/engine-trgW7_81.esm.js.map +1 -0
  202. package/dist/chunks/engine.common-BPl1llb8.esm.min.js +2 -0
  203. package/dist/chunks/engine.common-BPl1llb8.esm.min.js.map +1 -0
  204. package/dist/chunks/engine.common-GP9nuuba.esm.js +1088 -0
  205. package/dist/chunks/engine.common-GP9nuuba.esm.js.map +1 -0
  206. package/dist/chunks/envTextureLoader-1bAO1Mm5.esm.js +65 -0
  207. package/dist/chunks/envTextureLoader-1bAO1Mm5.esm.js.map +1 -0
  208. package/dist/chunks/envTextureLoader-ClAG0fvY.esm.min.js +2 -0
  209. package/dist/chunks/envTextureLoader-ClAG0fvY.esm.min.js.map +1 -0
  210. package/dist/chunks/environmentTextureTools-DObcbjyn.esm.js +382 -0
  211. package/dist/chunks/environmentTextureTools-DObcbjyn.esm.js.map +1 -0
  212. package/dist/chunks/environmentTextureTools-DSF9-gKd.esm.min.js +2 -0
  213. package/dist/chunks/environmentTextureTools-DSF9-gKd.esm.min.js.map +1 -0
  214. package/dist/chunks/exrTextureLoader-KLC0QCGj.esm.min.js +2 -0
  215. package/dist/chunks/exrTextureLoader-KLC0QCGj.esm.min.js.map +1 -0
  216. package/dist/chunks/exrTextureLoader-b9G_ErfI.esm.js +1682 -0
  217. package/dist/chunks/exrTextureLoader-b9G_ErfI.esm.js.map +1 -0
  218. package/dist/chunks/fogFragment-Cr8RDhS8.esm.min.js +2 -0
  219. package/dist/chunks/fogFragment-Cr8RDhS8.esm.min.js.map +1 -0
  220. package/dist/chunks/fogFragment-CxJJx6zN.esm.js +102 -0
  221. package/dist/chunks/fogFragment-CxJJx6zN.esm.js.map +1 -0
  222. package/dist/chunks/fresnelFunction-BbOBXKTe.esm.min.js +2 -0
  223. package/dist/chunks/fresnelFunction-BbOBXKTe.esm.min.js.map +1 -0
  224. package/dist/chunks/fresnelFunction-Cpph6xZu.esm.js +12 -0
  225. package/dist/chunks/fresnelFunction-Cpph6xZu.esm.js.map +1 -0
  226. package/dist/chunks/glTFLoader-BFTXjWeW.esm.js +7577 -0
  227. package/dist/chunks/glTFLoader-BFTXjWeW.esm.js.map +1 -0
  228. package/dist/chunks/glTFLoader-C1FQTJvU.esm.min.js +2 -0
  229. package/dist/chunks/glTFLoader-C1FQTJvU.esm.min.js.map +1 -0
  230. package/dist/chunks/glTFLoaderAnimation-BCVHkNQT.esm.js +77 -0
  231. package/dist/chunks/glTFLoaderAnimation-BCVHkNQT.esm.js.map +1 -0
  232. package/dist/chunks/glTFLoaderAnimation-ncwBNhw0.esm.min.js +2 -0
  233. package/dist/chunks/glTFLoaderAnimation-ncwBNhw0.esm.min.js.map +1 -0
  234. package/dist/chunks/gltfPathToObjectConverter-Dyt_Y9jE.esm.min.js +2 -0
  235. package/dist/chunks/gltfPathToObjectConverter-Dyt_Y9jE.esm.min.js.map +1 -0
  236. package/dist/chunks/gltfPathToObjectConverter-GcUmfOyo.esm.js +67 -0
  237. package/dist/chunks/gltfPathToObjectConverter-GcUmfOyo.esm.js.map +1 -0
  238. package/dist/chunks/harmonicsFunctions-66G9hOzR.esm.js +35 -0
  239. package/dist/chunks/harmonicsFunctions-66G9hOzR.esm.js.map +1 -0
  240. package/dist/chunks/harmonicsFunctions-Bvt11NHS.esm.js +34 -0
  241. package/dist/chunks/harmonicsFunctions-Bvt11NHS.esm.js.map +1 -0
  242. package/dist/chunks/harmonicsFunctions-D0Re3qr9.esm.min.js +2 -0
  243. package/dist/chunks/harmonicsFunctions-D0Re3qr9.esm.min.js.map +1 -0
  244. package/dist/chunks/harmonicsFunctions-D9bArd30.esm.min.js +2 -0
  245. package/dist/chunks/harmonicsFunctions-D9bArd30.esm.min.js.map +1 -0
  246. package/dist/chunks/hdrTextureLoader-BMnKRS4K.esm.min.js +2 -0
  247. package/dist/chunks/hdrTextureLoader-BMnKRS4K.esm.min.js.map +1 -0
  248. package/dist/chunks/hdrTextureLoader-ETVy5rPX.esm.js +252 -0
  249. package/dist/chunks/hdrTextureLoader-ETVy5rPX.esm.js.map +1 -0
  250. package/dist/chunks/helperFunctions-1Uut4KQI.esm.js +108 -0
  251. package/dist/chunks/helperFunctions-1Uut4KQI.esm.js.map +1 -0
  252. package/dist/chunks/helperFunctions-1x6PNrxE.esm.min.js +2 -0
  253. package/dist/chunks/helperFunctions-1x6PNrxE.esm.min.js.map +1 -0
  254. package/dist/chunks/helperFunctions-CJjw4iZI.esm.js +80 -0
  255. package/dist/chunks/helperFunctions-CJjw4iZI.esm.js.map +1 -0
  256. package/dist/chunks/helperFunctions-J9m3fJc_.esm.min.js +2 -0
  257. package/dist/chunks/helperFunctions-J9m3fJc_.esm.min.js.map +1 -0
  258. package/dist/chunks/index-Cb7zGjYe.esm.js +72045 -0
  259. package/dist/chunks/index-Cb7zGjYe.esm.js.map +1 -0
  260. package/dist/chunks/index-CkOp_ioW.esm.min.js +57 -0
  261. package/dist/chunks/index-CkOp_ioW.esm.min.js.map +1 -0
  262. package/dist/chunks/ktxTextureLoader-C4PPft8N.esm.min.js +2 -0
  263. package/dist/chunks/ktxTextureLoader-C4PPft8N.esm.min.js.map +1 -0
  264. package/dist/chunks/ktxTextureLoader-DLZDXIUP.esm.js +814 -0
  265. package/dist/chunks/ktxTextureLoader-DLZDXIUP.esm.js.map +1 -0
  266. package/dist/chunks/logDepthDeclaration-BOGD7tpa.esm.min.js +2 -0
  267. package/dist/chunks/logDepthDeclaration-BOGD7tpa.esm.min.js.map +1 -0
  268. package/dist/chunks/logDepthDeclaration-BRSEcIOm.esm.min.js +2 -0
  269. package/dist/chunks/logDepthDeclaration-BRSEcIOm.esm.min.js.map +1 -0
  270. package/dist/chunks/logDepthDeclaration-Bix7HqfF.esm.js +20 -0
  271. package/dist/chunks/logDepthDeclaration-Bix7HqfF.esm.js.map +1 -0
  272. package/dist/chunks/logDepthDeclaration-CvnYdiLu.esm.js +35 -0
  273. package/dist/chunks/logDepthDeclaration-CvnYdiLu.esm.js.map +1 -0
  274. package/dist/chunks/logDepthVertex-CwCjtdqq.esm.min.js +2 -0
  275. package/dist/chunks/logDepthVertex-CwCjtdqq.esm.min.js.map +1 -0
  276. package/dist/chunks/logDepthVertex-Nm8V7C0Z.esm.min.js +2 -0
  277. package/dist/chunks/logDepthVertex-Nm8V7C0Z.esm.min.js.map +1 -0
  278. package/dist/chunks/logDepthVertex-_i7_lZHr.esm.js +77 -0
  279. package/dist/chunks/logDepthVertex-_i7_lZHr.esm.js.map +1 -0
  280. package/dist/chunks/logDepthVertex-eenp9mns.esm.js +488 -0
  281. package/dist/chunks/logDepthVertex-eenp9mns.esm.js.map +1 -0
  282. package/dist/chunks/mainUVVaryingDeclaration-HzWn5jph.esm.js +11 -0
  283. package/dist/chunks/mainUVVaryingDeclaration-HzWn5jph.esm.js.map +1 -0
  284. package/dist/chunks/mainUVVaryingDeclaration-lsGkWAON.esm.min.js +2 -0
  285. package/dist/chunks/mainUVVaryingDeclaration-lsGkWAON.esm.min.js.map +1 -0
  286. package/dist/chunks/meshUboDeclaration-BmNS2VSX.esm.min.js +2 -0
  287. package/dist/chunks/meshUboDeclaration-BmNS2VSX.esm.min.js.map +1 -0
  288. package/dist/chunks/meshUboDeclaration-CEgHTdJe.esm.js +24 -0
  289. package/dist/chunks/meshUboDeclaration-CEgHTdJe.esm.js.map +1 -0
  290. package/dist/chunks/objFileLoader-8bz2-Jb0.esm.min.js +2 -0
  291. package/dist/chunks/objFileLoader-8bz2-Jb0.esm.min.js.map +1 -0
  292. package/dist/chunks/objFileLoader-BDQi-zCy.esm.js +1338 -0
  293. package/dist/chunks/objFileLoader-BDQi-zCy.esm.js.map +1 -0
  294. package/dist/chunks/oitFragment-Be6X-0NA.esm.js +1150 -0
  295. package/dist/chunks/oitFragment-Be6X-0NA.esm.js.map +1 -0
  296. package/dist/chunks/oitFragment-DWdtkgKQ.esm.min.js +2 -0
  297. package/dist/chunks/oitFragment-DWdtkgKQ.esm.min.js.map +1 -0
  298. package/dist/chunks/oitFragment-o6GCGw0X.esm.min.js +2 -0
  299. package/dist/chunks/oitFragment-o6GCGw0X.esm.min.js.map +1 -0
  300. package/dist/chunks/oitFragment-x42vz6VK.esm.js +1210 -0
  301. package/dist/chunks/oitFragment-x42vz6VK.esm.js.map +1 -0
  302. package/dist/chunks/pass.fragment-CMPjD56P.esm.js +15 -0
  303. package/dist/chunks/pass.fragment-CMPjD56P.esm.js.map +1 -0
  304. package/dist/chunks/pass.fragment-DeE_D_Ho.esm.min.js +2 -0
  305. package/dist/chunks/pass.fragment-DeE_D_Ho.esm.min.js.map +1 -0
  306. package/dist/chunks/pass.fragment-XFaFDzze.esm.min.js +2 -0
  307. package/dist/chunks/pass.fragment-XFaFDzze.esm.min.js.map +1 -0
  308. package/dist/chunks/pass.fragment-sInzyG4C.esm.js +15 -0
  309. package/dist/chunks/pass.fragment-sInzyG4C.esm.js.map +1 -0
  310. package/dist/chunks/pbr.fragment-B9NWhj7v.esm.min.js +2 -0
  311. package/dist/chunks/pbr.fragment-B9NWhj7v.esm.min.js.map +1 -0
  312. package/dist/chunks/pbr.fragment-BhRoKi7n.esm.min.js +2 -0
  313. package/dist/chunks/pbr.fragment-BhRoKi7n.esm.min.js.map +1 -0
  314. package/dist/chunks/pbr.fragment-CUczqvrb.esm.js +3219 -0
  315. package/dist/chunks/pbr.fragment-CUczqvrb.esm.js.map +1 -0
  316. package/dist/chunks/pbr.fragment-gKQNER09.esm.js +3165 -0
  317. package/dist/chunks/pbr.fragment-gKQNER09.esm.js.map +1 -0
  318. package/dist/chunks/pbr.vertex-C4dWKPQ3.esm.js +335 -0
  319. package/dist/chunks/pbr.vertex-C4dWKPQ3.esm.js.map +1 -0
  320. package/dist/chunks/pbr.vertex-CATY0wtz.esm.js +210 -0
  321. package/dist/chunks/pbr.vertex-CATY0wtz.esm.js.map +1 -0
  322. package/dist/chunks/pbr.vertex-CeQL7NsJ.esm.min.js +2 -0
  323. package/dist/chunks/pbr.vertex-CeQL7NsJ.esm.min.js.map +1 -0
  324. package/dist/chunks/pbr.vertex-D74kRBI7.esm.min.js +2 -0
  325. package/dist/chunks/pbr.vertex-D74kRBI7.esm.min.js.map +1 -0
  326. package/dist/chunks/postprocess.vertex-D9sxQJT6.esm.js +18 -0
  327. package/dist/chunks/postprocess.vertex-D9sxQJT6.esm.js.map +1 -0
  328. package/dist/chunks/postprocess.vertex-DdMLiNeD.esm.min.js +2 -0
  329. package/dist/chunks/postprocess.vertex-DdMLiNeD.esm.min.js.map +1 -0
  330. package/dist/chunks/postprocess.vertex-DdSrvJuP.esm.min.js +2 -0
  331. package/dist/chunks/postprocess.vertex-DdSrvJuP.esm.min.js.map +1 -0
  332. package/dist/chunks/postprocess.vertex-EjDuDs7l.esm.js +20 -0
  333. package/dist/chunks/postprocess.vertex-EjDuDs7l.esm.js.map +1 -0
  334. package/dist/chunks/rawTexture-Bo4-e4rx.esm.js +191 -0
  335. package/dist/chunks/rawTexture-Bo4-e4rx.esm.js.map +1 -0
  336. package/dist/chunks/rawTexture-WJAHgyBM.esm.min.js +2 -0
  337. package/dist/chunks/rawTexture-WJAHgyBM.esm.min.js.map +1 -0
  338. package/dist/chunks/rgbdDecode.fragment-BsO7SzGw.esm.js +17 -0
  339. package/dist/chunks/rgbdDecode.fragment-BsO7SzGw.esm.js.map +1 -0
  340. package/dist/chunks/rgbdDecode.fragment-CXGWY_Zq.esm.js +17 -0
  341. package/dist/chunks/rgbdDecode.fragment-CXGWY_Zq.esm.js.map +1 -0
  342. package/dist/chunks/rgbdDecode.fragment-DHrGqYGx.esm.min.js +2 -0
  343. package/dist/chunks/rgbdDecode.fragment-DHrGqYGx.esm.min.js.map +1 -0
  344. package/dist/chunks/rgbdDecode.fragment-M48plJKv.esm.min.js +2 -0
  345. package/dist/chunks/rgbdDecode.fragment-M48plJKv.esm.min.js.map +1 -0
  346. package/dist/chunks/rgbdEncode.fragment-72S9TLT4.esm.js +17 -0
  347. package/dist/chunks/rgbdEncode.fragment-72S9TLT4.esm.js.map +1 -0
  348. package/dist/chunks/rgbdEncode.fragment-BUON0ZNd.esm.min.js +2 -0
  349. package/dist/chunks/rgbdEncode.fragment-BUON0ZNd.esm.min.js.map +1 -0
  350. package/dist/chunks/rgbdEncode.fragment-CNl9WQUM.esm.min.js +2 -0
  351. package/dist/chunks/rgbdEncode.fragment-CNl9WQUM.esm.min.js.map +1 -0
  352. package/dist/chunks/rgbdEncode.fragment-DtRf0vhW.esm.js +17 -0
  353. package/dist/chunks/rgbdEncode.fragment-DtRf0vhW.esm.js.map +1 -0
  354. package/dist/chunks/splatFileLoader-1QbSvkNp.esm.min.js +2 -0
  355. package/dist/chunks/splatFileLoader-1QbSvkNp.esm.min.js.map +1 -0
  356. package/dist/chunks/splatFileLoader-BLSQsIhb.esm.js +3534 -0
  357. package/dist/chunks/splatFileLoader-BLSQsIhb.esm.js.map +1 -0
  358. package/dist/chunks/standardMaterial-4sW8n3MU.esm.min.js +2 -0
  359. package/dist/chunks/standardMaterial-4sW8n3MU.esm.min.js.map +1 -0
  360. package/dist/chunks/standardMaterial-BMVfbLzg.esm.js +1800 -0
  361. package/dist/chunks/standardMaterial-BMVfbLzg.esm.js.map +1 -0
  362. package/dist/chunks/stlFileLoader-BsbF7xOo.esm.js +238 -0
  363. package/dist/chunks/stlFileLoader-BsbF7xOo.esm.js.map +1 -0
  364. package/dist/chunks/stlFileLoader-CIEDAEkS.esm.min.js +2 -0
  365. package/dist/chunks/stlFileLoader-CIEDAEkS.esm.min.js.map +1 -0
  366. package/dist/chunks/tgaTextureLoader-BbTIdrAk.esm.min.js +2 -0
  367. package/dist/chunks/tgaTextureLoader-BbTIdrAk.esm.min.js.map +1 -0
  368. package/dist/chunks/tgaTextureLoader-Dzknjg7w.esm.js +349 -0
  369. package/dist/chunks/tgaTextureLoader-Dzknjg7w.esm.js.map +1 -0
  370. package/dist/chunks/thinEngine-D9PVgBpS.esm.min.js +2 -0
  371. package/dist/chunks/thinEngine-D9PVgBpS.esm.min.js.map +1 -0
  372. package/dist/chunks/thinEngine-DGKggD4b.esm.js +3721 -0
  373. package/dist/chunks/thinEngine-DGKggD4b.esm.js.map +1 -0
  374. package/dist/chunks/thinInstanceMesh-Cm7oVt83.esm.js +314 -0
  375. package/dist/chunks/thinInstanceMesh-Cm7oVt83.esm.js.map +1 -0
  376. package/dist/chunks/thinInstanceMesh-CpMngBy7.esm.min.js +2 -0
  377. package/dist/chunks/thinInstanceMesh-CpMngBy7.esm.min.js.map +1 -0
  378. package/dist/chunks/vertexColorMixing-DH0rI910.esm.min.js +2 -0
  379. package/dist/chunks/vertexColorMixing-DH0rI910.esm.min.js.map +1 -0
  380. package/dist/chunks/vertexColorMixing-U49ClqLL.esm.js +528 -0
  381. package/dist/chunks/vertexColorMixing-U49ClqLL.esm.js.map +1 -0
  382. package/dist/chunks/webgpuEngine-BL-YuOoY.esm.min.js +2 -0
  383. package/dist/chunks/webgpuEngine-BL-YuOoY.esm.min.js.map +1 -0
  384. package/dist/chunks/webgpuEngine-DPV5C2k5.esm.js +11191 -0
  385. package/dist/chunks/webgpuEngine-DPV5C2k5.esm.js.map +1 -0
  386. package/dist/chunks/workerPool-BUOov2K1.esm.js +122 -0
  387. package/dist/chunks/workerPool-BUOov2K1.esm.js.map +1 -0
  388. package/dist/chunks/workerPool-BWHiDmEZ.esm.min.js +2 -0
  389. package/dist/chunks/workerPool-BWHiDmEZ.esm.min.js.map +1 -0
  390. package/docs/ViewerDefault.jpg +0 -0
  391. package/docs/ViewerParts.jpg +0 -0
  392. package/docs/ViewerSlots.jpg +0 -0
  393. package/docs/ViewerStyled.jpg +0 -0
  394. package/lib/index.d.ts +325 -0
  395. package/lib/index.js +1116 -0
  396. package/lib/index.js.map +1 -0
  397. package/package.json +18 -27
  398. package/readme.md +145 -21
  399. package/configuration/configuration.d.ts +0 -107
  400. package/configuration/configuration.js +0 -16
  401. package/configuration/configuration.js.map +0 -1
  402. package/configuration/configurationCompatibility.d.ts +0 -8
  403. package/configuration/configurationCompatibility.js +0 -66
  404. package/configuration/configurationCompatibility.js.map +0 -1
  405. package/configuration/configurationContainer.d.ts +0 -10
  406. package/configuration/configurationContainer.js +0 -10
  407. package/configuration/configurationContainer.js.map +0 -1
  408. package/configuration/globals.d.ts +0 -6
  409. package/configuration/globals.js +0 -18
  410. package/configuration/globals.js.map +0 -1
  411. package/configuration/index.d.ts +0 -2
  412. package/configuration/index.js +0 -4
  413. package/configuration/index.js.map +0 -1
  414. package/configuration/interfaces/cameraConfiguration.d.ts +0 -31
  415. package/configuration/interfaces/cameraConfiguration.js +0 -2
  416. package/configuration/interfaces/cameraConfiguration.js.map +0 -1
  417. package/configuration/interfaces/colorGradingConfiguration.d.ts +0 -81
  418. package/configuration/interfaces/colorGradingConfiguration.js +0 -2
  419. package/configuration/interfaces/colorGradingConfiguration.js.map +0 -1
  420. package/configuration/interfaces/defaultRenderingPipelineConfiguration.d.ts +0 -20
  421. package/configuration/interfaces/defaultRenderingPipelineConfiguration.js +0 -2
  422. package/configuration/interfaces/defaultRenderingPipelineConfiguration.js.map +0 -1
  423. package/configuration/interfaces/environmentMapConfiguration.d.ts +0 -22
  424. package/configuration/interfaces/environmentMapConfiguration.js +0 -2
  425. package/configuration/interfaces/environmentMapConfiguration.js.map +0 -1
  426. package/configuration/interfaces/groundConfiguration.d.ts +0 -24
  427. package/configuration/interfaces/groundConfiguration.js +0 -2
  428. package/configuration/interfaces/groundConfiguration.js.map +0 -1
  429. package/configuration/interfaces/imageProcessingConfiguration.d.ts +0 -45
  430. package/configuration/interfaces/imageProcessingConfiguration.js +0 -2
  431. package/configuration/interfaces/imageProcessingConfiguration.js.map +0 -1
  432. package/configuration/interfaces/index.d.ts +0 -15
  433. package/configuration/interfaces/index.js +0 -16
  434. package/configuration/interfaces/index.js.map +0 -1
  435. package/configuration/interfaces/lightConfiguration.d.ts +0 -60
  436. package/configuration/interfaces/lightConfiguration.js +0 -2
  437. package/configuration/interfaces/lightConfiguration.js.map +0 -1
  438. package/configuration/interfaces/modelAnimationConfiguration.d.ts +0 -26
  439. package/configuration/interfaces/modelAnimationConfiguration.js +0 -2
  440. package/configuration/interfaces/modelAnimationConfiguration.js.map +0 -1
  441. package/configuration/interfaces/modelConfiguration.d.ts +0 -65
  442. package/configuration/interfaces/modelConfiguration.js +0 -2
  443. package/configuration/interfaces/modelConfiguration.js.map +0 -1
  444. package/configuration/interfaces/observersConfiguration.d.ts +0 -5
  445. package/configuration/interfaces/observersConfiguration.js +0 -2
  446. package/configuration/interfaces/observersConfiguration.js.map +0 -1
  447. package/configuration/interfaces/sceneConfiguration.d.ts +0 -48
  448. package/configuration/interfaces/sceneConfiguration.js +0 -2
  449. package/configuration/interfaces/sceneConfiguration.js.map +0 -1
  450. package/configuration/interfaces/sceneOptimizerConfiguration.d.ts +0 -23
  451. package/configuration/interfaces/sceneOptimizerConfiguration.js +0 -2
  452. package/configuration/interfaces/sceneOptimizerConfiguration.js.map +0 -1
  453. package/configuration/interfaces/skyboxConfiguration.d.ts +0 -21
  454. package/configuration/interfaces/skyboxConfiguration.js +0 -2
  455. package/configuration/interfaces/skyboxConfiguration.js.map +0 -1
  456. package/configuration/interfaces/templateConfiguration.d.ts +0 -67
  457. package/configuration/interfaces/templateConfiguration.js +0 -2
  458. package/configuration/interfaces/templateConfiguration.js.map +0 -1
  459. package/configuration/interfaces/vrConfiguration.d.ts +0 -16
  460. package/configuration/interfaces/vrConfiguration.js +0 -2
  461. package/configuration/interfaces/vrConfiguration.js.map +0 -1
  462. package/configuration/loader.d.ts +0 -4
  463. package/configuration/loader.js +0 -17
  464. package/configuration/loader.js.map +0 -1
  465. package/configuration/mappers.d.ts +0 -43
  466. package/configuration/mappers.js +0 -192
  467. package/configuration/mappers.js.map +0 -1
  468. package/configuration/renderOnlyLoader.d.ts +0 -33
  469. package/configuration/renderOnlyLoader.js +0 -162
  470. package/configuration/renderOnlyLoader.js.map +0 -1
  471. package/configuration/types/default.d.ts +0 -6
  472. package/configuration/types/default.js +0 -121
  473. package/configuration/types/default.js.map +0 -1
  474. package/configuration/types/environmentMap.d.ts +0 -5
  475. package/configuration/types/environmentMap.js +0 -14
  476. package/configuration/types/environmentMap.js.map +0 -1
  477. package/configuration/types/extended.d.ts +0 -6
  478. package/configuration/types/extended.js +0 -317
  479. package/configuration/types/extended.js.map +0 -1
  480. package/configuration/types/index.d.ts +0 -14
  481. package/configuration/types/index.js +0 -51
  482. package/configuration/types/index.js.map +0 -1
  483. package/configuration/types/minimal.d.ts +0 -6
  484. package/configuration/types/minimal.js +0 -43
  485. package/configuration/types/minimal.js.map +0 -1
  486. package/configuration/types/renderOnlyDefault.d.ts +0 -30
  487. package/configuration/types/renderOnlyDefault.js +0 -31
  488. package/configuration/types/renderOnlyDefault.js.map +0 -1
  489. package/configuration/types/shadowLight.d.ts +0 -9
  490. package/configuration/types/shadowLight.js +0 -64
  491. package/configuration/types/shadowLight.js.map +0 -1
  492. package/helper/index.d.ts +0 -29
  493. package/helper/index.js +0 -66
  494. package/helper/index.js.map +0 -1
  495. package/index.d.ts +0 -30
  496. package/index.js +0 -46
  497. package/index.js.map +0 -1
  498. package/initializer.d.ts +0 -11
  499. package/initializer.js +0 -35
  500. package/initializer.js.map +0 -1
  501. package/interfaces.d.ts +0 -5
  502. package/interfaces.js +0 -7
  503. package/interfaces.js.map +0 -1
  504. package/labs/environmentSerializer.d.ts +0 -126
  505. package/labs/environmentSerializer.js +0 -191
  506. package/labs/environmentSerializer.js.map +0 -1
  507. package/labs/texture.d.ts +0 -183
  508. package/labs/texture.js +0 -350
  509. package/labs/texture.js.map +0 -1
  510. package/labs/viewerLabs.d.ts +0 -51
  511. package/labs/viewerLabs.js +0 -134
  512. package/labs/viewerLabs.js.map +0 -1
  513. package/loader/modelLoader.d.ts +0 -56
  514. package/loader/modelLoader.js +0 -199
  515. package/loader/modelLoader.js.map +0 -1
  516. package/loader/plugins/applyMaterialConfig.d.ts +0 -12
  517. package/loader/plugins/applyMaterialConfig.js +0 -16
  518. package/loader/plugins/applyMaterialConfig.js.map +0 -1
  519. package/loader/plugins/extendedMaterialLoaderPlugin.d.ts +0 -9
  520. package/loader/plugins/extendedMaterialLoaderPlugin.js +0 -16
  521. package/loader/plugins/extendedMaterialLoaderPlugin.js.map +0 -1
  522. package/loader/plugins/index.d.ts +0 -19
  523. package/loader/plugins/index.js +0 -44
  524. package/loader/plugins/index.js.map +0 -1
  525. package/loader/plugins/loaderPlugin.d.ts +0 -24
  526. package/loader/plugins/loaderPlugin.js +0 -2
  527. package/loader/plugins/loaderPlugin.js.map +0 -1
  528. package/loader/plugins/msftLodLoaderPlugin.d.ts +0 -12
  529. package/loader/plugins/msftLodLoaderPlugin.js +0 -21
  530. package/loader/plugins/msftLodLoaderPlugin.js.map +0 -1
  531. package/loader/plugins/telemetryLoaderPlugin.d.ts +0 -12
  532. package/loader/plugins/telemetryLoaderPlugin.js +0 -36
  533. package/loader/plugins/telemetryLoaderPlugin.js.map +0 -1
  534. package/managers/observablesManager.d.ts +0 -66
  535. package/managers/observablesManager.js +0 -35
  536. package/managers/observablesManager.js.map +0 -1
  537. package/managers/sceneManager.d.ts +0 -245
  538. package/managers/sceneManager.js +0 -1375
  539. package/managers/sceneManager.js.map +0 -1
  540. package/managers/telemetryManager.d.ts +0 -78
  541. package/managers/telemetryManager.js +0 -117
  542. package/managers/telemetryManager.js.map +0 -1
  543. package/model/modelAnimation.d.ts +0 -215
  544. package/model/modelAnimation.js +0 -237
  545. package/model/modelAnimation.js.map +0 -1
  546. package/model/viewerModel.d.ts +0 -233
  547. package/model/viewerModel.js +0 -673
  548. package/model/viewerModel.js.map +0 -1
  549. package/optimizer/custom/extended.d.ts +0 -13
  550. package/optimizer/custom/extended.js +0 -101
  551. package/optimizer/custom/extended.js.map +0 -1
  552. package/optimizer/custom/index.d.ts +0 -9
  553. package/optimizer/custom/index.js +0 -26
  554. package/optimizer/custom/index.js.map +0 -1
  555. package/renderOnlyIndex.d.ts +0 -11
  556. package/renderOnlyIndex.js +0 -18
  557. package/renderOnlyIndex.js.map +0 -1
  558. package/templating/eventManager.d.ts +0 -35
  559. package/templating/eventManager.js +0 -66
  560. package/templating/eventManager.js.map +0 -1
  561. package/templating/plugins/hdButtonPlugin.d.ts +0 -9
  562. package/templating/plugins/hdButtonPlugin.js +0 -21
  563. package/templating/plugins/hdButtonPlugin.js.map +0 -1
  564. package/templating/plugins/printButton.d.ts +0 -9
  565. package/templating/plugins/printButton.js +0 -40
  566. package/templating/plugins/printButton.js.map +0 -1
  567. package/templating/templateManager.d.ts +0 -197
  568. package/templating/templateManager.js +0 -561
  569. package/templating/templateManager.js.map +0 -1
  570. package/templating/viewerTemplatePlugin.d.ts +0 -21
  571. package/templating/viewerTemplatePlugin.js +0 -69
  572. package/templating/viewerTemplatePlugin.js.map +0 -1
  573. package/viewer/defaultViewer.d.ts +0 -130
  574. package/viewer/defaultViewer.js +0 -672
  575. package/viewer/defaultViewer.js.map +0 -1
  576. package/viewer/renderOnlyViewer.d.ts +0 -9
  577. package/viewer/renderOnlyViewer.js +0 -46
  578. package/viewer/renderOnlyViewer.js.map +0 -1
  579. package/viewer/viewer.d.ts +0 -258
  580. package/viewer/viewer.js +0 -783
  581. package/viewer/viewer.js.map +0 -1
  582. package/viewer/viewerManager.d.ts +0 -58
  583. package/viewer/viewerManager.js +0 -91
  584. package/viewer/viewerManager.js.map +0 -1
  585. package/viewer/viewerWithTemplate.d.ts +0 -9
  586. package/viewer/viewerWithTemplate.js +0 -20
  587. package/viewer/viewerWithTemplate.js.map +0 -1
@@ -0,0 +1,305 @@
1
+ import { A as AbstractEngine, aN as Observable, n as IsWindowObjectExist, L as Logger } from './index-Cb7zGjYe.esm.js';
2
+
3
+ // Sets the default audio engine to Babylon.js
4
+ AbstractEngine.AudioEngineFactory = (hostElement, audioContext, audioDestination) => {
5
+ return new AudioEngine(hostElement, audioContext, audioDestination);
6
+ };
7
+ /**
8
+ * This represents the default audio engine used in babylon.
9
+ * It is responsible to play, synchronize and analyse sounds throughout the application.
10
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/audio/playingSoundsMusic
11
+ */
12
+ class AudioEngine {
13
+ /**
14
+ * Gets the current AudioContext if available.
15
+ */
16
+ get audioContext() {
17
+ if (!this._audioContextInitialized) {
18
+ this._initializeAudioContext();
19
+ }
20
+ return this._audioContext;
21
+ }
22
+ /**
23
+ * Instantiates a new audio engine.
24
+ *
25
+ * There should be only one per page as some browsers restrict the number
26
+ * of audio contexts you can create.
27
+ * @param hostElement defines the host element where to display the mute icon if necessary
28
+ * @param audioContext defines the audio context to be used by the audio engine
29
+ * @param audioDestination defines the audio destination node to be used by audio engine
30
+ */
31
+ constructor(hostElement = null, audioContext = null, audioDestination = null) {
32
+ this._audioContext = null;
33
+ this._audioContextInitialized = false;
34
+ this._muteButton = null;
35
+ this._audioDestination = null;
36
+ /**
37
+ * Gets whether the current host supports Web Audio and thus could create AudioContexts.
38
+ */
39
+ this.canUseWebAudio = false;
40
+ /**
41
+ * Defines if Babylon should emit a warning if WebAudio is not supported.
42
+ * @ignoreNaming
43
+ */
44
+ // eslint-disable-next-line @typescript-eslint/naming-convention
45
+ this.WarnedWebAudioUnsupported = false;
46
+ /**
47
+ * Gets whether or not mp3 are supported by your browser.
48
+ */
49
+ this.isMP3supported = false;
50
+ /**
51
+ * Gets whether or not ogg are supported by your browser.
52
+ */
53
+ this.isOGGsupported = false;
54
+ /**
55
+ * Gets whether audio has been unlocked on the device.
56
+ * Some Browsers have strong restrictions about Audio and won't autoplay unless
57
+ * a user interaction has happened.
58
+ */
59
+ this.unlocked = false;
60
+ /**
61
+ * Defines if the audio engine relies on a custom unlocked button.
62
+ * In this case, the embedded button will not be displayed.
63
+ */
64
+ this.useCustomUnlockedButton = false;
65
+ /**
66
+ * Event raised when audio has been unlocked on the browser.
67
+ */
68
+ this.onAudioUnlockedObservable = new Observable();
69
+ /**
70
+ * Event raised when audio has been locked on the browser.
71
+ */
72
+ this.onAudioLockedObservable = new Observable();
73
+ this._tryToRun = false;
74
+ this._onResize = () => {
75
+ this._moveButtonToTopLeft();
76
+ };
77
+ if (!IsWindowObjectExist()) {
78
+ return;
79
+ }
80
+ if (typeof window.AudioContext !== "undefined") {
81
+ this.canUseWebAudio = true;
82
+ }
83
+ const audioElem = document.createElement("audio");
84
+ this._hostElement = hostElement;
85
+ this._audioContext = audioContext;
86
+ this._audioDestination = audioDestination;
87
+ try {
88
+ if (audioElem &&
89
+ !!audioElem.canPlayType &&
90
+ (audioElem.canPlayType('audio/mpeg; codecs="mp3"').replace(/^no$/, "") || audioElem.canPlayType("audio/mp3").replace(/^no$/, ""))) {
91
+ this.isMP3supported = true;
92
+ }
93
+ }
94
+ catch (e) {
95
+ // protect error during capability check.
96
+ }
97
+ try {
98
+ if (audioElem && !!audioElem.canPlayType && audioElem.canPlayType('audio/ogg; codecs="vorbis"').replace(/^no$/, "")) {
99
+ this.isOGGsupported = true;
100
+ }
101
+ }
102
+ catch (e) {
103
+ // protect error during capability check.
104
+ }
105
+ }
106
+ /**
107
+ * Flags the audio engine in Locked state.
108
+ * This happens due to new browser policies preventing audio to autoplay.
109
+ */
110
+ lock() {
111
+ this._triggerSuspendedState();
112
+ }
113
+ /**
114
+ * Unlocks the audio engine once a user action has been done on the dom.
115
+ * This is helpful to resume play once browser policies have been satisfied.
116
+ */
117
+ unlock() {
118
+ if (this._audioContext?.state === "running") {
119
+ this._hideMuteButton();
120
+ if (!this.unlocked) {
121
+ // Notify users that the audio stack is unlocked/unmuted
122
+ this.unlocked = true;
123
+ this.onAudioUnlockedObservable.notifyObservers(this);
124
+ }
125
+ return;
126
+ }
127
+ // On iOS, if the audio context resume request was sent from an event other than a `click` event, then
128
+ // the resume promise will never resolve and the only way to get the audio context unstuck is to
129
+ // suspend it and make another resume request.
130
+ if (this._tryToRun) {
131
+ this._audioContext?.suspend().then(() => {
132
+ this._tryToRun = false;
133
+ this._triggerRunningState();
134
+ });
135
+ }
136
+ else {
137
+ this._triggerRunningState();
138
+ }
139
+ }
140
+ /** @internal */
141
+ _resumeAudioContextOnStateChange() {
142
+ this._audioContext?.addEventListener("statechange", () => {
143
+ if (this.unlocked && this._audioContext?.state !== "running") {
144
+ this._resumeAudioContext();
145
+ }
146
+ }, {
147
+ once: true,
148
+ passive: true,
149
+ signal: AbortSignal.timeout(3000),
150
+ });
151
+ }
152
+ _resumeAudioContext() {
153
+ if (this._audioContext?.resume) {
154
+ return this._audioContext.resume();
155
+ }
156
+ return Promise.resolve();
157
+ }
158
+ _initializeAudioContext() {
159
+ try {
160
+ if (this.canUseWebAudio) {
161
+ if (!this._audioContext) {
162
+ this._audioContext = new AudioContext();
163
+ }
164
+ // create a global volume gain node
165
+ this.masterGain = this._audioContext.createGain();
166
+ this.masterGain.gain.value = 1;
167
+ if (!this._audioDestination) {
168
+ this._audioDestination = this._audioContext.destination;
169
+ }
170
+ this.masterGain.connect(this._audioDestination);
171
+ this._audioContextInitialized = true;
172
+ if (this._audioContext.state === "running") {
173
+ // Do not wait for the promise to unlock.
174
+ this._triggerRunningState();
175
+ }
176
+ }
177
+ }
178
+ catch (e) {
179
+ this.canUseWebAudio = false;
180
+ Logger.Error("Web Audio: " + e.message);
181
+ }
182
+ }
183
+ _triggerRunningState() {
184
+ if (this._tryToRun) {
185
+ return;
186
+ }
187
+ this._tryToRun = true;
188
+ this._resumeAudioContext()
189
+ .then(() => {
190
+ this._tryToRun = false;
191
+ if (this._muteButton) {
192
+ this._hideMuteButton();
193
+ }
194
+ // Notify users that the audio stack is unlocked/unmuted
195
+ this.unlocked = true;
196
+ this.onAudioUnlockedObservable.notifyObservers(this);
197
+ })
198
+ .catch(() => {
199
+ this._tryToRun = false;
200
+ this.unlocked = false;
201
+ });
202
+ }
203
+ _triggerSuspendedState() {
204
+ this.unlocked = false;
205
+ this.onAudioLockedObservable.notifyObservers(this);
206
+ this._displayMuteButton();
207
+ }
208
+ _displayMuteButton() {
209
+ if (this.useCustomUnlockedButton || this._muteButton) {
210
+ return;
211
+ }
212
+ this._muteButton = document.createElement("BUTTON");
213
+ this._muteButton.className = "babylonUnmuteIcon";
214
+ this._muteButton.id = "babylonUnmuteIconBtn";
215
+ this._muteButton.title = "Unmute";
216
+ const imageUrl = !window.SVGSVGElement
217
+ ? "https://cdn.babylonjs.com/Assets/audio.png"
218
+ : "data:image/svg+xml;charset=UTF-8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2239%22%20height%3D%2232%22%20viewBox%3D%220%200%2039%2032%22%3E%3Cpath%20fill%3D%22white%22%20d%3D%22M9.625%2018.938l-0.031%200.016h-4.953q-0.016%200-0.031-0.016v-12.453q0-0.016%200.031-0.016h4.953q0.031%200%200.031%200.016v12.453zM12.125%207.688l8.719-8.703v27.453l-8.719-8.719-0.016-0.047v-9.938zM23.359%207.875l1.406-1.406%204.219%204.203%204.203-4.203%201.422%201.406-4.219%204.219%204.219%204.203-1.484%201.359-4.141-4.156-4.219%204.219-1.406-1.422%204.219-4.203z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E";
219
+ const css = ".babylonUnmuteIcon { position: absolute; left: 20px; top: 20px; height: 40px; width: 60px; background-color: rgba(51,51,51,0.7); background-image: url(" +
220
+ imageUrl +
221
+ "); background-size: 80%; background-repeat:no-repeat; background-position: center; background-position-y: 4px; border: none; outline: none; transition: transform 0.125s ease-out; cursor: pointer; z-index: 9999; } .babylonUnmuteIcon:hover { transform: scale(1.05) } .babylonUnmuteIcon:active { background-color: rgba(51,51,51,1) }";
222
+ const style = document.createElement("style");
223
+ style.appendChild(document.createTextNode(css));
224
+ document.getElementsByTagName("head")[0].appendChild(style);
225
+ document.body.appendChild(this._muteButton);
226
+ this._moveButtonToTopLeft();
227
+ this._muteButton.addEventListener("touchend", () => {
228
+ this._triggerRunningState();
229
+ }, true);
230
+ this._muteButton.addEventListener("click", () => {
231
+ this.unlock();
232
+ }, true);
233
+ window.addEventListener("resize", this._onResize);
234
+ }
235
+ _moveButtonToTopLeft() {
236
+ if (this._hostElement && this._muteButton) {
237
+ this._muteButton.style.top = this._hostElement.offsetTop + 20 + "px";
238
+ this._muteButton.style.left = this._hostElement.offsetLeft + 20 + "px";
239
+ }
240
+ }
241
+ _hideMuteButton() {
242
+ if (this._muteButton) {
243
+ document.body.removeChild(this._muteButton);
244
+ this._muteButton = null;
245
+ }
246
+ }
247
+ /**
248
+ * Destroy and release the resources associated with the audio context.
249
+ */
250
+ dispose() {
251
+ if (this.canUseWebAudio && this._audioContextInitialized) {
252
+ if (this._connectedAnalyser && this._audioContext) {
253
+ this._connectedAnalyser.stopDebugCanvas();
254
+ this._connectedAnalyser.dispose();
255
+ this.masterGain.disconnect();
256
+ this.masterGain.connect(this._audioContext.destination);
257
+ this._connectedAnalyser = null;
258
+ }
259
+ this.masterGain.gain.value = 1;
260
+ }
261
+ this.WarnedWebAudioUnsupported = false;
262
+ this._hideMuteButton();
263
+ window.removeEventListener("resize", this._onResize);
264
+ this.onAudioUnlockedObservable.clear();
265
+ this.onAudioLockedObservable.clear();
266
+ }
267
+ /**
268
+ * Gets the global volume sets on the master gain.
269
+ * @returns the global volume if set or -1 otherwise
270
+ */
271
+ getGlobalVolume() {
272
+ if (this.canUseWebAudio && this._audioContextInitialized) {
273
+ return this.masterGain.gain.value;
274
+ }
275
+ else {
276
+ return -1;
277
+ }
278
+ }
279
+ /**
280
+ * Sets the global volume of your experience (sets on the master gain).
281
+ * @param newVolume Defines the new global volume of the application
282
+ */
283
+ setGlobalVolume(newVolume) {
284
+ if (this.canUseWebAudio && this._audioContextInitialized) {
285
+ this.masterGain.gain.value = newVolume;
286
+ }
287
+ }
288
+ /**
289
+ * Connect the audio engine to an audio analyser allowing some amazing
290
+ * synchronization between the sounds/music and your visualization (VuMeter for instance).
291
+ * @see https://doc.babylonjs.com/features/featuresDeepDive/audio/playingSoundsMusic#using-the-analyser
292
+ * @param analyser The analyser to connect to the engine
293
+ */
294
+ connectToAnalyser(analyser) {
295
+ if (this._connectedAnalyser) {
296
+ this._connectedAnalyser.stopDebugCanvas();
297
+ }
298
+ if (this.canUseWebAudio && this._audioContextInitialized && this._audioContext) {
299
+ this._connectedAnalyser = analyser;
300
+ this.masterGain.disconnect();
301
+ this._connectedAnalyser.connectAudioNodes(this.masterGain, this._audioContext.destination);
302
+ }
303
+ }
304
+ }
305
+ //# sourceMappingURL=audioEngine-CSl97t3Y.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"audioEngine-CSl97t3Y.esm.js","sources":["../../../../../dev/core/dist/Audio/audioEngine.js"],"sourcesContent":["import { Observable } from \"../Misc/observable\";\nimport { Logger } from \"../Misc/logger\";\nimport { AbstractEngine } from \"../Engines/abstractEngine\";\nimport { IsWindowObjectExist } from \"../Misc/domManagement\";\n// Sets the default audio engine to Babylon.js\nAbstractEngine.AudioEngineFactory = (hostElement, audioContext, audioDestination) => {\n return new AudioEngine(hostElement, audioContext, audioDestination);\n};\n/**\n * This represents the default audio engine used in babylon.\n * It is responsible to play, synchronize and analyse sounds throughout the application.\n * @see https://doc.babylonjs.com/features/featuresDeepDive/audio/playingSoundsMusic\n */\nexport class AudioEngine {\n /**\n * Gets the current AudioContext if available.\n */\n get audioContext() {\n if (!this._audioContextInitialized) {\n this._initializeAudioContext();\n }\n return this._audioContext;\n }\n /**\n * Instantiates a new audio engine.\n *\n * There should be only one per page as some browsers restrict the number\n * of audio contexts you can create.\n * @param hostElement defines the host element where to display the mute icon if necessary\n * @param audioContext defines the audio context to be used by the audio engine\n * @param audioDestination defines the audio destination node to be used by audio engine\n */\n constructor(hostElement = null, audioContext = null, audioDestination = null) {\n this._audioContext = null;\n this._audioContextInitialized = false;\n this._muteButton = null;\n this._audioDestination = null;\n /**\n * Gets whether the current host supports Web Audio and thus could create AudioContexts.\n */\n this.canUseWebAudio = false;\n /**\n * Defines if Babylon should emit a warning if WebAudio is not supported.\n * @ignoreNaming\n */\n // eslint-disable-next-line @typescript-eslint/naming-convention\n this.WarnedWebAudioUnsupported = false;\n /**\n * Gets whether or not mp3 are supported by your browser.\n */\n this.isMP3supported = false;\n /**\n * Gets whether or not ogg are supported by your browser.\n */\n this.isOGGsupported = false;\n /**\n * Gets whether audio has been unlocked on the device.\n * Some Browsers have strong restrictions about Audio and won't autoplay unless\n * a user interaction has happened.\n */\n this.unlocked = false;\n /**\n * Defines if the audio engine relies on a custom unlocked button.\n * In this case, the embedded button will not be displayed.\n */\n this.useCustomUnlockedButton = false;\n /**\n * Event raised when audio has been unlocked on the browser.\n */\n this.onAudioUnlockedObservable = new Observable();\n /**\n * Event raised when audio has been locked on the browser.\n */\n this.onAudioLockedObservable = new Observable();\n this._tryToRun = false;\n this._onResize = () => {\n this._moveButtonToTopLeft();\n };\n if (!IsWindowObjectExist()) {\n return;\n }\n if (typeof window.AudioContext !== \"undefined\") {\n this.canUseWebAudio = true;\n }\n const audioElem = document.createElement(\"audio\");\n this._hostElement = hostElement;\n this._audioContext = audioContext;\n this._audioDestination = audioDestination;\n try {\n if (audioElem &&\n !!audioElem.canPlayType &&\n (audioElem.canPlayType('audio/mpeg; codecs=\"mp3\"').replace(/^no$/, \"\") || audioElem.canPlayType(\"audio/mp3\").replace(/^no$/, \"\"))) {\n this.isMP3supported = true;\n }\n }\n catch (e) {\n // protect error during capability check.\n }\n try {\n if (audioElem && !!audioElem.canPlayType && audioElem.canPlayType('audio/ogg; codecs=\"vorbis\"').replace(/^no$/, \"\")) {\n this.isOGGsupported = true;\n }\n }\n catch (e) {\n // protect error during capability check.\n }\n }\n /**\n * Flags the audio engine in Locked state.\n * This happens due to new browser policies preventing audio to autoplay.\n */\n lock() {\n this._triggerSuspendedState();\n }\n /**\n * Unlocks the audio engine once a user action has been done on the dom.\n * This is helpful to resume play once browser policies have been satisfied.\n */\n unlock() {\n if (this._audioContext?.state === \"running\") {\n this._hideMuteButton();\n if (!this.unlocked) {\n // Notify users that the audio stack is unlocked/unmuted\n this.unlocked = true;\n this.onAudioUnlockedObservable.notifyObservers(this);\n }\n return;\n }\n // On iOS, if the audio context resume request was sent from an event other than a `click` event, then\n // the resume promise will never resolve and the only way to get the audio context unstuck is to\n // suspend it and make another resume request.\n if (this._tryToRun) {\n this._audioContext?.suspend().then(() => {\n this._tryToRun = false;\n this._triggerRunningState();\n });\n }\n else {\n this._triggerRunningState();\n }\n }\n /** @internal */\n _resumeAudioContextOnStateChange() {\n this._audioContext?.addEventListener(\"statechange\", () => {\n if (this.unlocked && this._audioContext?.state !== \"running\") {\n this._resumeAudioContext();\n }\n }, {\n once: true,\n passive: true,\n signal: AbortSignal.timeout(3000),\n });\n }\n _resumeAudioContext() {\n if (this._audioContext?.resume) {\n return this._audioContext.resume();\n }\n return Promise.resolve();\n }\n _initializeAudioContext() {\n try {\n if (this.canUseWebAudio) {\n if (!this._audioContext) {\n this._audioContext = new AudioContext();\n }\n // create a global volume gain node\n this.masterGain = this._audioContext.createGain();\n this.masterGain.gain.value = 1;\n if (!this._audioDestination) {\n this._audioDestination = this._audioContext.destination;\n }\n this.masterGain.connect(this._audioDestination);\n this._audioContextInitialized = true;\n if (this._audioContext.state === \"running\") {\n // Do not wait for the promise to unlock.\n this._triggerRunningState();\n }\n }\n }\n catch (e) {\n this.canUseWebAudio = false;\n Logger.Error(\"Web Audio: \" + e.message);\n }\n }\n _triggerRunningState() {\n if (this._tryToRun) {\n return;\n }\n this._tryToRun = true;\n this._resumeAudioContext()\n .then(() => {\n this._tryToRun = false;\n if (this._muteButton) {\n this._hideMuteButton();\n }\n // Notify users that the audio stack is unlocked/unmuted\n this.unlocked = true;\n this.onAudioUnlockedObservable.notifyObservers(this);\n })\n .catch(() => {\n this._tryToRun = false;\n this.unlocked = false;\n });\n }\n _triggerSuspendedState() {\n this.unlocked = false;\n this.onAudioLockedObservable.notifyObservers(this);\n this._displayMuteButton();\n }\n _displayMuteButton() {\n if (this.useCustomUnlockedButton || this._muteButton) {\n return;\n }\n this._muteButton = document.createElement(\"BUTTON\");\n this._muteButton.className = \"babylonUnmuteIcon\";\n this._muteButton.id = \"babylonUnmuteIconBtn\";\n this._muteButton.title = \"Unmute\";\n const imageUrl = !window.SVGSVGElement\n ? \"https://cdn.babylonjs.com/Assets/audio.png\"\n : \"data:image/svg+xml;charset=UTF-8,%3Csvg%20version%3D%221.1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2239%22%20height%3D%2232%22%20viewBox%3D%220%200%2039%2032%22%3E%3Cpath%20fill%3D%22white%22%20d%3D%22M9.625%2018.938l-0.031%200.016h-4.953q-0.016%200-0.031-0.016v-12.453q0-0.016%200.031-0.016h4.953q0.031%200%200.031%200.016v12.453zM12.125%207.688l8.719-8.703v27.453l-8.719-8.719-0.016-0.047v-9.938zM23.359%207.875l1.406-1.406%204.219%204.203%204.203-4.203%201.422%201.406-4.219%204.219%204.219%204.203-1.484%201.359-4.141-4.156-4.219%204.219-1.406-1.422%204.219-4.203z%22%3E%3C%2Fpath%3E%3C%2Fsvg%3E\";\n const css = \".babylonUnmuteIcon { position: absolute; left: 20px; top: 20px; height: 40px; width: 60px; background-color: rgba(51,51,51,0.7); background-image: url(\" +\n imageUrl +\n \"); background-size: 80%; background-repeat:no-repeat; background-position: center; background-position-y: 4px; border: none; outline: none; transition: transform 0.125s ease-out; cursor: pointer; z-index: 9999; } .babylonUnmuteIcon:hover { transform: scale(1.05) } .babylonUnmuteIcon:active { background-color: rgba(51,51,51,1) }\";\n const style = document.createElement(\"style\");\n style.appendChild(document.createTextNode(css));\n document.getElementsByTagName(\"head\")[0].appendChild(style);\n document.body.appendChild(this._muteButton);\n this._moveButtonToTopLeft();\n this._muteButton.addEventListener(\"touchend\", () => {\n this._triggerRunningState();\n }, true);\n this._muteButton.addEventListener(\"click\", () => {\n this.unlock();\n }, true);\n window.addEventListener(\"resize\", this._onResize);\n }\n _moveButtonToTopLeft() {\n if (this._hostElement && this._muteButton) {\n this._muteButton.style.top = this._hostElement.offsetTop + 20 + \"px\";\n this._muteButton.style.left = this._hostElement.offsetLeft + 20 + \"px\";\n }\n }\n _hideMuteButton() {\n if (this._muteButton) {\n document.body.removeChild(this._muteButton);\n this._muteButton = null;\n }\n }\n /**\n * Destroy and release the resources associated with the audio context.\n */\n dispose() {\n if (this.canUseWebAudio && this._audioContextInitialized) {\n if (this._connectedAnalyser && this._audioContext) {\n this._connectedAnalyser.stopDebugCanvas();\n this._connectedAnalyser.dispose();\n this.masterGain.disconnect();\n this.masterGain.connect(this._audioContext.destination);\n this._connectedAnalyser = null;\n }\n this.masterGain.gain.value = 1;\n }\n this.WarnedWebAudioUnsupported = false;\n this._hideMuteButton();\n window.removeEventListener(\"resize\", this._onResize);\n this.onAudioUnlockedObservable.clear();\n this.onAudioLockedObservable.clear();\n }\n /**\n * Gets the global volume sets on the master gain.\n * @returns the global volume if set or -1 otherwise\n */\n getGlobalVolume() {\n if (this.canUseWebAudio && this._audioContextInitialized) {\n return this.masterGain.gain.value;\n }\n else {\n return -1;\n }\n }\n /**\n * Sets the global volume of your experience (sets on the master gain).\n * @param newVolume Defines the new global volume of the application\n */\n setGlobalVolume(newVolume) {\n if (this.canUseWebAudio && this._audioContextInitialized) {\n this.masterGain.gain.value = newVolume;\n }\n }\n /**\n * Connect the audio engine to an audio analyser allowing some amazing\n * synchronization between the sounds/music and your visualization (VuMeter for instance).\n * @see https://doc.babylonjs.com/features/featuresDeepDive/audio/playingSoundsMusic#using-the-analyser\n * @param analyser The analyser to connect to the engine\n */\n connectToAnalyser(analyser) {\n if (this._connectedAnalyser) {\n this._connectedAnalyser.stopDebugCanvas();\n }\n if (this.canUseWebAudio && this._audioContextInitialized && this._audioContext) {\n this._connectedAnalyser = analyser;\n this.masterGain.disconnect();\n this._connectedAnalyser.connectAudioNodes(this.masterGain, this._audioContext.destination);\n }\n }\n}\n//# sourceMappingURL=audioEngine.js.map"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import{i as e}from"./index-CkOp_ioW.esm.min.js";e.IncludesShadersStoreWGSL.bakedVertexAnimationDeclaration="#ifdef BAKED_VERTEX_ANIMATION_TEXTURE\nuniform bakedVertexAnimationTime: f32;uniform bakedVertexAnimationTextureSizeInverted: vec2<f32>;uniform bakedVertexAnimationSettings: vec4<f32>;var bakedVertexAnimationTexture : texture_2d<f32>;\n#ifdef INSTANCES\nattribute bakedVertexAnimationSettingsInstanced : vec4<f32>;\n#endif\nfn readMatrixFromRawSamplerVAT(smp : texture_2d<f32>,index : f32,frame : f32)->mat4x4<f32>\n{let offset=i32(index)*4;let frameUV=i32(frame);let m0=textureLoad(smp,vec2<i32>(offset+0,frameUV),0);let m1=textureLoad(smp,vec2<i32>(offset+1,frameUV),0);let m2=textureLoad(smp,vec2<i32>(offset+2,frameUV),0);let m3=textureLoad(smp,vec2<i32>(offset+3,frameUV),0);return mat4x4<f32>(m0,m1,m2,m3);}\n#endif\n";e.IncludesShadersStoreWGSL.instancesDeclaration="#ifdef INSTANCES\nattribute world0 : vec4<f32>;attribute world1 : vec4<f32>;attribute world2 : vec4<f32>;attribute world3 : vec4<f32>;\n#ifdef INSTANCESCOLOR\nattribute instanceColor : vec4<f32>;\n#endif\n#if defined(THIN_INSTANCES) && !defined(WORLD_UBO)\nuniform world : mat4x4<f32>;\n#endif\n#if defined(VELOCITY) || defined(PREPASS_VELOCITY) || defined(PREPASS_VELOCITY_LINEAR)\nattribute previousWorld0 : vec4<f32>;attribute previousWorld1 : vec4<f32>;attribute previousWorld2 : vec4<f32>;attribute previousWorld3 : vec4<f32>;\n#ifdef THIN_INSTANCES\nuniform previousWorld : mat4x4<f32>;\n#endif\n#endif\n#else\n#if !defined(WORLD_UBO)\nuniform world : mat4x4<f32>;\n#endif\n#if defined(VELOCITY) || defined(PREPASS_VELOCITY) || defined(PREPASS_VELOCITY_LINEAR)\nuniform previousWorld : mat4x4<f32>;\n#endif\n#endif\n";e.IncludesShadersStoreWGSL.instancesVertex="#ifdef INSTANCES\nvar finalWorld=mat4x4<f32>(vertexInputs.world0,vertexInputs.world1,vertexInputs.world2,vertexInputs.world3);\n#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || defined(PREPASS_VELOCITY_LINEAR)\nvar finalPreviousWorld=mat4x4<f32>(\nvertexInputs.previousWorld0,vertexInputs.previousWorld1,\nvertexInputs.previousWorld2,vertexInputs.previousWorld3);\n#endif\n#ifdef THIN_INSTANCES\n#if !defined(WORLD_UBO)\nfinalWorld=uniforms.world*finalWorld;\n#else\nfinalWorld=mesh.world*finalWorld;\n#endif\n#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || defined(PREPASS_VELOCITY_LINEAR)\nfinalPreviousWorld=uniforms.previousWorld*finalPreviousWorld;\n#endif\n#endif\n#else\n#if !defined(WORLD_UBO)\nvar finalWorld=uniforms.world;\n#else\nvar finalWorld=mesh.world;\n#endif\n#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || defined(PREPASS_VELOCITY_LINEAR)\nvar finalPreviousWorld=uniforms.previousWorld;\n#endif\n#endif\n";e.IncludesShadersStoreWGSL.bakedVertexAnimation="#ifdef BAKED_VERTEX_ANIMATION_TEXTURE\n{\n#ifdef INSTANCES\nlet VATStartFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.x;let VATEndFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.y;let VATOffsetFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.z;let VATSpeed: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.w;\n#else\nlet VATStartFrame: f32=uniforms.bakedVertexAnimationSettings.x;let VATEndFrame: f32=uniforms.bakedVertexAnimationSettings.y;let VATOffsetFrame: f32=uniforms.bakedVertexAnimationSettings.z;let VATSpeed: f32=uniforms.bakedVertexAnimationSettings.w;\n#endif\nlet totalFrames: f32=VATEndFrame-VATStartFrame+1.0;let time: f32=uniforms.bakedVertexAnimationTime*VATSpeed/totalFrames;let frameCorrection: f32=select(1.0,0.0,time<1.0);let numOfFrames: f32=totalFrames-frameCorrection;var VATFrameNum: f32=fract(time)*numOfFrames;VATFrameNum=(VATFrameNum+VATOffsetFrame) % numOfFrames;VATFrameNum=floor(VATFrameNum);VATFrameNum=VATFrameNum+VATStartFrame+frameCorrection;var VATInfluence : mat4x4<f32>;VATInfluence=readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[0],VATFrameNum)*vertexInputs.matricesWeights[0];\n#if NUM_BONE_INFLUENCERS>1\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[1],VATFrameNum)*vertexInputs.matricesWeights[1];\n#endif\n#if NUM_BONE_INFLUENCERS>2\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[2],VATFrameNum)*vertexInputs.matricesWeights[2];\n#endif\n#if NUM_BONE_INFLUENCERS>3\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[3],VATFrameNum)*vertexInputs.matricesWeights[3];\n#endif\n#if NUM_BONE_INFLUENCERS>4\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[0],VATFrameNum)*vertexInputs.matricesWeightsExtra[0];\n#endif\n#if NUM_BONE_INFLUENCERS>5\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[1],VATFrameNum)*vertexInputs.matricesWeightsExtra[1];\n#endif\n#if NUM_BONE_INFLUENCERS>6\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[2],VATFrameNum)*vertexInputs.matricesWeightsExtra[2];\n#endif\n#if NUM_BONE_INFLUENCERS>7\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[3],VATFrameNum)*vertexInputs.matricesWeightsExtra[3];\n#endif\nfinalWorld=finalWorld*VATInfluence;}\n#endif\n";
2
+ //# sourceMappingURL=bakedVertexAnimation-C225r8bl.esm.min.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bakedVertexAnimation-C225r8bl.esm.min.js","sources":["../../../../../dev/core/dist/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.js","../../../../../dev/core/dist/ShadersWGSL/ShadersInclude/instancesDeclaration.js","../../../../../dev/core/dist/ShadersWGSL/ShadersInclude/instancesVertex.js","../../../../../dev/core/dist/ShadersWGSL/ShadersInclude/bakedVertexAnimation.js"],"sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\nconst name = \"bakedVertexAnimationDeclaration\";\nconst shader = `#ifdef BAKED_VERTEX_ANIMATION_TEXTURE\nuniform bakedVertexAnimationTime: f32;uniform bakedVertexAnimationTextureSizeInverted: vec2<f32>;uniform bakedVertexAnimationSettings: vec4<f32>;var bakedVertexAnimationTexture : texture_2d<f32>;\n#ifdef INSTANCES\nattribute bakedVertexAnimationSettingsInstanced : vec4<f32>;\n#endif\nfn readMatrixFromRawSamplerVAT(smp : texture_2d<f32>,index : f32,frame : f32)->mat4x4<f32>\n{let offset=i32(index)*4;let frameUV=i32(frame);let m0=textureLoad(smp,vec2<i32>(offset+0,frameUV),0);let m1=textureLoad(smp,vec2<i32>(offset+1,frameUV),0);let m2=textureLoad(smp,vec2<i32>(offset+2,frameUV),0);let m3=textureLoad(smp,vec2<i32>(offset+3,frameUV),0);return mat4x4<f32>(m0,m1,m2,m3);}\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const bakedVertexAnimationDeclarationWGSL = { name, shader };\n//# sourceMappingURL=bakedVertexAnimationDeclaration.js.map","// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\nconst name = \"instancesDeclaration\";\nconst shader = `#ifdef INSTANCES\nattribute world0 : vec4<f32>;attribute world1 : vec4<f32>;attribute world2 : vec4<f32>;attribute world3 : vec4<f32>;\n#ifdef INSTANCESCOLOR\nattribute instanceColor : vec4<f32>;\n#endif\n#if defined(THIN_INSTANCES) && !defined(WORLD_UBO)\nuniform world : mat4x4<f32>;\n#endif\n#if defined(VELOCITY) || defined(PREPASS_VELOCITY) || \\\ndefined(PREPASS_VELOCITY_LINEAR)\nattribute previousWorld0 : vec4<f32>;attribute previousWorld1 : vec4<f32>;attribute previousWorld2 : vec4<f32>;attribute previousWorld3 : vec4<f32>;\n#ifdef THIN_INSTANCES\nuniform previousWorld : mat4x4<f32>;\n#endif\n#endif\n#else\n#if !defined(WORLD_UBO)\nuniform world : mat4x4<f32>;\n#endif\n#if defined(VELOCITY) || defined(PREPASS_VELOCITY) || \\\ndefined(PREPASS_VELOCITY_LINEAR)\nuniform previousWorld : mat4x4<f32>;\n#endif\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const instancesDeclarationWGSL = { name, shader };\n//# sourceMappingURL=instancesDeclaration.js.map","// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\nconst name = \"instancesVertex\";\nconst shader = `#ifdef INSTANCES\nvar finalWorld=mat4x4<f32>(vertexInputs.world0,vertexInputs.world1,vertexInputs.world2,vertexInputs.world3);\n#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || \\\ndefined(PREPASS_VELOCITY_LINEAR)\nvar finalPreviousWorld=mat4x4<f32>(\nvertexInputs.previousWorld0,vertexInputs.previousWorld1,\nvertexInputs.previousWorld2,vertexInputs.previousWorld3);\n#endif\n#ifdef THIN_INSTANCES\n#if !defined(WORLD_UBO)\nfinalWorld=uniforms.world*finalWorld;\n#else\nfinalWorld=mesh.world*finalWorld;\n#endif\n#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || \\\ndefined(PREPASS_VELOCITY_LINEAR)\nfinalPreviousWorld=uniforms.previousWorld*finalPreviousWorld;\n#endif\n#endif\n#else\n#if !defined(WORLD_UBO)\nvar finalWorld=uniforms.world;\n#else\nvar finalWorld=mesh.world;\n#endif\n#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || \\\ndefined(PREPASS_VELOCITY_LINEAR)\nvar finalPreviousWorld=uniforms.previousWorld;\n#endif\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const instancesVertexWGSL = { name, shader };\n//# sourceMappingURL=instancesVertex.js.map","// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\nconst name = \"bakedVertexAnimation\";\nconst shader = `#ifdef BAKED_VERTEX_ANIMATION_TEXTURE\n{\n#ifdef INSTANCES\nlet VATStartFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.x;let VATEndFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.y;let VATOffsetFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.z;let VATSpeed: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.w;\n#else\nlet VATStartFrame: f32=uniforms.bakedVertexAnimationSettings.x;let VATEndFrame: f32=uniforms.bakedVertexAnimationSettings.y;let VATOffsetFrame: f32=uniforms.bakedVertexAnimationSettings.z;let VATSpeed: f32=uniforms.bakedVertexAnimationSettings.w;\n#endif\nlet totalFrames: f32=VATEndFrame-VATStartFrame+1.0;let time: f32=uniforms.bakedVertexAnimationTime*VATSpeed/totalFrames;let frameCorrection: f32=select(1.0,0.0,time<1.0);let numOfFrames: f32=totalFrames-frameCorrection;var VATFrameNum: f32=fract(time)*numOfFrames;VATFrameNum=(VATFrameNum+VATOffsetFrame) % numOfFrames;VATFrameNum=floor(VATFrameNum);VATFrameNum=VATFrameNum+VATStartFrame+frameCorrection;var VATInfluence : mat4x4<f32>;VATInfluence=readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[0],VATFrameNum)*vertexInputs.matricesWeights[0];\n#if NUM_BONE_INFLUENCERS>1\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[1],VATFrameNum)*vertexInputs.matricesWeights[1];\n#endif\n#if NUM_BONE_INFLUENCERS>2\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[2],VATFrameNum)*vertexInputs.matricesWeights[2];\n#endif\n#if NUM_BONE_INFLUENCERS>3\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[3],VATFrameNum)*vertexInputs.matricesWeights[3];\n#endif\n#if NUM_BONE_INFLUENCERS>4\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[0],VATFrameNum)*vertexInputs.matricesWeightsExtra[0];\n#endif\n#if NUM_BONE_INFLUENCERS>5\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[1],VATFrameNum)*vertexInputs.matricesWeightsExtra[1];\n#endif\n#if NUM_BONE_INFLUENCERS>6\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[2],VATFrameNum)*vertexInputs.matricesWeightsExtra[2];\n#endif\n#if NUM_BONE_INFLUENCERS>7\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[3],VATFrameNum)*vertexInputs.matricesWeightsExtra[3];\n#endif\nfinalWorld=finalWorld*VATInfluence;}\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const bakedVertexAnimationWGSL = { name, shader };\n//# sourceMappingURL=bakedVertexAnimation.js.map"],"names":["ShaderStore","IncludesShadersStoreWGSL"],"mappings":"gDAaAA,EAAYC,yBAA6B,gCAV1B,stBC0BfD,EAAYC,yBAA6B,qBA1B1B,yzBCgCfD,EAAYC,yBAA6B,gBAhC1B,g7BCiCfD,EAAYC,yBAA6B,qBAjC1B"}
@@ -0,0 +1,119 @@
1
+ import { i as ShaderStore } from './index-Cb7zGjYe.esm.js';
2
+
3
+ // Do not edit.
4
+ const name$3 = "bakedVertexAnimationDeclaration";
5
+ const shader$3 = `#ifdef BAKED_VERTEX_ANIMATION_TEXTURE
6
+ uniform bakedVertexAnimationTime: f32;uniform bakedVertexAnimationTextureSizeInverted: vec2<f32>;uniform bakedVertexAnimationSettings: vec4<f32>;var bakedVertexAnimationTexture : texture_2d<f32>;
7
+ #ifdef INSTANCES
8
+ attribute bakedVertexAnimationSettingsInstanced : vec4<f32>;
9
+ #endif
10
+ fn readMatrixFromRawSamplerVAT(smp : texture_2d<f32>,index : f32,frame : f32)->mat4x4<f32>
11
+ {let offset=i32(index)*4;let frameUV=i32(frame);let m0=textureLoad(smp,vec2<i32>(offset+0,frameUV),0);let m1=textureLoad(smp,vec2<i32>(offset+1,frameUV),0);let m2=textureLoad(smp,vec2<i32>(offset+2,frameUV),0);let m3=textureLoad(smp,vec2<i32>(offset+3,frameUV),0);return mat4x4<f32>(m0,m1,m2,m3);}
12
+ #endif
13
+ `;
14
+ // Sideeffect
15
+ ShaderStore.IncludesShadersStoreWGSL[name$3] = shader$3;
16
+
17
+ // Do not edit.
18
+ const name$2 = "instancesDeclaration";
19
+ const shader$2 = `#ifdef INSTANCES
20
+ attribute world0 : vec4<f32>;attribute world1 : vec4<f32>;attribute world2 : vec4<f32>;attribute world3 : vec4<f32>;
21
+ #ifdef INSTANCESCOLOR
22
+ attribute instanceColor : vec4<f32>;
23
+ #endif
24
+ #if defined(THIN_INSTANCES) && !defined(WORLD_UBO)
25
+ uniform world : mat4x4<f32>;
26
+ #endif
27
+ #if defined(VELOCITY) || defined(PREPASS_VELOCITY) || \
28
+ defined(PREPASS_VELOCITY_LINEAR)
29
+ attribute previousWorld0 : vec4<f32>;attribute previousWorld1 : vec4<f32>;attribute previousWorld2 : vec4<f32>;attribute previousWorld3 : vec4<f32>;
30
+ #ifdef THIN_INSTANCES
31
+ uniform previousWorld : mat4x4<f32>;
32
+ #endif
33
+ #endif
34
+ #else
35
+ #if !defined(WORLD_UBO)
36
+ uniform world : mat4x4<f32>;
37
+ #endif
38
+ #if defined(VELOCITY) || defined(PREPASS_VELOCITY) || \
39
+ defined(PREPASS_VELOCITY_LINEAR)
40
+ uniform previousWorld : mat4x4<f32>;
41
+ #endif
42
+ #endif
43
+ `;
44
+ // Sideeffect
45
+ ShaderStore.IncludesShadersStoreWGSL[name$2] = shader$2;
46
+
47
+ // Do not edit.
48
+ const name$1 = "instancesVertex";
49
+ const shader$1 = `#ifdef INSTANCES
50
+ var finalWorld=mat4x4<f32>(vertexInputs.world0,vertexInputs.world1,vertexInputs.world2,vertexInputs.world3);
51
+ #if defined(PREPASS_VELOCITY) || defined(VELOCITY) || \
52
+ defined(PREPASS_VELOCITY_LINEAR)
53
+ var finalPreviousWorld=mat4x4<f32>(
54
+ vertexInputs.previousWorld0,vertexInputs.previousWorld1,
55
+ vertexInputs.previousWorld2,vertexInputs.previousWorld3);
56
+ #endif
57
+ #ifdef THIN_INSTANCES
58
+ #if !defined(WORLD_UBO)
59
+ finalWorld=uniforms.world*finalWorld;
60
+ #else
61
+ finalWorld=mesh.world*finalWorld;
62
+ #endif
63
+ #if defined(PREPASS_VELOCITY) || defined(VELOCITY) || \
64
+ defined(PREPASS_VELOCITY_LINEAR)
65
+ finalPreviousWorld=uniforms.previousWorld*finalPreviousWorld;
66
+ #endif
67
+ #endif
68
+ #else
69
+ #if !defined(WORLD_UBO)
70
+ var finalWorld=uniforms.world;
71
+ #else
72
+ var finalWorld=mesh.world;
73
+ #endif
74
+ #if defined(PREPASS_VELOCITY) || defined(VELOCITY) || \
75
+ defined(PREPASS_VELOCITY_LINEAR)
76
+ var finalPreviousWorld=uniforms.previousWorld;
77
+ #endif
78
+ #endif
79
+ `;
80
+ // Sideeffect
81
+ ShaderStore.IncludesShadersStoreWGSL[name$1] = shader$1;
82
+
83
+ // Do not edit.
84
+ const name = "bakedVertexAnimation";
85
+ const shader = `#ifdef BAKED_VERTEX_ANIMATION_TEXTURE
86
+ {
87
+ #ifdef INSTANCES
88
+ let VATStartFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.x;let VATEndFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.y;let VATOffsetFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.z;let VATSpeed: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.w;
89
+ #else
90
+ let VATStartFrame: f32=uniforms.bakedVertexAnimationSettings.x;let VATEndFrame: f32=uniforms.bakedVertexAnimationSettings.y;let VATOffsetFrame: f32=uniforms.bakedVertexAnimationSettings.z;let VATSpeed: f32=uniforms.bakedVertexAnimationSettings.w;
91
+ #endif
92
+ let totalFrames: f32=VATEndFrame-VATStartFrame+1.0;let time: f32=uniforms.bakedVertexAnimationTime*VATSpeed/totalFrames;let frameCorrection: f32=select(1.0,0.0,time<1.0);let numOfFrames: f32=totalFrames-frameCorrection;var VATFrameNum: f32=fract(time)*numOfFrames;VATFrameNum=(VATFrameNum+VATOffsetFrame) % numOfFrames;VATFrameNum=floor(VATFrameNum);VATFrameNum=VATFrameNum+VATStartFrame+frameCorrection;var VATInfluence : mat4x4<f32>;VATInfluence=readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[0],VATFrameNum)*vertexInputs.matricesWeights[0];
93
+ #if NUM_BONE_INFLUENCERS>1
94
+ VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[1],VATFrameNum)*vertexInputs.matricesWeights[1];
95
+ #endif
96
+ #if NUM_BONE_INFLUENCERS>2
97
+ VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[2],VATFrameNum)*vertexInputs.matricesWeights[2];
98
+ #endif
99
+ #if NUM_BONE_INFLUENCERS>3
100
+ VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[3],VATFrameNum)*vertexInputs.matricesWeights[3];
101
+ #endif
102
+ #if NUM_BONE_INFLUENCERS>4
103
+ VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[0],VATFrameNum)*vertexInputs.matricesWeightsExtra[0];
104
+ #endif
105
+ #if NUM_BONE_INFLUENCERS>5
106
+ VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[1],VATFrameNum)*vertexInputs.matricesWeightsExtra[1];
107
+ #endif
108
+ #if NUM_BONE_INFLUENCERS>6
109
+ VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[2],VATFrameNum)*vertexInputs.matricesWeightsExtra[2];
110
+ #endif
111
+ #if NUM_BONE_INFLUENCERS>7
112
+ VATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[3],VATFrameNum)*vertexInputs.matricesWeightsExtra[3];
113
+ #endif
114
+ finalWorld=finalWorld*VATInfluence;}
115
+ #endif
116
+ `;
117
+ // Sideeffect
118
+ ShaderStore.IncludesShadersStoreWGSL[name] = shader;
119
+ //# sourceMappingURL=bakedVertexAnimation-Dne6l1Oz.esm.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bakedVertexAnimation-Dne6l1Oz.esm.js","sources":["../../../../../dev/core/dist/ShadersWGSL/ShadersInclude/bakedVertexAnimationDeclaration.js","../../../../../dev/core/dist/ShadersWGSL/ShadersInclude/instancesDeclaration.js","../../../../../dev/core/dist/ShadersWGSL/ShadersInclude/instancesVertex.js","../../../../../dev/core/dist/ShadersWGSL/ShadersInclude/bakedVertexAnimation.js"],"sourcesContent":["// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\nconst name = \"bakedVertexAnimationDeclaration\";\nconst shader = `#ifdef BAKED_VERTEX_ANIMATION_TEXTURE\nuniform bakedVertexAnimationTime: f32;uniform bakedVertexAnimationTextureSizeInverted: vec2<f32>;uniform bakedVertexAnimationSettings: vec4<f32>;var bakedVertexAnimationTexture : texture_2d<f32>;\n#ifdef INSTANCES\nattribute bakedVertexAnimationSettingsInstanced : vec4<f32>;\n#endif\nfn readMatrixFromRawSamplerVAT(smp : texture_2d<f32>,index : f32,frame : f32)->mat4x4<f32>\n{let offset=i32(index)*4;let frameUV=i32(frame);let m0=textureLoad(smp,vec2<i32>(offset+0,frameUV),0);let m1=textureLoad(smp,vec2<i32>(offset+1,frameUV),0);let m2=textureLoad(smp,vec2<i32>(offset+2,frameUV),0);let m3=textureLoad(smp,vec2<i32>(offset+3,frameUV),0);return mat4x4<f32>(m0,m1,m2,m3);}\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const bakedVertexAnimationDeclarationWGSL = { name, shader };\n//# sourceMappingURL=bakedVertexAnimationDeclaration.js.map","// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\nconst name = \"instancesDeclaration\";\nconst shader = `#ifdef INSTANCES\nattribute world0 : vec4<f32>;attribute world1 : vec4<f32>;attribute world2 : vec4<f32>;attribute world3 : vec4<f32>;\n#ifdef INSTANCESCOLOR\nattribute instanceColor : vec4<f32>;\n#endif\n#if defined(THIN_INSTANCES) && !defined(WORLD_UBO)\nuniform world : mat4x4<f32>;\n#endif\n#if defined(VELOCITY) || defined(PREPASS_VELOCITY) || \\\ndefined(PREPASS_VELOCITY_LINEAR)\nattribute previousWorld0 : vec4<f32>;attribute previousWorld1 : vec4<f32>;attribute previousWorld2 : vec4<f32>;attribute previousWorld3 : vec4<f32>;\n#ifdef THIN_INSTANCES\nuniform previousWorld : mat4x4<f32>;\n#endif\n#endif\n#else\n#if !defined(WORLD_UBO)\nuniform world : mat4x4<f32>;\n#endif\n#if defined(VELOCITY) || defined(PREPASS_VELOCITY) || \\\ndefined(PREPASS_VELOCITY_LINEAR)\nuniform previousWorld : mat4x4<f32>;\n#endif\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const instancesDeclarationWGSL = { name, shader };\n//# sourceMappingURL=instancesDeclaration.js.map","// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\nconst name = \"instancesVertex\";\nconst shader = `#ifdef INSTANCES\nvar finalWorld=mat4x4<f32>(vertexInputs.world0,vertexInputs.world1,vertexInputs.world2,vertexInputs.world3);\n#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || \\\ndefined(PREPASS_VELOCITY_LINEAR)\nvar finalPreviousWorld=mat4x4<f32>(\nvertexInputs.previousWorld0,vertexInputs.previousWorld1,\nvertexInputs.previousWorld2,vertexInputs.previousWorld3);\n#endif\n#ifdef THIN_INSTANCES\n#if !defined(WORLD_UBO)\nfinalWorld=uniforms.world*finalWorld;\n#else\nfinalWorld=mesh.world*finalWorld;\n#endif\n#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || \\\ndefined(PREPASS_VELOCITY_LINEAR)\nfinalPreviousWorld=uniforms.previousWorld*finalPreviousWorld;\n#endif\n#endif\n#else\n#if !defined(WORLD_UBO)\nvar finalWorld=uniforms.world;\n#else\nvar finalWorld=mesh.world;\n#endif\n#if defined(PREPASS_VELOCITY) || defined(VELOCITY) || \\\ndefined(PREPASS_VELOCITY_LINEAR)\nvar finalPreviousWorld=uniforms.previousWorld;\n#endif\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const instancesVertexWGSL = { name, shader };\n//# sourceMappingURL=instancesVertex.js.map","// Do not edit.\nimport { ShaderStore } from \"../../Engines/shaderStore\";\nconst name = \"bakedVertexAnimation\";\nconst shader = `#ifdef BAKED_VERTEX_ANIMATION_TEXTURE\n{\n#ifdef INSTANCES\nlet VATStartFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.x;let VATEndFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.y;let VATOffsetFrame: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.z;let VATSpeed: f32=vertexInputs.bakedVertexAnimationSettingsInstanced.w;\n#else\nlet VATStartFrame: f32=uniforms.bakedVertexAnimationSettings.x;let VATEndFrame: f32=uniforms.bakedVertexAnimationSettings.y;let VATOffsetFrame: f32=uniforms.bakedVertexAnimationSettings.z;let VATSpeed: f32=uniforms.bakedVertexAnimationSettings.w;\n#endif\nlet totalFrames: f32=VATEndFrame-VATStartFrame+1.0;let time: f32=uniforms.bakedVertexAnimationTime*VATSpeed/totalFrames;let frameCorrection: f32=select(1.0,0.0,time<1.0);let numOfFrames: f32=totalFrames-frameCorrection;var VATFrameNum: f32=fract(time)*numOfFrames;VATFrameNum=(VATFrameNum+VATOffsetFrame) % numOfFrames;VATFrameNum=floor(VATFrameNum);VATFrameNum=VATFrameNum+VATStartFrame+frameCorrection;var VATInfluence : mat4x4<f32>;VATInfluence=readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[0],VATFrameNum)*vertexInputs.matricesWeights[0];\n#if NUM_BONE_INFLUENCERS>1\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[1],VATFrameNum)*vertexInputs.matricesWeights[1];\n#endif\n#if NUM_BONE_INFLUENCERS>2\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[2],VATFrameNum)*vertexInputs.matricesWeights[2];\n#endif\n#if NUM_BONE_INFLUENCERS>3\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndices[3],VATFrameNum)*vertexInputs.matricesWeights[3];\n#endif\n#if NUM_BONE_INFLUENCERS>4\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[0],VATFrameNum)*vertexInputs.matricesWeightsExtra[0];\n#endif\n#if NUM_BONE_INFLUENCERS>5\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[1],VATFrameNum)*vertexInputs.matricesWeightsExtra[1];\n#endif\n#if NUM_BONE_INFLUENCERS>6\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[2],VATFrameNum)*vertexInputs.matricesWeightsExtra[2];\n#endif\n#if NUM_BONE_INFLUENCERS>7\nVATInfluence=VATInfluence+readMatrixFromRawSamplerVAT(bakedVertexAnimationTexture,vertexInputs.matricesIndicesExtra[3],VATFrameNum)*vertexInputs.matricesWeightsExtra[3];\n#endif\nfinalWorld=finalWorld*VATInfluence;}\n#endif\n`;\n// Sideeffect\nShaderStore.IncludesShadersStoreWGSL[name] = shader;\n/** @internal */\nexport const bakedVertexAnimationWGSL = { name, shader };\n//# sourceMappingURL=bakedVertexAnimation.js.map"],"names":["name","shader"],"mappings":";;AAAA;AAEA,MAAMA,MAAI,GAAG,iCAAiC,CAAC;AAC/C,MAAMC,QAAM,GAAG,CAAC;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC;AACF;AACA,WAAW,CAAC,wBAAwB,CAACD,MAAI,CAAC,GAAGC,QAAM;;ACbnD;AAEA,MAAMD,MAAI,GAAG,sBAAsB,CAAC;AACpC,MAAMC,QAAM,GAAG,CAAC;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC;AACF;AACA,WAAW,CAAC,wBAAwB,CAACD,MAAI,CAAC,GAAGC,QAAM;;AC7BnD;AAEA,MAAMD,MAAI,GAAG,iBAAiB,CAAC;AAC/B,MAAMC,QAAM,GAAG,CAAC;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC;AACF;AACA,WAAW,CAAC,wBAAwB,CAACD,MAAI,CAAC,GAAGC,QAAM;;ACnCnD;AAEA,MAAM,IAAI,GAAG,sBAAsB,CAAC;AACpC,MAAM,MAAM,GAAG,CAAC;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,CAAC;AACF;AACA,WAAW,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,MAAM"}
@@ -0,0 +1,2 @@
1
+ import{T as e,C as t,I as a,q as s}from"./index-CkOp_ioW.esm.min.js";function r(){const e=0,t=1,a=2,s=3,r=6,o=8,n=9,i=10,c=14;let T=null;function l(e,t,a,s,r){const o=e.getImageTranscodedSizeInBytes(t,a,s);let n=new Uint8Array(o);if(!e.transcodeImage(n,t,a,s,1,0))return null;if(r){n=function(e,t,a,s){const r=new Uint16Array(4),o=new Uint16Array(a*s),n=a/4,i=s/4;for(let s=0;s<i;s++)for(let i=0;i<n;i++){const c=t+8*(s*n+i);r[0]=e[c]|e[c+1]<<8,r[1]=e[c+2]|e[c+3]<<8,r[2]=(2*(31&r[0])+1*(31&r[1]))/3|(2*(2016&r[0])+1*(2016&r[1]))/3&2016|(2*(63488&r[0])+1*(63488&r[1]))/3&63488,r[3]=(2*(31&r[1])+1*(31&r[0]))/3|(2*(2016&r[1])+1*(2016&r[0]))/3&2016|(2*(63488&r[1])+1*(63488&r[0]))/3&63488;for(let t=0;t<4;t++){const n=e[c+4+t];let T=(4*s+t)*a+4*i;o[T++]=r[3&n],o[T++]=r[n>>2&3],o[T++]=r[n>>4&3],o[T++]=r[n>>6&3]}}return o}(n,0,e.getImageWidth(t,a)+3&-4,e.getImageHeight(t,a)+3&-4)}return n}onmessage=d=>{if("init"===d.data.action){if(d.data.url)try{importScripts(d.data.url)}catch(e){postMessage({action:"error",error:e})}T||(T=BASIS({wasmBinary:d.data.wasmBinary})),null!==T&&T.then((e=>{BASIS=e,e.initializeBasis(),postMessage({action:"init"})}))}else if("transcode"===d.data.action){const T=d.data.config,R=d.data.imageData,u=new BASIS.BasisFile(R),_=function(e){const t=e.getHasAlpha(),a=e.getNumImages(),s=[];for(let t=0;t<a;t++){const a={levels:[]},r=e.getNumLevels(t);for(let s=0;s<r;s++){const r={width:e.getImageWidth(t,s),height:e.getImageHeight(t,s)};a.levels.push(r)}s.push(a)}return{hasAlpha:t,images:s}}(u);let p=d.data.ignoreSupportedFormats?null:function(T,l){let d=null;T.supportedCompressionFormats&&(d=T.supportedCompressionFormats.astc?i:T.supportedCompressionFormats.bc7?r:T.supportedCompressionFormats.s3tc?l.hasAlpha?s:a:T.supportedCompressionFormats.pvrtc?l.hasAlpha?n:o:T.supportedCompressionFormats.etc2?t:T.supportedCompressionFormats.etc1?e:c);return d}(d.data.config,_),g=!1;null===p&&(g=!0,p=_.hasAlpha?s:a);let m=!0;u.startTranscoding()||(m=!1);const f=[];for(let e=0;e<_.images.length&&m;e++){const t=_.images[e];if(void 0===T.loadSingleImage||T.loadSingleImage===e){let a=t.levels.length;!1===T.loadMipmapLevels&&(a=1);for(let s=0;s<a;s++){const a=t.levels[s],r=l(u,e,s,p,g);if(!r){m=!1;break}a.transcodedPixels=r,f.push(a.transcodedPixels.buffer)}}}u.close(),u.delete(),g&&(p=-1),m?postMessage({action:"transcode",success:m,id:d.data.id,fileInfo:_,format:p},f):postMessage({action:"transcode",success:m,id:d.data.id})}}}var o;!function(e){e[e.cTFETC1=0]="cTFETC1",e[e.cTFETC2=1]="cTFETC2",e[e.cTFBC1=2]="cTFBC1",e[e.cTFBC3=3]="cTFBC3",e[e.cTFBC4=4]="cTFBC4",e[e.cTFBC5=5]="cTFBC5",e[e.cTFBC7=6]="cTFBC7",e[e.cTFPVRTC1_4_RGB=8]="cTFPVRTC1_4_RGB",e[e.cTFPVRTC1_4_RGBA=9]="cTFPVRTC1_4_RGBA",e[e.cTFASTC_4x4=10]="cTFASTC_4x4",e[e.cTFATC_RGB=11]="cTFATC_RGB",e[e.cTFATC_RGBA_INTERPOLATED_ALPHA=12]="cTFATC_RGBA_INTERPOLATED_ALPHA",e[e.cTFRGBA32=13]="cTFRGBA32",e[e.cTFRGB565=14]="cTFRGB565",e[e.cTFBGR565=15]="cTFBGR565",e[e.cTFRGBA4444=16]="cTFRGBA4444",e[e.cTFFXT1_RGB=17]="cTFFXT1_RGB",e[e.cTFPVRTC2_4_RGB=18]="cTFPVRTC2_4_RGB",e[e.cTFPVRTC2_4_RGBA=19]="cTFPVRTC2_4_RGBA",e[e.cTFETC2_EAC_R11=20]="cTFETC2_EAC_R11",e[e.cTFETC2_EAC_RG11=21]="cTFETC2_EAC_RG11"}(o||(o={}));const n={JSModuleURL:`${e._DefaultCdnUrl}/basisTranscoder/1/basis_transcoder.js`,WasmModuleURL:`${e._DefaultCdnUrl}/basisTranscoder/1/basis_transcoder.wasm`};let i=null,c=null,T=0;const l=()=>(i||(i=new Promise(((t,a)=>{c?t(c):e.LoadFileAsync(e.GetBabylonScriptURL(n.WasmModuleURL)).then((s=>{if("function"!=typeof URL)return a("Basis transcoder requires an environment with a URL constructor");const o=URL.createObjectURL(new Blob([`(${r})()`],{type:"application/javascript"}));c=new Worker(o),function(t,a,s){return new Promise(((r,o)=>{const n=e=>{"init"===e.data.action?(t.removeEventListener("message",n),r(t)):"error"===e.data.action&&o(e.data.error||"error initializing worker")};t.addEventListener("message",n),t.postMessage({action:"init",url:s?e.GetBabylonScriptURL(s):void 0,wasmBinary:a},[a])}))}(c,s,n.JSModuleURL).then(t,a)})).catch(a)}))),i),d=(e,t)=>{const a=e instanceof ArrayBuffer?new Uint8Array(e):e;return new Promise(((e,s)=>{l().then((()=>{const r=T++,o=t=>{"transcode"===t.data.action&&t.data.id===r&&(c.removeEventListener("message",o),t.data.success?e(t.data):s("Transcode is not supported on this device"))};c.addEventListener("message",o);const n=new Uint8Array(a.byteLength);n.set(new Uint8Array(a.buffer,a.byteOffset,a.byteLength)),c.postMessage({action:"transcode",id:r,imageData:n,config:t,ignoreSupportedFormats:false},[n.buffer])}),(e=>{s(e)}))}))},R=(e,t)=>{let a=t._gl?.TEXTURE_2D;e.isCube&&(a=t._gl?.TEXTURE_CUBE_MAP),t._bindTextureDirectly(a,e,!0)},u=(r,n)=>{const i=r.getEngine();for(let c=0;c<n.fileInfo.images.length;c++){const T=n.fileInfo.images[c].levels[0];if(r._invertVScale=r.invertY,-1===n.format||n.format===o.cTFRGB565)if(r.type=t.TEXTURETYPE_UNSIGNED_SHORT_5_6_5,r.format=t.TEXTUREFORMAT_RGB,!i._features.basisNeedsPOT||Math.log2(T.width)%1==0&&Math.log2(T.height)%1==0)r._invertVScale=!r.invertY,r.width=T.width+3&-4,r.height=T.height+3&-4,r.samplingMode=t.TEXTURE_LINEAR_LINEAR,R(r,i),i._uploadDataToTextureDirectly(r,new Uint16Array(T.transcodedPixels.buffer),c,0,t.TEXTUREFORMAT_RGB,!0);else{const e=new a(i,2);r._invertVScale=r.invertY,e.type=t.TEXTURETYPE_UNSIGNED_SHORT_5_6_5,e.format=t.TEXTUREFORMAT_RGB,e.width=T.width+3&-4,e.height=T.height+3&-4,R(e,i),i._uploadDataToTextureDirectly(e,new Uint16Array(T.transcodedPixels.buffer),c,0,t.TEXTUREFORMAT_RGB,!0),i._rescaleTexture(e,r,i.scenes[0],i._getInternalFormat(t.TEXTUREFORMAT_RGB),(()=>{i._releaseTexture(e),R(r,i)}))}else{r.width=T.width,r.height=T.height,r.generateMipMaps=n.fileInfo.images[c].levels.length>1;const t=_.GetInternalFormatFromBasisFormat(n.format,i);r.format=t,R(r,i),n.fileInfo.images[c].levels.forEach(((e,a)=>{i._uploadCompressedDataToTextureDirectly(r,t,e.width,e.height,e.transcodedPixels,c,a)})),!i._features.basisNeedsPOT||Math.log2(r.width)%1==0&&Math.log2(r.height)%1==0||(e.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."),r._cachedWrapU=s.CLAMP_ADDRESSMODE,r._cachedWrapV=s.CLAMP_ADDRESSMODE)}}},_={JSModuleURL:n.JSModuleURL,WasmModuleURL:n.WasmModuleURL,GetInternalFormatFromBasisFormat:(e,a)=>{let s;switch(e){case o.cTFETC1:s=t.TEXTUREFORMAT_COMPRESSED_RGB_ETC1_WEBGL;break;case o.cTFBC1:s=t.TEXTUREFORMAT_COMPRESSED_RGB_S3TC_DXT1;break;case o.cTFBC4:s=t.TEXTUREFORMAT_COMPRESSED_RGBA_S3TC_DXT5;break;case o.cTFASTC_4x4:s=t.TEXTUREFORMAT_COMPRESSED_RGBA_ASTC_4x4;break;case o.cTFETC2:s=t.TEXTUREFORMAT_COMPRESSED_RGBA8_ETC2_EAC;break;case o.cTFBC7:s=t.TEXTUREFORMAT_COMPRESSED_RGBA_BPTC_UNORM}if(void 0===s)throw"The chosen Basis transcoder format is not currently supported";return s},TranscodeAsync:d,LoadTextureFromTranscodeResult:u};Object.defineProperty(_,"JSModuleURL",{get:function(){return n.JSModuleURL},set:function(e){n.JSModuleURL=e}}),Object.defineProperty(_,"WasmModuleURL",{get:function(){return n.WasmModuleURL},set:function(e){n.WasmModuleURL=e}});class p{constructor(){this.supportCascades=!1}loadCubeData(t,a,s,r,o){if(Array.isArray(t))return;const n=a.getEngine().getCaps(),i={supportedCompressionFormats:{etc1:!!n.etc1,s3tc:!!n.s3tc,pvrtc:!!n.pvrtc,etc2:!!n.etc2,astc:!!n.astc,bc7:!!n.bptc}};d(t,i).then((e=>{const t=e.fileInfo.images[0].levels.length>1&&a.generateMipMaps;u(a,e),a.getEngine()._setCubeMapTextureParams(a,t),a.isReady=!0,a.onLoadedObservable.notifyObservers(a),a.onLoadedObservable.clear(),r&&r()})).catch((t=>{e.Warn("Failed to transcode Basis file, transcoding may not be supported on this device"),a.isReady=!0,o&&o(t)}))}loadData(t,a,s){const r=a.getEngine().getCaps(),o={supportedCompressionFormats:{etc1:!!r.etc1,s3tc:!!r.s3tc,pvrtc:!!r.pvrtc,etc2:!!r.etc2,astc:!!r.astc,bc7:!!r.bptc}};d(t,o).then((e=>{const t=e.fileInfo.images[0].levels[0],r=e.fileInfo.images[0].levels.length>1&&a.generateMipMaps;s(t.width,t.height,r,-1!==e.format,(()=>{u(a,e)}))})).catch((t=>{e.Warn("Failed to transcode Basis file, transcoding may not be supported on this device"),e.Warn(`Failed to transcode Basis file: ${t}`),s(0,0,!1,!1,(()=>{}),!0)}))}}export{p as _BasisTextureLoader};
2
+ //# sourceMappingURL=basisTextureLoader-BfheE-xD.esm.min.js.map