@woosh/meep-engine 3.52.0 → 3.53.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/package.json +1 -1
- package/src/engine/ecs/animation/Animation.d.ts +4 -25
- package/src/engine/ecs/animation/Animation.d.ts.map +1 -1
- package/src/engine/ecs/animation/Animation.js +9 -41
- package/src/engine/ecs/ik/IKGoalSystem.d.ts +4 -5
- package/src/engine/ecs/ik/IKGoalSystem.d.ts.map +1 -1
- package/src/engine/ecs/ik/IKGoalSystem.js +4 -6
- package/src/engine/graphics/ecs/mesh/assetTypeByPath.js +1 -1
- package/src/engine/graphics3/AnimationGraphSystem.d.ts +9 -22
- package/src/engine/graphics3/AnimationGraphSystem.d.ts.map +1 -1
- package/src/engine/graphics3/AnimationGraphSystem.js +58 -203
- package/src/engine/graphics3/AnimationSystem.d.ts +7 -18
- package/src/engine/graphics3/AnimationSystem.d.ts.map +1 -1
- package/src/engine/graphics3/AnimationSystem.js +62 -243
- package/src/engine/graphics3/FoliageWindSystem.d.ts +67 -0
- package/src/engine/graphics3/FoliageWindSystem.d.ts.map +1 -0
- package/src/engine/graphics3/FoliageWindSystem.js +257 -0
- package/src/engine/graphics3/GPUFluidSystem.d.ts +7 -0
- package/src/engine/graphics3/GPUFluidSystem.d.ts.map +1 -1
- package/src/engine/graphics3/GPUFluidSystem.js +39 -1
- package/src/engine/graphics3/GPUParticleEmitterSystem.d.ts +0 -1
- package/src/engine/graphics3/GPUParticleEmitterSystem.d.ts.map +1 -1
- package/src/engine/graphics3/GPUParticleEmitterSystem.js +19 -5
- package/src/engine/graphics3/animation/AnimationClips.d.ts +107 -13
- package/src/engine/graphics3/animation/AnimationClips.d.ts.map +1 -1
- package/src/engine/graphics3/animation/AnimationClips.js +207 -10
- package/src/engine/graphics3/animation/AnimationClipsSink.d.ts +89 -0
- package/src/engine/graphics3/animation/AnimationClipsSink.d.ts.map +1 -0
- package/src/engine/graphics3/animation/AnimationClipsSink.js +205 -0
- package/src/engine/graphics3/animation/FoliageWindRigs.d.ts +43 -0
- package/src/engine/graphics3/animation/FoliageWindRigs.d.ts.map +1 -0
- package/src/engine/graphics3/animation/FoliageWindRigs.js +69 -0
- package/src/engine/graphics3/animation/write_clip_playback.d.ts +17 -11
- package/src/engine/graphics3/animation/write_clip_playback.d.ts.map +1 -1
- package/src/engine/graphics3/animation/write_clip_playback.js +36 -27
- package/src/engine/graphics3/decal/GPUDecalRenderer.d.ts.map +1 -1
- package/src/engine/graphics3/decal/GPUDecalRenderer.js +8 -6
- package/src/engine/graphics3/decal/shader_decal_composite.d.ts.map +1 -1
- package/src/engine/graphics3/decal/shader_decal_composite.js +11 -5
- package/src/engine/graphics3/pose/collect_entity_playbacks.d.ts +7 -7
- package/src/engine/graphics3/pose/collect_entity_playbacks.d.ts.map +1 -1
- package/src/engine/graphics3/pose/collect_entity_playbacks.js +14 -15
- package/src/engine/graphics3/prefab/Prefab.d.ts +6 -0
- package/src/engine/graphics3/prefab/Prefab.d.ts.map +1 -1
- package/src/engine/graphics3/prefab/Prefab.js +169 -162
- package/src/engine/graphics3/prefab/prefab_compile.d.ts.map +1 -1
- package/src/engine/graphics3/prefab/prefab_compile.js +369 -334
- package/src/engine/graphics3/prefab/prefab_instantiate.d.ts.map +1 -1
- package/src/engine/graphics3/prefab/prefab_instantiate.js +43 -2
- package/src/engine/graphics3/terrain/chunk_terrain_material_surface.js +2 -2
- package/src/engine/physics/ecs/ContactProbeSystem.d.ts +2 -3
- package/src/engine/physics/ecs/ContactProbeSystem.d.ts.map +1 -1
- package/src/engine/physics/ecs/ContactProbeSystem.js +2 -4
- package/src/engine/physics/fluid/ecs/FluidObstacleSystem.d.ts +4 -4
- package/src/engine/sound/simulation/PROBE_PLACEMENT.md +4 -4
- package/src/engine/sound/simulation/README.md +1 -1
- package/src/engine/sound/simulation/probe/bakeProbeField.d.ts +22 -8
- package/src/engine/sound/simulation/probe/bakeProbeField.d.ts.map +1 -1
- package/src/engine/sound/simulation/probe/bakeProbeField.js +60 -15
- package/src/engine/sound/simulation/probe/bakeProbeReflectors.d.ts.map +1 -1
- package/src/engine/sound/simulation/probe/bakeProbeReflectors.js +19 -23
- package/src/engine/sound/simulation/probe/probe_sdf_grid.d.ts +63 -17
- package/src/engine/sound/simulation/probe/probe_sdf_grid.d.ts.map +1 -1
- package/src/engine/sound/simulation/probe/probe_sdf_grid.js +67 -17
- package/src/generation/foliage/FOLIAGE_DESIGN.md +318 -0
- package/src/generation/foliage/FOLIAGE_PLAN.md +198 -0
- package/src/generation/foliage/animation/build_tree_wind_rig.d.ts +20 -0
- package/src/generation/foliage/animation/build_tree_wind_rig.d.ts.map +1 -0
- package/src/generation/foliage/animation/build_tree_wind_rig.js +108 -0
- package/src/generation/foliage/asset/TreeAsset.d.ts +86 -0
- package/src/generation/foliage/asset/TreeAsset.d.ts.map +1 -0
- package/src/generation/foliage/asset/TreeAsset.js +111 -0
- package/src/generation/foliage/asset/TreeLODAsset.d.ts +115 -0
- package/src/generation/foliage/asset/TreeLODAsset.d.ts.map +1 -0
- package/src/generation/foliage/asset/TreeLODAsset.js +346 -0
- package/src/generation/foliage/asset/generate_tree.d.ts +15 -0
- package/src/generation/foliage/asset/generate_tree.d.ts.map +1 -0
- package/src/generation/foliage/asset/generate_tree.js +93 -0
- package/src/generation/foliage/asset/place_tree.d.ts +82 -0
- package/src/generation/foliage/asset/place_tree.d.ts.map +1 -0
- package/src/generation/foliage/asset/place_tree.js +194 -0
- package/src/generation/foliage/config/BarkMaterialConfig.d.ts +120 -0
- package/src/generation/foliage/config/BarkMaterialConfig.d.ts.map +1 -0
- package/src/generation/foliage/config/BarkMaterialConfig.js +250 -0
- package/src/generation/foliage/config/BranchLevelConfig.d.ts +288 -0
- package/src/generation/foliage/config/BranchLevelConfig.d.ts.map +1 -0
- package/src/generation/foliage/config/BranchLevelConfig.js +536 -0
- package/src/generation/foliage/config/CrownConfig.d.ts +100 -0
- package/src/generation/foliage/config/CrownConfig.d.ts.map +1 -0
- package/src/generation/foliage/config/CrownConfig.js +186 -0
- package/src/generation/foliage/config/CrownEnvelopeType.d.ts +16 -0
- package/src/generation/foliage/config/CrownEnvelopeType.d.ts.map +1 -0
- package/src/generation/foliage/config/CrownEnvelopeType.js +17 -0
- package/src/generation/foliage/config/FoliageCardType.d.ts +12 -0
- package/src/generation/foliage/config/FoliageCardType.d.ts.map +1 -0
- package/src/generation/foliage/config/FoliageCardType.js +18 -0
- package/src/generation/foliage/config/FoliageConfig.d.ts +151 -0
- package/src/generation/foliage/config/FoliageConfig.d.ts.map +1 -0
- package/src/generation/foliage/config/FoliageConfig.js +283 -0
- package/src/generation/foliage/config/FoliageMaterialConfig.d.ts +90 -0
- package/src/generation/foliage/config/FoliageMaterialConfig.d.ts.map +1 -0
- package/src/generation/foliage/config/FoliageMaterialConfig.js +181 -0
- package/src/generation/foliage/config/PhyllotaxisMode.d.ts +13 -0
- package/src/generation/foliage/config/PhyllotaxisMode.d.ts.map +1 -0
- package/src/generation/foliage/config/PhyllotaxisMode.js +20 -0
- package/src/generation/foliage/config/TreeLODConfig.d.ts +87 -0
- package/src/generation/foliage/config/TreeLODConfig.d.ts.map +1 -0
- package/src/generation/foliage/config/TreeLODConfig.js +211 -0
- package/src/generation/foliage/config/TreePreset.d.ts +16 -0
- package/src/generation/foliage/config/TreePreset.d.ts.map +1 -0
- package/src/generation/foliage/config/TreePreset.js +17 -0
- package/src/generation/foliage/config/TreeSpeciesConfig.d.ts +109 -0
- package/src/generation/foliage/config/TreeSpeciesConfig.d.ts.map +1 -0
- package/src/generation/foliage/config/TreeSpeciesConfig.js +400 -0
- package/src/generation/foliage/config/TreeWindConfig.d.ts +84 -0
- package/src/generation/foliage/config/TreeWindConfig.d.ts.map +1 -0
- package/src/generation/foliage/config/TreeWindConfig.js +157 -0
- package/src/generation/foliage/index.d.ts +38 -0
- package/src/generation/foliage/index.d.ts.map +1 -0
- package/src/generation/foliage/index.js +43 -0
- package/src/generation/foliage/material/make_bark_material.d.ts +37 -0
- package/src/generation/foliage/material/make_bark_material.d.ts.map +1 -0
- package/src/generation/foliage/material/make_bark_material.js +802 -0
- package/src/generation/foliage/material/make_foliage_material.d.ts +14 -0
- package/src/generation/foliage/material/make_foliage_material.d.ts.map +1 -0
- package/src/generation/foliage/material/make_foliage_material.js +359 -0
- package/src/generation/foliage/mesh/branch_collar_project.d.ts +42 -0
- package/src/generation/foliage/mesh/branch_collar_project.d.ts.map +1 -0
- package/src/generation/foliage/mesh/branch_collar_project.js +203 -0
- package/src/generation/foliage/mesh/branch_ring_triangulate.d.ts +35 -0
- package/src/generation/foliage/mesh/branch_ring_triangulate.d.ts.map +1 -0
- package/src/generation/foliage/mesh/branch_ring_triangulate.js +72 -0
- package/src/generation/foliage/mesh/foliage_collect_attachments.d.ts +80 -0
- package/src/generation/foliage/mesh/foliage_collect_attachments.d.ts.map +1 -0
- package/src/generation/foliage/mesh/foliage_collect_attachments.js +502 -0
- package/src/generation/foliage/mesh/tree_mesh_apply_canopy_ao.d.ts +19 -0
- package/src/generation/foliage/mesh/tree_mesh_apply_canopy_ao.d.ts.map +1 -0
- package/src/generation/foliage/mesh/tree_mesh_apply_canopy_ao.js +150 -0
- package/src/generation/foliage/mesh/tree_mesh_build_bark.d.ts +55 -0
- package/src/generation/foliage/mesh/tree_mesh_build_bark.d.ts.map +1 -0
- package/src/generation/foliage/mesh/tree_mesh_build_bark.js +1047 -0
- package/src/generation/foliage/mesh/tree_mesh_build_foliage.d.ts +21 -0
- package/src/generation/foliage/mesh/tree_mesh_build_foliage.d.ts.map +1 -0
- package/src/generation/foliage/mesh/tree_mesh_build_foliage.js +415 -0
- package/src/generation/foliage/presets/make_tree_species_preset.d.ts +13 -0
- package/src/generation/foliage/presets/make_tree_species_preset.d.ts.map +1 -0
- package/src/generation/foliage/presets/make_tree_species_preset.js +837 -0
- package/src/generation/foliage/skeleton/TreeSkeleton.d.ts +443 -0
- package/src/generation/foliage/skeleton/TreeSkeleton.d.ts.map +1 -0
- package/src/generation/foliage/skeleton/TreeSkeleton.js +1100 -0
- package/src/generation/foliage/skeleton/crown_envelope_evaluate.d.ts +27 -0
- package/src/generation/foliage/skeleton/crown_envelope_evaluate.d.ts.map +1 -0
- package/src/generation/foliage/skeleton/crown_envelope_evaluate.js +121 -0
- package/src/generation/foliage/skeleton/spine_frame_double_reflection.d.ts +32 -0
- package/src/generation/foliage/skeleton/spine_frame_double_reflection.d.ts.map +1 -0
- package/src/generation/foliage/skeleton/spine_frame_double_reflection.js +87 -0
- package/src/generation/foliage/skeleton/tree_skeleton_assign_skin_joints.d.ts +33 -0
- package/src/generation/foliage/skeleton/tree_skeleton_assign_skin_joints.d.ts.map +1 -0
- package/src/generation/foliage/skeleton/tree_skeleton_assign_skin_joints.js +205 -0
- package/src/generation/foliage/skeleton/tree_skeleton_compute_pipe_radii.d.ts +14 -0
- package/src/generation/foliage/skeleton/tree_skeleton_compute_pipe_radii.d.ts.map +1 -0
- package/src/generation/foliage/skeleton/tree_skeleton_compute_pipe_radii.js +179 -0
- package/src/generation/foliage/skeleton/tree_skeleton_grow.d.ts +18 -0
- package/src/generation/foliage/skeleton/tree_skeleton_grow.d.ts.map +1 -0
- package/src/generation/foliage/skeleton/tree_skeleton_grow.js +1104 -0
- package/src/shade/playground/additive_blending/index.html +197 -0
- package/src/shade/playground/additive_blending/main.d.ts +2 -0
- package/src/shade/playground/additive_blending/main.d.ts.map +1 -0
- package/src/shade/playground/additive_blending/main.js +529 -0
- package/src/shade/playground/foliage_wind/README.md +18 -0
- package/src/shade/playground/foliage_wind/foliage_world.d.ts +127 -0
- package/src/shade/playground/foliage_wind/foliage_world.d.ts.map +1 -0
- package/src/shade/playground/foliage_wind/foliage_world.js +593 -0
- package/src/shade/playground/foliage_wind/index.html +254 -0
- package/src/shade/playground/foliage_wind/main.d.ts +2 -0
- package/src/shade/playground/foliage_wind/main.d.ts.map +1 -0
- package/src/shade/playground/foliage_wind/main.js +263 -0
- package/src/shade/renderer/Renderer.d.ts.map +1 -1
- package/src/shade/renderer/Renderer.js +45 -16
- package/src/shade/renderer/animation/ADDITIVE_BLENDING_PLAN.md +145 -0
- package/src/shade/renderer/animation/ANIMATION_DATABASE_SPEC.d.ts +9 -1
- package/src/shade/renderer/animation/ANIMATION_DATABASE_SPEC.d.ts.map +1 -1
- package/src/shade/renderer/animation/ANIMATION_DATABASE_SPEC.js +53 -1
- package/src/shade/renderer/animation/ANIMATION_FOLIAGE_JOINT_STRUCT.d.ts +8 -0
- package/src/shade/renderer/animation/ANIMATION_FOLIAGE_JOINT_STRUCT.d.ts.map +1 -0
- package/src/shade/renderer/animation/ANIMATION_FOLIAGE_JOINT_STRUCT.js +71 -0
- package/src/shade/renderer/animation/ANIMATION_FOLIAGE_RIG_STRUCT.d.ts +11 -0
- package/src/shade/renderer/animation/ANIMATION_FOLIAGE_RIG_STRUCT.d.ts.map +1 -0
- package/src/shade/renderer/animation/ANIMATION_FOLIAGE_RIG_STRUCT.js +32 -0
- package/src/shade/renderer/animation/GPUAnimationManager.d.ts +30 -3
- package/src/shade/renderer/animation/GPUAnimationManager.d.ts.map +1 -1
- package/src/shade/renderer/animation/GPUAnimationManager.js +532 -79
- package/src/shade/renderer/animation/POSE_ACCUMULATOR_LAYOUT.d.ts +19 -12
- package/src/shade/renderer/animation/POSE_ACCUMULATOR_LAYOUT.d.ts.map +1 -1
- package/src/shade/renderer/animation/POSE_ACCUMULATOR_LAYOUT.js +20 -13
- package/src/shade/renderer/animation/ShadeAnimationClip.d.ts +35 -8
- package/src/shade/renderer/animation/ShadeAnimationClip.d.ts.map +1 -1
- package/src/shade/renderer/animation/ShadeAnimationClip.js +433 -2
- package/src/shade/renderer/animation/chunk_pose_accumulator.d.ts.map +1 -1
- package/src/shade/renderer/animation/chunk_pose_accumulator.js +40 -32
- package/src/shade/renderer/animation/foliage/FoliageWindJoint.d.ts +97 -0
- package/src/shade/renderer/animation/foliage/FoliageWindJoint.d.ts.map +1 -0
- package/src/shade/renderer/animation/foliage/FoliageWindJoint.js +161 -0
- package/src/shade/renderer/animation/foliage/FoliageWindRig.d.ts +65 -0
- package/src/shade/renderer/animation/foliage/FoliageWindRig.d.ts.map +1 -0
- package/src/shade/renderer/animation/foliage/FoliageWindRig.js +89 -0
- package/src/shade/renderer/animation/foliage/chunk_foliage_wind_step.d.ts +19 -0
- package/src/shade/renderer/animation/foliage/chunk_foliage_wind_step.d.ts.map +1 -0
- package/src/shade/renderer/animation/foliage/chunk_foliage_wind_step.js +143 -0
- package/src/shade/renderer/animation/foliage/shader_foliage_wind_apply.d.ts +14 -0
- package/src/shade/renderer/animation/foliage/shader_foliage_wind_apply.d.ts.map +1 -0
- package/src/shade/renderer/animation/foliage/shader_foliage_wind_apply.js +116 -0
- package/src/shade/renderer/animation/pose/pose_evaluate_local.d.ts.map +1 -1
- package/src/shade/renderer/animation/pose/pose_evaluate_local.js +39 -29
- package/src/shade/renderer/animation/shader_animation_pose_resolve.js +37 -37
- package/src/shade/renderer/animation/skinning/GPUMeshSkinningContext.js +2 -2
- package/src/shade/renderer/extension/RenderExtension.d.ts +7 -0
- package/src/shade/renderer/extension/RenderExtension.d.ts.map +1 -1
- package/src/shade/renderer/extension/RenderExtension.js +9 -0
- package/src/shade/renderer/extension/RenderExtensionRegistry.d.ts +6 -0
- package/src/shade/renderer/extension/RenderExtensionRegistry.d.ts.map +1 -1
- package/src/shade/renderer/extension/RenderExtensionRegistry.js +15 -0
- package/src/shade/renderer/fluid/GPUFluidCascade.d.ts +7 -0
- package/src/shade/renderer/fluid/GPUFluidCascade.d.ts.map +1 -1
- package/src/shade/renderer/fluid/GPUFluidCascade.js +15 -0
- package/src/shade/renderer/fluid/GPUFluidCascadeStack.d.ts +7 -0
- package/src/shade/renderer/fluid/GPUFluidCascadeStack.d.ts.map +1 -1
- package/src/shade/renderer/fluid/GPUFluidCascadeStack.js +11 -0
- package/src/shade/renderer/fluid/coupling/chunk_fluid_cascade_parent.d.ts.map +1 -1
- package/src/shade/renderer/fluid/coupling/chunk_fluid_cascade_parent.js +51 -48
- package/src/shade/renderer/fluid/mac/FluidMacPasses.d.ts +6 -0
- package/src/shade/renderer/fluid/mac/FluidMacPasses.d.ts.map +1 -1
- package/src/shade/renderer/fluid/mac/FluidMacPasses.js +16 -0
- package/src/shade/renderer/fluid/mac/chunk_fluid_mac_seams.d.ts.map +1 -1
- package/src/shade/renderer/fluid/mac/chunk_fluid_mac_seams.js +15 -3
- package/src/shade/renderer/fluid/mac/chunk_v3_mac_lattice_corners.d.ts.map +1 -1
- package/src/shade/renderer/fluid/mac/chunk_v3_mac_lattice_corners.js +102 -96
- package/src/shade/renderer/fluid/mac/shader_fluid_mac_advect_correct.js +12 -12
- package/src/shade/renderer/fluid/mac/shader_fluid_mac_advect_predict.js +12 -12
- package/src/shade/renderer/fluid/pressure/GPUFluidPressureSolve.d.ts +7 -0
- package/src/shade/renderer/fluid/pressure/GPUFluidPressureSolve.d.ts.map +1 -1
- package/src/shade/renderer/fluid/pressure/GPUFluidPressureSolve.js +16 -0
- package/src/shade/renderer/fluid/publish/FluidWindPublish.d.ts +7 -0
- package/src/shade/renderer/fluid/publish/FluidWindPublish.d.ts.map +1 -1
- package/src/shade/renderer/fluid/publish/FluidWindPublish.js +10 -0
- package/src/shade/renderer/geometry/bvh/GPUBLASRefitBatch.js +2 -2
- package/src/shade/renderer/loader/SceneBundle.d.ts +7 -0
- package/src/shade/renderer/loader/SceneBundle.d.ts.map +1 -1
- package/src/shade/renderer/loader/SceneBundle.js +119 -111
- package/src/shade/renderer/material/standard/fragment_gbuffer.d.ts +4 -0
- package/src/shade/renderer/material/standard/fragment_gbuffer.d.ts.map +1 -1
- package/src/shade/renderer/material/standard/fragment_gbuffer.js +6 -5
- package/src/shade/renderer/object_property/chunk_write_object_property_node3d.d.ts +8 -7
- package/src/shade/renderer/object_property/chunk_write_object_property_node3d.d.ts.map +1 -1
- package/src/shade/renderer/object_property/chunk_write_object_property_node3d.js +9 -8
- package/src/shade/renderer/particles/GPUParticleSystem.d.ts.map +1 -1
- package/src/shade/renderer/particles/GPUParticleSystem.js +3 -1
- package/src/shade/renderer/particles/shaders/shader_particle_avboit_draw.d.ts.map +1 -1
- package/src/shade/renderer/particles/shaders/shader_particle_avboit_draw.js +9 -4
- package/src/shade/renderer/postprocess/ssr/resolve/ssr_resolve_shader.d.ts.map +1 -1
- package/src/shade/renderer/postprocess/ssr/resolve/ssr_resolve_shader.js +9 -7
- package/src/shade/renderer/rasterize/forward/chunk_forward_shade_standard_fragment.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/forward/chunk_forward_shade_standard_fragment.js +15 -7
- package/src/shade/renderer/rasterize/native/avboit/avboit_draw_fragment_body.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/native/avboit/avboit_draw_fragment_body.js +6 -4
- package/src/shade/renderer/rasterize/native/oit/oit_resolve_fragment_body.js +3 -3
- package/src/shade/renderer/rasterize/native/oit/shader_oit_generate_moments.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/native/oit/shader_oit_generate_moments.js +8 -5
- package/src/shade/renderer/rasterize/native/viz/viz_rasterization_alpha_tested_pass_descriptor.d.ts.map +1 -1
- package/src/shade/renderer/rasterize/native/viz/viz_rasterization_alpha_tested_pass_descriptor.js +4 -3
- package/src/shade/renderer/shadow/map/GPUSceneShadowmapContext.js +1 -1
- package/src/shade/renderer/texture/SAMPLER_ANISOTROPIC_CLAMP.d.ts +9 -0
- package/src/shade/renderer/texture/SAMPLER_ANISOTROPIC_CLAMP.d.ts.map +1 -0
- package/src/shade/renderer/texture/SAMPLER_ANISOTROPIC_CLAMP.js +17 -0
- package/src/shade/renderer/texture/SAMPLER_LINEAR_UPSCALE.d.ts +8 -0
- package/src/shade/renderer/texture/SAMPLER_LINEAR_UPSCALE.d.ts.map +1 -1
- package/src/shade/renderer/texture/SAMPLER_LINEAR_UPSCALE.js +28 -20
- package/src/shade/renderer/texture/SAMPLER_TRILINEAR_CLAMP.d.ts +8 -0
- package/src/shade/renderer/texture/SAMPLER_TRILINEAR_CLAMP.d.ts.map +1 -0
- package/src/shade/renderer/texture/SAMPLER_TRILINEAR_CLAMP.js +15 -0
- package/src/shade/renderer/view/chunk_view_mip_bias.d.ts +21 -0
- package/src/shade/renderer/view/chunk_view_mip_bias.d.ts.map +1 -0
- package/src/shade/renderer/view/chunk_view_mip_bias.js +44 -0
- package/src/shade/wgsl/emulator/WGSLJavaScriptCompiler.js +1 -1
- package/src/shade/wgsl/emulator/WGSLLanguageCore.d.ts.map +1 -1
- package/src/shade/wgsl/emulator/WGSLLanguageCore.js +105 -26
- package/src/engine/graphics/composit/CompositingStages.d.ts +0 -6
- package/src/engine/graphics/composit/CompositingStages.d.ts.map +0 -1
- package/src/engine/graphics/composit/CompositingStages.js +0 -8
- package/src/engine/graphics/geometry/buffered/computeBufferAttributeHash.d.ts +0 -7
- package/src/engine/graphics/geometry/buffered/computeBufferAttributeHash.d.ts.map +0 -1
- package/src/engine/graphics/geometry/buffered/computeBufferAttributeHash.js +0 -24
- package/src/engine/graphics/geometry/buffered/computeGeometryBoundingSphereMiniball.d.ts +0 -8
- package/src/engine/graphics/geometry/buffered/computeGeometryBoundingSphereMiniball.d.ts.map +0 -1
- package/src/engine/graphics/geometry/buffered/computeGeometryBoundingSphereMiniball.js +0 -17
- package/src/engine/graphics/geometry/buffered/computeGeometryEquality.d.ts +0 -8
- package/src/engine/graphics/geometry/buffered/computeGeometryEquality.d.ts.map +0 -1
- package/src/engine/graphics/geometry/buffered/computeGeometryEquality.js +0 -60
- package/src/engine/graphics/geometry/buffered/computeGeometryHash.d.ts +0 -7
- package/src/engine/graphics/geometry/buffered/computeGeometryHash.d.ts.map +0 -1
- package/src/engine/graphics/geometry/buffered/computeGeometryHash.js +0 -26
- package/src/engine/graphics/geometry/buffered/compute_buffer_geometry_byte_size.d.ts +0 -7
- package/src/engine/graphics/geometry/buffered/compute_buffer_geometry_byte_size.d.ts.map +0 -1
- package/src/engine/graphics/geometry/buffered/compute_buffer_geometry_byte_size.js +0 -23
- package/src/engine/graphics/geometry/instancing/geometry_copy.d.ts +0 -7
- package/src/engine/graphics/geometry/instancing/geometry_copy.d.ts.map +0 -1
- package/src/engine/graphics/geometry/instancing/geometry_copy.js +0 -15
- package/src/engine/graphics/geometry/instancing/rewriteMaterial.d.ts +0 -2
- package/src/engine/graphics/geometry/instancing/rewriteMaterial.d.ts.map +0 -1
- package/src/engine/graphics/geometry/instancing/rewriteMaterial.js +0 -57
- package/src/engine/graphics/geometry/ribbon/Quad.d.ts +0 -96
- package/src/engine/graphics/geometry/ribbon/Quad.d.ts.map +0 -1
- package/src/engine/graphics/geometry/ribbon/Quad.js +0 -213
- package/src/engine/graphics/geometry/ribbon/copyAttributeV3.d.ts +0 -9
- package/src/engine/graphics/geometry/ribbon/copyAttributeV3.d.ts.map +0 -1
- package/src/engine/graphics/geometry/ribbon/copyAttributeV3.js +0 -12
- package/src/engine/graphics/geometry/ribbon/copyAttributeValue.d.ts +0 -10
- package/src/engine/graphics/geometry/ribbon/copyAttributeValue.d.ts.map +0 -1
- package/src/engine/graphics/geometry/ribbon/copyAttributeValue.js +0 -17
- package/src/engine/graphics/geometry/ribbon/equalAttributeV3.d.ts +0 -10
- package/src/engine/graphics/geometry/ribbon/equalAttributeV3.d.ts.map +0 -1
- package/src/engine/graphics/geometry/ribbon/equalAttributeV3.js +0 -13
- package/src/engine/graphics/geometry/ribbon/equalAttributeValue.d.ts +0 -11
- package/src/engine/graphics/geometry/ribbon/equalAttributeValue.d.ts.map +0 -1
- package/src/engine/graphics/geometry/ribbon/equalAttributeValue.js +0 -24
- package/src/engine/graphics/geometry/ribbon/rotateRibbon.d.ts +0 -6
- package/src/engine/graphics/geometry/ribbon/rotateRibbon.d.ts.map +0 -1
- package/src/engine/graphics/geometry/ribbon/rotateRibbon.js +0 -37
- package/src/engine/graphics/geometry/ribbon/updateTipPosition.d.ts +0 -9
- package/src/engine/graphics/geometry/ribbon/updateTipPosition.d.ts.map +0 -1
- package/src/engine/graphics/geometry/ribbon/updateTipPosition.js +0 -52
- package/src/engine/graphics/geometry/skining/computeSkinnedMeshVertices.d.ts +0 -8
- package/src/engine/graphics/geometry/skining/computeSkinnedMeshVertices.d.ts.map +0 -1
- package/src/engine/graphics/geometry/skining/computeSkinnedMeshVertices.js +0 -54
- package/src/engine/graphics/render/RenderPassType.d.ts +0 -6
- package/src/engine/graphics/render/RenderPassType.d.ts.map +0 -1
- package/src/engine/graphics/render/RenderPassType.js +0 -8
- package/src/engine/graphics/render/layers/RenderLayer.d.ts +0 -78
- package/src/engine/graphics/render/layers/RenderLayer.d.ts.map +0 -1
- package/src/engine/graphics/render/layers/RenderLayer.js +0 -95
- package/src/engine/graphics/render/layers/RenderLayerManager.d.ts +0 -72
- package/src/engine/graphics/render/layers/RenderLayerManager.d.ts.map +0 -1
- package/src/engine/graphics/render/layers/RenderLayerManager.js +0 -160
- package/src/engine/graphics/render/layers/RenderLayerManagerState.d.ts +0 -18
- package/src/engine/graphics/render/layers/RenderLayerManagerState.d.ts.map +0 -1
- package/src/engine/graphics/render/layers/RenderLayerManagerState.js +0 -48
- package/src/engine/graphics/render/layers/RenderLayerState.d.ts +0 -18
- package/src/engine/graphics/render/layers/RenderLayerState.d.ts.map +0 -1
- package/src/engine/graphics/render/layers/RenderLayerState.js +0 -27
- package/src/engine/graphics/render/layers/RenderLayerUtils.d.ts +0 -8
- package/src/engine/graphics/render/layers/RenderLayerUtils.d.ts.map +0 -1
- package/src/engine/graphics/render/layers/RenderLayerUtils.js +0 -103
- package/src/engine/graphics/render/make_bvh_visibility_builder.d.ts +0 -10
- package/src/engine/graphics/render/make_bvh_visibility_builder.d.ts.map +0 -1
- package/src/engine/graphics/render/make_bvh_visibility_builder.js +0 -64
- package/src/engine/graphics/render/view/CameraViewFlags.d.ts +0 -7
- package/src/engine/graphics/render/view/CameraViewFlags.d.ts.map +0 -1
- package/src/engine/graphics/render/view/CameraViewFlags.js +0 -9
- package/src/engine/graphics/render/visibility/IncrementalDeltaSet.d.ts +0 -143
- package/src/engine/graphics/render/visibility/IncrementalDeltaSet.d.ts.map +0 -1
- package/src/engine/graphics/render/visibility/IncrementalDeltaSet.js +0 -328
- package/src/engine/graphics/render/visibility/VisibilityComputer.d.ts +0 -39
- package/src/engine/graphics/render/visibility/VisibilityComputer.d.ts.map +0 -1
- package/src/engine/graphics/render/visibility/VisibilityComputer.js +0 -80
- package/src/engine/graphics/render/visibility/VisibilityFilter.d.ts +0 -29
- package/src/engine/graphics/render/visibility/VisibilityFilter.d.ts.map +0 -1
- package/src/engine/graphics/render/visibility/VisibilityFilter.js +0 -37
- package/src/engine/graphics3/animation/write_graph_playback.d.ts +0 -24
- package/src/engine/graphics3/animation/write_graph_playback.d.ts.map +0 -1
- package/src/engine/graphics3/animation/write_graph_playback.js +0 -48
package/package.json
CHANGED
|
@@ -8,38 +8,17 @@ export class Animation {
|
|
|
8
8
|
* @returns {Animation}
|
|
9
9
|
*/
|
|
10
10
|
static fromJSON(json: any): Animation;
|
|
11
|
-
/**
|
|
12
|
-
* Takes nothing. Build the component, then populate it — {@link Animation.fromJSON} for the
|
|
13
|
-
* serialized form, or `clips.add(...)` for clips you already hold.
|
|
14
|
-
*
|
|
15
|
-
* It used to take an options object, forwarded straight to {@link fromJSON}, while its own
|
|
16
|
-
* docblock declared `@property {List.<AnimationClip>} clips` and the field is declared
|
|
17
|
-
* `@type {List<AnimationClip>}`. Both named the component type; `fromJSON` calls
|
|
18
|
-
* `this.clips.fromJSON(json.clips, AnimationClip)`, which wants **plain objects**. So
|
|
19
|
-
* `new Animation({clips: [clip1, clip2]})` with real {@link AnimationClip} instances built an
|
|
20
|
-
* Animation whose list was the right length, whose entries were real clips, and whose every
|
|
21
|
-
* clip name was the empty string. Nothing then matched any clip in the model, `ClipListPlayer`
|
|
22
|
-
* produced zero playbacks, and the entity stood still — with no error anywhere, because the
|
|
23
|
-
* documented type and the accepted type were both silently tolerated. Reported from a port as
|
|
24
|
-
* GAP-015, at 40 minutes spent believing the model had not loaded.
|
|
25
|
-
*
|
|
26
|
-
* The ambiguity is removed rather than widened: there is now one way in per representation,
|
|
27
|
-
* and neither is the constructor.
|
|
28
|
-
*
|
|
29
|
-
* @constructor
|
|
30
|
-
*/
|
|
31
|
-
constructor(...args: any[]);
|
|
32
11
|
/**
|
|
33
12
|
*
|
|
34
13
|
* @type {List<AnimationClip>}
|
|
35
14
|
*/
|
|
36
15
|
clips: List<AnimationClip>;
|
|
37
|
-
debtTime: number;
|
|
38
16
|
/**
|
|
39
|
-
*
|
|
40
|
-
*
|
|
17
|
+
* How far behind is this animation currently? Need to play catchup.
|
|
18
|
+
* used primarily for culling and synchronization.
|
|
19
|
+
* @type {number}
|
|
41
20
|
*/
|
|
42
|
-
|
|
21
|
+
debtTime: number;
|
|
43
22
|
/**
|
|
44
23
|
*
|
|
45
24
|
* @type {number}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Animation.d.ts","sourceRoot":"","sources":["../../../../../src/engine/ecs/animation/Animation.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Animation.d.ts","sourceRoot":"","sources":["../../../../../src/engine/ecs/animation/Animation.js"],"names":[],"mappings":"AAMA;;GAEG;AACH;IA0GI;;;;OAIG;IACH,4BAFa,SAAS,CAMrB;IAlHD;;;OAGG;IACH,OAFU,KAAK,aAAa,CAAC,CAEV;IAEnB;;;;OAIG;IACH,UAFU,MAAM,CAEH;IAEb;;;OAGG;IACH,OAFU,MAAM,CAEgD;IAWhE;;;OAGG;IACH,0BAEC;IAdD;;;OAGG;IACH,yBAEC;IAUD;;;;OAIG;IACH,cAHW,MAAM,GAAC,cAAc,GACnB,IAAI,CAIhB;IAED;;;;OAIG;IACH,gBAHW,MAAM,GAAC,cAAc,GACnB,IAAI,CAIhB;IAED;;;;OAIG;IACH,gBAHW,MAAM,GAAC,cAAc,SACrB,OAAO,QAQjB;IAED;;;;OAIG;IACH,cAHW,MAAM,GAAC,cAAc,GACnB,OAAO,CAInB;IAED;;;;OAIG;IACH,cAHW,SAAS,GACP,OAAO,CAanB;IAED;;;OAGG;IACH,QAFa,MAAM,CAOlB;IAaD,0BAYC;IAED;;;MAKC;IAIL;;;OAGG;IACH,sBAFU,OAAO,CAEc;CAN9B;;kBAUS,MAAM;;iBA7JC,uCAAuC;8BAG1B,oBAAoB;+BACnB,qBAAqB"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { assert } from "../../../core/assert.js";
|
|
2
|
-
import { hash_mix2 } from "../../../core/math/hash/hash_mix2.js";
|
|
3
1
|
import List from '../../../core/collection/list/List.js';
|
|
2
|
+
import { hash_mix2 } from "../../../core/math/hash/hash_mix2.js";
|
|
4
3
|
import { computeHashFloat } from "../../../core/primitives/numbers/computeHashFloat.js";
|
|
5
4
|
import { AnimationClip } from "./AnimationClip.js";
|
|
6
5
|
import { AnimationFlags } from "./AnimationFlags.js";
|
|
@@ -15,50 +14,19 @@ export class Animation {
|
|
|
15
14
|
*/
|
|
16
15
|
clips = new List();
|
|
17
16
|
|
|
17
|
+
/**
|
|
18
|
+
* How far behind is this animation currently? Need to play catchup.
|
|
19
|
+
* used primarily for culling and synchronization.
|
|
20
|
+
* @type {number}
|
|
21
|
+
*/
|
|
18
22
|
debtTime = 0;
|
|
19
23
|
|
|
20
24
|
/**
|
|
21
|
-
* Takes nothing. Build the component, then populate it — {@link Animation.fromJSON} for the
|
|
22
|
-
* serialized form, or `clips.add(...)` for clips you already hold.
|
|
23
25
|
*
|
|
24
|
-
*
|
|
25
|
-
* docblock declared `@property {List.<AnimationClip>} clips` and the field is declared
|
|
26
|
-
* `@type {List<AnimationClip>}`. Both named the component type; `fromJSON` calls
|
|
27
|
-
* `this.clips.fromJSON(json.clips, AnimationClip)`, which wants **plain objects**. So
|
|
28
|
-
* `new Animation({clips: [clip1, clip2]})` with real {@link AnimationClip} instances built an
|
|
29
|
-
* Animation whose list was the right length, whose entries were real clips, and whose every
|
|
30
|
-
* clip name was the empty string. Nothing then matched any clip in the model, `ClipListPlayer`
|
|
31
|
-
* produced zero playbacks, and the entity stood still — with no error anywhere, because the
|
|
32
|
-
* documented type and the accepted type were both silently tolerated. Reported from a port as
|
|
33
|
-
* GAP-015, at 40 minutes spent believing the model had not loaded.
|
|
34
|
-
*
|
|
35
|
-
* The ambiguity is removed rather than widened: there is now one way in per representation,
|
|
36
|
-
* and neither is the constructor.
|
|
37
|
-
*
|
|
38
|
-
* @constructor
|
|
26
|
+
* @type {number}
|
|
39
27
|
*/
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
Dropping the parameter silently would ship a fresh instance of the exact failure this
|
|
43
|
-
change exists to remove: `new Animation(json)` worked, and would now build an empty
|
|
44
|
-
component with no error and no animation. A removal has to be loud or it is not an
|
|
45
|
-
improvement on the trap. Named rather than asserted generically, because the message is
|
|
46
|
-
the migration.
|
|
47
|
-
*/
|
|
48
|
-
assert.equal(arguments.length, 0, 'Animation takes no constructor arguments; use Animation.fromJSON(json) for the serialized form, or clips.add(clip) for clips you already hold');
|
|
49
|
-
|
|
50
|
-
/**
|
|
51
|
-
* @protected
|
|
52
|
-
* @type {Future|null}
|
|
53
|
-
*/
|
|
54
|
-
this.mixer = null;
|
|
55
|
-
|
|
56
|
-
/**
|
|
57
|
-
*
|
|
58
|
-
* @type {number}
|
|
59
|
-
*/
|
|
60
|
-
this.flags = AnimationFlags.MeshSizeCulling | AnimationFlags.Playing;
|
|
61
|
-
}
|
|
28
|
+
flags = AnimationFlags.MeshSizeCulling | AnimationFlags.Playing;
|
|
29
|
+
|
|
62
30
|
|
|
63
31
|
/**
|
|
64
32
|
*
|
|
@@ -24,8 +24,8 @@
|
|
|
24
24
|
* A target hanging below another goal's bones in the same group is read from the solver's frames on
|
|
25
25
|
* every iteration. One hanging below another group's bones waits for that group to solve and write.
|
|
26
26
|
*
|
|
27
|
-
* Declared access: IK reads {@link
|
|
28
|
-
*
|
|
27
|
+
* Declared access: IK reads {@link AnimationClips}, which the animation drivers write, so it runs
|
|
28
|
+
* after the drivers have set this tick's clip times. A system that places a
|
|
29
29
|
* target through its own `TransformAttachment` (a physics contact probe) reads and writes that
|
|
30
30
|
* component as IK does: declared access leaves the two a cycle, and the scheduler keeps their
|
|
31
31
|
* registration order, so register it first.
|
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
export class IKGoalSystem extends System<any> {
|
|
37
37
|
constructor();
|
|
38
38
|
dependencies: (typeof TransformAttachment | typeof IKGoal)[];
|
|
39
|
-
components_used: (ResourceAccessSpecification<typeof Transform64> | ResourceAccessSpecification<typeof
|
|
39
|
+
components_used: (ResourceAccessSpecification<typeof Transform64> | ResourceAccessSpecification<typeof IKGoal> | ResourceAccessSpecification<typeof TransformAttachment> | ResourceAccessSpecification<typeof GPUStateAuthority> | ResourceAccessSpecification<typeof ParentEntity> | ResourceAccessSpecification<typeof Joint> | ResourceAccessSpecification<typeof AnimationClips>)[];
|
|
40
40
|
/**
|
|
41
41
|
* The most iterations a frame FABRIK solve runs.
|
|
42
42
|
* @type {number}
|
|
@@ -67,9 +67,8 @@ import { TransformAttachment } from "../transform-attachment/TransformAttachment
|
|
|
67
67
|
import { IKGoal } from "./IKGoal.js";
|
|
68
68
|
import { Transform64 } from "../transform/Transform64.js";
|
|
69
69
|
import { ResourceAccessSpecification } from "../../../core/model/ResourceAccessSpecification.js";
|
|
70
|
-
import { AnimationGraphController } from "../../graphics3/animation/AnimationGraphController.js";
|
|
71
|
-
import { Animation } from "../animation/Animation.js";
|
|
72
70
|
import { GPUStateAuthority } from "../gpu/GPUStateAuthority.js";
|
|
73
71
|
import { ParentEntity } from "../parent/ParentEntity.js";
|
|
74
72
|
import { Joint } from "../../physics/ecs/Joint.js";
|
|
73
|
+
import { AnimationClips } from "../../graphics3/animation/AnimationClips.js";
|
|
75
74
|
//# sourceMappingURL=IKGoalSystem.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IKGoalSystem.d.ts","sourceRoot":"","sources":["../../../../../src/engine/ecs/ik/IKGoalSystem.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"IKGoalSystem.d.ts","sourceRoot":"","sources":["../../../../../src/engine/ecs/ik/IKGoalSystem.js"],"names":[],"mappings":"AAyOA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH;;IAEI,6DAA6C;IAE7C,wXAQE;IAEF;;;OAGG;IACH,gBAFU,MAAM,CAEI;IAEpB;;;OAGG;IACH,WAFU,MAAM,CAEC;IAkDjB;;;;OAIG;IACH,WAJW,MAAM,cACN,mBAAmB,UACnB,MAAM,QAgChB;IAED;;;;OAIG;IACH,aAJW,MAAM,cACN,mBAAmB,UACnB,MAAM,QAkBhB;IAED,sCA+BC;;CA6nBJ;uBAzhCsB,cAAc;oCAED,gDAAgD;uBAQ7D,aAAa;4BAD7B,6BAA6B;4CA1BQ,oDAAoD;kCAW9D,6BAA6B;6BAIlC,2BAA2B;sBANlC,4BAA4B;+BAPnB,6CAA6C"}
|
|
@@ -4,7 +4,7 @@ import Vector3 from "../../../core/geom/Vector3.js";
|
|
|
4
4
|
import { ResourceAccessKind } from "../../../core/model/ResourceAccessKind.js";
|
|
5
5
|
import { ResourceAccessSpecification } from "../../../core/model/ResourceAccessSpecification.js";
|
|
6
6
|
import { pose_evaluate_local } from "../../../shade/renderer/animation/pose/pose_evaluate_local.js";
|
|
7
|
-
import {
|
|
7
|
+
import { AnimationClips } from "../../graphics3/animation/AnimationClips.js";
|
|
8
8
|
import { collect_entity_playbacks } from "../../graphics3/pose/collect_entity_playbacks.js";
|
|
9
9
|
import { FrameFabrikProblem } from "../../physics/inverse_kinematics/frame_fabrik/FrameFabrikProblem.js";
|
|
10
10
|
import { frame_fabrik_limit_from_joint } from "../../physics/inverse_kinematics/frame_fabrik/frame_fabrik_limit_from_joint.js";
|
|
@@ -12,7 +12,6 @@ import { frame_fabrik_solve } from "../../physics/inverse_kinematics/frame_fabri
|
|
|
12
12
|
import { joint_hinge_mid_axis } from "../../physics/inverse_kinematics/joint_hinge_mid_axis.js";
|
|
13
13
|
import { two_bone_path_solve } from "../../physics/inverse_kinematics/two_bone_path_solve.js";
|
|
14
14
|
import { Joint } from "../../physics/ecs/Joint.js";
|
|
15
|
-
import { Animation } from "../animation/Animation.js";
|
|
16
15
|
import { EventType } from "../EventType.js";
|
|
17
16
|
import { GPUStateAuthority } from "../gpu/GPUStateAuthority.js";
|
|
18
17
|
import { GPUStateAuthorityFlags } from "../gpu/GPUStateAuthorityFlags.js";
|
|
@@ -258,8 +257,8 @@ const q_2 = new Quaternion();
|
|
|
258
257
|
* A target hanging below another goal's bones in the same group is read from the solver's frames on
|
|
259
258
|
* every iteration. One hanging below another group's bones waits for that group to solve and write.
|
|
260
259
|
*
|
|
261
|
-
* Declared access: IK reads {@link
|
|
262
|
-
*
|
|
260
|
+
* Declared access: IK reads {@link AnimationClips}, which the animation drivers write, so it runs
|
|
261
|
+
* after the drivers have set this tick's clip times. A system that places a
|
|
263
262
|
* target through its own `TransformAttachment` (a physics contact probe) reads and writes that
|
|
264
263
|
* component as IK does: declared access leaves the two a cycle, and the scheduler keeps their
|
|
265
264
|
* registration order, so register it first.
|
|
@@ -278,8 +277,7 @@ export class IKGoalSystem extends System {
|
|
|
278
277
|
ResourceAccessSpecification.from(GPUStateAuthority, ResourceAccessKind.Read | ResourceAccessKind.Write),
|
|
279
278
|
ResourceAccessSpecification.from(ParentEntity, ResourceAccessKind.Read),
|
|
280
279
|
ResourceAccessSpecification.from(Joint, ResourceAccessKind.Read),
|
|
281
|
-
ResourceAccessSpecification.from(
|
|
282
|
-
ResourceAccessSpecification.from(AnimationGraphController, ResourceAccessKind.Read),
|
|
280
|
+
ResourceAccessSpecification.from(AnimationClips, ResourceAccessKind.Read),
|
|
283
281
|
];
|
|
284
282
|
|
|
285
283
|
/**
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Drives every entity's {@link AnimationGraphController}: runs its clock,
|
|
3
|
-
*
|
|
2
|
+
* Drives every entity's {@link AnimationGraphController}: runs its clock, writes its clips' weights
|
|
3
|
+
* and times into the entity's {@link AnimationClips}, and hands that blend to the renderer through
|
|
4
|
+
* {@link AnimationClipsSink}.
|
|
4
5
|
*
|
|
5
6
|
* **The clips are the entity's {@link AnimationClips}.** An entity is driven while it carries both
|
|
6
7
|
* components, whoever put them there — a model `MeshSystem` loaded, or a rig built in code. New
|
|
7
8
|
* clips are a new component, which this system sees as the entity leaving and coming back.
|
|
8
9
|
*
|
|
9
|
-
* **Every node the clips key holds a row here** ({@link
|
|
10
|
+
* **Every node the clips key holds a row here** ({@link AnimationClipsSink}), from the graph being
|
|
10
11
|
* bound to the clips until they go. A clip binds only once all of them do, and a keyed node outside
|
|
11
12
|
* every skin with nothing drawn under it — a socket, say — is held by no other system.
|
|
12
13
|
*
|
|
@@ -27,8 +28,8 @@ export class AnimationGraphSystem extends System<any> {
|
|
|
27
28
|
* @param {Scene} scene
|
|
28
29
|
*/
|
|
29
30
|
constructor(graphics: GraphicsEngine, scene: Scene);
|
|
30
|
-
dependencies: (typeof
|
|
31
|
-
components_used: ResourceAccessSpecification<typeof AnimationGraphController>[];
|
|
31
|
+
dependencies: (typeof AnimationClips | typeof AnimationGraphController)[];
|
|
32
|
+
components_used: (ResourceAccessSpecification<typeof AnimationClips> | ResourceAccessSpecification<typeof AnimationGraphController>)[];
|
|
32
33
|
/**
|
|
33
34
|
* Only noted here: the graph is bound to the clips by the next {@link update}. A link can happen
|
|
34
35
|
* anywhere the components are added — inside a model's spawn, for one `MeshSystem` loads — and a
|
|
@@ -41,21 +42,8 @@ export class AnimationGraphSystem extends System<any> {
|
|
|
41
42
|
*/
|
|
42
43
|
link(controller: AnimationGraphController, clips: AnimationClips, entity: number): void;
|
|
43
44
|
/**
|
|
44
|
-
* What the entity is playing, in the form the CPU pose evaluator takes:
|
|
45
|
-
*
|
|
46
|
-
*
|
|
47
|
-
* **The clips the graph does not name are not here, because they are not registered** (D37).
|
|
48
|
-
* The GPU's accumulator marks a joint dirty for every bound clip that writes to it, weight and
|
|
49
|
-
* all — so a bound clip at weight zero resolves the joints only it drives to zero rather than
|
|
50
|
-
* leaving them at rest. The answer is not to hand those clips to the evaluator so it can make
|
|
51
|
-
* the same mistake; it is not to bind them. What the graph never names, nothing plays, and the
|
|
52
|
-
* joints it alone would have driven stay where they rest.
|
|
53
|
-
*
|
|
54
|
-
* A clip the graph names but is not currently playing **is** here, at weight zero, because it is
|
|
55
|
-
* bound and the accumulator does see it.
|
|
56
|
-
*
|
|
57
|
-
* The entries are this system's own and are rewritten by the next call, which is what keeps a
|
|
58
|
-
* query on a per-frame path from allocating.
|
|
45
|
+
* What the entity is playing, in the form the CPU pose evaluator takes: delegates to the
|
|
46
|
+
* entity's {@link AnimationClips#write_pose_playbacks}.
|
|
59
47
|
*
|
|
60
48
|
* @param {PosePlayback[]} target appended to
|
|
61
49
|
* @param {number} entity
|
|
@@ -75,8 +63,7 @@ export class AnimationGraphSystem extends System<any> {
|
|
|
75
63
|
#private;
|
|
76
64
|
}
|
|
77
65
|
import { System } from "../ecs/System.js";
|
|
78
|
-
import { AnimationGraphController } from "./animation/AnimationGraphController.js";
|
|
79
66
|
import { AnimationClips } from "./animation/AnimationClips.js";
|
|
67
|
+
import { AnimationGraphController } from "./animation/AnimationGraphController.js";
|
|
80
68
|
import { ResourceAccessSpecification } from "../../core/model/ResourceAccessSpecification.js";
|
|
81
|
-
import { PosePlayback } from "../../shade/renderer/animation/pose/PosePlayback.js";
|
|
82
69
|
//# sourceMappingURL=AnimationGraphSystem.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AnimationGraphSystem.d.ts","sourceRoot":"","sources":["../../../../src/engine/graphics3/AnimationGraphSystem.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"AnimationGraphSystem.d.ts","sourceRoot":"","sources":["../../../../src/engine/graphics3/AnimationGraphSystem.js"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH;IAWI;;;OAGG;IACH,oDAcC;IATG,0EAA8D;IAK9D,uIAGC;IAGL;;;;;;;;;OASG;IACH,iBAJW,wBAAwB,SACxB,cAAc,UACd,MAAM,QAShB;IAED;;;;;;;;;OASG;IACH,6BANW,cAAc,UACd,MAAM,GACJ,OAAO,CAYnB;IAED;;;;OAIG;IACH,mBAJW,wBAAwB,SACxB,cAAc,UACd,MAAM,QAYhB;IAED,2CAEC;IAED,4CAYC;;CAoGJ;uBAxOsB,kBAAkB;+BACV,+BAA+B;yCAErB,yCAAyC;4CAJtC,iDAAiD"}
|