@babylonjs/loaders 9.13.0 → 9.14.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/BVH/bvhFileLoader.d.ts +4 -67
- package/BVH/bvhFileLoader.js +6 -130
- package/BVH/bvhFileLoader.js.map +1 -1
- package/BVH/bvhFileLoader.pure.d.ts +75 -0
- package/BVH/bvhFileLoader.pure.js +154 -0
- package/BVH/bvhFileLoader.pure.js.map +1 -0
- package/BVH/bvhFileLoader.types.d.ts +11 -0
- package/BVH/bvhFileLoader.types.js +2 -0
- package/BVH/bvhFileLoader.types.js.map +1 -0
- package/BVH/pure.d.ts +3 -0
- package/BVH/pure.js +5 -0
- package/BVH/pure.js.map +1 -0
- package/FBX/fbxFileLoader.d.ts +4 -192
- package/FBX/fbxFileLoader.js +6 -2437
- package/FBX/fbxFileLoader.js.map +1 -1
- package/FBX/fbxFileLoader.pure.d.ts +190 -0
- package/FBX/fbxFileLoader.pure.js +2451 -0
- package/FBX/fbxFileLoader.pure.js.map +1 -0
- package/FBX/fbxFileLoader.types.d.ts +11 -0
- package/FBX/fbxFileLoader.types.js +2 -0
- package/FBX/fbxFileLoader.types.js.map +1 -0
- package/FBX/pure.d.ts +3 -0
- package/FBX/pure.js +4 -0
- package/FBX/pure.js.map +1 -0
- package/OBJ/objFileLoader.d.ts +4 -134
- package/OBJ/objFileLoader.js +6 -315
- package/OBJ/objFileLoader.js.map +1 -1
- package/OBJ/objFileLoader.pure.d.ts +132 -0
- package/OBJ/objFileLoader.pure.js +329 -0
- package/OBJ/objFileLoader.pure.js.map +1 -0
- package/OBJ/objFileLoader.types.d.ts +11 -0
- package/OBJ/objFileLoader.types.js +2 -0
- package/OBJ/objFileLoader.types.js.map +1 -0
- package/OBJ/pure.d.ts +5 -0
- package/OBJ/pure.js +6 -0
- package/OBJ/pure.js.map +1 -0
- package/OBJ/solidParser.js +4 -3
- package/OBJ/solidParser.js.map +1 -1
- package/SPLAT/gaussianSplattingBlockAllocator.d.ts +137 -0
- package/SPLAT/gaussianSplattingBlockAllocator.js +555 -0
- package/SPLAT/gaussianSplattingBlockAllocator.js.map +1 -0
- package/SPLAT/gaussianSplattingDownloadManager.d.ts +109 -0
- package/SPLAT/gaussianSplattingDownloadManager.js +241 -0
- package/SPLAT/gaussianSplattingDownloadManager.js.map +1 -0
- package/SPLAT/gaussianSplattingResidencyController.d.ts +133 -0
- package/SPLAT/gaussianSplattingResidencyController.js +222 -0
- package/SPLAT/gaussianSplattingResidencyController.js.map +1 -0
- package/SPLAT/gaussianSplattingStream.d.ts +122 -4
- package/SPLAT/gaussianSplattingStream.js +413 -42
- package/SPLAT/gaussianSplattingStream.js.map +1 -1
- package/SPLAT/gaussianSplattingWorkBuffer.d.ts +36 -0
- package/SPLAT/gaussianSplattingWorkBuffer.js +125 -13
- package/SPLAT/gaussianSplattingWorkBuffer.js.map +1 -1
- package/SPLAT/gaussianSplattingWorkBufferShaders.d.ts +15 -0
- package/SPLAT/gaussianSplattingWorkBufferShaders.js +82 -0
- package/SPLAT/gaussianSplattingWorkBufferShaders.js.map +1 -1
- package/SPLAT/pure.d.ts +5 -0
- package/SPLAT/pure.js +7 -0
- package/SPLAT/pure.js.map +1 -0
- package/SPLAT/sog.d.ts +1 -97
- package/SPLAT/sog.js +1 -501
- package/SPLAT/sog.js.map +1 -1
- package/SPLAT/sog.pure.d.ts +102 -0
- package/SPLAT/sog.pure.js +514 -0
- package/SPLAT/sog.pure.js.map +1 -0
- package/SPLAT/splatFileLoader.d.ts +5 -106
- package/SPLAT/splatFileLoader.js +9 -636
- package/SPLAT/splatFileLoader.js.map +1 -1
- package/SPLAT/splatFileLoader.pure.d.ts +104 -0
- package/SPLAT/splatFileLoader.pure.js +650 -0
- package/SPLAT/splatFileLoader.pure.js.map +1 -0
- package/SPLAT/splatFileLoader.types.d.ts +11 -0
- package/SPLAT/splatFileLoader.types.js +2 -0
- package/SPLAT/splatFileLoader.types.js.map +1 -0
- package/STL/pure.d.ts +2 -0
- package/STL/pure.js +3 -0
- package/STL/pure.js.map +1 -0
- package/STL/stlFileLoader.d.ts +5 -76
- package/STL/stlFileLoader.js +7 -236
- package/STL/stlFileLoader.js.map +1 -1
- package/STL/stlFileLoader.pure.d.ts +73 -0
- package/STL/stlFileLoader.pure.js +249 -0
- package/STL/stlFileLoader.pure.js.map +1 -0
- package/STL/stlFileLoader.types.d.ts +10 -0
- package/STL/stlFileLoader.types.js +2 -0
- package/STL/stlFileLoader.types.js.map +1 -0
- package/glTF/1.0/pure.d.ts +3 -0
- package/glTF/1.0/pure.js +4 -0
- package/glTF/1.0/pure.js.map +1 -0
- package/glTF/2.0/Extensions/EXT_lights_area.d.ts +4 -39
- package/glTF/2.0/Extensions/EXT_lights_area.js +6 -91
- package/glTF/2.0/Extensions/EXT_lights_area.js.map +1 -1
- package/glTF/2.0/Extensions/EXT_lights_area.pure.d.ts +38 -0
- package/glTF/2.0/Extensions/EXT_lights_area.pure.js +106 -0
- package/glTF/2.0/Extensions/EXT_lights_area.pure.js.map +1 -0
- package/glTF/2.0/Extensions/EXT_lights_area.types.d.ts +9 -0
- package/glTF/2.0/Extensions/EXT_lights_area.types.js +2 -0
- package/glTF/2.0/Extensions/EXT_lights_area.types.js.map +1 -0
- package/glTF/2.0/Extensions/EXT_lights_ies.d.ts +4 -39
- package/glTF/2.0/Extensions/EXT_lights_ies.js +6 -81
- package/glTF/2.0/Extensions/EXT_lights_ies.js.map +1 -1
- package/glTF/2.0/Extensions/EXT_lights_ies.pure.d.ts +38 -0
- package/glTF/2.0/Extensions/EXT_lights_ies.pure.js +96 -0
- package/glTF/2.0/Extensions/EXT_lights_ies.pure.js.map +1 -0
- package/glTF/2.0/Extensions/EXT_lights_ies.types.d.ts +9 -0
- package/glTF/2.0/Extensions/EXT_lights_ies.types.js +2 -0
- package/glTF/2.0/Extensions/EXT_lights_ies.types.js.map +1 -0
- package/glTF/2.0/Extensions/EXT_lights_image_based.d.ts +4 -46
- package/glTF/2.0/Extensions/EXT_lights_image_based.js +6 -113
- package/glTF/2.0/Extensions/EXT_lights_image_based.js.map +1 -1
- package/glTF/2.0/Extensions/EXT_lights_image_based.pure.d.ts +37 -0
- package/glTF/2.0/Extensions/EXT_lights_image_based.pure.js +128 -0
- package/glTF/2.0/Extensions/EXT_lights_image_based.pure.js.map +1 -0
- package/glTF/2.0/Extensions/EXT_lights_image_based.types.d.ts +17 -0
- package/glTF/2.0/Extensions/EXT_lights_image_based.types.js +2 -0
- package/glTF/2.0/Extensions/EXT_lights_image_based.types.js.map +1 -0
- package/glTF/2.0/Extensions/EXT_mesh_gpu_instancing.d.ts +5 -37
- package/glTF/2.0/Extensions/EXT_mesh_gpu_instancing.js +7 -92
- package/glTF/2.0/Extensions/EXT_mesh_gpu_instancing.js.map +1 -1
- package/glTF/2.0/Extensions/EXT_mesh_gpu_instancing.pure.d.ts +35 -0
- package/glTF/2.0/Extensions/EXT_mesh_gpu_instancing.pure.js +106 -0
- package/glTF/2.0/Extensions/EXT_mesh_gpu_instancing.pure.js.map +1 -0
- package/glTF/2.0/Extensions/EXT_mesh_gpu_instancing.types.d.ts +9 -0
- package/glTF/2.0/Extensions/EXT_mesh_gpu_instancing.types.js +2 -0
- package/glTF/2.0/Extensions/EXT_mesh_gpu_instancing.types.js.map +1 -0
- package/glTF/2.0/Extensions/EXT_meshopt_compression.d.ts +4 -37
- package/glTF/2.0/Extensions/EXT_meshopt_compression.js +6 -48
- package/glTF/2.0/Extensions/EXT_meshopt_compression.js.map +1 -1
- package/glTF/2.0/Extensions/EXT_meshopt_compression.pure.d.ts +36 -0
- package/glTF/2.0/Extensions/EXT_meshopt_compression.pure.js +63 -0
- package/glTF/2.0/Extensions/EXT_meshopt_compression.pure.js.map +1 -0
- package/glTF/2.0/Extensions/EXT_meshopt_compression.types.d.ts +9 -0
- package/glTF/2.0/Extensions/EXT_meshopt_compression.types.js +2 -0
- package/glTF/2.0/Extensions/EXT_meshopt_compression.types.js.map +1 -0
- package/glTF/2.0/Extensions/EXT_texture_avif.d.ts +4 -32
- package/glTF/2.0/Extensions/EXT_texture_avif.js +6 -36
- package/glTF/2.0/Extensions/EXT_texture_avif.js.map +1 -1
- package/glTF/2.0/Extensions/EXT_texture_avif.pure.d.ts +31 -0
- package/glTF/2.0/Extensions/EXT_texture_avif.pure.js +51 -0
- package/glTF/2.0/Extensions/EXT_texture_avif.pure.js.map +1 -0
- package/glTF/2.0/Extensions/EXT_texture_avif.types.d.ts +9 -0
- package/glTF/2.0/Extensions/EXT_texture_avif.types.js +2 -0
- package/glTF/2.0/Extensions/EXT_texture_avif.types.js.map +1 -0
- package/glTF/2.0/Extensions/EXT_texture_webp.d.ts +4 -31
- package/glTF/2.0/Extensions/EXT_texture_webp.js +6 -35
- package/glTF/2.0/Extensions/EXT_texture_webp.js.map +1 -1
- package/glTF/2.0/Extensions/EXT_texture_webp.pure.d.ts +30 -0
- package/glTF/2.0/Extensions/EXT_texture_webp.pure.js +50 -0
- package/glTF/2.0/Extensions/EXT_texture_webp.pure.js.map +1 -0
- package/glTF/2.0/Extensions/EXT_texture_webp.types.d.ts +9 -0
- package/glTF/2.0/Extensions/EXT_texture_webp.types.js +2 -0
- package/glTF/2.0/Extensions/EXT_texture_webp.types.js.map +1 -0
- package/glTF/2.0/Extensions/ExtrasAsMetadata.d.ts +4 -51
- package/glTF/2.0/Extensions/ExtrasAsMetadata.js +6 -71
- package/glTF/2.0/Extensions/ExtrasAsMetadata.js.map +1 -1
- package/glTF/2.0/Extensions/ExtrasAsMetadata.pure.d.ts +50 -0
- package/glTF/2.0/Extensions/ExtrasAsMetadata.pure.js +85 -0
- package/glTF/2.0/Extensions/ExtrasAsMetadata.pure.js.map +1 -0
- package/glTF/2.0/Extensions/ExtrasAsMetadata.types.d.ts +9 -0
- package/glTF/2.0/Extensions/ExtrasAsMetadata.types.js +2 -0
- package/glTF/2.0/Extensions/ExtrasAsMetadata.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_animation_pointer.d.ts +5 -45
- package/glTF/2.0/Extensions/KHR_animation_pointer.js +7 -75
- package/glTF/2.0/Extensions/KHR_animation_pointer.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_animation_pointer.pure.d.ts +43 -0
- package/glTF/2.0/Extensions/KHR_animation_pointer.pure.js +89 -0
- package/glTF/2.0/Extensions/KHR_animation_pointer.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_animation_pointer.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_animation_pointer.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_animation_pointer.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_draco_mesh_compression.d.ts +4 -45
- package/glTF/2.0/Extensions/KHR_draco_mesh_compression.js +6 -90
- package/glTF/2.0/Extensions/KHR_draco_mesh_compression.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_draco_mesh_compression.pure.d.ts +44 -0
- package/glTF/2.0/Extensions/KHR_draco_mesh_compression.pure.js +105 -0
- package/glTF/2.0/Extensions/KHR_draco_mesh_compression.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_draco_mesh_compression.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_draco_mesh_compression.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_draco_mesh_compression.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_interactivity/pure.d.ts +4 -0
- package/glTF/2.0/Extensions/KHR_interactivity/pure.js +5 -0
- package/glTF/2.0/Extensions/KHR_interactivity/pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_interactivity.d.ts +4 -36
- package/glTF/2.0/Extensions/KHR_interactivity.js +6 -148
- package/glTF/2.0/Extensions/KHR_interactivity.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_interactivity.pure.d.ts +35 -0
- package/glTF/2.0/Extensions/KHR_interactivity.pure.js +163 -0
- package/glTF/2.0/Extensions/KHR_interactivity.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_interactivity.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_interactivity.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_interactivity.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_lights_punctual.d.ts +4 -39
- package/glTF/2.0/Extensions/KHR_lights_punctual.js +6 -89
- package/glTF/2.0/Extensions/KHR_lights_punctual.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_lights_punctual.pure.d.ts +38 -0
- package/glTF/2.0/Extensions/KHR_lights_punctual.pure.js +104 -0
- package/glTF/2.0/Extensions/KHR_lights_punctual.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_lights_punctual.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_lights_punctual.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_lights_punctual.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_anisotropy.d.ts +4 -40
- package/glTF/2.0/Extensions/KHR_materials_anisotropy.js +6 -63
- package/glTF/2.0/Extensions/KHR_materials_anisotropy.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_anisotropy.pure.d.ts +39 -0
- package/glTF/2.0/Extensions/KHR_materials_anisotropy.pure.js +78 -0
- package/glTF/2.0/Extensions/KHR_materials_anisotropy.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_anisotropy.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_anisotropy.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_anisotropy.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_clearcoat.d.ts +4 -41
- package/glTF/2.0/Extensions/KHR_materials_clearcoat.js +6 -77
- package/glTF/2.0/Extensions/KHR_materials_clearcoat.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_clearcoat.pure.d.ts +40 -0
- package/glTF/2.0/Extensions/KHR_materials_clearcoat.pure.js +92 -0
- package/glTF/2.0/Extensions/KHR_materials_clearcoat.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_clearcoat.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_clearcoat.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_clearcoat.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_coat.d.ts +4 -47
- package/glTF/2.0/Extensions/KHR_materials_coat.js +6 -117
- package/glTF/2.0/Extensions/KHR_materials_coat.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_coat.pure.d.ts +46 -0
- package/glTF/2.0/Extensions/KHR_materials_coat.pure.js +132 -0
- package/glTF/2.0/Extensions/KHR_materials_coat.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_coat.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_coat.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_coat.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_diffuse_roughness.d.ts +4 -41
- package/glTF/2.0/Extensions/KHR_materials_diffuse_roughness.js +6 -56
- package/glTF/2.0/Extensions/KHR_materials_diffuse_roughness.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_diffuse_roughness.pure.d.ts +40 -0
- package/glTF/2.0/Extensions/KHR_materials_diffuse_roughness.pure.js +71 -0
- package/glTF/2.0/Extensions/KHR_materials_diffuse_roughness.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_diffuse_roughness.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_diffuse_roughness.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_diffuse_roughness.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_diffuse_transmission.d.ts +4 -41
- package/glTF/2.0/Extensions/KHR_materials_diffuse_transmission.js +6 -71
- package/glTF/2.0/Extensions/KHR_materials_diffuse_transmission.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_diffuse_transmission.pure.d.ts +40 -0
- package/glTF/2.0/Extensions/KHR_materials_diffuse_transmission.pure.js +86 -0
- package/glTF/2.0/Extensions/KHR_materials_diffuse_transmission.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_diffuse_transmission.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_diffuse_transmission.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_diffuse_transmission.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_dispersion.d.ts +4 -41
- package/glTF/2.0/Extensions/KHR_materials_dispersion.js +6 -54
- package/glTF/2.0/Extensions/KHR_materials_dispersion.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_dispersion.pure.d.ts +40 -0
- package/glTF/2.0/Extensions/KHR_materials_dispersion.pure.js +69 -0
- package/glTF/2.0/Extensions/KHR_materials_dispersion.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_dispersion.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_dispersion.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_dispersion.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_emissive_strength.d.ts +4 -40
- package/glTF/2.0/Extensions/KHR_materials_emissive_strength.js +6 -45
- package/glTF/2.0/Extensions/KHR_materials_emissive_strength.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_emissive_strength.pure.d.ts +39 -0
- package/glTF/2.0/Extensions/KHR_materials_emissive_strength.pure.js +60 -0
- package/glTF/2.0/Extensions/KHR_materials_emissive_strength.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_emissive_strength.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_emissive_strength.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_emissive_strength.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_fuzz.d.ts +4 -41
- package/glTF/2.0/Extensions/KHR_materials_fuzz.js +6 -75
- package/glTF/2.0/Extensions/KHR_materials_fuzz.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_fuzz.pure.d.ts +40 -0
- package/glTF/2.0/Extensions/KHR_materials_fuzz.pure.js +90 -0
- package/glTF/2.0/Extensions/KHR_materials_fuzz.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_fuzz.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_fuzz.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_fuzz.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_ior.d.ts +4 -44
- package/glTF/2.0/Extensions/KHR_materials_ior.js +6 -52
- package/glTF/2.0/Extensions/KHR_materials_ior.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_ior.pure.d.ts +43 -0
- package/glTF/2.0/Extensions/KHR_materials_ior.pure.js +67 -0
- package/glTF/2.0/Extensions/KHR_materials_ior.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_ior.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_ior.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_ior.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_iridescence.d.ts +4 -40
- package/glTF/2.0/Extensions/KHR_materials_iridescence.js +6 -66
- package/glTF/2.0/Extensions/KHR_materials_iridescence.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_iridescence.pure.d.ts +39 -0
- package/glTF/2.0/Extensions/KHR_materials_iridescence.pure.js +81 -0
- package/glTF/2.0/Extensions/KHR_materials_iridescence.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_iridescence.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_iridescence.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_iridescence.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_pbrSpecularGlossiness.d.ts +4 -40
- package/glTF/2.0/Extensions/KHR_materials_pbrSpecularGlossiness.js +6 -72
- package/glTF/2.0/Extensions/KHR_materials_pbrSpecularGlossiness.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_pbrSpecularGlossiness.pure.d.ts +39 -0
- package/glTF/2.0/Extensions/KHR_materials_pbrSpecularGlossiness.pure.js +87 -0
- package/glTF/2.0/Extensions/KHR_materials_pbrSpecularGlossiness.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_pbrSpecularGlossiness.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_pbrSpecularGlossiness.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_pbrSpecularGlossiness.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_sheen.d.ts +4 -41
- package/glTF/2.0/Extensions/KHR_materials_sheen.js +6 -71
- package/glTF/2.0/Extensions/KHR_materials_sheen.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_sheen.pure.d.ts +40 -0
- package/glTF/2.0/Extensions/KHR_materials_sheen.pure.js +86 -0
- package/glTF/2.0/Extensions/KHR_materials_sheen.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_sheen.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_sheen.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_sheen.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_specular.d.ts +4 -40
- package/glTF/2.0/Extensions/KHR_materials_specular.js +6 -74
- package/glTF/2.0/Extensions/KHR_materials_specular.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_specular.pure.d.ts +39 -0
- package/glTF/2.0/Extensions/KHR_materials_specular.pure.js +89 -0
- package/glTF/2.0/Extensions/KHR_materials_specular.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_specular.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_specular.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_specular.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_transmission.d.ts +4 -40
- package/glTF/2.0/Extensions/KHR_materials_transmission.js +6 -70
- package/glTF/2.0/Extensions/KHR_materials_transmission.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_transmission.pure.d.ts +39 -0
- package/glTF/2.0/Extensions/KHR_materials_transmission.pure.js +85 -0
- package/glTF/2.0/Extensions/KHR_materials_transmission.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_transmission.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_transmission.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_transmission.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_unlit.d.ts +4 -40
- package/glTF/2.0/Extensions/KHR_materials_unlit.js +6 -64
- package/glTF/2.0/Extensions/KHR_materials_unlit.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_unlit.pure.d.ts +39 -0
- package/glTF/2.0/Extensions/KHR_materials_unlit.pure.js +79 -0
- package/glTF/2.0/Extensions/KHR_materials_unlit.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_unlit.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_unlit.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_unlit.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_variants.d.ts +4 -110
- package/glTF/2.0/Extensions/KHR_materials_variants.js +6 -260
- package/glTF/2.0/Extensions/KHR_materials_variants.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_variants.pure.d.ts +97 -0
- package/glTF/2.0/Extensions/KHR_materials_variants.pure.js +275 -0
- package/glTF/2.0/Extensions/KHR_materials_variants.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_variants.types.d.ts +29 -0
- package/glTF/2.0/Extensions/KHR_materials_variants.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_variants.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_volume.d.ts +4 -41
- package/glTF/2.0/Extensions/KHR_materials_volume.js +6 -77
- package/glTF/2.0/Extensions/KHR_materials_volume.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_volume.pure.d.ts +40 -0
- package/glTF/2.0/Extensions/KHR_materials_volume.pure.js +92 -0
- package/glTF/2.0/Extensions/KHR_materials_volume.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_volume.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_volume.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_volume.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_volume_scatter.d.ts +4 -43
- package/glTF/2.0/Extensions/KHR_materials_volume_scatter.js +6 -113
- package/glTF/2.0/Extensions/KHR_materials_volume_scatter.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_materials_volume_scatter.pure.d.ts +42 -0
- package/glTF/2.0/Extensions/KHR_materials_volume_scatter.pure.js +128 -0
- package/glTF/2.0/Extensions/KHR_materials_volume_scatter.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_materials_volume_scatter.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_materials_volume_scatter.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_materials_volume_scatter.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_mesh_quantization.d.ts +4 -27
- package/glTF/2.0/Extensions/KHR_mesh_quantization.js +6 -20
- package/glTF/2.0/Extensions/KHR_mesh_quantization.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_mesh_quantization.pure.d.ts +26 -0
- package/glTF/2.0/Extensions/KHR_mesh_quantization.pure.js +35 -0
- package/glTF/2.0/Extensions/KHR_mesh_quantization.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_mesh_quantization.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_mesh_quantization.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_mesh_quantization.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_node_hoverability.d.ts +4 -29
- package/glTF/2.0/Extensions/KHR_node_hoverability.js +6 -187
- package/glTF/2.0/Extensions/KHR_node_hoverability.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_node_hoverability.pure.d.ts +28 -0
- package/glTF/2.0/Extensions/KHR_node_hoverability.pure.js +202 -0
- package/glTF/2.0/Extensions/KHR_node_hoverability.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_node_hoverability.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_node_hoverability.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_node_hoverability.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_node_selectability.d.ts +4 -28
- package/glTF/2.0/Extensions/KHR_node_selectability.js +6 -121
- package/glTF/2.0/Extensions/KHR_node_selectability.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_node_selectability.pure.d.ts +27 -0
- package/glTF/2.0/Extensions/KHR_node_selectability.pure.js +136 -0
- package/glTF/2.0/Extensions/KHR_node_selectability.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_node_selectability.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_node_selectability.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_node_selectability.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_node_visibility.d.ts +4 -28
- package/glTF/2.0/Extensions/KHR_node_visibility.js +6 -64
- package/glTF/2.0/Extensions/KHR_node_visibility.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_node_visibility.pure.d.ts +27 -0
- package/glTF/2.0/Extensions/KHR_node_visibility.pure.js +79 -0
- package/glTF/2.0/Extensions/KHR_node_visibility.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_node_visibility.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_node_visibility.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_node_visibility.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_texture_basisu.d.ts +4 -31
- package/glTF/2.0/Extensions/KHR_texture_basisu.js +6 -35
- package/glTF/2.0/Extensions/KHR_texture_basisu.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_texture_basisu.pure.d.ts +30 -0
- package/glTF/2.0/Extensions/KHR_texture_basisu.pure.js +50 -0
- package/glTF/2.0/Extensions/KHR_texture_basisu.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_texture_basisu.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_texture_basisu.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_texture_basisu.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_texture_transform.d.ts +4 -35
- package/glTF/2.0/Extensions/KHR_texture_transform.js +6 -56
- package/glTF/2.0/Extensions/KHR_texture_transform.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_texture_transform.pure.d.ts +34 -0
- package/glTF/2.0/Extensions/KHR_texture_transform.pure.js +71 -0
- package/glTF/2.0/Extensions/KHR_texture_transform.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_texture_transform.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_texture_transform.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_texture_transform.types.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_xmp_json_ld.d.ts +4 -37
- package/glTF/2.0/Extensions/KHR_xmp_json_ld.js +6 -45
- package/glTF/2.0/Extensions/KHR_xmp_json_ld.js.map +1 -1
- package/glTF/2.0/Extensions/KHR_xmp_json_ld.pure.d.ts +36 -0
- package/glTF/2.0/Extensions/KHR_xmp_json_ld.pure.js +60 -0
- package/glTF/2.0/Extensions/KHR_xmp_json_ld.pure.js.map +1 -0
- package/glTF/2.0/Extensions/KHR_xmp_json_ld.types.d.ts +9 -0
- package/glTF/2.0/Extensions/KHR_xmp_json_ld.types.js +2 -0
- package/glTF/2.0/Extensions/KHR_xmp_json_ld.types.js.map +1 -0
- package/glTF/2.0/Extensions/MSFT_audio_emitter.d.ts +5 -54
- package/glTF/2.0/Extensions/MSFT_audio_emitter.js +7 -226
- package/glTF/2.0/Extensions/MSFT_audio_emitter.js.map +1 -1
- package/glTF/2.0/Extensions/MSFT_audio_emitter.pure.d.ts +52 -0
- package/glTF/2.0/Extensions/MSFT_audio_emitter.pure.js +240 -0
- package/glTF/2.0/Extensions/MSFT_audio_emitter.pure.js.map +1 -0
- package/glTF/2.0/Extensions/MSFT_audio_emitter.types.d.ts +9 -0
- package/glTF/2.0/Extensions/MSFT_audio_emitter.types.js +2 -0
- package/glTF/2.0/Extensions/MSFT_audio_emitter.types.js.map +1 -0
- package/glTF/2.0/Extensions/MSFT_lod.d.ts +4 -102
- package/glTF/2.0/Extensions/MSFT_lod.js +6 -335
- package/glTF/2.0/Extensions/MSFT_lod.js.map +1 -1
- package/glTF/2.0/Extensions/MSFT_lod.pure.d.ts +96 -0
- package/glTF/2.0/Extensions/MSFT_lod.pure.js +350 -0
- package/glTF/2.0/Extensions/MSFT_lod.pure.js.map +1 -0
- package/glTF/2.0/Extensions/MSFT_lod.types.d.ts +14 -0
- package/glTF/2.0/Extensions/MSFT_lod.types.js +2 -0
- package/glTF/2.0/Extensions/MSFT_lod.types.js.map +1 -0
- package/glTF/2.0/Extensions/MSFT_minecraftMesh.d.ts +6 -27
- package/glTF/2.0/Extensions/MSFT_minecraftMesh.js +8 -40
- package/glTF/2.0/Extensions/MSFT_minecraftMesh.js.map +1 -1
- package/glTF/2.0/Extensions/MSFT_minecraftMesh.pure.d.ts +24 -0
- package/glTF/2.0/Extensions/MSFT_minecraftMesh.pure.js +53 -0
- package/glTF/2.0/Extensions/MSFT_minecraftMesh.pure.js.map +1 -0
- package/glTF/2.0/Extensions/MSFT_minecraftMesh.types.d.ts +9 -0
- package/glTF/2.0/Extensions/MSFT_minecraftMesh.types.js +2 -0
- package/glTF/2.0/Extensions/MSFT_minecraftMesh.types.js.map +1 -0
- package/glTF/2.0/Extensions/MSFT_sRGBFactors.d.ts +6 -27
- package/glTF/2.0/Extensions/MSFT_sRGBFactors.js +8 -38
- package/glTF/2.0/Extensions/MSFT_sRGBFactors.js.map +1 -1
- package/glTF/2.0/Extensions/MSFT_sRGBFactors.pure.d.ts +24 -0
- package/glTF/2.0/Extensions/MSFT_sRGBFactors.pure.js +51 -0
- package/glTF/2.0/Extensions/MSFT_sRGBFactors.pure.js.map +1 -0
- package/glTF/2.0/Extensions/MSFT_sRGBFactors.types.d.ts +9 -0
- package/glTF/2.0/Extensions/MSFT_sRGBFactors.types.js +2 -0
- package/glTF/2.0/Extensions/MSFT_sRGBFactors.types.js.map +1 -0
- package/glTF/2.0/Extensions/pure.d.ts +45 -0
- package/glTF/2.0/Extensions/pure.js +47 -0
- package/glTF/2.0/Extensions/pure.js.map +1 -0
- package/glTF/2.0/glTFLoader.d.ts +1 -471
- package/glTF/2.0/glTFLoader.js +3 -2539
- package/glTF/2.0/glTFLoader.js.map +1 -1
- package/glTF/2.0/glTFLoader.pure.d.ts +476 -0
- package/glTF/2.0/glTFLoader.pure.js +2563 -0
- package/glTF/2.0/glTFLoader.pure.js.map +1 -0
- package/glTF/2.0/pure.d.ts +8 -0
- package/glTF/2.0/pure.js +10 -0
- package/glTF/2.0/pure.js.map +1 -0
- package/glTF/glTFFileLoader.d.ts +5 -551
- package/glTF/glTFFileLoader.js +6 -996
- package/glTF/glTFFileLoader.js.map +1 -1
- package/glTF/glTFFileLoader.pure.d.ts +562 -0
- package/glTF/glTFFileLoader.pure.js +1024 -0
- package/glTF/glTFFileLoader.pure.js.map +1 -0
- package/glTF/glTFFileLoader.types.d.ts +11 -0
- package/glTF/glTFFileLoader.types.js +2 -0
- package/glTF/glTFFileLoader.types.js.map +1 -0
- package/glTF/pure.d.ts +6 -0
- package/glTF/pure.js +8 -0
- package/glTF/pure.js.map +1 -0
- package/package.json +56 -4
- package/pure.d.ts +8 -0
- package/pure.js +10 -0
- package/pure.js.map +1 -0
package/BVH/bvhFileLoader.d.ts
CHANGED
|
@@ -1,69 +1,6 @@
|
|
|
1
|
-
import { type ISceneLoaderPluginAsync, type ISceneLoaderPluginFactory, type ISceneLoaderAsyncResult, type SceneLoaderPluginOptions } from "@babylonjs/core/Loading/sceneLoader.js";
|
|
2
|
-
import { AssetContainer } from "@babylonjs/core/assetContainer.js";
|
|
3
|
-
import { type Scene } from "@babylonjs/core/scene.js";
|
|
4
|
-
import { type BVHLoadingOptions } from "./bvhLoadingOptions.js";
|
|
5
|
-
import { BVHFileLoaderMetadata } from "./bvhFileLoader.metadata.js";
|
|
6
|
-
declare module "@babylonjs/core/Loading/sceneLoader.js" {
|
|
7
|
-
interface SceneLoaderPluginOptions {
|
|
8
|
-
/**
|
|
9
|
-
* Defines options for the bvh loader.
|
|
10
|
-
*/
|
|
11
|
-
[BVHFileLoaderMetadata.name]: Partial<BVHLoadingOptions>;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
1
|
/**
|
|
15
|
-
*
|
|
16
|
-
*
|
|
17
|
-
* This is a babylon scene loader plugin.
|
|
2
|
+
* Re-exports the pure implementation and applies the runtime registration side effect.
|
|
3
|
+
* Import "./bvhFileLoader.pure" for tree-shakeable, side-effect-free usage.
|
|
18
4
|
*/
|
|
19
|
-
export
|
|
20
|
-
|
|
21
|
-
* Name of the loader ("bvh")
|
|
22
|
-
*/
|
|
23
|
-
readonly name: "bvh";
|
|
24
|
-
/** @internal */
|
|
25
|
-
readonly extensions: {
|
|
26
|
-
readonly ".bvh": {
|
|
27
|
-
readonly isBinary: false;
|
|
28
|
-
};
|
|
29
|
-
};
|
|
30
|
-
private readonly _loadingOptions;
|
|
31
|
-
/**
|
|
32
|
-
* Creates loader for bvh motion files
|
|
33
|
-
* @param loadingOptions - Options for the bvh loader
|
|
34
|
-
*/
|
|
35
|
-
constructor(loadingOptions?: Partial<Readonly<BVHLoadingOptions>>);
|
|
36
|
-
private static get _DefaultLoadingOptions();
|
|
37
|
-
/** @internal */
|
|
38
|
-
createPlugin(options: SceneLoaderPluginOptions): ISceneLoaderPluginAsync;
|
|
39
|
-
/**
|
|
40
|
-
* If the data string can be loaded directly.
|
|
41
|
-
* @param data - direct load data
|
|
42
|
-
* @returns if the data can be loaded directly
|
|
43
|
-
*/
|
|
44
|
-
canDirectLoad(data: string): boolean;
|
|
45
|
-
isBvhHeader(text: string): boolean;
|
|
46
|
-
isNotBvhHeader(text: string): boolean;
|
|
47
|
-
/**
|
|
48
|
-
* Imports from the loaded gaussian splatting data and adds them to the scene
|
|
49
|
-
* @param _meshesNames a string or array of strings of the mesh names that should be loaded from the file
|
|
50
|
-
* @param scene the scene the meshes should be added to
|
|
51
|
-
* @param data the bvh data to load
|
|
52
|
-
* @returns a promise containing the loaded skeletons and animations
|
|
53
|
-
*/
|
|
54
|
-
importMeshAsync(_meshesNames: string | readonly string[] | null | undefined, scene: Scene, data: unknown): Promise<ISceneLoaderAsyncResult>;
|
|
55
|
-
/**
|
|
56
|
-
* Imports all objects from the loaded bvh data and adds them to the scene
|
|
57
|
-
* @param scene the scene the objects should be added to
|
|
58
|
-
* @param data the bvh data to load
|
|
59
|
-
* @returns a promise which completes when objects have been loaded to the scene
|
|
60
|
-
*/
|
|
61
|
-
loadAsync(scene: Scene, data: unknown): Promise<void>;
|
|
62
|
-
/**
|
|
63
|
-
* Load into an asset container.
|
|
64
|
-
* @param scene The scene to load into
|
|
65
|
-
* @param data The data to import
|
|
66
|
-
* @returns The loaded asset container
|
|
67
|
-
*/
|
|
68
|
-
loadAssetContainerAsync(scene: Scene, data: unknown): Promise<AssetContainer>;
|
|
69
|
-
}
|
|
5
|
+
export * from "./bvhFileLoader.types.js";
|
|
6
|
+
export * from "./bvhFileLoader.pure.js";
|
package/BVH/bvhFileLoader.js
CHANGED
|
@@ -1,133 +1,9 @@
|
|
|
1
|
-
import { RegisterSceneLoaderPlugin, } from "@babylonjs/core/Loading/sceneLoader.js";
|
|
2
|
-
import { AssetContainer } from "@babylonjs/core/assetContainer.js";
|
|
3
|
-
import { Animation } from "@babylonjs/core/Animations/animation.js";
|
|
4
|
-
import { BVHFileLoaderMetadata } from "./bvhFileLoader.metadata.js";
|
|
5
|
-
import { ReadBvh } from "./bvhLoader.js";
|
|
6
1
|
/**
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* This is a babylon scene loader plugin.
|
|
2
|
+
* Re-exports the pure implementation and applies the runtime registration side effect.
|
|
3
|
+
* Import "./bvhFileLoader.pure" for tree-shakeable, side-effect-free usage.
|
|
10
4
|
*/
|
|
11
|
-
export
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
*/
|
|
16
|
-
constructor(loadingOptions) {
|
|
17
|
-
/**
|
|
18
|
-
* Name of the loader ("bvh")
|
|
19
|
-
*/
|
|
20
|
-
this.name = BVHFileLoaderMetadata.name;
|
|
21
|
-
/** @internal */
|
|
22
|
-
this.extensions = BVHFileLoaderMetadata.extensions;
|
|
23
|
-
this._loadingOptions = { ...BVHFileLoader._DefaultLoadingOptions, ...(loadingOptions ?? {}) };
|
|
24
|
-
}
|
|
25
|
-
static get _DefaultLoadingOptions() {
|
|
26
|
-
return {
|
|
27
|
-
loopMode: Animation.ANIMATIONLOOPMODE_CYCLE,
|
|
28
|
-
};
|
|
29
|
-
}
|
|
30
|
-
/** @internal */
|
|
31
|
-
createPlugin(options) {
|
|
32
|
-
return new BVHFileLoader(options[BVHFileLoaderMetadata.name]);
|
|
33
|
-
}
|
|
34
|
-
/**
|
|
35
|
-
* If the data string can be loaded directly.
|
|
36
|
-
* @param data - direct load data
|
|
37
|
-
* @returns if the data can be loaded directly
|
|
38
|
-
*/
|
|
39
|
-
canDirectLoad(data) {
|
|
40
|
-
return this.isBvhHeader(data);
|
|
41
|
-
}
|
|
42
|
-
isBvhHeader(text) {
|
|
43
|
-
return text.split("\n")[0] == "HIERARCHY";
|
|
44
|
-
}
|
|
45
|
-
isNotBvhHeader(text) {
|
|
46
|
-
return !this.isBvhHeader(text);
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Imports from the loaded gaussian splatting data and adds them to the scene
|
|
50
|
-
* @param _meshesNames a string or array of strings of the mesh names that should be loaded from the file
|
|
51
|
-
* @param scene the scene the meshes should be added to
|
|
52
|
-
* @param data the bvh data to load
|
|
53
|
-
* @returns a promise containing the loaded skeletons and animations
|
|
54
|
-
*/
|
|
55
|
-
// eslint-disable-next-line @typescript-eslint/promise-function-async, no-restricted-syntax
|
|
56
|
-
importMeshAsync(_meshesNames, scene, data) {
|
|
57
|
-
if (typeof data !== "string") {
|
|
58
|
-
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
59
|
-
return Promise.reject("BVH loader expects string data.");
|
|
60
|
-
}
|
|
61
|
-
if (this.isNotBvhHeader(data)) {
|
|
62
|
-
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
63
|
-
return Promise.reject("BVH loader expects HIERARCHY header.");
|
|
64
|
-
}
|
|
65
|
-
try {
|
|
66
|
-
const skeleton = ReadBvh(data, scene, null, this._loadingOptions);
|
|
67
|
-
return Promise.resolve({
|
|
68
|
-
meshes: [],
|
|
69
|
-
particleSystems: [],
|
|
70
|
-
skeletons: [skeleton],
|
|
71
|
-
animationGroups: [],
|
|
72
|
-
transformNodes: [],
|
|
73
|
-
geometries: [],
|
|
74
|
-
lights: [],
|
|
75
|
-
spriteManagers: [],
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
catch (e) {
|
|
79
|
-
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
80
|
-
return Promise.reject(e);
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
/**
|
|
84
|
-
* Imports all objects from the loaded bvh data and adds them to the scene
|
|
85
|
-
* @param scene the scene the objects should be added to
|
|
86
|
-
* @param data the bvh data to load
|
|
87
|
-
* @returns a promise which completes when objects have been loaded to the scene
|
|
88
|
-
*/
|
|
89
|
-
// eslint-disable-next-line no-restricted-syntax, @typescript-eslint/promise-function-async
|
|
90
|
-
loadAsync(scene, data) {
|
|
91
|
-
if (typeof data !== "string") {
|
|
92
|
-
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
93
|
-
return Promise.reject("BVH loader expects string data.");
|
|
94
|
-
}
|
|
95
|
-
if (this.isNotBvhHeader(data)) {
|
|
96
|
-
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
97
|
-
return Promise.reject("BVH loader expects HIERARCHY header.");
|
|
98
|
-
}
|
|
99
|
-
// eslint-disable-next-line github/no-then
|
|
100
|
-
return this.importMeshAsync(null, scene, data).then(() => {
|
|
101
|
-
// return void
|
|
102
|
-
});
|
|
103
|
-
}
|
|
104
|
-
/**
|
|
105
|
-
* Load into an asset container.
|
|
106
|
-
* @param scene The scene to load into
|
|
107
|
-
* @param data The data to import
|
|
108
|
-
* @returns The loaded asset container
|
|
109
|
-
*/
|
|
110
|
-
// eslint-disable-next-line @typescript-eslint/promise-function-async, no-restricted-syntax
|
|
111
|
-
loadAssetContainerAsync(scene, data) {
|
|
112
|
-
if (typeof data !== "string") {
|
|
113
|
-
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
114
|
-
return Promise.reject("BVH loader expects string data.");
|
|
115
|
-
}
|
|
116
|
-
if (this.isNotBvhHeader(data)) {
|
|
117
|
-
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
118
|
-
return Promise.reject("BVH loader expects HIERARCHY header.");
|
|
119
|
-
}
|
|
120
|
-
const assetContainer = new AssetContainer(scene);
|
|
121
|
-
try {
|
|
122
|
-
const skeleton = ReadBvh(data, scene, assetContainer, this._loadingOptions);
|
|
123
|
-
assetContainer.skeletons.push(skeleton);
|
|
124
|
-
return Promise.resolve(assetContainer);
|
|
125
|
-
}
|
|
126
|
-
catch (e) {
|
|
127
|
-
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
128
|
-
return Promise.reject(e);
|
|
129
|
-
}
|
|
130
|
-
}
|
|
131
|
-
}
|
|
132
|
-
RegisterSceneLoaderPlugin(new BVHFileLoader());
|
|
5
|
+
export * from "./bvhFileLoader.types.js";
|
|
6
|
+
export * from "./bvhFileLoader.pure.js";
|
|
7
|
+
import { RegisterBVHFileLoader } from "./bvhFileLoader.pure.js";
|
|
8
|
+
RegisterBVHFileLoader();
|
|
133
9
|
//# sourceMappingURL=bvhFileLoader.js.map
|
package/BVH/bvhFileLoader.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bvhFileLoader.js","sourceRoot":"","sources":["../../../../dev/loaders/src/BVH/bvhFileLoader.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"bvhFileLoader.js","sourceRoot":"","sources":["../../../../dev/loaders/src/BVH/bvhFileLoader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AAErC,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,qBAAqB,EAAE,CAAC","sourcesContent":["/**\r\n * Re-exports the pure implementation and applies the runtime registration side effect.\r\n * Import \"./bvhFileLoader.pure\" for tree-shakeable, side-effect-free usage.\r\n */\r\nexport * from \"./bvhFileLoader.types\";\r\nexport * from \"./bvhFileLoader.pure\";\r\n\r\nimport { RegisterBVHFileLoader } from \"./bvhFileLoader.pure\";\r\nRegisterBVHFileLoader();\r\n"]}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { type ISceneLoaderPluginAsync, type ISceneLoaderPluginFactory, type ISceneLoaderAsyncResult, type SceneLoaderPluginOptions } from "@babylonjs/core/Loading/sceneLoader.js";
|
|
2
|
+
import { AssetContainer } from "@babylonjs/core/assetContainer.js";
|
|
3
|
+
import { type Scene } from "@babylonjs/core/scene.js";
|
|
4
|
+
import { type BVHLoadingOptions } from "./bvhLoadingOptions.js";
|
|
5
|
+
/**
|
|
6
|
+
* @experimental
|
|
7
|
+
* BVH file type loader.
|
|
8
|
+
* This is a babylon scene loader plugin.
|
|
9
|
+
*/
|
|
10
|
+
export declare class BVHFileLoader implements ISceneLoaderPluginAsync, ISceneLoaderPluginFactory {
|
|
11
|
+
/**
|
|
12
|
+
* Name of the loader ("bvh")
|
|
13
|
+
*/
|
|
14
|
+
readonly name: "bvh";
|
|
15
|
+
/** @internal */
|
|
16
|
+
readonly extensions: {
|
|
17
|
+
readonly ".bvh": {
|
|
18
|
+
readonly isBinary: false;
|
|
19
|
+
};
|
|
20
|
+
};
|
|
21
|
+
private readonly _loadingOptions;
|
|
22
|
+
/**
|
|
23
|
+
* Creates loader for bvh motion files
|
|
24
|
+
* @param loadingOptions - Options for the bvh loader
|
|
25
|
+
*/
|
|
26
|
+
constructor(loadingOptions?: Partial<Readonly<BVHLoadingOptions>>);
|
|
27
|
+
private static get _DefaultLoadingOptions();
|
|
28
|
+
/** @internal */
|
|
29
|
+
createPlugin(options: SceneLoaderPluginOptions): ISceneLoaderPluginAsync;
|
|
30
|
+
/**
|
|
31
|
+
* If the data string can be loaded directly.
|
|
32
|
+
* @param data - direct load data
|
|
33
|
+
* @returns if the data can be loaded directly
|
|
34
|
+
*/
|
|
35
|
+
canDirectLoad(data: string): boolean;
|
|
36
|
+
/**
|
|
37
|
+
* Returns whether the provided text starts with a BVH HIERARCHY header.
|
|
38
|
+
* @param text - the text to inspect
|
|
39
|
+
* @returns true if the text is a BVH header
|
|
40
|
+
*/
|
|
41
|
+
isBvhHeader(text: string): boolean;
|
|
42
|
+
/**
|
|
43
|
+
* Returns whether the provided text does not start with a BVH HIERARCHY header.
|
|
44
|
+
* @param text - the text to inspect
|
|
45
|
+
* @returns true if the text is not a BVH header
|
|
46
|
+
*/
|
|
47
|
+
isNotBvhHeader(text: string): boolean;
|
|
48
|
+
/**
|
|
49
|
+
* Imports from the loaded gaussian splatting data and adds them to the scene
|
|
50
|
+
* @param _meshesNames a string or array of strings of the mesh names that should be loaded from the file
|
|
51
|
+
* @param scene the scene the meshes should be added to
|
|
52
|
+
* @param data the bvh data to load
|
|
53
|
+
* @returns a promise containing the loaded skeletons and animations
|
|
54
|
+
*/
|
|
55
|
+
importMeshAsync(_meshesNames: string | readonly string[] | null | undefined, scene: Scene, data: unknown): Promise<ISceneLoaderAsyncResult>;
|
|
56
|
+
/**
|
|
57
|
+
* Imports all objects from the loaded bvh data and adds them to the scene
|
|
58
|
+
* @param scene the scene the objects should be added to
|
|
59
|
+
* @param data the bvh data to load
|
|
60
|
+
* @returns a promise which completes when objects have been loaded to the scene
|
|
61
|
+
*/
|
|
62
|
+
loadAsync(scene: Scene, data: unknown): Promise<void>;
|
|
63
|
+
/**
|
|
64
|
+
* Load into an asset container.
|
|
65
|
+
* @param scene The scene to load into
|
|
66
|
+
* @param data The data to import
|
|
67
|
+
* @returns The loaded asset container
|
|
68
|
+
*/
|
|
69
|
+
loadAssetContainerAsync(scene: Scene, data: unknown): Promise<AssetContainer>;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Registers the BVHFileLoader scene loader plugin.
|
|
73
|
+
* Safe to call multiple times; only the first call has an effect.
|
|
74
|
+
*/
|
|
75
|
+
export declare function RegisterBVHFileLoader(): void;
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { RegisterSceneLoaderPlugin, } from "@babylonjs/core/Loading/sceneLoader.js";
|
|
2
|
+
import { AssetContainer } from "@babylonjs/core/assetContainer.js";
|
|
3
|
+
import { Animation } from "@babylonjs/core/Animations/animation.pure.js";
|
|
4
|
+
import { BVHFileLoaderMetadata } from "./bvhFileLoader.metadata.js";
|
|
5
|
+
import { ReadBvh } from "./bvhLoader.js";
|
|
6
|
+
/**
|
|
7
|
+
* @experimental
|
|
8
|
+
* BVH file type loader.
|
|
9
|
+
* This is a babylon scene loader plugin.
|
|
10
|
+
*/
|
|
11
|
+
export class BVHFileLoader {
|
|
12
|
+
/**
|
|
13
|
+
* Creates loader for bvh motion files
|
|
14
|
+
* @param loadingOptions - Options for the bvh loader
|
|
15
|
+
*/
|
|
16
|
+
constructor(loadingOptions) {
|
|
17
|
+
/**
|
|
18
|
+
* Name of the loader ("bvh")
|
|
19
|
+
*/
|
|
20
|
+
this.name = BVHFileLoaderMetadata.name;
|
|
21
|
+
/** @internal */
|
|
22
|
+
this.extensions = BVHFileLoaderMetadata.extensions;
|
|
23
|
+
this._loadingOptions = { ...BVHFileLoader._DefaultLoadingOptions, ...(loadingOptions ?? {}) };
|
|
24
|
+
}
|
|
25
|
+
static get _DefaultLoadingOptions() {
|
|
26
|
+
return {
|
|
27
|
+
loopMode: Animation.ANIMATIONLOOPMODE_CYCLE,
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
/** @internal */
|
|
31
|
+
createPlugin(options) {
|
|
32
|
+
return new BVHFileLoader(options[BVHFileLoaderMetadata.name]);
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* If the data string can be loaded directly.
|
|
36
|
+
* @param data - direct load data
|
|
37
|
+
* @returns if the data can be loaded directly
|
|
38
|
+
*/
|
|
39
|
+
canDirectLoad(data) {
|
|
40
|
+
return this.isBvhHeader(data);
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Returns whether the provided text starts with a BVH HIERARCHY header.
|
|
44
|
+
* @param text - the text to inspect
|
|
45
|
+
* @returns true if the text is a BVH header
|
|
46
|
+
*/
|
|
47
|
+
isBvhHeader(text) {
|
|
48
|
+
return text.split("\n")[0] == "HIERARCHY";
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Returns whether the provided text does not start with a BVH HIERARCHY header.
|
|
52
|
+
* @param text - the text to inspect
|
|
53
|
+
* @returns true if the text is not a BVH header
|
|
54
|
+
*/
|
|
55
|
+
isNotBvhHeader(text) {
|
|
56
|
+
return !this.isBvhHeader(text);
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Imports from the loaded gaussian splatting data and adds them to the scene
|
|
60
|
+
* @param _meshesNames a string or array of strings of the mesh names that should be loaded from the file
|
|
61
|
+
* @param scene the scene the meshes should be added to
|
|
62
|
+
* @param data the bvh data to load
|
|
63
|
+
* @returns a promise containing the loaded skeletons and animations
|
|
64
|
+
*/
|
|
65
|
+
// eslint-disable-next-line @typescript-eslint/promise-function-async, no-restricted-syntax
|
|
66
|
+
importMeshAsync(_meshesNames, scene, data) {
|
|
67
|
+
if (typeof data !== "string") {
|
|
68
|
+
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
69
|
+
return Promise.reject("BVH loader expects string data.");
|
|
70
|
+
}
|
|
71
|
+
if (this.isNotBvhHeader(data)) {
|
|
72
|
+
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
73
|
+
return Promise.reject("BVH loader expects HIERARCHY header.");
|
|
74
|
+
}
|
|
75
|
+
try {
|
|
76
|
+
const skeleton = ReadBvh(data, scene, null, this._loadingOptions);
|
|
77
|
+
return Promise.resolve({
|
|
78
|
+
meshes: [],
|
|
79
|
+
particleSystems: [],
|
|
80
|
+
skeletons: [skeleton],
|
|
81
|
+
animationGroups: [],
|
|
82
|
+
transformNodes: [],
|
|
83
|
+
geometries: [],
|
|
84
|
+
lights: [],
|
|
85
|
+
spriteManagers: [],
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
catch (e) {
|
|
89
|
+
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
90
|
+
return Promise.reject(e);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* Imports all objects from the loaded bvh data and adds them to the scene
|
|
95
|
+
* @param scene the scene the objects should be added to
|
|
96
|
+
* @param data the bvh data to load
|
|
97
|
+
* @returns a promise which completes when objects have been loaded to the scene
|
|
98
|
+
*/
|
|
99
|
+
// eslint-disable-next-line no-restricted-syntax, @typescript-eslint/promise-function-async
|
|
100
|
+
loadAsync(scene, data) {
|
|
101
|
+
if (typeof data !== "string") {
|
|
102
|
+
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
103
|
+
return Promise.reject("BVH loader expects string data.");
|
|
104
|
+
}
|
|
105
|
+
if (this.isNotBvhHeader(data)) {
|
|
106
|
+
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
107
|
+
return Promise.reject("BVH loader expects HIERARCHY header.");
|
|
108
|
+
}
|
|
109
|
+
// eslint-disable-next-line github/no-then
|
|
110
|
+
return this.importMeshAsync(null, scene, data).then(() => {
|
|
111
|
+
// return void
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Load into an asset container.
|
|
116
|
+
* @param scene The scene to load into
|
|
117
|
+
* @param data The data to import
|
|
118
|
+
* @returns The loaded asset container
|
|
119
|
+
*/
|
|
120
|
+
// eslint-disable-next-line @typescript-eslint/promise-function-async, no-restricted-syntax
|
|
121
|
+
loadAssetContainerAsync(scene, data) {
|
|
122
|
+
if (typeof data !== "string") {
|
|
123
|
+
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
124
|
+
return Promise.reject("BVH loader expects string data.");
|
|
125
|
+
}
|
|
126
|
+
if (this.isNotBvhHeader(data)) {
|
|
127
|
+
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
128
|
+
return Promise.reject("BVH loader expects HIERARCHY header.");
|
|
129
|
+
}
|
|
130
|
+
const assetContainer = new AssetContainer(scene);
|
|
131
|
+
try {
|
|
132
|
+
const skeleton = ReadBvh(data, scene, assetContainer, this._loadingOptions);
|
|
133
|
+
assetContainer.skeletons.push(skeleton);
|
|
134
|
+
return Promise.resolve(assetContainer);
|
|
135
|
+
}
|
|
136
|
+
catch (e) {
|
|
137
|
+
// eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors
|
|
138
|
+
return Promise.reject(e);
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
let _Registered = false;
|
|
143
|
+
/**
|
|
144
|
+
* Registers the BVHFileLoader scene loader plugin.
|
|
145
|
+
* Safe to call multiple times; only the first call has an effect.
|
|
146
|
+
*/
|
|
147
|
+
export function RegisterBVHFileLoader() {
|
|
148
|
+
if (_Registered) {
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
_Registered = true;
|
|
152
|
+
RegisterSceneLoaderPlugin(new BVHFileLoader());
|
|
153
|
+
}
|
|
154
|
+
//# sourceMappingURL=bvhFileLoader.pure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bvhFileLoader.pure.js","sourceRoot":"","sources":["../../../../dev/loaders/src/BVH/bvhFileLoader.pure.ts"],"names":[],"mappings":"AAAA,OAAO,EAKH,yBAAyB,GAC5B,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,gCAAgC,CAAC;AAG3D,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAEtC;;;;GAIG;AACH,MAAM,OAAO,aAAa;IAWtB;;;OAGG;IACH,YAAY,cAAqD;QAdjE;;WAEG;QACa,SAAI,GAAG,qBAAqB,CAAC,IAAI,CAAC;QAElD,gBAAgB;QACA,eAAU,GAAG,qBAAqB,CAAC,UAAU,CAAC;QAS1D,IAAI,CAAC,eAAe,GAAG,EAAE,GAAG,aAAa,CAAC,sBAAsB,EAAE,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC,EAAE,CAAC;IAClG,CAAC;IAEO,MAAM,KAAK,sBAAsB;QACrC,OAAO;YACH,QAAQ,EAAE,SAAS,CAAC,uBAAuB;SAC9C,CAAC;IACN,CAAC;IAED,gBAAgB;IACT,YAAY,CAAC,OAAiC;QACjD,OAAO,IAAI,aAAa,CAAC,OAAO,CAAC,qBAAqB,CAAC,IAAI,CAAC,CAAC,CAAC;IAClE,CAAC;IAED;;;;OAIG;IACI,aAAa,CAAC,IAAY;QAC7B,OAAO,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED;;;;OAIG;IACI,WAAW,CAAC,IAAY;QAC3B,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,WAAW,CAAC;IAC9C,CAAC;IAED;;;;OAIG;IACI,cAAc,CAAC,IAAY;QAC9B,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED;;;;;;OAMG;IACH,2FAA2F;IACpF,eAAe,CAAC,YAA2D,EAAE,KAAY,EAAE,IAAa;QAC3G,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,2EAA2E;YAC3E,OAAO,OAAO,CAAC,MAAM,CAAC,iCAAiC,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,IAAI,CAAC,cAAc,CAAC,IAAc,CAAC,EAAE,CAAC;YACtC,2EAA2E;YAC3E,OAAO,OAAO,CAAC,MAAM,CAAC,sCAAsC,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YAClE,OAAO,OAAO,CAAC,OAAO,CAAC;gBACnB,MAAM,EAAE,EAAE;gBACV,eAAe,EAAE,EAAE;gBACnB,SAAS,EAAE,CAAC,QAAQ,CAAC;gBACrB,eAAe,EAAE,EAAE;gBACnB,cAAc,EAAE,EAAE;gBAClB,UAAU,EAAE,EAAE;gBACd,MAAM,EAAE,EAAE;gBACV,cAAc,EAAE,EAAE;aACM,CAAC,CAAC;QAClC,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,2EAA2E;YAC3E,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,2FAA2F;IACpF,SAAS,CAAC,KAAY,EAAE,IAAa;QACxC,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,2EAA2E;YAC3E,OAAO,OAAO,CAAC,MAAM,CAAC,iCAAiC,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,IAAI,CAAC,cAAc,CAAC,IAAc,CAAC,EAAE,CAAC;YACtC,2EAA2E;YAC3E,OAAO,OAAO,CAAC,MAAM,CAAC,sCAAsC,CAAC,CAAC;QAClE,CAAC;QAED,0CAA0C;QAC1C,OAAO,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACrD,cAAc;QAClB,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;OAKG;IACH,2FAA2F;IACpF,uBAAuB,CAAC,KAAY,EAAE,IAAa;QACtD,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;YAC3B,2EAA2E;YAC3E,OAAO,OAAO,CAAC,MAAM,CAAC,iCAAiC,CAAC,CAAC;QAC7D,CAAC;QACD,IAAI,IAAI,CAAC,cAAc,CAAC,IAAc,CAAC,EAAE,CAAC;YACtC,2EAA2E;YAC3E,OAAO,OAAO,CAAC,MAAM,CAAC,sCAAsC,CAAC,CAAC;QAClE,CAAC;QACD,MAAM,cAAc,GAAG,IAAI,cAAc,CAAC,KAAK,CAAC,CAAC;QACjD,IAAI,CAAC;YACD,MAAM,QAAQ,GAAG,OAAO,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC;YAC5E,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YACxC,OAAO,OAAO,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAC3C,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACT,2EAA2E;YAC3E,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC7B,CAAC;IACL,CAAC;CACJ;AAED,IAAI,WAAW,GAAG,KAAK,CAAC;AACxB;;;GAGG;AACH,MAAM,UAAU,qBAAqB;IACjC,IAAI,WAAW,EAAE,CAAC;QACd,OAAO;IACX,CAAC;IACD,WAAW,GAAG,IAAI,CAAC;IAEnB,yBAAyB,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC;AACnD,CAAC","sourcesContent":["import {\r\n type ISceneLoaderPluginAsync,\r\n type ISceneLoaderPluginFactory,\r\n type ISceneLoaderAsyncResult,\r\n type SceneLoaderPluginOptions,\r\n RegisterSceneLoaderPlugin,\r\n} from \"core/Loading/sceneLoader\";\r\nimport { AssetContainer } from \"core/assetContainer\";\r\nimport { Animation } from \"core/Animations/animation.pure\";\r\nimport { type Scene } from \"core/scene\";\r\nimport { type BVHLoadingOptions } from \"./bvhLoadingOptions\";\r\nimport { BVHFileLoaderMetadata } from \"./bvhFileLoader.metadata\";\r\nimport { ReadBvh } from \"./bvhLoader\";\r\n\r\n/**\r\n * @experimental\r\n * BVH file type loader.\r\n * This is a babylon scene loader plugin.\r\n */\r\nexport class BVHFileLoader implements ISceneLoaderPluginAsync, ISceneLoaderPluginFactory {\r\n /**\r\n * Name of the loader (\"bvh\")\r\n */\r\n public readonly name = BVHFileLoaderMetadata.name;\r\n\r\n /** @internal */\r\n public readonly extensions = BVHFileLoaderMetadata.extensions;\r\n\r\n private readonly _loadingOptions: BVHLoadingOptions;\r\n\r\n /**\r\n * Creates loader for bvh motion files\r\n * @param loadingOptions - Options for the bvh loader\r\n */\r\n constructor(loadingOptions?: Partial<Readonly<BVHLoadingOptions>>) {\r\n this._loadingOptions = { ...BVHFileLoader._DefaultLoadingOptions, ...(loadingOptions ?? {}) };\r\n }\r\n\r\n private static get _DefaultLoadingOptions(): BVHLoadingOptions {\r\n return {\r\n loopMode: Animation.ANIMATIONLOOPMODE_CYCLE,\r\n };\r\n }\r\n\r\n /** @internal */\r\n public createPlugin(options: SceneLoaderPluginOptions): ISceneLoaderPluginAsync {\r\n return new BVHFileLoader(options[BVHFileLoaderMetadata.name]);\r\n }\r\n\r\n /**\r\n * If the data string can be loaded directly.\r\n * @param data - direct load data\r\n * @returns if the data can be loaded directly\r\n */\r\n public canDirectLoad(data: string): boolean {\r\n return this.isBvhHeader(data);\r\n }\r\n\r\n /**\r\n * Returns whether the provided text starts with a BVH HIERARCHY header.\r\n * @param text - the text to inspect\r\n * @returns true if the text is a BVH header\r\n */\r\n public isBvhHeader(text: string): boolean {\r\n return text.split(\"\\n\")[0] == \"HIERARCHY\";\r\n }\r\n\r\n /**\r\n * Returns whether the provided text does not start with a BVH HIERARCHY header.\r\n * @param text - the text to inspect\r\n * @returns true if the text is not a BVH header\r\n */\r\n public isNotBvhHeader(text: string): boolean {\r\n return !this.isBvhHeader(text);\r\n }\r\n\r\n /**\r\n * Imports from the loaded gaussian splatting data and adds them to the scene\r\n * @param _meshesNames a string or array of strings of the mesh names that should be loaded from the file\r\n * @param scene the scene the meshes should be added to\r\n * @param data the bvh data to load\r\n * @returns a promise containing the loaded skeletons and animations\r\n */\r\n // eslint-disable-next-line @typescript-eslint/promise-function-async, no-restricted-syntax\r\n public importMeshAsync(_meshesNames: string | readonly string[] | null | undefined, scene: Scene, data: unknown): Promise<ISceneLoaderAsyncResult> {\r\n if (typeof data !== \"string\") {\r\n // eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors\r\n return Promise.reject(\"BVH loader expects string data.\");\r\n }\r\n if (this.isNotBvhHeader(data as string)) {\r\n // eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors\r\n return Promise.reject(\"BVH loader expects HIERARCHY header.\");\r\n }\r\n try {\r\n const skeleton = ReadBvh(data, scene, null, this._loadingOptions);\r\n return Promise.resolve({\r\n meshes: [],\r\n particleSystems: [],\r\n skeletons: [skeleton],\r\n animationGroups: [],\r\n transformNodes: [],\r\n geometries: [],\r\n lights: [],\r\n spriteManagers: [],\r\n } as ISceneLoaderAsyncResult);\r\n } catch (e) {\r\n // eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors\r\n return Promise.reject(e);\r\n }\r\n }\r\n\r\n /**\r\n * Imports all objects from the loaded bvh data and adds them to the scene\r\n * @param scene the scene the objects should be added to\r\n * @param data the bvh data to load\r\n * @returns a promise which completes when objects have been loaded to the scene\r\n */\r\n // eslint-disable-next-line no-restricted-syntax, @typescript-eslint/promise-function-async\r\n public loadAsync(scene: Scene, data: unknown): Promise<void> {\r\n if (typeof data !== \"string\") {\r\n // eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors\r\n return Promise.reject(\"BVH loader expects string data.\");\r\n }\r\n if (this.isNotBvhHeader(data as string)) {\r\n // eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors\r\n return Promise.reject(\"BVH loader expects HIERARCHY header.\");\r\n }\r\n\r\n // eslint-disable-next-line github/no-then\r\n return this.importMeshAsync(null, scene, data).then(() => {\r\n // return void\r\n });\r\n }\r\n\r\n /**\r\n * Load into an asset container.\r\n * @param scene The scene to load into\r\n * @param data The data to import\r\n * @returns The loaded asset container\r\n */\r\n // eslint-disable-next-line @typescript-eslint/promise-function-async, no-restricted-syntax\r\n public loadAssetContainerAsync(scene: Scene, data: unknown): Promise<AssetContainer> {\r\n if (typeof data !== \"string\") {\r\n // eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors\r\n return Promise.reject(\"BVH loader expects string data.\");\r\n }\r\n if (this.isNotBvhHeader(data as string)) {\r\n // eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors\r\n return Promise.reject(\"BVH loader expects HIERARCHY header.\");\r\n }\r\n const assetContainer = new AssetContainer(scene);\r\n try {\r\n const skeleton = ReadBvh(data, scene, assetContainer, this._loadingOptions);\r\n assetContainer.skeletons.push(skeleton);\r\n return Promise.resolve(assetContainer);\r\n } catch (e) {\r\n // eslint-disable-next-line @typescript-eslint/prefer-promise-reject-errors\r\n return Promise.reject(e);\r\n }\r\n }\r\n}\r\n\r\nlet _Registered = false;\r\n/**\r\n * Registers the BVHFileLoader scene loader plugin.\r\n * Safe to call multiple times; only the first call has an effect.\r\n */\r\nexport function RegisterBVHFileLoader(): void {\r\n if (_Registered) {\r\n return;\r\n }\r\n _Registered = true;\r\n\r\n RegisterSceneLoaderPlugin(new BVHFileLoader());\r\n}\r\n"]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
import { type BVHLoadingOptions } from "./bvhLoadingOptions.js";
|
|
3
|
+
import { type BVHFileLoaderMetadata } from "./bvhFileLoader.metadata.js";
|
|
4
|
+
declare module "@babylonjs/core/Loading/sceneLoader.js" {
|
|
5
|
+
interface SceneLoaderPluginOptions {
|
|
6
|
+
/**
|
|
7
|
+
* Defines options for the bvh loader.
|
|
8
|
+
*/
|
|
9
|
+
[BVHFileLoaderMetadata.name]: Partial<BVHLoadingOptions>;
|
|
10
|
+
}
|
|
11
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bvhFileLoader.types.js","sourceRoot":"","sources":["../../../../dev/loaders/src/BVH/bvhFileLoader.types.ts"],"names":[],"mappings":"","sourcesContent":["export {};\r\n\r\nimport { type BVHLoadingOptions } from \"./bvhLoadingOptions\";\r\nimport { type BVHFileLoaderMetadata } from \"./bvhFileLoader.metadata\";\r\n\r\ndeclare module \"core/Loading/sceneLoader\" {\r\n // eslint-disable-next-line jsdoc/require-jsdoc, @typescript-eslint/naming-convention\r\n export interface SceneLoaderPluginOptions {\r\n /**\r\n * Defines options for the bvh loader.\r\n */\r\n [BVHFileLoaderMetadata.name]: Partial<BVHLoadingOptions>;\r\n }\r\n}\r\n"]}
|
package/BVH/pure.d.ts
ADDED
package/BVH/pure.js
ADDED
package/BVH/pure.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pure.js","sourceRoot":"","sources":["../../../../dev/loaders/src/BVH/pure.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAC7D,6DAA6D;AAC7D,cAAc,aAAa,CAAC;AAC5B,cAAc,sBAAsB,CAAC","sourcesContent":["/** Pure barrel — re-exports only side-effect-free modules */\n/* eslint-disable @typescript-eslint/no-restricted-imports */\nexport * from \"./bvhLoader\";\nexport * from \"./bvhFileLoader.pure\";\n"]}
|