@babylonjs/viewer 7.37.0 → 7.37.1-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.
- package/assets/photoStudio.env +0 -0
- package/dist/babylon-viewer.esm.js +2 -0
- package/dist/babylon-viewer.esm.js.map +1 -0
- package/dist/babylon-viewer.esm.min.js +2 -0
- package/dist/babylon-viewer.esm.min.js.map +1 -0
- package/dist/chunks/EXT_lights_image_based-BTTJ2JSt.esm.min.js +2 -0
- package/dist/chunks/EXT_lights_image_based-BTTJ2JSt.esm.min.js.map +1 -0
- package/dist/chunks/EXT_lights_image_based-mCt1KUiF.esm.js +171 -0
- package/dist/chunks/EXT_lights_image_based-mCt1KUiF.esm.js.map +1 -0
- package/dist/chunks/EXT_mesh_gpu_instancing-BCgQFq6R.esm.min.js +2 -0
- package/dist/chunks/EXT_mesh_gpu_instancing-BCgQFq6R.esm.min.js.map +1 -0
- package/dist/chunks/EXT_mesh_gpu_instancing-CpjETToP.esm.js +86 -0
- package/dist/chunks/EXT_mesh_gpu_instancing-CpjETToP.esm.js.map +1 -0
- package/dist/chunks/EXT_meshopt_compression-4wJlE2Do.esm.min.js +2 -0
- package/dist/chunks/EXT_meshopt_compression-4wJlE2Do.esm.min.js.map +1 -0
- package/dist/chunks/EXT_meshopt_compression-BzfAhd0k.esm.js +134 -0
- package/dist/chunks/EXT_meshopt_compression-BzfAhd0k.esm.js.map +1 -0
- package/dist/chunks/EXT_texture_avif-DZwUnu-Q.esm.min.js +2 -0
- package/dist/chunks/EXT_texture_avif-DZwUnu-Q.esm.min.js.map +1 -0
- package/dist/chunks/EXT_texture_avif-yX71qV2W.esm.js +44 -0
- package/dist/chunks/EXT_texture_avif-yX71qV2W.esm.js.map +1 -0
- package/dist/chunks/EXT_texture_webp-COXIl9Hz.esm.min.js +2 -0
- package/dist/chunks/EXT_texture_webp-COXIl9Hz.esm.min.js.map +1 -0
- package/dist/chunks/EXT_texture_webp-nGZbK5Pe.esm.js +43 -0
- package/dist/chunks/EXT_texture_webp-nGZbK5Pe.esm.js.map +1 -0
- package/dist/chunks/ExtrasAsMetadata-DUET0pv1.esm.js +64 -0
- package/dist/chunks/ExtrasAsMetadata-DUET0pv1.esm.js.map +1 -0
- package/dist/chunks/ExtrasAsMetadata-DrcrrXzY.esm.min.js +2 -0
- package/dist/chunks/ExtrasAsMetadata-DrcrrXzY.esm.min.js.map +1 -0
- package/dist/chunks/KHR_animation_pointer-CEl0j147.esm.js +343 -0
- package/dist/chunks/KHR_animation_pointer-CEl0j147.esm.js.map +1 -0
- package/dist/chunks/KHR_animation_pointer-DQ_C7F9b.esm.min.js +2 -0
- package/dist/chunks/KHR_animation_pointer-DQ_C7F9b.esm.min.js.map +1 -0
- package/dist/chunks/KHR_draco_mesh_compression-C8ZM8r8Y.esm.js +617 -0
- package/dist/chunks/KHR_draco_mesh_compression-C8ZM8r8Y.esm.js.map +1 -0
- package/dist/chunks/KHR_draco_mesh_compression-Cl89FvcS.esm.min.js +2 -0
- package/dist/chunks/KHR_draco_mesh_compression-Cl89FvcS.esm.min.js.map +1 -0
- package/dist/chunks/KHR_interactivity-B1iMXK-h.esm.min.js +2 -0
- package/dist/chunks/KHR_interactivity-B1iMXK-h.esm.min.js.map +1 -0
- package/dist/chunks/KHR_interactivity-CLFlYbRq.esm.js +4033 -0
- package/dist/chunks/KHR_interactivity-CLFlYbRq.esm.js.map +1 -0
- package/dist/chunks/KHR_lights_punctual-C-Z_EBCh.esm.min.js +2 -0
- package/dist/chunks/KHR_lights_punctual-C-Z_EBCh.esm.min.js.map +1 -0
- package/dist/chunks/KHR_lights_punctual-DNHTEebm.esm.js +1253 -0
- package/dist/chunks/KHR_lights_punctual-DNHTEebm.esm.js.map +1 -0
- package/dist/chunks/KHR_materials_anisotropy-CvKEdc3d.esm.min.js +2 -0
- package/dist/chunks/KHR_materials_anisotropy-CvKEdc3d.esm.min.js.map +1 -0
- package/dist/chunks/KHR_materials_anisotropy-bDPhW1cK.esm.js +65 -0
- package/dist/chunks/KHR_materials_anisotropy-bDPhW1cK.esm.js.map +1 -0
- package/dist/chunks/KHR_materials_clearcoat-2tGYyrqV.esm.js +96 -0
- package/dist/chunks/KHR_materials_clearcoat-2tGYyrqV.esm.js.map +1 -0
- package/dist/chunks/KHR_materials_clearcoat-KjnHHLBM.esm.min.js +2 -0
- package/dist/chunks/KHR_materials_clearcoat-KjnHHLBM.esm.min.js.map +1 -0
- package/dist/chunks/KHR_materials_diffuse_transmission-Doqv4nTI.esm.min.js +2 -0
- package/dist/chunks/KHR_materials_diffuse_transmission-Doqv4nTI.esm.min.js.map +1 -0
- package/dist/chunks/KHR_materials_diffuse_transmission-xmLmQPZg.esm.js +97 -0
- package/dist/chunks/KHR_materials_diffuse_transmission-xmLmQPZg.esm.js.map +1 -0
- package/dist/chunks/KHR_materials_dispersion-CYhdzD3k.esm.js +62 -0
- package/dist/chunks/KHR_materials_dispersion-CYhdzD3k.esm.js.map +1 -0
- package/dist/chunks/KHR_materials_dispersion-IBPQk406.esm.min.js +2 -0
- package/dist/chunks/KHR_materials_dispersion-IBPQk406.esm.min.js.map +1 -0
- package/dist/chunks/KHR_materials_emissive_strength-CDKCAd-o.esm.min.js +2 -0
- package/dist/chunks/KHR_materials_emissive_strength-CDKCAd-o.esm.min.js.map +1 -0
- package/dist/chunks/KHR_materials_emissive_strength-zMb2iaCe.esm.js +55 -0
- package/dist/chunks/KHR_materials_emissive_strength-zMb2iaCe.esm.js.map +1 -0
- package/dist/chunks/KHR_materials_ior-8K0WIK8R.esm.js +64 -0
- package/dist/chunks/KHR_materials_ior-8K0WIK8R.esm.js.map +1 -0
- package/dist/chunks/KHR_materials_ior-B_s6wgCK.esm.min.js +2 -0
- package/dist/chunks/KHR_materials_ior-B_s6wgCK.esm.min.js.map +1 -0
- package/dist/chunks/KHR_materials_iridescence-DNRfYFR1.esm.js +72 -0
- package/dist/chunks/KHR_materials_iridescence-DNRfYFR1.esm.js.map +1 -0
- package/dist/chunks/KHR_materials_iridescence-Lk_cRmU6.esm.min.js +2 -0
- package/dist/chunks/KHR_materials_iridescence-Lk_cRmU6.esm.min.js.map +1 -0
- package/dist/chunks/KHR_materials_pbrSpecularGlossiness-B2JD91j_.esm.min.js +2 -0
- package/dist/chunks/KHR_materials_pbrSpecularGlossiness-B2JD91j_.esm.min.js.map +1 -0
- package/dist/chunks/KHR_materials_pbrSpecularGlossiness-DKLrtJGj.esm.js +81 -0
- package/dist/chunks/KHR_materials_pbrSpecularGlossiness-DKLrtJGj.esm.js.map +1 -0
- package/dist/chunks/KHR_materials_sheen-C6yyaBK_.esm.min.js +2 -0
- package/dist/chunks/KHR_materials_sheen-C6yyaBK_.esm.min.js.map +1 -0
- package/dist/chunks/KHR_materials_sheen-DSieQRYY.esm.js +85 -0
- package/dist/chunks/KHR_materials_sheen-DSieQRYY.esm.js.map +1 -0
- package/dist/chunks/KHR_materials_specular-C39zFYoJ.esm.min.js +2 -0
- package/dist/chunks/KHR_materials_specular-C39zFYoJ.esm.min.js.map +1 -0
- package/dist/chunks/KHR_materials_specular-D8eHI5SD.esm.js +75 -0
- package/dist/chunks/KHR_materials_specular-D8eHI5SD.esm.js.map +1 -0
- package/dist/chunks/KHR_materials_transmission-BKBEK-Pr.esm.min.js +2 -0
- package/dist/chunks/KHR_materials_transmission-BKBEK-Pr.esm.min.js.map +1 -0
- package/dist/chunks/KHR_materials_transmission-BbZ0iPcE.esm.js +307 -0
- package/dist/chunks/KHR_materials_transmission-BbZ0iPcE.esm.js.map +1 -0
- package/dist/chunks/KHR_materials_unlit-BlH7nnlb.esm.js +74 -0
- package/dist/chunks/KHR_materials_unlit-BlH7nnlb.esm.js.map +1 -0
- package/dist/chunks/KHR_materials_unlit-QeYg1Vup.esm.min.js +2 -0
- package/dist/chunks/KHR_materials_unlit-QeYg1Vup.esm.min.js.map +1 -0
- package/dist/chunks/KHR_materials_variants-BP5P-s3S.esm.min.js +2 -0
- package/dist/chunks/KHR_materials_variants-BP5P-s3S.esm.min.js.map +1 -0
- package/dist/chunks/KHR_materials_variants-YGdMNusB.esm.js +262 -0
- package/dist/chunks/KHR_materials_variants-YGdMNusB.esm.js.map +1 -0
- package/dist/chunks/KHR_materials_volume-DfgYbLDf.esm.min.js +2 -0
- package/dist/chunks/KHR_materials_volume-DfgYbLDf.esm.min.js.map +1 -0
- package/dist/chunks/KHR_materials_volume-Dha6NaMB.esm.js +87 -0
- package/dist/chunks/KHR_materials_volume-Dha6NaMB.esm.js.map +1 -0
- package/dist/chunks/KHR_mesh_quantization-CkgFZADd.esm.min.js +2 -0
- package/dist/chunks/KHR_mesh_quantization-CkgFZADd.esm.min.js.map +1 -0
- package/dist/chunks/KHR_mesh_quantization-DdszX7d9.esm.js +26 -0
- package/dist/chunks/KHR_mesh_quantization-DdszX7d9.esm.js.map +1 -0
- package/dist/chunks/KHR_node_visibility-BVqrUzew.esm.js +46 -0
- package/dist/chunks/KHR_node_visibility-BVqrUzew.esm.js.map +1 -0
- package/dist/chunks/KHR_node_visibility-Dx5_M0yu.esm.min.js +2 -0
- package/dist/chunks/KHR_node_visibility-Dx5_M0yu.esm.min.js.map +1 -0
- package/dist/chunks/KHR_texture_basisu-C6wS0ywQ.esm.js +43 -0
- package/dist/chunks/KHR_texture_basisu-C6wS0ywQ.esm.js.map +1 -0
- package/dist/chunks/KHR_texture_basisu-Ur5SaidK.esm.min.js +2 -0
- package/dist/chunks/KHR_texture_basisu-Ur5SaidK.esm.min.js.map +1 -0
- package/dist/chunks/KHR_texture_transform-C-QM24AO.esm.js +63 -0
- package/dist/chunks/KHR_texture_transform-C-QM24AO.esm.js.map +1 -0
- package/dist/chunks/KHR_texture_transform-Dpdib7O3.esm.min.js +2 -0
- package/dist/chunks/KHR_texture_transform-Dpdib7O3.esm.min.js.map +1 -0
- package/dist/chunks/KHR_xmp_json_ld-CqwNTmrx.esm.js +51 -0
- package/dist/chunks/KHR_xmp_json_ld-CqwNTmrx.esm.js.map +1 -0
- package/dist/chunks/KHR_xmp_json_ld-S6fxRXLv.esm.min.js +2 -0
- package/dist/chunks/KHR_xmp_json_ld-S6fxRXLv.esm.min.js.map +1 -0
- package/dist/chunks/MSFT_audio_emitter-Bjh6cLZb.esm.min.js +2 -0
- package/dist/chunks/MSFT_audio_emitter-Bjh6cLZb.esm.min.js.map +1 -0
- package/dist/chunks/MSFT_audio_emitter-CfsWIxyJ.esm.js +2207 -0
- package/dist/chunks/MSFT_audio_emitter-CfsWIxyJ.esm.js.map +1 -0
- package/dist/chunks/MSFT_lod-CZ__xodu.esm.min.js +2 -0
- package/dist/chunks/MSFT_lod-CZ__xodu.esm.min.js.map +1 -0
- package/dist/chunks/MSFT_lod-CzMztdpf.esm.js +337 -0
- package/dist/chunks/MSFT_lod-CzMztdpf.esm.js.map +1 -0
- package/dist/chunks/MSFT_minecraftMesh-C427ldkX.esm.min.js +2 -0
- package/dist/chunks/MSFT_minecraftMesh-C427ldkX.esm.min.js.map +1 -0
- package/dist/chunks/MSFT_minecraftMesh-DnxkOe8i.esm.js +46 -0
- package/dist/chunks/MSFT_minecraftMesh-DnxkOe8i.esm.js.map +1 -0
- package/dist/chunks/MSFT_sRGBFactors-CkV5G330.esm.js +47 -0
- package/dist/chunks/MSFT_sRGBFactors-CkV5G330.esm.js.map +1 -0
- package/dist/chunks/MSFT_sRGBFactors-DDIZdWTr.esm.min.js +2 -0
- package/dist/chunks/MSFT_sRGBFactors-DDIZdWTr.esm.min.js.map +1 -0
- package/dist/chunks/animationGroup-BKfJQilu.esm.js +2482 -0
- package/dist/chunks/animationGroup-BKfJQilu.esm.js.map +1 -0
- package/dist/chunks/animationGroup-oTbb0nLn.esm.min.js +2 -0
- package/dist/chunks/animationGroup-oTbb0nLn.esm.min.js.map +1 -0
- package/dist/chunks/assetContainer-BDuQ9TBc.esm.js +1720 -0
- package/dist/chunks/assetContainer-BDuQ9TBc.esm.js.map +1 -0
- package/dist/chunks/assetContainer-Dkp9h8Nk.esm.min.js +2 -0
- package/dist/chunks/assetContainer-Dkp9h8Nk.esm.min.js.map +1 -0
- package/dist/chunks/audioEngine-PbWm6naZ.esm.min.js +2 -0
- package/dist/chunks/audioEngine-PbWm6naZ.esm.min.js.map +1 -0
- package/dist/chunks/audioEngine-YGEF6yUK.esm.js +305 -0
- package/dist/chunks/audioEngine-YGEF6yUK.esm.js.map +1 -0
- package/dist/chunks/bakedVertexAnimation-CC0DpkaK.esm.js +114 -0
- package/dist/chunks/bakedVertexAnimation-CC0DpkaK.esm.js.map +1 -0
- package/dist/chunks/bakedVertexAnimation-CFdpJmq_.esm.min.js +2 -0
- package/dist/chunks/bakedVertexAnimation-CFdpJmq_.esm.min.js.map +1 -0
- package/dist/chunks/basisTextureLoader-DT5ZuZjv.esm.min.js +2 -0
- package/dist/chunks/basisTextureLoader-DT5ZuZjv.esm.min.js.map +1 -0
- package/dist/chunks/basisTextureLoader-SHKWwrIc.esm.js +600 -0
- package/dist/chunks/basisTextureLoader-SHKWwrIc.esm.js.map +1 -0
- package/dist/chunks/dds-HX8yeT_e.esm.min.js +2 -0
- package/dist/chunks/dds-HX8yeT_e.esm.min.js.map +1 -0
- package/dist/chunks/dds-vQ-Nb197.esm.js +540 -0
- package/dist/chunks/dds-vQ-Nb197.esm.js.map +1 -0
- package/dist/chunks/ddsTextureLoader-BaUUWNli.esm.min.js +2 -0
- package/dist/chunks/ddsTextureLoader-BaUUWNli.esm.min.js.map +1 -0
- package/dist/chunks/ddsTextureLoader-DQNi9sT8.esm.js +88 -0
- package/dist/chunks/ddsTextureLoader-DQNi9sT8.esm.js.map +1 -0
- package/dist/chunks/decalFragment-D2w8icPy.esm.js +18 -0
- package/dist/chunks/decalFragment-D2w8icPy.esm.js.map +1 -0
- package/dist/chunks/decalFragment-xzxcUxJ8.esm.min.js +2 -0
- package/dist/chunks/decalFragment-xzxcUxJ8.esm.min.js.map +1 -0
- package/dist/chunks/default.fragment-3u7hEV9p.esm.js +433 -0
- package/dist/chunks/default.fragment-3u7hEV9p.esm.js.map +1 -0
- package/dist/chunks/default.fragment-BNyzlMGw.esm.js +497 -0
- package/dist/chunks/default.fragment-BNyzlMGw.esm.js.map +1 -0
- package/dist/chunks/default.fragment-BYeFenXp.esm.min.js +2 -0
- package/dist/chunks/default.fragment-BYeFenXp.esm.min.js.map +1 -0
- package/dist/chunks/default.fragment-BZTPSd0S.esm.min.js +2 -0
- package/dist/chunks/default.fragment-BZTPSd0S.esm.min.js.map +1 -0
- package/dist/chunks/default.vertex-COzqeVfA.esm.js +201 -0
- package/dist/chunks/default.vertex-COzqeVfA.esm.js.map +1 -0
- package/dist/chunks/default.vertex-Cq8745-M.esm.js +181 -0
- package/dist/chunks/default.vertex-Cq8745-M.esm.js.map +1 -0
- package/dist/chunks/default.vertex-gHqSMlcv.esm.min.js +2 -0
- package/dist/chunks/default.vertex-gHqSMlcv.esm.min.js.map +1 -0
- package/dist/chunks/default.vertex-uxBts4pr.esm.min.js +2 -0
- package/dist/chunks/default.vertex-uxBts4pr.esm.min.js.map +1 -0
- package/dist/chunks/defaultUboDeclaration-C8a-iWXW.esm.js +13 -0
- package/dist/chunks/defaultUboDeclaration-C8a-iWXW.esm.js.map +1 -0
- package/dist/chunks/defaultUboDeclaration-COUxsT02.esm.min.js +2 -0
- package/dist/chunks/defaultUboDeclaration-COUxsT02.esm.min.js.map +1 -0
- package/dist/chunks/defaultUboDeclaration-GAZtMI4g.esm.js +15 -0
- package/dist/chunks/defaultUboDeclaration-GAZtMI4g.esm.js.map +1 -0
- package/dist/chunks/defaultUboDeclaration-wunm8_kR.esm.min.js +2 -0
- package/dist/chunks/defaultUboDeclaration-wunm8_kR.esm.min.js.map +1 -0
- package/dist/chunks/drawWrapper.functions-CKg3_9x4.esm.js +11 -0
- package/dist/chunks/drawWrapper.functions-CKg3_9x4.esm.js.map +1 -0
- package/dist/chunks/drawWrapper.functions-ng7lvueZ.esm.min.js +2 -0
- package/dist/chunks/drawWrapper.functions-ng7lvueZ.esm.min.js.map +1 -0
- package/dist/chunks/dumpTools-DEHzgH2e.esm.min.js +2 -0
- package/dist/chunks/dumpTools-DEHzgH2e.esm.min.js.map +1 -0
- package/dist/chunks/dumpTools-cCiLRzhx.esm.js +200 -0
- package/dist/chunks/dumpTools-cCiLRzhx.esm.js.map +1 -0
- package/dist/chunks/engine-CtoA0nUe.esm.js +2220 -0
- package/dist/chunks/engine-CtoA0nUe.esm.js.map +1 -0
- package/dist/chunks/engine-D-ALFUqi.esm.min.js +2 -0
- package/dist/chunks/engine-D-ALFUqi.esm.min.js.map +1 -0
- package/dist/chunks/engine.common-BBs3lswu.esm.js +1162 -0
- package/dist/chunks/engine.common-BBs3lswu.esm.js.map +1 -0
- package/dist/chunks/engine.common-fhQflGOP.esm.min.js +2 -0
- package/dist/chunks/engine.common-fhQflGOP.esm.min.js.map +1 -0
- package/dist/chunks/envTextureLoader-BQ0ZLpIZ.esm.js +64 -0
- package/dist/chunks/envTextureLoader-BQ0ZLpIZ.esm.js.map +1 -0
- package/dist/chunks/envTextureLoader-Clo69VZm.esm.min.js +2 -0
- package/dist/chunks/envTextureLoader-Clo69VZm.esm.min.js.map +1 -0
- package/dist/chunks/environmentTextureTools-CKcnvQvE.esm.min.js +2 -0
- package/dist/chunks/environmentTextureTools-CKcnvQvE.esm.min.js.map +1 -0
- package/dist/chunks/environmentTextureTools-Dv4OYysb.esm.js +382 -0
- package/dist/chunks/environmentTextureTools-Dv4OYysb.esm.js.map +1 -0
- package/dist/chunks/exrTextureLoader-1Qk-QkDv.esm.min.js +2 -0
- package/dist/chunks/exrTextureLoader-1Qk-QkDv.esm.min.js.map +1 -0
- package/dist/chunks/exrTextureLoader-DFUZJxaC.esm.js +1682 -0
- package/dist/chunks/exrTextureLoader-DFUZJxaC.esm.js.map +1 -0
- package/dist/chunks/fogFragment-B4-SlSDo.esm.js +101 -0
- package/dist/chunks/fogFragment-B4-SlSDo.esm.js.map +1 -0
- package/dist/chunks/fogFragment-BKD4e7Ph.esm.min.js +2 -0
- package/dist/chunks/fogFragment-BKD4e7Ph.esm.min.js.map +1 -0
- package/dist/chunks/fogFragment-DTaKEUGB.esm.min.js +2 -0
- package/dist/chunks/fogFragment-DTaKEUGB.esm.min.js.map +1 -0
- package/dist/chunks/fogFragment-h9FPnPoM.esm.js +102 -0
- package/dist/chunks/fogFragment-h9FPnPoM.esm.js.map +1 -0
- package/dist/chunks/fresnelFunction-DghEYnyJ.esm.js +12 -0
- package/dist/chunks/fresnelFunction-DghEYnyJ.esm.js.map +1 -0
- package/dist/chunks/fresnelFunction-DocHkMCd.esm.min.js +2 -0
- package/dist/chunks/fresnelFunction-DocHkMCd.esm.min.js.map +1 -0
- package/dist/chunks/glTFLoader-c3PKGkcy.esm.js +7606 -0
- package/dist/chunks/glTFLoader-c3PKGkcy.esm.js.map +1 -0
- package/dist/chunks/glTFLoader-vKjW1nNZ.esm.min.js +2 -0
- package/dist/chunks/glTFLoader-vKjW1nNZ.esm.min.js.map +1 -0
- package/dist/chunks/glTFLoaderAnimation-B6CGd8Cm.esm.min.js +2 -0
- package/dist/chunks/glTFLoaderAnimation-B6CGd8Cm.esm.min.js.map +1 -0
- package/dist/chunks/glTFLoaderAnimation-BcKbtbAU.esm.js +77 -0
- package/dist/chunks/glTFLoaderAnimation-BcKbtbAU.esm.js.map +1 -0
- package/dist/chunks/gltfPathToObjectConverter-Dyt_Y9jE.esm.min.js +2 -0
- package/dist/chunks/gltfPathToObjectConverter-Dyt_Y9jE.esm.min.js.map +1 -0
- package/dist/chunks/gltfPathToObjectConverter-GcUmfOyo.esm.js +67 -0
- package/dist/chunks/gltfPathToObjectConverter-GcUmfOyo.esm.js.map +1 -0
- package/dist/chunks/harmonicsFunctions-BFgQNOzG.esm.js +35 -0
- package/dist/chunks/harmonicsFunctions-BFgQNOzG.esm.js.map +1 -0
- package/dist/chunks/harmonicsFunctions-BnOdQYv0.esm.min.js +2 -0
- package/dist/chunks/harmonicsFunctions-BnOdQYv0.esm.min.js.map +1 -0
- package/dist/chunks/harmonicsFunctions-BryBP7jB.esm.js +34 -0
- package/dist/chunks/harmonicsFunctions-BryBP7jB.esm.js.map +1 -0
- package/dist/chunks/harmonicsFunctions-CKGE8BeQ.esm.min.js +2 -0
- package/dist/chunks/harmonicsFunctions-CKGE8BeQ.esm.min.js.map +1 -0
- package/dist/chunks/hdrTextureLoader-CxAR4jBp.esm.min.js +2 -0
- package/dist/chunks/hdrTextureLoader-CxAR4jBp.esm.min.js.map +1 -0
- package/dist/chunks/hdrTextureLoader-DezOXXlV.esm.js +252 -0
- package/dist/chunks/hdrTextureLoader-DezOXXlV.esm.js.map +1 -0
- package/dist/chunks/helperFunctions-BCdxmjWw.esm.min.js +2 -0
- package/dist/chunks/helperFunctions-BCdxmjWw.esm.min.js.map +1 -0
- package/dist/chunks/helperFunctions-CK2I9A9w.esm.min.js +2 -0
- package/dist/chunks/helperFunctions-CK2I9A9w.esm.min.js.map +1 -0
- package/dist/chunks/helperFunctions-D3PjirGO.esm.js +80 -0
- package/dist/chunks/helperFunctions-D3PjirGO.esm.js.map +1 -0
- package/dist/chunks/helperFunctions-DVaaLHM8.esm.js +108 -0
- package/dist/chunks/helperFunctions-DVaaLHM8.esm.js.map +1 -0
- package/dist/chunks/index-BJLUfgJX.esm.min.js +57 -0
- package/dist/chunks/index-BJLUfgJX.esm.min.js.map +1 -0
- package/dist/chunks/index-ft-NqTCE.esm.js +74479 -0
- package/dist/chunks/index-ft-NqTCE.esm.js.map +1 -0
- package/dist/chunks/ktxTextureLoader-D9IBlv-B.esm.js +814 -0
- package/dist/chunks/ktxTextureLoader-D9IBlv-B.esm.js.map +1 -0
- package/dist/chunks/ktxTextureLoader-Df3A32Nm.esm.min.js +2 -0
- package/dist/chunks/ktxTextureLoader-Df3A32Nm.esm.min.js.map +1 -0
- package/dist/chunks/logDepthDeclaration-BMa31LAb.esm.min.js +2 -0
- package/dist/chunks/logDepthDeclaration-BMa31LAb.esm.min.js.map +1 -0
- package/dist/chunks/logDepthDeclaration-BffNcd79.esm.min.js +2 -0
- package/dist/chunks/logDepthDeclaration-BffNcd79.esm.min.js.map +1 -0
- package/dist/chunks/logDepthDeclaration-BkgrzFr-.esm.js +35 -0
- package/dist/chunks/logDepthDeclaration-BkgrzFr-.esm.js.map +1 -0
- package/dist/chunks/logDepthDeclaration-uuaJZU_f.esm.js +11 -0
- package/dist/chunks/logDepthDeclaration-uuaJZU_f.esm.js.map +1 -0
- package/dist/chunks/logDepthVertex-C-tEJ4YD.esm.js +77 -0
- package/dist/chunks/logDepthVertex-C-tEJ4YD.esm.js.map +1 -0
- package/dist/chunks/logDepthVertex-CDQb6tt8.esm.min.js +2 -0
- package/dist/chunks/logDepthVertex-CDQb6tt8.esm.min.js.map +1 -0
- package/dist/chunks/logDepthVertex-DiLmNz-k.esm.js +77 -0
- package/dist/chunks/logDepthVertex-DiLmNz-k.esm.js.map +1 -0
- package/dist/chunks/logDepthVertex-Dpw-9K14.esm.min.js +2 -0
- package/dist/chunks/logDepthVertex-Dpw-9K14.esm.min.js.map +1 -0
- package/dist/chunks/mainUVVaryingDeclaration-BP9Oh5Cu.esm.js +11 -0
- package/dist/chunks/mainUVVaryingDeclaration-BP9Oh5Cu.esm.js.map +1 -0
- package/dist/chunks/mainUVVaryingDeclaration-CEXOi0id.esm.js +11 -0
- package/dist/chunks/mainUVVaryingDeclaration-CEXOi0id.esm.js.map +1 -0
- package/dist/chunks/mainUVVaryingDeclaration-CS_CRHYh.esm.min.js +2 -0
- package/dist/chunks/mainUVVaryingDeclaration-CS_CRHYh.esm.min.js.map +1 -0
- package/dist/chunks/mainUVVaryingDeclaration-z3TYsjH4.esm.min.js +2 -0
- package/dist/chunks/mainUVVaryingDeclaration-z3TYsjH4.esm.min.js.map +1 -0
- package/dist/chunks/meshUboDeclaration-BWZH2NAD.esm.js +24 -0
- package/dist/chunks/meshUboDeclaration-BWZH2NAD.esm.js.map +1 -0
- package/dist/chunks/meshUboDeclaration-GE0scsI9.esm.min.js +2 -0
- package/dist/chunks/meshUboDeclaration-GE0scsI9.esm.min.js.map +1 -0
- package/dist/chunks/objFileLoader-BVetxPxf.esm.min.js +2 -0
- package/dist/chunks/objFileLoader-BVetxPxf.esm.min.js.map +1 -0
- package/dist/chunks/objFileLoader-Bf8yc_Mr.esm.js +1338 -0
- package/dist/chunks/objFileLoader-Bf8yc_Mr.esm.js.map +1 -0
- package/dist/chunks/oitFragment-CB2fmldL.esm.min.js +2 -0
- package/dist/chunks/oitFragment-CB2fmldL.esm.min.js.map +1 -0
- package/dist/chunks/oitFragment-CVpK7aQA.esm.min.js +2 -0
- package/dist/chunks/oitFragment-CVpK7aQA.esm.min.js.map +1 -0
- package/dist/chunks/oitFragment-Di4uP35N.esm.js +1051 -0
- package/dist/chunks/oitFragment-Di4uP35N.esm.js.map +1 -0
- package/dist/chunks/oitFragment-DxB5sJ7I.esm.js +1210 -0
- package/dist/chunks/oitFragment-DxB5sJ7I.esm.js.map +1 -0
- package/dist/chunks/pass.fragment-BOOcB5_Y.esm.js +15 -0
- package/dist/chunks/pass.fragment-BOOcB5_Y.esm.js.map +1 -0
- package/dist/chunks/pass.fragment-CxR7KxRY.esm.min.js +2 -0
- package/dist/chunks/pass.fragment-CxR7KxRY.esm.min.js.map +1 -0
- package/dist/chunks/pass.fragment-DQ5Y_qQy.esm.js +15 -0
- package/dist/chunks/pass.fragment-DQ5Y_qQy.esm.js.map +1 -0
- package/dist/chunks/pass.fragment-DsSd-rC5.esm.min.js +2 -0
- package/dist/chunks/pass.fragment-DsSd-rC5.esm.min.js.map +1 -0
- package/dist/chunks/pbr.fragment-16p9WLNX.esm.js +3270 -0
- package/dist/chunks/pbr.fragment-16p9WLNX.esm.js.map +1 -0
- package/dist/chunks/pbr.fragment-CypWnzkM.esm.min.js +2 -0
- package/dist/chunks/pbr.fragment-CypWnzkM.esm.min.js.map +1 -0
- package/dist/chunks/pbr.fragment-Dj075y2L.esm.min.js +2 -0
- package/dist/chunks/pbr.fragment-Dj075y2L.esm.min.js.map +1 -0
- package/dist/chunks/pbr.fragment-DnltvcZL.esm.js +3230 -0
- package/dist/chunks/pbr.fragment-DnltvcZL.esm.js.map +1 -0
- package/dist/chunks/pbr.vertex-CtJMBHs5.esm.min.js +2 -0
- package/dist/chunks/pbr.vertex-CtJMBHs5.esm.min.js.map +1 -0
- package/dist/chunks/pbr.vertex-CxEuPOXA.esm.js +214 -0
- package/dist/chunks/pbr.vertex-CxEuPOXA.esm.js.map +1 -0
- package/dist/chunks/pbr.vertex-DkGFY3yL.esm.min.js +2 -0
- package/dist/chunks/pbr.vertex-DkGFY3yL.esm.min.js.map +1 -0
- package/dist/chunks/pbr.vertex-OluCj4rQ.esm.js +338 -0
- package/dist/chunks/pbr.vertex-OluCj4rQ.esm.js.map +1 -0
- package/dist/chunks/postprocess.vertex-Cm9j6ldo.esm.min.js +2 -0
- package/dist/chunks/postprocess.vertex-Cm9j6ldo.esm.min.js.map +1 -0
- package/dist/chunks/postprocess.vertex-DAzFX1GF.esm.js +20 -0
- package/dist/chunks/postprocess.vertex-DAzFX1GF.esm.js.map +1 -0
- package/dist/chunks/rawTexture-BdnztUXL.esm.js +191 -0
- package/dist/chunks/rawTexture-BdnztUXL.esm.js.map +1 -0
- package/dist/chunks/rawTexture-YAJTylc3.esm.min.js +2 -0
- package/dist/chunks/rawTexture-YAJTylc3.esm.min.js.map +1 -0
- package/dist/chunks/rgbdDecode.fragment-BIW9mWHJ.esm.min.js +2 -0
- package/dist/chunks/rgbdDecode.fragment-BIW9mWHJ.esm.min.js.map +1 -0
- package/dist/chunks/rgbdDecode.fragment-BSYBZgmx.esm.js +17 -0
- package/dist/chunks/rgbdDecode.fragment-BSYBZgmx.esm.js.map +1 -0
- package/dist/chunks/rgbdDecode.fragment-CM4RUdq0.esm.min.js +2 -0
- package/dist/chunks/rgbdDecode.fragment-CM4RUdq0.esm.min.js.map +1 -0
- package/dist/chunks/rgbdDecode.fragment-a0vLXyTd.esm.js +17 -0
- package/dist/chunks/rgbdDecode.fragment-a0vLXyTd.esm.js.map +1 -0
- package/dist/chunks/rgbdEncode.fragment-BGFa9L4r.esm.js +17 -0
- package/dist/chunks/rgbdEncode.fragment-BGFa9L4r.esm.js.map +1 -0
- package/dist/chunks/rgbdEncode.fragment-CDZppTnS.esm.js +17 -0
- package/dist/chunks/rgbdEncode.fragment-CDZppTnS.esm.js.map +1 -0
- package/dist/chunks/rgbdEncode.fragment-Cs9jvfWk.esm.min.js +2 -0
- package/dist/chunks/rgbdEncode.fragment-Cs9jvfWk.esm.min.js.map +1 -0
- package/dist/chunks/rgbdEncode.fragment-M7N8vQ29.esm.min.js +2 -0
- package/dist/chunks/rgbdEncode.fragment-M7N8vQ29.esm.min.js.map +1 -0
- package/dist/chunks/splatFileLoader-Bg4G8Ae2.esm.min.js +2 -0
- package/dist/chunks/splatFileLoader-Bg4G8Ae2.esm.min.js.map +1 -0
- package/dist/chunks/splatFileLoader-CCCmIOu_.esm.js +4312 -0
- package/dist/chunks/splatFileLoader-CCCmIOu_.esm.js.map +1 -0
- package/dist/chunks/standardMaterial-DnghlXVE.esm.min.js +2 -0
- package/dist/chunks/standardMaterial-DnghlXVE.esm.min.js.map +1 -0
- package/dist/chunks/standardMaterial-DsjgYxIo.esm.js +1805 -0
- package/dist/chunks/standardMaterial-DsjgYxIo.esm.js.map +1 -0
- package/dist/chunks/stlFileLoader-B9qcDBe1.esm.min.js +2 -0
- package/dist/chunks/stlFileLoader-B9qcDBe1.esm.min.js.map +1 -0
- package/dist/chunks/stlFileLoader-C-YVvwrI.esm.js +238 -0
- package/dist/chunks/stlFileLoader-C-YVvwrI.esm.js.map +1 -0
- package/dist/chunks/tgaTextureLoader-CDVceO8i.esm.min.js +2 -0
- package/dist/chunks/tgaTextureLoader-CDVceO8i.esm.min.js.map +1 -0
- package/dist/chunks/tgaTextureLoader-CIl0jvmm.esm.js +349 -0
- package/dist/chunks/tgaTextureLoader-CIl0jvmm.esm.js.map +1 -0
- package/dist/chunks/thinEngine-CJHphAue.esm.js +3842 -0
- package/dist/chunks/thinEngine-CJHphAue.esm.js.map +1 -0
- package/dist/chunks/thinEngine-DRwVgQob.esm.min.js +2 -0
- package/dist/chunks/thinEngine-DRwVgQob.esm.min.js.map +1 -0
- package/dist/chunks/thinInstanceMesh-C46IYDPb.esm.js +314 -0
- package/dist/chunks/thinInstanceMesh-C46IYDPb.esm.js.map +1 -0
- package/dist/chunks/thinInstanceMesh-DEwtxS2k.esm.min.js +2 -0
- package/dist/chunks/thinInstanceMesh-DEwtxS2k.esm.min.js.map +1 -0
- package/dist/chunks/vertexColorMixing-B-uQHNRm.esm.js +412 -0
- package/dist/chunks/vertexColorMixing-B-uQHNRm.esm.js.map +1 -0
- package/dist/chunks/vertexColorMixing-BOFnmWz0.esm.js +522 -0
- package/dist/chunks/vertexColorMixing-BOFnmWz0.esm.js.map +1 -0
- package/dist/chunks/vertexColorMixing-BY6WcZDw.esm.min.js +2 -0
- package/dist/chunks/vertexColorMixing-BY6WcZDw.esm.min.js.map +1 -0
- package/dist/chunks/vertexColorMixing-CQAc7_ro.esm.min.js +2 -0
- package/dist/chunks/vertexColorMixing-CQAc7_ro.esm.min.js.map +1 -0
- package/dist/chunks/webgpuEngine-CyWPMPDu.esm.js +11533 -0
- package/dist/chunks/webgpuEngine-CyWPMPDu.esm.js.map +1 -0
- package/dist/chunks/webgpuEngine-xvli57PA.esm.min.js +2 -0
- package/dist/chunks/webgpuEngine-xvli57PA.esm.min.js.map +1 -0
- package/dist/chunks/workerPool-BUOov2K1.esm.js +122 -0
- package/dist/chunks/workerPool-BUOov2K1.esm.js.map +1 -0
- package/dist/chunks/workerPool-BWHiDmEZ.esm.min.js +2 -0
- package/dist/chunks/workerPool-BWHiDmEZ.esm.min.js.map +1 -0
- package/docs/ViewerDefault.jpg +0 -0
- package/docs/ViewerParts.jpg +0 -0
- package/docs/ViewerSlots.jpg +0 -0
- package/docs/ViewerStyled.jpg +0 -0
- package/lib/index.d.ts +568 -0
- package/lib/index.js +2067 -0
- package/lib/index.js.map +1 -0
- package/package.json +18 -27
- package/readme.md +145 -21
- package/configuration/configuration.d.ts +0 -107
- package/configuration/configuration.js +0 -16
- package/configuration/configuration.js.map +0 -1
- package/configuration/configurationCompatibility.d.ts +0 -8
- package/configuration/configurationCompatibility.js +0 -66
- package/configuration/configurationCompatibility.js.map +0 -1
- package/configuration/configurationContainer.d.ts +0 -10
- package/configuration/configurationContainer.js +0 -10
- package/configuration/configurationContainer.js.map +0 -1
- package/configuration/globals.d.ts +0 -6
- package/configuration/globals.js +0 -18
- package/configuration/globals.js.map +0 -1
- package/configuration/index.d.ts +0 -2
- package/configuration/index.js +0 -4
- package/configuration/index.js.map +0 -1
- package/configuration/interfaces/cameraConfiguration.d.ts +0 -31
- package/configuration/interfaces/cameraConfiguration.js +0 -2
- package/configuration/interfaces/cameraConfiguration.js.map +0 -1
- package/configuration/interfaces/colorGradingConfiguration.d.ts +0 -81
- package/configuration/interfaces/colorGradingConfiguration.js +0 -2
- package/configuration/interfaces/colorGradingConfiguration.js.map +0 -1
- package/configuration/interfaces/defaultRenderingPipelineConfiguration.d.ts +0 -20
- package/configuration/interfaces/defaultRenderingPipelineConfiguration.js +0 -2
- package/configuration/interfaces/defaultRenderingPipelineConfiguration.js.map +0 -1
- package/configuration/interfaces/environmentMapConfiguration.d.ts +0 -22
- package/configuration/interfaces/environmentMapConfiguration.js +0 -2
- package/configuration/interfaces/environmentMapConfiguration.js.map +0 -1
- package/configuration/interfaces/groundConfiguration.d.ts +0 -24
- package/configuration/interfaces/groundConfiguration.js +0 -2
- package/configuration/interfaces/groundConfiguration.js.map +0 -1
- package/configuration/interfaces/imageProcessingConfiguration.d.ts +0 -45
- package/configuration/interfaces/imageProcessingConfiguration.js +0 -2
- package/configuration/interfaces/imageProcessingConfiguration.js.map +0 -1
- package/configuration/interfaces/index.d.ts +0 -15
- package/configuration/interfaces/index.js +0 -16
- package/configuration/interfaces/index.js.map +0 -1
- package/configuration/interfaces/lightConfiguration.d.ts +0 -60
- package/configuration/interfaces/lightConfiguration.js +0 -2
- package/configuration/interfaces/lightConfiguration.js.map +0 -1
- package/configuration/interfaces/modelAnimationConfiguration.d.ts +0 -26
- package/configuration/interfaces/modelAnimationConfiguration.js +0 -2
- package/configuration/interfaces/modelAnimationConfiguration.js.map +0 -1
- package/configuration/interfaces/modelConfiguration.d.ts +0 -65
- package/configuration/interfaces/modelConfiguration.js +0 -2
- package/configuration/interfaces/modelConfiguration.js.map +0 -1
- package/configuration/interfaces/observersConfiguration.d.ts +0 -5
- package/configuration/interfaces/observersConfiguration.js +0 -2
- package/configuration/interfaces/observersConfiguration.js.map +0 -1
- package/configuration/interfaces/sceneConfiguration.d.ts +0 -48
- package/configuration/interfaces/sceneConfiguration.js +0 -2
- package/configuration/interfaces/sceneConfiguration.js.map +0 -1
- package/configuration/interfaces/sceneOptimizerConfiguration.d.ts +0 -23
- package/configuration/interfaces/sceneOptimizerConfiguration.js +0 -2
- package/configuration/interfaces/sceneOptimizerConfiguration.js.map +0 -1
- package/configuration/interfaces/skyboxConfiguration.d.ts +0 -21
- package/configuration/interfaces/skyboxConfiguration.js +0 -2
- package/configuration/interfaces/skyboxConfiguration.js.map +0 -1
- package/configuration/interfaces/templateConfiguration.d.ts +0 -67
- package/configuration/interfaces/templateConfiguration.js +0 -2
- package/configuration/interfaces/templateConfiguration.js.map +0 -1
- package/configuration/interfaces/vrConfiguration.d.ts +0 -16
- package/configuration/interfaces/vrConfiguration.js +0 -2
- package/configuration/interfaces/vrConfiguration.js.map +0 -1
- package/configuration/loader.d.ts +0 -4
- package/configuration/loader.js +0 -17
- package/configuration/loader.js.map +0 -1
- package/configuration/mappers.d.ts +0 -43
- package/configuration/mappers.js +0 -193
- package/configuration/mappers.js.map +0 -1
- package/configuration/renderOnlyLoader.d.ts +0 -33
- package/configuration/renderOnlyLoader.js +0 -162
- package/configuration/renderOnlyLoader.js.map +0 -1
- package/configuration/types/default.d.ts +0 -6
- package/configuration/types/default.js +0 -121
- package/configuration/types/default.js.map +0 -1
- package/configuration/types/environmentMap.d.ts +0 -5
- package/configuration/types/environmentMap.js +0 -14
- package/configuration/types/environmentMap.js.map +0 -1
- package/configuration/types/extended.d.ts +0 -6
- package/configuration/types/extended.js +0 -317
- package/configuration/types/extended.js.map +0 -1
- package/configuration/types/index.d.ts +0 -14
- package/configuration/types/index.js +0 -51
- package/configuration/types/index.js.map +0 -1
- package/configuration/types/minimal.d.ts +0 -6
- package/configuration/types/minimal.js +0 -43
- package/configuration/types/minimal.js.map +0 -1
- package/configuration/types/renderOnlyDefault.d.ts +0 -30
- package/configuration/types/renderOnlyDefault.js +0 -31
- package/configuration/types/renderOnlyDefault.js.map +0 -1
- package/configuration/types/shadowLight.d.ts +0 -9
- package/configuration/types/shadowLight.js +0 -64
- package/configuration/types/shadowLight.js.map +0 -1
- package/helper/index.d.ts +0 -29
- package/helper/index.js +0 -66
- package/helper/index.js.map +0 -1
- package/index.d.ts +0 -30
- package/index.js +0 -46
- package/index.js.map +0 -1
- package/initializer.d.ts +0 -11
- package/initializer.js +0 -35
- package/initializer.js.map +0 -1
- package/interfaces.d.ts +0 -5
- package/interfaces.js +0 -7
- package/interfaces.js.map +0 -1
- package/labs/environmentSerializer.d.ts +0 -126
- package/labs/environmentSerializer.js +0 -191
- package/labs/environmentSerializer.js.map +0 -1
- package/labs/texture.d.ts +0 -183
- package/labs/texture.js +0 -351
- package/labs/texture.js.map +0 -1
- package/labs/viewerLabs.d.ts +0 -51
- package/labs/viewerLabs.js +0 -134
- package/labs/viewerLabs.js.map +0 -1
- package/loader/modelLoader.d.ts +0 -56
- package/loader/modelLoader.js +0 -202
- package/loader/modelLoader.js.map +0 -1
- package/loader/plugins/applyMaterialConfig.d.ts +0 -12
- package/loader/plugins/applyMaterialConfig.js +0 -16
- package/loader/plugins/applyMaterialConfig.js.map +0 -1
- package/loader/plugins/extendedMaterialLoaderPlugin.d.ts +0 -9
- package/loader/plugins/extendedMaterialLoaderPlugin.js +0 -16
- package/loader/plugins/extendedMaterialLoaderPlugin.js.map +0 -1
- package/loader/plugins/index.d.ts +0 -19
- package/loader/plugins/index.js +0 -44
- package/loader/plugins/index.js.map +0 -1
- package/loader/plugins/loaderPlugin.d.ts +0 -24
- package/loader/plugins/loaderPlugin.js +0 -2
- package/loader/plugins/loaderPlugin.js.map +0 -1
- package/loader/plugins/msftLodLoaderPlugin.d.ts +0 -12
- package/loader/plugins/msftLodLoaderPlugin.js +0 -21
- package/loader/plugins/msftLodLoaderPlugin.js.map +0 -1
- package/loader/plugins/telemetryLoaderPlugin.d.ts +0 -12
- package/loader/plugins/telemetryLoaderPlugin.js +0 -36
- package/loader/plugins/telemetryLoaderPlugin.js.map +0 -1
- package/managers/observablesManager.d.ts +0 -66
- package/managers/observablesManager.js +0 -35
- package/managers/observablesManager.js.map +0 -1
- package/managers/sceneManager.d.ts +0 -245
- package/managers/sceneManager.js +0 -1375
- package/managers/sceneManager.js.map +0 -1
- package/managers/telemetryManager.d.ts +0 -78
- package/managers/telemetryManager.js +0 -117
- package/managers/telemetryManager.js.map +0 -1
- package/model/modelAnimation.d.ts +0 -215
- package/model/modelAnimation.js +0 -237
- package/model/modelAnimation.js.map +0 -1
- package/model/viewerModel.d.ts +0 -233
- package/model/viewerModel.js +0 -673
- package/model/viewerModel.js.map +0 -1
- package/optimizer/custom/extended.d.ts +0 -13
- package/optimizer/custom/extended.js +0 -101
- package/optimizer/custom/extended.js.map +0 -1
- package/optimizer/custom/index.d.ts +0 -9
- package/optimizer/custom/index.js +0 -26
- package/optimizer/custom/index.js.map +0 -1
- package/renderOnlyIndex.d.ts +0 -11
- package/renderOnlyIndex.js +0 -18
- package/renderOnlyIndex.js.map +0 -1
- package/templating/eventManager.d.ts +0 -35
- package/templating/eventManager.js +0 -66
- package/templating/eventManager.js.map +0 -1
- package/templating/plugins/hdButtonPlugin.d.ts +0 -9
- package/templating/plugins/hdButtonPlugin.js +0 -22
- package/templating/plugins/hdButtonPlugin.js.map +0 -1
- package/templating/plugins/printButton.d.ts +0 -9
- package/templating/plugins/printButton.js +0 -41
- package/templating/plugins/printButton.js.map +0 -1
- package/templating/templateManager.d.ts +0 -197
- package/templating/templateManager.js +0 -561
- package/templating/templateManager.js.map +0 -1
- package/templating/viewerTemplatePlugin.d.ts +0 -21
- package/templating/viewerTemplatePlugin.js +0 -69
- package/templating/viewerTemplatePlugin.js.map +0 -1
- package/viewer/defaultViewer.d.ts +0 -130
- package/viewer/defaultViewer.js +0 -672
- package/viewer/defaultViewer.js.map +0 -1
- package/viewer/renderOnlyViewer.d.ts +0 -9
- package/viewer/renderOnlyViewer.js +0 -46
- package/viewer/renderOnlyViewer.js.map +0 -1
- package/viewer/viewer.d.ts +0 -258
- package/viewer/viewer.js +0 -783
- package/viewer/viewer.js.map +0 -1
- package/viewer/viewerManager.d.ts +0 -58
- package/viewer/viewerManager.js +0 -91
- package/viewer/viewerManager.js.map +0 -1
- package/viewer/viewerWithTemplate.d.ts +0 -9
- package/viewer/viewerWithTemplate.js +0 -20
- package/viewer/viewerWithTemplate.js.map +0 -1
|
@@ -0,0 +1,337 @@
|
|
|
1
|
+
import { aU as Observable, bu as Deferred, aP as unregisterGLTFExtension, aQ as registerGLTFExtension } from './index-ft-NqTCE.esm.js';
|
|
2
|
+
import { G as GLTFLoader, A as ArrayItem } from './glTFLoader-c3PKGkcy.esm.js';
|
|
3
|
+
import './rawTexture-BdnztUXL.esm.js';
|
|
4
|
+
import './assetContainer-BDuQ9TBc.esm.js';
|
|
5
|
+
import './glTFLoaderAnimation-BcKbtbAU.esm.js';
|
|
6
|
+
|
|
7
|
+
const NAME = "MSFT_lod";
|
|
8
|
+
/**
|
|
9
|
+
* [Specification](https://github.com/KhronosGroup/glTF/blob/main/extensions/2.0/Vendor/MSFT_lod/README.md)
|
|
10
|
+
*/
|
|
11
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
12
|
+
class MSFT_lod {
|
|
13
|
+
/**
|
|
14
|
+
* @internal
|
|
15
|
+
*/
|
|
16
|
+
constructor(loader) {
|
|
17
|
+
/**
|
|
18
|
+
* The name of this extension.
|
|
19
|
+
*/
|
|
20
|
+
this.name = NAME;
|
|
21
|
+
/**
|
|
22
|
+
* Defines a number that determines the order the extensions are applied.
|
|
23
|
+
*/
|
|
24
|
+
this.order = 100;
|
|
25
|
+
/**
|
|
26
|
+
* Maximum number of LODs to load, starting from the lowest LOD.
|
|
27
|
+
*/
|
|
28
|
+
this.maxLODsToLoad = 10;
|
|
29
|
+
/**
|
|
30
|
+
* Observable raised when all node LODs of one level are loaded.
|
|
31
|
+
* The event data is the index of the loaded LOD starting from zero.
|
|
32
|
+
* Dispose the loader to cancel the loading of the next level of LODs.
|
|
33
|
+
*/
|
|
34
|
+
this.onNodeLODsLoadedObservable = new Observable();
|
|
35
|
+
/**
|
|
36
|
+
* Observable raised when all material LODs of one level are loaded.
|
|
37
|
+
* The event data is the index of the loaded LOD starting from zero.
|
|
38
|
+
* Dispose the loader to cancel the loading of the next level of LODs.
|
|
39
|
+
*/
|
|
40
|
+
this.onMaterialLODsLoadedObservable = new Observable();
|
|
41
|
+
this._bufferLODs = new Array();
|
|
42
|
+
this._nodeIndexLOD = null;
|
|
43
|
+
this._nodeSignalLODs = new Array();
|
|
44
|
+
this._nodePromiseLODs = new Array();
|
|
45
|
+
this._nodeBufferLODs = new Array();
|
|
46
|
+
this._materialIndexLOD = null;
|
|
47
|
+
this._materialSignalLODs = new Array();
|
|
48
|
+
this._materialPromiseLODs = new Array();
|
|
49
|
+
this._materialBufferLODs = new Array();
|
|
50
|
+
this._loader = loader;
|
|
51
|
+
// Options takes precedence. The maxLODsToLoad extension property is retained for back compat.
|
|
52
|
+
// For new extensions, they should only use options.
|
|
53
|
+
this.maxLODsToLoad = this._loader.parent.extensionOptions[NAME]?.maxLODsToLoad ?? this.maxLODsToLoad;
|
|
54
|
+
this.enabled = this._loader.isExtensionUsed(NAME);
|
|
55
|
+
}
|
|
56
|
+
/** @internal */
|
|
57
|
+
dispose() {
|
|
58
|
+
this._loader = null;
|
|
59
|
+
this._nodeIndexLOD = null;
|
|
60
|
+
this._nodeSignalLODs.length = 0;
|
|
61
|
+
this._nodePromiseLODs.length = 0;
|
|
62
|
+
this._nodeBufferLODs.length = 0;
|
|
63
|
+
this._materialIndexLOD = null;
|
|
64
|
+
this._materialSignalLODs.length = 0;
|
|
65
|
+
this._materialPromiseLODs.length = 0;
|
|
66
|
+
this._materialBufferLODs.length = 0;
|
|
67
|
+
this.onMaterialLODsLoadedObservable.clear();
|
|
68
|
+
this.onNodeLODsLoadedObservable.clear();
|
|
69
|
+
}
|
|
70
|
+
/** @internal */
|
|
71
|
+
onReady() {
|
|
72
|
+
for (let indexLOD = 0; indexLOD < this._nodePromiseLODs.length; indexLOD++) {
|
|
73
|
+
const promise = Promise.all(this._nodePromiseLODs[indexLOD]).then(() => {
|
|
74
|
+
if (indexLOD !== 0) {
|
|
75
|
+
this._loader.endPerformanceCounter(`Node LOD ${indexLOD}`);
|
|
76
|
+
this._loader.log(`Loaded node LOD ${indexLOD}`);
|
|
77
|
+
}
|
|
78
|
+
this.onNodeLODsLoadedObservable.notifyObservers(indexLOD);
|
|
79
|
+
if (indexLOD !== this._nodePromiseLODs.length - 1) {
|
|
80
|
+
this._loader.startPerformanceCounter(`Node LOD ${indexLOD + 1}`);
|
|
81
|
+
this._loadBufferLOD(this._nodeBufferLODs, indexLOD + 1);
|
|
82
|
+
if (this._nodeSignalLODs[indexLOD]) {
|
|
83
|
+
this._nodeSignalLODs[indexLOD].resolve();
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
this._loader._completePromises.push(promise);
|
|
88
|
+
}
|
|
89
|
+
for (let indexLOD = 0; indexLOD < this._materialPromiseLODs.length; indexLOD++) {
|
|
90
|
+
const promise = Promise.all(this._materialPromiseLODs[indexLOD]).then(() => {
|
|
91
|
+
if (indexLOD !== 0) {
|
|
92
|
+
this._loader.endPerformanceCounter(`Material LOD ${indexLOD}`);
|
|
93
|
+
this._loader.log(`Loaded material LOD ${indexLOD}`);
|
|
94
|
+
}
|
|
95
|
+
this.onMaterialLODsLoadedObservable.notifyObservers(indexLOD);
|
|
96
|
+
if (indexLOD !== this._materialPromiseLODs.length - 1) {
|
|
97
|
+
this._loader.startPerformanceCounter(`Material LOD ${indexLOD + 1}`);
|
|
98
|
+
this._loadBufferLOD(this._materialBufferLODs, indexLOD + 1);
|
|
99
|
+
if (this._materialSignalLODs[indexLOD]) {
|
|
100
|
+
this._materialSignalLODs[indexLOD].resolve();
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
this._loader._completePromises.push(promise);
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* @internal
|
|
109
|
+
*/
|
|
110
|
+
loadSceneAsync(context, scene) {
|
|
111
|
+
const promise = this._loader.loadSceneAsync(context, scene);
|
|
112
|
+
this._loadBufferLOD(this._bufferLODs, 0);
|
|
113
|
+
return promise;
|
|
114
|
+
}
|
|
115
|
+
/**
|
|
116
|
+
* @internal
|
|
117
|
+
*/
|
|
118
|
+
loadNodeAsync(context, node, assign) {
|
|
119
|
+
return GLTFLoader.LoadExtensionAsync(context, node, this.name, (extensionContext, extension) => {
|
|
120
|
+
let firstPromise;
|
|
121
|
+
const nodeLODs = this._getLODs(extensionContext, node, this._loader.gltf.nodes, extension.ids);
|
|
122
|
+
this._loader.logOpen(`${extensionContext}`);
|
|
123
|
+
for (let indexLOD = 0; indexLOD < nodeLODs.length; indexLOD++) {
|
|
124
|
+
const nodeLOD = nodeLODs[indexLOD];
|
|
125
|
+
if (indexLOD !== 0) {
|
|
126
|
+
this._nodeIndexLOD = indexLOD;
|
|
127
|
+
this._nodeSignalLODs[indexLOD] = this._nodeSignalLODs[indexLOD] || new Deferred();
|
|
128
|
+
}
|
|
129
|
+
const assignWrap = (babylonTransformNode) => {
|
|
130
|
+
assign(babylonTransformNode);
|
|
131
|
+
babylonTransformNode.setEnabled(false);
|
|
132
|
+
};
|
|
133
|
+
const promise = this._loader.loadNodeAsync(`/nodes/${nodeLOD.index}`, nodeLOD, assignWrap).then((babylonMesh) => {
|
|
134
|
+
if (indexLOD !== 0) {
|
|
135
|
+
// TODO: should not rely on _babylonTransformNode
|
|
136
|
+
const previousNodeLOD = nodeLODs[indexLOD - 1];
|
|
137
|
+
if (previousNodeLOD._babylonTransformNode) {
|
|
138
|
+
this._disposeTransformNode(previousNodeLOD._babylonTransformNode);
|
|
139
|
+
delete previousNodeLOD._babylonTransformNode;
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
babylonMesh.setEnabled(true);
|
|
143
|
+
return babylonMesh;
|
|
144
|
+
});
|
|
145
|
+
this._nodePromiseLODs[indexLOD] = this._nodePromiseLODs[indexLOD] || [];
|
|
146
|
+
if (indexLOD === 0) {
|
|
147
|
+
firstPromise = promise;
|
|
148
|
+
}
|
|
149
|
+
else {
|
|
150
|
+
this._nodeIndexLOD = null;
|
|
151
|
+
this._nodePromiseLODs[indexLOD].push(promise);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
this._loader.logClose();
|
|
155
|
+
return firstPromise;
|
|
156
|
+
});
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* @internal
|
|
160
|
+
*/
|
|
161
|
+
_loadMaterialAsync(context, material, babylonMesh, babylonDrawMode, assign) {
|
|
162
|
+
// Don't load material LODs if already loading a node LOD.
|
|
163
|
+
if (this._nodeIndexLOD) {
|
|
164
|
+
return null;
|
|
165
|
+
}
|
|
166
|
+
return GLTFLoader.LoadExtensionAsync(context, material, this.name, (extensionContext, extension) => {
|
|
167
|
+
let firstPromise;
|
|
168
|
+
const materialLODs = this._getLODs(extensionContext, material, this._loader.gltf.materials, extension.ids);
|
|
169
|
+
this._loader.logOpen(`${extensionContext}`);
|
|
170
|
+
for (let indexLOD = 0; indexLOD < materialLODs.length; indexLOD++) {
|
|
171
|
+
const materialLOD = materialLODs[indexLOD];
|
|
172
|
+
if (indexLOD !== 0) {
|
|
173
|
+
this._materialIndexLOD = indexLOD;
|
|
174
|
+
}
|
|
175
|
+
const promise = this._loader
|
|
176
|
+
._loadMaterialAsync(`/materials/${materialLOD.index}`, materialLOD, babylonMesh, babylonDrawMode, (babylonMaterial) => {
|
|
177
|
+
if (indexLOD === 0) {
|
|
178
|
+
assign(babylonMaterial);
|
|
179
|
+
}
|
|
180
|
+
})
|
|
181
|
+
.then((babylonMaterial) => {
|
|
182
|
+
if (indexLOD !== 0) {
|
|
183
|
+
assign(babylonMaterial);
|
|
184
|
+
// TODO: should not rely on _data
|
|
185
|
+
const previousDataLOD = materialLODs[indexLOD - 1]._data;
|
|
186
|
+
if (previousDataLOD[babylonDrawMode]) {
|
|
187
|
+
this._disposeMaterials([previousDataLOD[babylonDrawMode].babylonMaterial]);
|
|
188
|
+
delete previousDataLOD[babylonDrawMode];
|
|
189
|
+
}
|
|
190
|
+
}
|
|
191
|
+
return babylonMaterial;
|
|
192
|
+
});
|
|
193
|
+
this._materialPromiseLODs[indexLOD] = this._materialPromiseLODs[indexLOD] || [];
|
|
194
|
+
if (indexLOD === 0) {
|
|
195
|
+
firstPromise = promise;
|
|
196
|
+
}
|
|
197
|
+
else {
|
|
198
|
+
this._materialIndexLOD = null;
|
|
199
|
+
this._materialPromiseLODs[indexLOD].push(promise);
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
this._loader.logClose();
|
|
203
|
+
return firstPromise;
|
|
204
|
+
});
|
|
205
|
+
}
|
|
206
|
+
/**
|
|
207
|
+
* @internal
|
|
208
|
+
*/
|
|
209
|
+
_loadUriAsync(context, property, uri) {
|
|
210
|
+
// Defer the loading of uris if loading a node or material LOD.
|
|
211
|
+
if (this._nodeIndexLOD !== null) {
|
|
212
|
+
this._loader.log(`deferred`);
|
|
213
|
+
const previousIndexLOD = this._nodeIndexLOD - 1;
|
|
214
|
+
this._nodeSignalLODs[previousIndexLOD] = this._nodeSignalLODs[previousIndexLOD] || new Deferred();
|
|
215
|
+
return this._nodeSignalLODs[this._nodeIndexLOD - 1].promise.then(() => {
|
|
216
|
+
return this._loader.loadUriAsync(context, property, uri);
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
else if (this._materialIndexLOD !== null) {
|
|
220
|
+
this._loader.log(`deferred`);
|
|
221
|
+
const previousIndexLOD = this._materialIndexLOD - 1;
|
|
222
|
+
this._materialSignalLODs[previousIndexLOD] = this._materialSignalLODs[previousIndexLOD] || new Deferred();
|
|
223
|
+
return this._materialSignalLODs[previousIndexLOD].promise.then(() => {
|
|
224
|
+
return this._loader.loadUriAsync(context, property, uri);
|
|
225
|
+
});
|
|
226
|
+
}
|
|
227
|
+
return null;
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* @internal
|
|
231
|
+
*/
|
|
232
|
+
loadBufferAsync(context, buffer, byteOffset, byteLength) {
|
|
233
|
+
if (this._loader.parent.useRangeRequests && !buffer.uri) {
|
|
234
|
+
if (!this._loader.bin) {
|
|
235
|
+
throw new Error(`${context}: Uri is missing or the binary glTF is missing its binary chunk`);
|
|
236
|
+
}
|
|
237
|
+
const loadAsync = (bufferLODs, indexLOD) => {
|
|
238
|
+
const start = byteOffset;
|
|
239
|
+
const end = start + byteLength - 1;
|
|
240
|
+
let bufferLOD = bufferLODs[indexLOD];
|
|
241
|
+
if (bufferLOD) {
|
|
242
|
+
bufferLOD.start = Math.min(bufferLOD.start, start);
|
|
243
|
+
bufferLOD.end = Math.max(bufferLOD.end, end);
|
|
244
|
+
}
|
|
245
|
+
else {
|
|
246
|
+
bufferLOD = { start: start, end: end, loaded: new Deferred() };
|
|
247
|
+
bufferLODs[indexLOD] = bufferLOD;
|
|
248
|
+
}
|
|
249
|
+
return bufferLOD.loaded.promise.then((data) => {
|
|
250
|
+
return new Uint8Array(data.buffer, data.byteOffset + byteOffset - bufferLOD.start, byteLength);
|
|
251
|
+
});
|
|
252
|
+
};
|
|
253
|
+
this._loader.log(`deferred`);
|
|
254
|
+
if (this._nodeIndexLOD !== null) {
|
|
255
|
+
return loadAsync(this._nodeBufferLODs, this._nodeIndexLOD);
|
|
256
|
+
}
|
|
257
|
+
else if (this._materialIndexLOD !== null) {
|
|
258
|
+
return loadAsync(this._materialBufferLODs, this._materialIndexLOD);
|
|
259
|
+
}
|
|
260
|
+
else {
|
|
261
|
+
return loadAsync(this._bufferLODs, 0);
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
return null;
|
|
265
|
+
}
|
|
266
|
+
_loadBufferLOD(bufferLODs, indexLOD) {
|
|
267
|
+
const bufferLOD = bufferLODs[indexLOD];
|
|
268
|
+
if (bufferLOD) {
|
|
269
|
+
this._loader.log(`Loading buffer range [${bufferLOD.start}-${bufferLOD.end}]`);
|
|
270
|
+
this._loader.bin.readAsync(bufferLOD.start, bufferLOD.end - bufferLOD.start + 1).then((data) => {
|
|
271
|
+
bufferLOD.loaded.resolve(data);
|
|
272
|
+
}, (error) => {
|
|
273
|
+
bufferLOD.loaded.reject(error);
|
|
274
|
+
});
|
|
275
|
+
}
|
|
276
|
+
}
|
|
277
|
+
/**
|
|
278
|
+
* @returns an array of LOD properties from lowest to highest.
|
|
279
|
+
* @param context
|
|
280
|
+
* @param property
|
|
281
|
+
* @param array
|
|
282
|
+
* @param ids
|
|
283
|
+
*/
|
|
284
|
+
_getLODs(context, property, array, ids) {
|
|
285
|
+
if (this.maxLODsToLoad <= 0) {
|
|
286
|
+
throw new Error("maxLODsToLoad must be greater than zero");
|
|
287
|
+
}
|
|
288
|
+
const properties = [];
|
|
289
|
+
for (let i = ids.length - 1; i >= 0; i--) {
|
|
290
|
+
properties.push(ArrayItem.Get(`${context}/ids/${ids[i]}`, array, ids[i]));
|
|
291
|
+
if (properties.length === this.maxLODsToLoad) {
|
|
292
|
+
return properties;
|
|
293
|
+
}
|
|
294
|
+
}
|
|
295
|
+
properties.push(property);
|
|
296
|
+
return properties;
|
|
297
|
+
}
|
|
298
|
+
_disposeTransformNode(babylonTransformNode) {
|
|
299
|
+
const babylonMaterials = [];
|
|
300
|
+
const babylonMaterial = babylonTransformNode.material;
|
|
301
|
+
if (babylonMaterial) {
|
|
302
|
+
babylonMaterials.push(babylonMaterial);
|
|
303
|
+
}
|
|
304
|
+
for (const babylonMesh of babylonTransformNode.getChildMeshes()) {
|
|
305
|
+
if (babylonMesh.material) {
|
|
306
|
+
babylonMaterials.push(babylonMesh.material);
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
babylonTransformNode.dispose();
|
|
310
|
+
const babylonMaterialsToDispose = babylonMaterials.filter((babylonMaterial) => this._loader.babylonScene.meshes.every((mesh) => mesh.material != babylonMaterial));
|
|
311
|
+
this._disposeMaterials(babylonMaterialsToDispose);
|
|
312
|
+
}
|
|
313
|
+
_disposeMaterials(babylonMaterials) {
|
|
314
|
+
const babylonTextures = {};
|
|
315
|
+
for (const babylonMaterial of babylonMaterials) {
|
|
316
|
+
for (const babylonTexture of babylonMaterial.getActiveTextures()) {
|
|
317
|
+
babylonTextures[babylonTexture.uniqueId] = babylonTexture;
|
|
318
|
+
}
|
|
319
|
+
babylonMaterial.dispose();
|
|
320
|
+
}
|
|
321
|
+
for (const uniqueId in babylonTextures) {
|
|
322
|
+
for (const babylonMaterial of this._loader.babylonScene.materials) {
|
|
323
|
+
if (babylonMaterial.hasTexture(babylonTextures[uniqueId])) {
|
|
324
|
+
delete babylonTextures[uniqueId];
|
|
325
|
+
}
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
for (const uniqueId in babylonTextures) {
|
|
329
|
+
babylonTextures[uniqueId].dispose();
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
}
|
|
333
|
+
unregisterGLTFExtension(NAME);
|
|
334
|
+
registerGLTFExtension(NAME, true, (loader) => new MSFT_lod(loader));
|
|
335
|
+
|
|
336
|
+
export { MSFT_lod };
|
|
337
|
+
//# sourceMappingURL=MSFT_lod-CzMztdpf.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MSFT_lod-CzMztdpf.esm.js","sources":["../../../../../dev/loaders/dist/glTF/2.0/Extensions/MSFT_lod.js"],"sourcesContent":["import { Observable } from \"core/Misc/observable\";\nimport { Deferred } from \"core/Misc/deferred\";\nimport { GLTFLoader, ArrayItem } from \"../glTFLoader\";\nimport { registerGLTFExtension, unregisterGLTFExtension } from \"../glTFLoaderExtensionRegistry\";\nconst NAME = \"MSFT_lod\";\n/**\n * [Specification](https://github.com/KhronosGroup/glTF/blob/main/extensions/2.0/Vendor/MSFT_lod/README.md)\n */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport class MSFT_lod {\n /**\n * @internal\n */\n constructor(loader) {\n /**\n * The name of this extension.\n */\n this.name = NAME;\n /**\n * Defines a number that determines the order the extensions are applied.\n */\n this.order = 100;\n /**\n * Maximum number of LODs to load, starting from the lowest LOD.\n */\n this.maxLODsToLoad = 10;\n /**\n * Observable raised when all node LODs of one level are loaded.\n * The event data is the index of the loaded LOD starting from zero.\n * Dispose the loader to cancel the loading of the next level of LODs.\n */\n this.onNodeLODsLoadedObservable = new Observable();\n /**\n * Observable raised when all material LODs of one level are loaded.\n * The event data is the index of the loaded LOD starting from zero.\n * Dispose the loader to cancel the loading of the next level of LODs.\n */\n this.onMaterialLODsLoadedObservable = new Observable();\n this._bufferLODs = new Array();\n this._nodeIndexLOD = null;\n this._nodeSignalLODs = new Array();\n this._nodePromiseLODs = new Array();\n this._nodeBufferLODs = new Array();\n this._materialIndexLOD = null;\n this._materialSignalLODs = new Array();\n this._materialPromiseLODs = new Array();\n this._materialBufferLODs = new Array();\n this._loader = loader;\n // Options takes precedence. The maxLODsToLoad extension property is retained for back compat.\n // For new extensions, they should only use options.\n this.maxLODsToLoad = this._loader.parent.extensionOptions[NAME]?.maxLODsToLoad ?? this.maxLODsToLoad;\n this.enabled = this._loader.isExtensionUsed(NAME);\n }\n /** @internal */\n dispose() {\n this._loader = null;\n this._nodeIndexLOD = null;\n this._nodeSignalLODs.length = 0;\n this._nodePromiseLODs.length = 0;\n this._nodeBufferLODs.length = 0;\n this._materialIndexLOD = null;\n this._materialSignalLODs.length = 0;\n this._materialPromiseLODs.length = 0;\n this._materialBufferLODs.length = 0;\n this.onMaterialLODsLoadedObservable.clear();\n this.onNodeLODsLoadedObservable.clear();\n }\n /** @internal */\n onReady() {\n for (let indexLOD = 0; indexLOD < this._nodePromiseLODs.length; indexLOD++) {\n const promise = Promise.all(this._nodePromiseLODs[indexLOD]).then(() => {\n if (indexLOD !== 0) {\n this._loader.endPerformanceCounter(`Node LOD ${indexLOD}`);\n this._loader.log(`Loaded node LOD ${indexLOD}`);\n }\n this.onNodeLODsLoadedObservable.notifyObservers(indexLOD);\n if (indexLOD !== this._nodePromiseLODs.length - 1) {\n this._loader.startPerformanceCounter(`Node LOD ${indexLOD + 1}`);\n this._loadBufferLOD(this._nodeBufferLODs, indexLOD + 1);\n if (this._nodeSignalLODs[indexLOD]) {\n this._nodeSignalLODs[indexLOD].resolve();\n }\n }\n });\n this._loader._completePromises.push(promise);\n }\n for (let indexLOD = 0; indexLOD < this._materialPromiseLODs.length; indexLOD++) {\n const promise = Promise.all(this._materialPromiseLODs[indexLOD]).then(() => {\n if (indexLOD !== 0) {\n this._loader.endPerformanceCounter(`Material LOD ${indexLOD}`);\n this._loader.log(`Loaded material LOD ${indexLOD}`);\n }\n this.onMaterialLODsLoadedObservable.notifyObservers(indexLOD);\n if (indexLOD !== this._materialPromiseLODs.length - 1) {\n this._loader.startPerformanceCounter(`Material LOD ${indexLOD + 1}`);\n this._loadBufferLOD(this._materialBufferLODs, indexLOD + 1);\n if (this._materialSignalLODs[indexLOD]) {\n this._materialSignalLODs[indexLOD].resolve();\n }\n }\n });\n this._loader._completePromises.push(promise);\n }\n }\n /**\n * @internal\n */\n loadSceneAsync(context, scene) {\n const promise = this._loader.loadSceneAsync(context, scene);\n this._loadBufferLOD(this._bufferLODs, 0);\n return promise;\n }\n /**\n * @internal\n */\n loadNodeAsync(context, node, assign) {\n return GLTFLoader.LoadExtensionAsync(context, node, this.name, (extensionContext, extension) => {\n let firstPromise;\n const nodeLODs = this._getLODs(extensionContext, node, this._loader.gltf.nodes, extension.ids);\n this._loader.logOpen(`${extensionContext}`);\n for (let indexLOD = 0; indexLOD < nodeLODs.length; indexLOD++) {\n const nodeLOD = nodeLODs[indexLOD];\n if (indexLOD !== 0) {\n this._nodeIndexLOD = indexLOD;\n this._nodeSignalLODs[indexLOD] = this._nodeSignalLODs[indexLOD] || new Deferred();\n }\n const assignWrap = (babylonTransformNode) => {\n assign(babylonTransformNode);\n babylonTransformNode.setEnabled(false);\n };\n const promise = this._loader.loadNodeAsync(`/nodes/${nodeLOD.index}`, nodeLOD, assignWrap).then((babylonMesh) => {\n if (indexLOD !== 0) {\n // TODO: should not rely on _babylonTransformNode\n const previousNodeLOD = nodeLODs[indexLOD - 1];\n if (previousNodeLOD._babylonTransformNode) {\n this._disposeTransformNode(previousNodeLOD._babylonTransformNode);\n delete previousNodeLOD._babylonTransformNode;\n }\n }\n babylonMesh.setEnabled(true);\n return babylonMesh;\n });\n this._nodePromiseLODs[indexLOD] = this._nodePromiseLODs[indexLOD] || [];\n if (indexLOD === 0) {\n firstPromise = promise;\n }\n else {\n this._nodeIndexLOD = null;\n this._nodePromiseLODs[indexLOD].push(promise);\n }\n }\n this._loader.logClose();\n return firstPromise;\n });\n }\n /**\n * @internal\n */\n _loadMaterialAsync(context, material, babylonMesh, babylonDrawMode, assign) {\n // Don't load material LODs if already loading a node LOD.\n if (this._nodeIndexLOD) {\n return null;\n }\n return GLTFLoader.LoadExtensionAsync(context, material, this.name, (extensionContext, extension) => {\n let firstPromise;\n const materialLODs = this._getLODs(extensionContext, material, this._loader.gltf.materials, extension.ids);\n this._loader.logOpen(`${extensionContext}`);\n for (let indexLOD = 0; indexLOD < materialLODs.length; indexLOD++) {\n const materialLOD = materialLODs[indexLOD];\n if (indexLOD !== 0) {\n this._materialIndexLOD = indexLOD;\n }\n const promise = this._loader\n ._loadMaterialAsync(`/materials/${materialLOD.index}`, materialLOD, babylonMesh, babylonDrawMode, (babylonMaterial) => {\n if (indexLOD === 0) {\n assign(babylonMaterial);\n }\n })\n .then((babylonMaterial) => {\n if (indexLOD !== 0) {\n assign(babylonMaterial);\n // TODO: should not rely on _data\n const previousDataLOD = materialLODs[indexLOD - 1]._data;\n if (previousDataLOD[babylonDrawMode]) {\n this._disposeMaterials([previousDataLOD[babylonDrawMode].babylonMaterial]);\n delete previousDataLOD[babylonDrawMode];\n }\n }\n return babylonMaterial;\n });\n this._materialPromiseLODs[indexLOD] = this._materialPromiseLODs[indexLOD] || [];\n if (indexLOD === 0) {\n firstPromise = promise;\n }\n else {\n this._materialIndexLOD = null;\n this._materialPromiseLODs[indexLOD].push(promise);\n }\n }\n this._loader.logClose();\n return firstPromise;\n });\n }\n /**\n * @internal\n */\n _loadUriAsync(context, property, uri) {\n // Defer the loading of uris if loading a node or material LOD.\n if (this._nodeIndexLOD !== null) {\n this._loader.log(`deferred`);\n const previousIndexLOD = this._nodeIndexLOD - 1;\n this._nodeSignalLODs[previousIndexLOD] = this._nodeSignalLODs[previousIndexLOD] || new Deferred();\n return this._nodeSignalLODs[this._nodeIndexLOD - 1].promise.then(() => {\n return this._loader.loadUriAsync(context, property, uri);\n });\n }\n else if (this._materialIndexLOD !== null) {\n this._loader.log(`deferred`);\n const previousIndexLOD = this._materialIndexLOD - 1;\n this._materialSignalLODs[previousIndexLOD] = this._materialSignalLODs[previousIndexLOD] || new Deferred();\n return this._materialSignalLODs[previousIndexLOD].promise.then(() => {\n return this._loader.loadUriAsync(context, property, uri);\n });\n }\n return null;\n }\n /**\n * @internal\n */\n loadBufferAsync(context, buffer, byteOffset, byteLength) {\n if (this._loader.parent.useRangeRequests && !buffer.uri) {\n if (!this._loader.bin) {\n throw new Error(`${context}: Uri is missing or the binary glTF is missing its binary chunk`);\n }\n const loadAsync = (bufferLODs, indexLOD) => {\n const start = byteOffset;\n const end = start + byteLength - 1;\n let bufferLOD = bufferLODs[indexLOD];\n if (bufferLOD) {\n bufferLOD.start = Math.min(bufferLOD.start, start);\n bufferLOD.end = Math.max(bufferLOD.end, end);\n }\n else {\n bufferLOD = { start: start, end: end, loaded: new Deferred() };\n bufferLODs[indexLOD] = bufferLOD;\n }\n return bufferLOD.loaded.promise.then((data) => {\n return new Uint8Array(data.buffer, data.byteOffset + byteOffset - bufferLOD.start, byteLength);\n });\n };\n this._loader.log(`deferred`);\n if (this._nodeIndexLOD !== null) {\n return loadAsync(this._nodeBufferLODs, this._nodeIndexLOD);\n }\n else if (this._materialIndexLOD !== null) {\n return loadAsync(this._materialBufferLODs, this._materialIndexLOD);\n }\n else {\n return loadAsync(this._bufferLODs, 0);\n }\n }\n return null;\n }\n _loadBufferLOD(bufferLODs, indexLOD) {\n const bufferLOD = bufferLODs[indexLOD];\n if (bufferLOD) {\n this._loader.log(`Loading buffer range [${bufferLOD.start}-${bufferLOD.end}]`);\n this._loader.bin.readAsync(bufferLOD.start, bufferLOD.end - bufferLOD.start + 1).then((data) => {\n bufferLOD.loaded.resolve(data);\n }, (error) => {\n bufferLOD.loaded.reject(error);\n });\n }\n }\n /**\n * @returns an array of LOD properties from lowest to highest.\n * @param context\n * @param property\n * @param array\n * @param ids\n */\n _getLODs(context, property, array, ids) {\n if (this.maxLODsToLoad <= 0) {\n throw new Error(\"maxLODsToLoad must be greater than zero\");\n }\n const properties = [];\n for (let i = ids.length - 1; i >= 0; i--) {\n properties.push(ArrayItem.Get(`${context}/ids/${ids[i]}`, array, ids[i]));\n if (properties.length === this.maxLODsToLoad) {\n return properties;\n }\n }\n properties.push(property);\n return properties;\n }\n _disposeTransformNode(babylonTransformNode) {\n const babylonMaterials = [];\n const babylonMaterial = babylonTransformNode.material;\n if (babylonMaterial) {\n babylonMaterials.push(babylonMaterial);\n }\n for (const babylonMesh of babylonTransformNode.getChildMeshes()) {\n if (babylonMesh.material) {\n babylonMaterials.push(babylonMesh.material);\n }\n }\n babylonTransformNode.dispose();\n const babylonMaterialsToDispose = babylonMaterials.filter((babylonMaterial) => this._loader.babylonScene.meshes.every((mesh) => mesh.material != babylonMaterial));\n this._disposeMaterials(babylonMaterialsToDispose);\n }\n _disposeMaterials(babylonMaterials) {\n const babylonTextures = {};\n for (const babylonMaterial of babylonMaterials) {\n for (const babylonTexture of babylonMaterial.getActiveTextures()) {\n babylonTextures[babylonTexture.uniqueId] = babylonTexture;\n }\n babylonMaterial.dispose();\n }\n for (const uniqueId in babylonTextures) {\n for (const babylonMaterial of this._loader.babylonScene.materials) {\n if (babylonMaterial.hasTexture(babylonTextures[uniqueId])) {\n delete babylonTextures[uniqueId];\n }\n }\n }\n for (const uniqueId in babylonTextures) {\n babylonTextures[uniqueId].dispose();\n }\n }\n}\nunregisterGLTFExtension(NAME);\nregisterGLTFExtension(NAME, true, (loader) => new MSFT_lod(loader));\n//# sourceMappingURL=MSFT_lod.js.map"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a_ as e,aP as r,aQ as s}from"./index-BJLUfgJX.esm.min.js";import{G as t}from"./glTFLoader-vKjW1nNZ.esm.min.js";import"./rawTexture-YAJTylc3.esm.min.js";import"./assetContainer-Dkp9h8Nk.esm.min.js";import"./glTFLoaderAnimation-B6CGd8Cm.esm.min.js";const i="MSFT_minecraftMesh";class a{constructor(e){this.name=i,this._loader=e,this.enabled=this._loader.isExtensionUsed(i)}dispose(){this._loader=null}loadMaterialPropertiesAsync(r,s,i){return t.LoadExtraAsync(r,s,this.name,((t,a)=>{if(a){if(!(i instanceof e))throw new Error(`${t}: Material type not supported`);const a=this._loader.loadMaterialPropertiesAsync(r,s,i);return i.needAlphaBlending()&&(i.forceDepthWrite=!0,i.separateCullingPass=!0),i.backFaceCulling=i.forceDepthWrite,i.twoSidedLighting=!0,a}return null}))}}r(i),s(i,!0,(e=>new a(e)));export{a as MSFT_minecraftMesh};
|
|
2
|
+
//# sourceMappingURL=MSFT_minecraftMesh-C427ldkX.esm.min.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MSFT_minecraftMesh-C427ldkX.esm.min.js","sources":["../../../../../dev/loaders/dist/glTF/2.0/Extensions/MSFT_minecraftMesh.js"],"sourcesContent":["import { PBRMaterial } from \"core/Materials/PBR/pbrMaterial\";\nimport { GLTFLoader } from \"../glTFLoader\";\nimport { registerGLTFExtension, unregisterGLTFExtension } from \"../glTFLoaderExtensionRegistry\";\nconst NAME = \"MSFT_minecraftMesh\";\n/** @internal */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport class MSFT_minecraftMesh {\n /** @internal */\n constructor(loader) {\n /** @internal */\n this.name = NAME;\n this._loader = loader;\n this.enabled = this._loader.isExtensionUsed(NAME);\n }\n /** @internal */\n dispose() {\n this._loader = null;\n }\n /** @internal */\n loadMaterialPropertiesAsync(context, material, babylonMaterial) {\n return GLTFLoader.LoadExtraAsync(context, material, this.name, (extraContext, extra) => {\n if (extra) {\n if (!(babylonMaterial instanceof PBRMaterial)) {\n throw new Error(`${extraContext}: Material type not supported`);\n }\n const promise = this._loader.loadMaterialPropertiesAsync(context, material, babylonMaterial);\n if (babylonMaterial.needAlphaBlending()) {\n babylonMaterial.forceDepthWrite = true;\n babylonMaterial.separateCullingPass = true;\n }\n babylonMaterial.backFaceCulling = babylonMaterial.forceDepthWrite;\n babylonMaterial.twoSidedLighting = true;\n return promise;\n }\n return null;\n });\n }\n}\nunregisterGLTFExtension(NAME);\nregisterGLTFExtension(NAME, true, (loader) => new MSFT_minecraftMesh(loader));\n//# sourceMappingURL=MSFT_minecraftMesh.js.map"],"names":["NAME","MSFT_minecraftMesh","constructor","loader","this","name","_loader","enabled","isExtensionUsed","dispose","loadMaterialPropertiesAsync","context","material","babylonMaterial","GLTFLoader","LoadExtraAsync","extraContext","extra","PBRMaterial","Error","promise","needAlphaBlending","forceDepthWrite","separateCullingPass","backFaceCulling","twoSidedLighting","unregisterGLTFExtension","registerGLTFExtension"],"mappings":"8PAGA,MAAMA,EAAO,qBAGN,MAAMC,EAET,WAAAC,CAAYC,GAERC,KAAKC,KAAOL,EACZI,KAAKE,QAAUH,EACfC,KAAKG,QAAUH,KAAKE,QAAQE,gBAAgBR,EACpD,CAEI,OAAAS,GACIL,KAAKE,QAAU,IACvB,CAEI,2BAAAI,CAA4BC,EAASC,EAAUC,GAC3C,OAAOC,EAAWC,eAAeJ,EAASC,EAAUR,KAAKC,MAAM,CAACW,EAAcC,KAC1E,GAAIA,EAAO,CACP,KAAMJ,aAA2BK,GAC7B,MAAM,IAAIC,MAAM,GAAGH,kCAEvB,MAAMI,EAAUhB,KAAKE,QAAQI,4BAA4BC,EAASC,EAAUC,GAO5E,OANIA,EAAgBQ,sBAChBR,EAAgBS,iBAAkB,EAClCT,EAAgBU,qBAAsB,GAE1CV,EAAgBW,gBAAkBX,EAAgBS,gBAClDT,EAAgBY,kBAAmB,EAC5BL,CACvB,CACY,OAAO,IAAI,GAEvB,EAEAM,EAAwB1B,GACxB2B,EAAsB3B,GAAM,GAAOG,GAAW,IAAIF,EAAmBE"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { a_ as PBRMaterial, aP as unregisterGLTFExtension, aQ as registerGLTFExtension } from './index-ft-NqTCE.esm.js';
|
|
2
|
+
import { G as GLTFLoader } from './glTFLoader-c3PKGkcy.esm.js';
|
|
3
|
+
import './rawTexture-BdnztUXL.esm.js';
|
|
4
|
+
import './assetContainer-BDuQ9TBc.esm.js';
|
|
5
|
+
import './glTFLoaderAnimation-BcKbtbAU.esm.js';
|
|
6
|
+
|
|
7
|
+
const NAME = "MSFT_minecraftMesh";
|
|
8
|
+
/** @internal */
|
|
9
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
10
|
+
class MSFT_minecraftMesh {
|
|
11
|
+
/** @internal */
|
|
12
|
+
constructor(loader) {
|
|
13
|
+
/** @internal */
|
|
14
|
+
this.name = NAME;
|
|
15
|
+
this._loader = loader;
|
|
16
|
+
this.enabled = this._loader.isExtensionUsed(NAME);
|
|
17
|
+
}
|
|
18
|
+
/** @internal */
|
|
19
|
+
dispose() {
|
|
20
|
+
this._loader = null;
|
|
21
|
+
}
|
|
22
|
+
/** @internal */
|
|
23
|
+
loadMaterialPropertiesAsync(context, material, babylonMaterial) {
|
|
24
|
+
return GLTFLoader.LoadExtraAsync(context, material, this.name, (extraContext, extra) => {
|
|
25
|
+
if (extra) {
|
|
26
|
+
if (!(babylonMaterial instanceof PBRMaterial)) {
|
|
27
|
+
throw new Error(`${extraContext}: Material type not supported`);
|
|
28
|
+
}
|
|
29
|
+
const promise = this._loader.loadMaterialPropertiesAsync(context, material, babylonMaterial);
|
|
30
|
+
if (babylonMaterial.needAlphaBlending()) {
|
|
31
|
+
babylonMaterial.forceDepthWrite = true;
|
|
32
|
+
babylonMaterial.separateCullingPass = true;
|
|
33
|
+
}
|
|
34
|
+
babylonMaterial.backFaceCulling = babylonMaterial.forceDepthWrite;
|
|
35
|
+
babylonMaterial.twoSidedLighting = true;
|
|
36
|
+
return promise;
|
|
37
|
+
}
|
|
38
|
+
return null;
|
|
39
|
+
});
|
|
40
|
+
}
|
|
41
|
+
}
|
|
42
|
+
unregisterGLTFExtension(NAME);
|
|
43
|
+
registerGLTFExtension(NAME, true, (loader) => new MSFT_minecraftMesh(loader));
|
|
44
|
+
|
|
45
|
+
export { MSFT_minecraftMesh };
|
|
46
|
+
//# sourceMappingURL=MSFT_minecraftMesh-DnxkOe8i.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MSFT_minecraftMesh-DnxkOe8i.esm.js","sources":["../../../../../dev/loaders/dist/glTF/2.0/Extensions/MSFT_minecraftMesh.js"],"sourcesContent":["import { PBRMaterial } from \"core/Materials/PBR/pbrMaterial\";\nimport { GLTFLoader } from \"../glTFLoader\";\nimport { registerGLTFExtension, unregisterGLTFExtension } from \"../glTFLoaderExtensionRegistry\";\nconst NAME = \"MSFT_minecraftMesh\";\n/** @internal */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport class MSFT_minecraftMesh {\n /** @internal */\n constructor(loader) {\n /** @internal */\n this.name = NAME;\n this._loader = loader;\n this.enabled = this._loader.isExtensionUsed(NAME);\n }\n /** @internal */\n dispose() {\n this._loader = null;\n }\n /** @internal */\n loadMaterialPropertiesAsync(context, material, babylonMaterial) {\n return GLTFLoader.LoadExtraAsync(context, material, this.name, (extraContext, extra) => {\n if (extra) {\n if (!(babylonMaterial instanceof PBRMaterial)) {\n throw new Error(`${extraContext}: Material type not supported`);\n }\n const promise = this._loader.loadMaterialPropertiesAsync(context, material, babylonMaterial);\n if (babylonMaterial.needAlphaBlending()) {\n babylonMaterial.forceDepthWrite = true;\n babylonMaterial.separateCullingPass = true;\n }\n babylonMaterial.backFaceCulling = babylonMaterial.forceDepthWrite;\n babylonMaterial.twoSidedLighting = true;\n return promise;\n }\n return null;\n });\n }\n}\nunregisterGLTFExtension(NAME);\nregisterGLTFExtension(NAME, true, (loader) => new MSFT_minecraftMesh(loader));\n//# sourceMappingURL=MSFT_minecraftMesh.js.map"],"names":[],"mappings":";;;;;;AAGA,MAAM,IAAI,GAAG,oBAAoB;AACjC;AACA;AACO,MAAM,kBAAkB,CAAC;AAChC;AACA,IAAI,WAAW,CAAC,MAAM,EAAE;AACxB;AACA,QAAQ,IAAI,CAAC,IAAI,GAAG,IAAI;AACxB,QAAQ,IAAI,CAAC,OAAO,GAAG,MAAM;AAC7B,QAAQ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC;AACzD;AACA;AACA,IAAI,OAAO,GAAG;AACd,QAAQ,IAAI,CAAC,OAAO,GAAG,IAAI;AAC3B;AACA;AACA,IAAI,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE;AACpE,QAAQ,OAAO,UAAU,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,KAAK,KAAK;AAChG,YAAY,IAAI,KAAK,EAAE;AACvB,gBAAgB,IAAI,EAAE,eAAe,YAAY,WAAW,CAAC,EAAE;AAC/D,oBAAoB,MAAM,IAAI,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,6BAA6B,CAAC,CAAC;AACnF;AACA,gBAAgB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,CAAC;AAC5G,gBAAgB,IAAI,eAAe,CAAC,iBAAiB,EAAE,EAAE;AACzD,oBAAoB,eAAe,CAAC,eAAe,GAAG,IAAI;AAC1D,oBAAoB,eAAe,CAAC,mBAAmB,GAAG,IAAI;AAC9D;AACA,gBAAgB,eAAe,CAAC,eAAe,GAAG,eAAe,CAAC,eAAe;AACjF,gBAAgB,eAAe,CAAC,gBAAgB,GAAG,IAAI;AACvD,gBAAgB,OAAO,OAAO;AAC9B;AACA,YAAY,OAAO,IAAI;AACvB,SAAS,CAAC;AACV;AACA;AACA,uBAAuB,CAAC,IAAI,CAAC;AAC7B,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,MAAM,KAAK,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC;;;;"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { a_ as PBRMaterial, aP as unregisterGLTFExtension, aQ as registerGLTFExtension } from './index-ft-NqTCE.esm.js';
|
|
2
|
+
import { G as GLTFLoader } from './glTFLoader-c3PKGkcy.esm.js';
|
|
3
|
+
import './rawTexture-BdnztUXL.esm.js';
|
|
4
|
+
import './assetContainer-BDuQ9TBc.esm.js';
|
|
5
|
+
import './glTFLoaderAnimation-BcKbtbAU.esm.js';
|
|
6
|
+
|
|
7
|
+
const NAME = "MSFT_sRGBFactors";
|
|
8
|
+
/** @internal */
|
|
9
|
+
// eslint-disable-next-line @typescript-eslint/naming-convention
|
|
10
|
+
class MSFT_sRGBFactors {
|
|
11
|
+
/** @internal */
|
|
12
|
+
constructor(loader) {
|
|
13
|
+
/** @internal */
|
|
14
|
+
this.name = NAME;
|
|
15
|
+
this._loader = loader;
|
|
16
|
+
this.enabled = this._loader.isExtensionUsed(NAME);
|
|
17
|
+
}
|
|
18
|
+
/** @internal */
|
|
19
|
+
dispose() {
|
|
20
|
+
this._loader = null;
|
|
21
|
+
}
|
|
22
|
+
/** @internal */
|
|
23
|
+
loadMaterialPropertiesAsync(context, material, babylonMaterial) {
|
|
24
|
+
return GLTFLoader.LoadExtraAsync(context, material, this.name, (extraContext, extra) => {
|
|
25
|
+
if (extra) {
|
|
26
|
+
if (!(babylonMaterial instanceof PBRMaterial)) {
|
|
27
|
+
throw new Error(`${extraContext}: Material type not supported`);
|
|
28
|
+
}
|
|
29
|
+
const promise = this._loader.loadMaterialPropertiesAsync(context, material, babylonMaterial);
|
|
30
|
+
const useExactSrgbConversions = babylonMaterial.getScene().getEngine().useExactSrgbConversions;
|
|
31
|
+
if (!babylonMaterial.albedoTexture) {
|
|
32
|
+
babylonMaterial.albedoColor.toLinearSpaceToRef(babylonMaterial.albedoColor, useExactSrgbConversions);
|
|
33
|
+
}
|
|
34
|
+
if (!babylonMaterial.reflectivityTexture) {
|
|
35
|
+
babylonMaterial.reflectivityColor.toLinearSpaceToRef(babylonMaterial.reflectivityColor, useExactSrgbConversions);
|
|
36
|
+
}
|
|
37
|
+
return promise;
|
|
38
|
+
}
|
|
39
|
+
return null;
|
|
40
|
+
});
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
unregisterGLTFExtension(NAME);
|
|
44
|
+
registerGLTFExtension(NAME, true, (loader) => new MSFT_sRGBFactors(loader));
|
|
45
|
+
|
|
46
|
+
export { MSFT_sRGBFactors };
|
|
47
|
+
//# sourceMappingURL=MSFT_sRGBFactors-CkV5G330.esm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MSFT_sRGBFactors-CkV5G330.esm.js","sources":["../../../../../dev/loaders/dist/glTF/2.0/Extensions/MSFT_sRGBFactors.js"],"sourcesContent":["import { PBRMaterial } from \"core/Materials/PBR/pbrMaterial\";\nimport { GLTFLoader } from \"../glTFLoader\";\nimport { registerGLTFExtension, unregisterGLTFExtension } from \"../glTFLoaderExtensionRegistry\";\nconst NAME = \"MSFT_sRGBFactors\";\n/** @internal */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport class MSFT_sRGBFactors {\n /** @internal */\n constructor(loader) {\n /** @internal */\n this.name = NAME;\n this._loader = loader;\n this.enabled = this._loader.isExtensionUsed(NAME);\n }\n /** @internal */\n dispose() {\n this._loader = null;\n }\n /** @internal */\n loadMaterialPropertiesAsync(context, material, babylonMaterial) {\n return GLTFLoader.LoadExtraAsync(context, material, this.name, (extraContext, extra) => {\n if (extra) {\n if (!(babylonMaterial instanceof PBRMaterial)) {\n throw new Error(`${extraContext}: Material type not supported`);\n }\n const promise = this._loader.loadMaterialPropertiesAsync(context, material, babylonMaterial);\n const useExactSrgbConversions = babylonMaterial.getScene().getEngine().useExactSrgbConversions;\n if (!babylonMaterial.albedoTexture) {\n babylonMaterial.albedoColor.toLinearSpaceToRef(babylonMaterial.albedoColor, useExactSrgbConversions);\n }\n if (!babylonMaterial.reflectivityTexture) {\n babylonMaterial.reflectivityColor.toLinearSpaceToRef(babylonMaterial.reflectivityColor, useExactSrgbConversions);\n }\n return promise;\n }\n return null;\n });\n }\n}\nunregisterGLTFExtension(NAME);\nregisterGLTFExtension(NAME, true, (loader) => new MSFT_sRGBFactors(loader));\n//# sourceMappingURL=MSFT_sRGBFactors.js.map"],"names":[],"mappings":";;;;;;AAGA,MAAM,IAAI,GAAG,kBAAkB;AAC/B;AACA;AACO,MAAM,gBAAgB,CAAC;AAC9B;AACA,IAAI,WAAW,CAAC,MAAM,EAAE;AACxB;AACA,QAAQ,IAAI,CAAC,IAAI,GAAG,IAAI;AACxB,QAAQ,IAAI,CAAC,OAAO,GAAG,MAAM;AAC7B,QAAQ,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,CAAC;AACzD;AACA;AACA,IAAI,OAAO,GAAG;AACd,QAAQ,IAAI,CAAC,OAAO,GAAG,IAAI;AAC3B;AACA;AACA,IAAI,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,EAAE;AACpE,QAAQ,OAAO,UAAU,CAAC,cAAc,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,YAAY,EAAE,KAAK,KAAK;AAChG,YAAY,IAAI,KAAK,EAAE;AACvB,gBAAgB,IAAI,EAAE,eAAe,YAAY,WAAW,CAAC,EAAE;AAC/D,oBAAoB,MAAM,IAAI,KAAK,CAAC,CAAC,EAAE,YAAY,CAAC,6BAA6B,CAAC,CAAC;AACnF;AACA,gBAAgB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,2BAA2B,CAAC,OAAO,EAAE,QAAQ,EAAE,eAAe,CAAC;AAC5G,gBAAgB,MAAM,uBAAuB,GAAG,eAAe,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC,uBAAuB;AAC9G,gBAAgB,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE;AACpD,oBAAoB,eAAe,CAAC,WAAW,CAAC,kBAAkB,CAAC,eAAe,CAAC,WAAW,EAAE,uBAAuB,CAAC;AACxH;AACA,gBAAgB,IAAI,CAAC,eAAe,CAAC,mBAAmB,EAAE;AAC1D,oBAAoB,eAAe,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,eAAe,CAAC,iBAAiB,EAAE,uBAAuB,CAAC;AACpI;AACA,gBAAgB,OAAO,OAAO;AAC9B;AACA,YAAY,OAAO,IAAI;AACvB,SAAS,CAAC;AACV;AACA;AACA,uBAAuB,CAAC,IAAI,CAAC;AAC7B,qBAAqB,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,MAAM,KAAK,IAAI,gBAAgB,CAAC,MAAM,CAAC,CAAC;;;;"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
import{a_ as e,aP as r,aQ as o}from"./index-BJLUfgJX.esm.min.js";import{G as t}from"./glTFLoader-vKjW1nNZ.esm.min.js";import"./rawTexture-YAJTylc3.esm.min.js";import"./assetContainer-Dkp9h8Nk.esm.min.js";import"./glTFLoaderAnimation-B6CGd8Cm.esm.min.js";const s="MSFT_sRGBFactors";class i{constructor(e){this.name=s,this._loader=e,this.enabled=this._loader.isExtensionUsed(s)}dispose(){this._loader=null}loadMaterialPropertiesAsync(r,o,s){return t.LoadExtraAsync(r,o,this.name,((t,i)=>{if(i){if(!(s instanceof e))throw new Error(`${t}: Material type not supported`);const i=this._loader.loadMaterialPropertiesAsync(r,o,s),a=s.getScene().getEngine().useExactSrgbConversions;return s.albedoTexture||s.albedoColor.toLinearSpaceToRef(s.albedoColor,a),s.reflectivityTexture||s.reflectivityColor.toLinearSpaceToRef(s.reflectivityColor,a),i}return null}))}}r(s),o(s,!0,(e=>new i(e)));export{i as MSFT_sRGBFactors};
|
|
2
|
+
//# sourceMappingURL=MSFT_sRGBFactors-DDIZdWTr.esm.min.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MSFT_sRGBFactors-DDIZdWTr.esm.min.js","sources":["../../../../../dev/loaders/dist/glTF/2.0/Extensions/MSFT_sRGBFactors.js"],"sourcesContent":["import { PBRMaterial } from \"core/Materials/PBR/pbrMaterial\";\nimport { GLTFLoader } from \"../glTFLoader\";\nimport { registerGLTFExtension, unregisterGLTFExtension } from \"../glTFLoaderExtensionRegistry\";\nconst NAME = \"MSFT_sRGBFactors\";\n/** @internal */\n// eslint-disable-next-line @typescript-eslint/naming-convention\nexport class MSFT_sRGBFactors {\n /** @internal */\n constructor(loader) {\n /** @internal */\n this.name = NAME;\n this._loader = loader;\n this.enabled = this._loader.isExtensionUsed(NAME);\n }\n /** @internal */\n dispose() {\n this._loader = null;\n }\n /** @internal */\n loadMaterialPropertiesAsync(context, material, babylonMaterial) {\n return GLTFLoader.LoadExtraAsync(context, material, this.name, (extraContext, extra) => {\n if (extra) {\n if (!(babylonMaterial instanceof PBRMaterial)) {\n throw new Error(`${extraContext}: Material type not supported`);\n }\n const promise = this._loader.loadMaterialPropertiesAsync(context, material, babylonMaterial);\n const useExactSrgbConversions = babylonMaterial.getScene().getEngine().useExactSrgbConversions;\n if (!babylonMaterial.albedoTexture) {\n babylonMaterial.albedoColor.toLinearSpaceToRef(babylonMaterial.albedoColor, useExactSrgbConversions);\n }\n if (!babylonMaterial.reflectivityTexture) {\n babylonMaterial.reflectivityColor.toLinearSpaceToRef(babylonMaterial.reflectivityColor, useExactSrgbConversions);\n }\n return promise;\n }\n return null;\n });\n }\n}\nunregisterGLTFExtension(NAME);\nregisterGLTFExtension(NAME, true, (loader) => new MSFT_sRGBFactors(loader));\n//# sourceMappingURL=MSFT_sRGBFactors.js.map"],"names":["NAME","MSFT_sRGBFactors","constructor","loader","this","name","_loader","enabled","isExtensionUsed","dispose","loadMaterialPropertiesAsync","context","material","babylonMaterial","GLTFLoader","LoadExtraAsync","extraContext","extra","PBRMaterial","Error","promise","useExactSrgbConversions","getScene","getEngine","albedoTexture","albedoColor","toLinearSpaceToRef","reflectivityTexture","reflectivityColor","unregisterGLTFExtension","registerGLTFExtension"],"mappings":"8PAGA,MAAMA,EAAO,mBAGN,MAAMC,EAET,WAAAC,CAAYC,GAERC,KAAKC,KAAOL,EACZI,KAAKE,QAAUH,EACfC,KAAKG,QAAUH,KAAKE,QAAQE,gBAAgBR,EACpD,CAEI,OAAAS,GACIL,KAAKE,QAAU,IACvB,CAEI,2BAAAI,CAA4BC,EAASC,EAAUC,GAC3C,OAAOC,EAAWC,eAAeJ,EAASC,EAAUR,KAAKC,MAAM,CAACW,EAAcC,KAC1E,GAAIA,EAAO,CACP,KAAMJ,aAA2BK,GAC7B,MAAM,IAAIC,MAAM,GAAGH,kCAEvB,MAAMI,EAAUhB,KAAKE,QAAQI,4BAA4BC,EAASC,EAAUC,GACtEQ,EAA0BR,EAAgBS,WAAWC,YAAYF,wBAOvE,OANKR,EAAgBW,eACjBX,EAAgBY,YAAYC,mBAAmBb,EAAgBY,YAAaJ,GAE3ER,EAAgBc,qBACjBd,EAAgBe,kBAAkBF,mBAAmBb,EAAgBe,kBAAmBP,GAErFD,CACvB,CACY,OAAO,IAAI,GAEvB,EAEAS,EAAwB7B,GACxB8B,EAAsB9B,GAAM,GAAOG,GAAW,IAAIF,EAAiBE"}
|