@iwsdk/core 0.4.1 → 0.5.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/README.md +4 -7
- package/dist/asset/asset-manager.d.ts +137 -9
- package/dist/asset/asset-manager.d.ts.map +1 -1
- package/dist/asset/asset-manager.js +491 -47
- package/dist/asset/asset-manager.js.map +1 -1
- package/dist/asset/cache-manager.d.ts +4 -2
- package/dist/asset/cache-manager.d.ts.map +1 -1
- package/dist/asset/cache-manager.js +10 -3
- package/dist/asset/cache-manager.js.map +1 -1
- package/dist/asset/loaders/audio-loader.d.ts +1 -1
- package/dist/asset/loaders/audio-loader.d.ts.map +1 -1
- package/dist/asset/loaders/audio-loader.js +8 -26
- package/dist/asset/loaders/audio-loader.js.map +1 -1
- package/dist/asset/loaders/cached-asset-load.d.ts +35 -0
- package/dist/asset/loaders/cached-asset-load.d.ts.map +1 -0
- package/dist/asset/loaders/cached-asset-load.js +100 -0
- package/dist/asset/loaders/cached-asset-load.js.map +1 -0
- package/dist/asset/loaders/gltf-loader.d.ts +28 -1
- package/dist/asset/loaders/gltf-loader.d.ts.map +1 -1
- package/dist/asset/loaders/gltf-loader.js +254 -33
- package/dist/asset/loaders/gltf-loader.js.map +1 -1
- package/dist/asset/loaders/hdr-texture-loader.d.ts +1 -1
- package/dist/asset/loaders/hdr-texture-loader.d.ts.map +1 -1
- package/dist/asset/loaders/hdr-texture-loader.js +19 -29
- package/dist/asset/loaders/hdr-texture-loader.js.map +1 -1
- package/dist/asset/loaders/texture-loader.d.ts +1 -1
- package/dist/asset/loaders/texture-loader.d.ts.map +1 -1
- package/dist/asset/loaders/texture-loader.js +9 -26
- package/dist/asset/loaders/texture-loader.js.map +1 -1
- package/dist/asset/loaders/uikitml-loader.d.ts +12 -0
- package/dist/asset/loaders/uikitml-loader.d.ts.map +1 -0
- package/dist/asset/loaders/uikitml-loader.js +44 -0
- package/dist/asset/loaders/uikitml-loader.js.map +1 -0
- package/dist/audio/audio-pool.d.ts +7 -0
- package/dist/audio/audio-pool.d.ts.map +1 -1
- package/dist/audio/audio-pool.js.map +1 -1
- package/dist/audio/audio-system.d.ts +3 -2
- package/dist/audio/audio-system.d.ts.map +1 -1
- package/dist/audio/audio-system.js +17 -6
- package/dist/audio/audio-system.js.map +1 -1
- package/dist/audio/audio-utils.d.ts +2 -2
- package/dist/audio/audio-utils.d.ts.map +1 -1
- package/dist/audio/audio.d.ts +1 -1
- package/dist/audio/audio.d.ts.map +1 -1
- package/dist/audio/audio.js +2 -4
- package/dist/audio/audio.js.map +1 -1
- package/dist/camera/camera-source.d.ts +1 -1
- package/dist/camera/camera-source.d.ts.map +1 -1
- package/dist/camera/camera-source.js +0 -4
- package/dist/camera/camera-source.js.map +1 -1
- package/dist/camera/camera-system.d.ts +18 -18
- package/dist/camera/camera-system.d.ts.map +1 -1
- package/dist/camera/camera-system.js +5 -6
- package/dist/camera/camera-system.js.map +1 -1
- package/dist/camera/camera-utils.d.ts +1 -1
- package/dist/camera/camera-utils.d.ts.map +1 -1
- package/dist/depth/depth-occludable.d.ts +1 -1
- package/dist/depth/depth-occludable.d.ts.map +1 -1
- package/dist/depth/depth-occludable.js +0 -4
- package/dist/depth/depth-occludable.js.map +1 -1
- package/dist/depth/depth-sensing-system.d.ts +2 -2
- package/dist/depth/depth-sensing-system.d.ts.map +1 -1
- package/dist/depth/depth-sensing-system.js +31 -13
- package/dist/depth/depth-sensing-system.js.map +1 -1
- package/dist/ecs/builtin-components.d.ts +1239 -0
- package/dist/ecs/builtin-components.d.ts.map +1 -0
- package/dist/ecs/builtin-components.js +87 -0
- package/dist/ecs/builtin-components.js.map +1 -0
- package/dist/ecs/component-editor-metadata.d.ts +19 -0
- package/dist/ecs/component-editor-metadata.d.ts.map +1 -0
- package/dist/ecs/component-editor-metadata.js +19 -0
- package/dist/ecs/component-editor-metadata.js.map +1 -0
- package/dist/ecs/component-manifest.d.ts +24 -0
- package/dist/ecs/component-manifest.d.ts.map +1 -0
- package/dist/ecs/component-manifest.js +121 -0
- package/dist/ecs/component-manifest.js.map +1 -0
- package/dist/ecs/component.d.ts +1 -0
- package/dist/ecs/component.d.ts.map +1 -1
- package/dist/ecs/entity.d.ts +20 -2
- package/dist/ecs/entity.d.ts.map +1 -1
- package/dist/ecs/entity.js +59 -3
- package/dist/ecs/entity.js.map +1 -1
- package/dist/ecs/index.d.ts +3 -1
- package/dist/ecs/index.d.ts.map +1 -1
- package/dist/ecs/system.d.ts +9 -0
- package/dist/ecs/system.d.ts.map +1 -1
- package/dist/ecs/system.js.map +1 -1
- package/dist/ecs/world.d.ts +160 -5
- package/dist/ecs/world.d.ts.map +1 -1
- package/dist/ecs/world.js +306 -19
- package/dist/ecs/world.js.map +1 -1
- package/dist/environment/dome-gradient.d.ts +3 -2
- package/dist/environment/dome-gradient.d.ts.map +1 -1
- package/dist/environment/dome-gradient.js +2 -5
- package/dist/environment/dome-gradient.js.map +1 -1
- package/dist/environment/dome-texture.d.ts +1 -1
- package/dist/environment/dome-texture.d.ts.map +1 -1
- package/dist/environment/dome-texture.js +0 -4
- package/dist/environment/dome-texture.js.map +1 -1
- package/dist/environment/environment-system.d.ts +20 -4
- package/dist/environment/environment-system.d.ts.map +1 -1
- package/dist/environment/environment-system.js +79 -61
- package/dist/environment/environment-system.js.map +1 -1
- package/dist/environment/gradient-environment.d.ts.map +1 -1
- package/dist/environment/gradient-environment.js +13 -7
- package/dist/environment/gradient-environment.js.map +1 -1
- package/dist/environment/ibl-gradient.d.ts +1 -1
- package/dist/environment/ibl-gradient.d.ts.map +1 -1
- package/dist/environment/ibl-gradient.js +0 -4
- package/dist/environment/ibl-gradient.js.map +1 -1
- package/dist/environment/ibl-texture.d.ts +1 -1
- package/dist/environment/ibl-texture.d.ts.map +1 -1
- package/dist/environment/ibl-texture.js +0 -4
- package/dist/environment/ibl-texture.js.map +1 -1
- package/dist/environment/scene-ar-environment.d.ts +39 -0
- package/dist/environment/scene-ar-environment.d.ts.map +1 -0
- package/dist/environment/scene-ar-environment.js +93 -0
- package/dist/environment/scene-ar-environment.js.map +1 -0
- package/dist/environment-raycast/environment-raycast.d.ts +21 -21
- package/dist/environment-raycast/environment-raycast.d.ts.map +1 -1
- package/dist/environment-raycast/environment-raycast.js +0 -4
- package/dist/environment-raycast/environment-raycast.js.map +1 -1
- package/dist/environment-raycast/raycast-target.d.ts +1 -1
- package/dist/environment-raycast/raycast-target.d.ts.map +1 -1
- package/dist/environment-raycast/raycast-target.js +0 -4
- package/dist/environment-raycast/raycast-target.js.map +1 -1
- package/dist/grab/distance-grabbable.d.ts +1 -1
- package/dist/grab/distance-grabbable.d.ts.map +1 -1
- package/dist/grab/distance-grabbable.js +0 -4
- package/dist/grab/distance-grabbable.js.map +1 -1
- package/dist/grab/grab-helpers.d.ts +39 -0
- package/dist/grab/grab-helpers.d.ts.map +1 -0
- package/dist/grab/grab-helpers.js +59 -0
- package/dist/grab/grab-helpers.js.map +1 -0
- package/dist/grab/grab-system.d.ts +47 -2
- package/dist/grab/grab-system.d.ts.map +1 -1
- package/dist/grab/grab-system.js +67 -8
- package/dist/grab/grab-system.js.map +1 -1
- package/dist/grab/grab-warnings.d.ts +14 -0
- package/dist/grab/grab-warnings.d.ts.map +1 -0
- package/dist/grab/grab-warnings.js +53 -0
- package/dist/grab/grab-warnings.js.map +1 -0
- package/dist/grab/grabbed.d.ts.map +1 -1
- package/dist/grab/grabbed.js +0 -4
- package/dist/grab/grabbed.js.map +1 -1
- package/dist/grab/handles.d.ts +1 -1
- package/dist/grab/handles.d.ts.map +1 -1
- package/dist/grab/handles.js +8 -7
- package/dist/grab/handles.js.map +1 -1
- package/dist/grab/one-hand-grabbable.d.ts +1 -1
- package/dist/grab/one-hand-grabbable.d.ts.map +1 -1
- package/dist/grab/one-hand-grabbable.js +0 -4
- package/dist/grab/one-hand-grabbable.js.map +1 -1
- package/dist/grab/two-hands-grabbable.d.ts +1 -1
- package/dist/grab/two-hands-grabbable.d.ts.map +1 -1
- package/dist/grab/two-hands-grabbable.js +0 -4
- package/dist/grab/two-hands-grabbable.js.map +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +42 -16
- package/dist/index.js.map +1 -1
- package/dist/init/world-initializer.d.ts +12 -8
- package/dist/init/world-initializer.d.ts.map +1 -1
- package/dist/init/world-initializer.js +127 -67
- package/dist/init/world-initializer.js.map +1 -1
- package/dist/init/xr.d.ts +1 -2
- package/dist/init/xr.d.ts.map +1 -1
- package/dist/init/xr.js +12 -3
- package/dist/init/xr.js.map +1 -1
- package/dist/input/input-system.d.ts +59 -59
- package/dist/input/input-system.d.ts.map +1 -1
- package/dist/input/input-system.js +26 -13
- package/dist/input/input-system.js.map +1 -1
- package/dist/input/state-tags.d.ts.map +1 -1
- package/dist/input/state-tags.js +0 -4
- package/dist/input/state-tags.js.map +1 -1
- package/dist/layers/xr-cylinder-layer.d.ts +1 -1
- package/dist/layers/xr-cylinder-layer.d.ts.map +1 -1
- package/dist/layers/xr-cylinder-layer.js +0 -4
- package/dist/layers/xr-cylinder-layer.js.map +1 -1
- package/dist/layers/xr-layer-state.d.ts +47 -0
- package/dist/layers/xr-layer-state.d.ts.map +1 -0
- package/dist/layers/xr-layer-state.js +23 -0
- package/dist/layers/xr-layer-state.js.map +1 -0
- package/dist/layers/xr-layer-system.d.ts +46 -94
- package/dist/layers/xr-layer-system.d.ts.map +1 -1
- package/dist/layers/xr-layer-system.js +4 -28
- package/dist/layers/xr-layer-system.js.map +1 -1
- package/dist/layers/xr-quad-layer.d.ts +1 -1
- package/dist/layers/xr-quad-layer.d.ts.map +1 -1
- package/dist/layers/xr-quad-layer.js +0 -4
- package/dist/layers/xr-quad-layer.js.map +1 -1
- package/dist/level/index.d.ts +6 -2
- package/dist/level/index.d.ts.map +1 -1
- package/dist/level/level-component-applier.d.ts +24 -0
- package/dist/level/level-component-applier.d.ts.map +1 -0
- package/dist/level/level-component-applier.js +199 -0
- package/dist/level/level-component-applier.js.map +1 -0
- package/dist/level/level-player-rig.d.ts +17 -0
- package/dist/level/level-player-rig.d.ts.map +1 -0
- package/dist/level/level-player-rig.js +113 -0
- package/dist/level/level-player-rig.js.map +1 -0
- package/dist/level/level-root.d.ts.map +1 -1
- package/dist/level/level-root.js +0 -4
- package/dist/level/level-root.js.map +1 -1
- package/dist/level/level-scene-environment.d.ts +28 -0
- package/dist/level/level-scene-environment.d.ts.map +1 -0
- package/dist/level/level-scene-environment.js +121 -0
- package/dist/level/level-scene-environment.js.map +1 -0
- package/dist/level/level-scene-json-importer.d.ts +53 -0
- package/dist/level/level-scene-json-importer.d.ts.map +1 -0
- package/dist/level/level-scene-json-importer.js +256 -0
- package/dist/level/level-scene-json-importer.js.map +1 -0
- package/dist/level/level-scene-material.d.ts +22 -0
- package/dist/level/level-scene-material.d.ts.map +1 -0
- package/dist/level/level-scene-material.js +231 -0
- package/dist/level/level-scene-material.js.map +1 -0
- package/dist/level/level-scene-object.d.ts +49 -0
- package/dist/level/level-scene-object.d.ts.map +1 -0
- package/dist/level/level-scene-object.js +396 -0
- package/dist/level/level-scene-object.js.map +1 -0
- package/dist/level/level-scene-primitive.d.ts +21 -0
- package/dist/level/level-scene-primitive.d.ts.map +1 -0
- package/dist/level/level-scene-primitive.js +159 -0
- package/dist/level/level-scene-primitive.js.map +1 -0
- package/dist/level/level-system.d.ts +14 -20
- package/dist/level/level-system.d.ts.map +1 -1
- package/dist/level/level-system.js +114 -52
- package/dist/level/level-system.js.map +1 -1
- package/dist/level/level-tag.d.ts +1 -1
- package/dist/level/level-tag.d.ts.map +1 -1
- package/dist/level/level-tag.js +0 -4
- package/dist/level/level-tag.js.map +1 -1
- package/dist/lighting/index.d.ts +10 -0
- package/dist/lighting/index.d.ts.map +1 -0
- package/dist/lighting/index.js +4 -0
- package/dist/lighting/index.js.map +1 -0
- package/dist/lighting/light-binding.d.ts +76 -0
- package/dist/lighting/light-binding.d.ts.map +1 -0
- package/dist/lighting/light-binding.js +229 -0
- package/dist/lighting/light-binding.js.map +1 -0
- package/dist/lighting/light-components.d.ts +885 -0
- package/dist/lighting/light-components.d.ts.map +1 -0
- package/dist/lighting/light-components.js +146 -0
- package/dist/lighting/light-components.js.map +1 -0
- package/dist/lighting/light-system.d.ts +919 -0
- package/dist/lighting/light-system.d.ts.map +1 -0
- package/dist/lighting/light-system.js +244 -0
- package/dist/lighting/light-system.js.map +1 -0
- package/dist/locomotion/locomotion-environment.d.ts +27 -0
- package/dist/locomotion/locomotion-environment.d.ts.map +1 -0
- package/dist/locomotion/locomotion-environment.js +22 -0
- package/dist/locomotion/locomotion-environment.js.map +1 -0
- package/dist/locomotion/locomotion-input-provider.d.ts +1 -1
- package/dist/locomotion/locomotion.d.ts +5 -34
- package/dist/locomotion/locomotion.d.ts.map +1 -1
- package/dist/locomotion/locomotion.js +33 -31
- package/dist/locomotion/locomotion.js.map +1 -1
- package/dist/locomotion/materials/line.js +1 -1
- package/dist/locomotion/slide.d.ts +2 -2
- package/dist/locomotion/slide.d.ts.map +1 -1
- package/dist/locomotion/slide.js +3 -6
- package/dist/locomotion/slide.js.map +1 -1
- package/dist/locomotion/teleport.d.ts +2 -2
- package/dist/locomotion/teleport.d.ts.map +1 -1
- package/dist/locomotion/teleport.js +1 -4
- package/dist/locomotion/teleport.js.map +1 -1
- package/dist/mcp/ecs-debug-tools.d.ts.map +1 -1
- package/dist/mcp/ecs-debug-tools.js +10 -2
- package/dist/mcp/ecs-debug-tools.js.map +1 -1
- package/dist/mcp/mcp-runtime.d.ts.map +1 -1
- package/dist/mcp/mcp-runtime.js +4 -1
- package/dist/mcp/mcp-runtime.js.map +1 -1
- package/dist/mcp/scene-tools.d.ts +152 -1
- package/dist/mcp/scene-tools.d.ts.map +1 -1
- package/dist/mcp/scene-tools.js +538 -8
- package/dist/mcp/scene-tools.js.map +1 -1
- package/dist/physics/index.js +12 -0
- package/dist/physics/index.js.map +1 -0
- package/dist/physics/physics-system.d.ts +704 -11
- package/dist/physics/physics-system.d.ts.map +1 -1
- package/dist/physics/physics-system.js +310 -29
- package/dist/physics/physics-system.js.map +1 -1
- package/dist/physics/physicsBody.d.ts +40 -1
- package/dist/physics/physicsBody.d.ts.map +1 -1
- package/dist/physics/physicsBody.js +39 -1
- package/dist/physics/physicsBody.js.map +1 -1
- package/dist/physics/physicsManipulation.d.ts +1 -1
- package/dist/physics/physicsManipulation.d.ts.map +1 -1
- package/dist/physics/physicsManipulation.js +0 -1
- package/dist/physics/physicsManipulation.js.map +1 -1
- package/dist/physics/physicsShape.d.ts +5 -3
- package/dist/physics/physicsShape.d.ts.map +1 -1
- package/dist/physics/physicsShape.js +2 -2
- package/dist/physics/physicsShape.js.map +1 -1
- package/dist/physics/utils.d.ts +10 -0
- package/dist/physics/utils.d.ts.map +1 -1
- package/dist/physics/utils.js +82 -48
- package/dist/physics/utils.js.map +1 -1
- package/dist/project/index.d.ts +11 -0
- package/dist/project/index.d.ts.map +1 -0
- package/dist/project/index.js +5 -0
- package/dist/project/index.js.map +1 -0
- package/dist/project/normalize.d.ts +19 -0
- package/dist/project/normalize.d.ts.map +1 -0
- package/dist/project/normalize.js +206 -0
- package/dist/project/normalize.js.map +1 -0
- package/dist/project/paths.d.ts +21 -0
- package/dist/project/paths.d.ts.map +1 -0
- package/dist/project/paths.js +75 -0
- package/dist/project/paths.js.map +1 -0
- package/dist/project/types.d.ts +159 -0
- package/dist/project/types.d.ts.map +1 -0
- package/dist/project/types.js +11 -0
- package/dist/project/types.js.map +1 -0
- package/dist/project/validation.d.ts +17 -0
- package/dist/project/validation.d.ts.map +1 -0
- package/dist/project/validation.js +501 -0
- package/dist/project/validation.js.map +1 -0
- package/dist/scene-understanding/anchor.d.ts +1 -1
- package/dist/scene-understanding/anchor.d.ts.map +1 -1
- package/dist/scene-understanding/anchor.js +0 -4
- package/dist/scene-understanding/anchor.js.map +1 -1
- package/dist/scene-understanding/mesh.d.ts +1 -1
- package/dist/scene-understanding/mesh.d.ts.map +1 -1
- package/dist/scene-understanding/mesh.js +0 -4
- package/dist/scene-understanding/mesh.js.map +1 -1
- package/dist/scene-understanding/plane.d.ts +1 -1
- package/dist/scene-understanding/plane.d.ts.map +1 -1
- package/dist/scene-understanding/plane.js +0 -4
- package/dist/scene-understanding/plane.js.map +1 -1
- package/dist/scene-understanding/scene-understanding-system.d.ts +25 -4
- package/dist/scene-understanding/scene-understanding-system.d.ts.map +1 -1
- package/dist/scene-understanding/scene-understanding-system.js +76 -57
- package/dist/scene-understanding/scene-understanding-system.js.map +1 -1
- package/dist/schemas/iwsdk-project.v1.schema.json +305 -0
- package/dist/transform/transform-component.d.ts +32 -0
- package/dist/transform/transform-component.d.ts.map +1 -0
- package/dist/transform/transform-component.js +24 -0
- package/dist/transform/transform-component.js.map +1 -0
- package/dist/transform/transform.d.ts +10 -43
- package/dist/transform/transform.d.ts.map +1 -1
- package/dist/transform/transform.js +9 -28
- package/dist/transform/transform.js.map +1 -1
- package/dist/ui/document.d.ts +9 -2
- package/dist/ui/document.d.ts.map +1 -1
- package/dist/ui/document.js +30 -5
- package/dist/ui/document.js.map +1 -1
- package/dist/ui/follow-component.d.ts +57 -0
- package/dist/ui/follow-component.d.ts.map +1 -0
- package/dist/ui/follow-component.js +38 -0
- package/dist/ui/follow-component.js.map +1 -0
- package/dist/ui/follow.d.ts +29 -103
- package/dist/ui/follow.d.ts.map +1 -1
- package/dist/ui/follow.js +10 -51
- package/dist/ui/follow.js.map +1 -1
- package/dist/ui/index.d.ts +3 -0
- package/dist/ui/index.d.ts.map +1 -1
- package/dist/ui/panel-components.d.ts +29 -0
- package/dist/ui/panel-components.d.ts.map +1 -0
- package/dist/ui/panel-components.js +22 -0
- package/dist/ui/panel-components.js.map +1 -0
- package/dist/ui/screenspace-component.d.ts +39 -0
- package/dist/ui/screenspace-component.d.ts.map +1 -0
- package/dist/ui/screenspace-component.js +21 -0
- package/dist/ui/screenspace-component.js.map +1 -0
- package/dist/ui/screenspace.d.ts +47 -135
- package/dist/ui/screenspace.d.ts.map +1 -1
- package/dist/ui/screenspace.js +127 -65
- package/dist/ui/screenspace.js.map +1 -1
- package/dist/ui/ui.d.ts +20 -122
- package/dist/ui/ui.d.ts.map +1 -1
- package/dist/ui/ui.js +44 -107
- package/dist/ui/ui.js.map +1 -1
- package/dist/ui/uikitml-asset.d.ts +25 -0
- package/dist/ui/uikitml-asset.d.ts.map +1 -0
- package/dist/ui/uikitml-asset.js +56 -0
- package/dist/ui/uikitml-asset.js.map +1 -0
- package/dist/ui/uikitml.d.ts +41 -0
- package/dist/ui/uikitml.d.ts.map +1 -0
- package/dist/ui/uikitml.js +119 -0
- package/dist/ui/uikitml.js.map +1 -0
- package/dist/vendor/draco/gltf/draco_encoder.js +0 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/visibility/visibility-component.d.ts +14 -0
- package/dist/visibility/visibility-component.d.ts.map +1 -0
- package/dist/visibility/visibility-component.js +15 -0
- package/dist/visibility/visibility-component.js.map +1 -0
- package/dist/visibility/visibility.d.ts +4 -11
- package/dist/visibility/visibility.d.ts.map +1 -1
- package/dist/visibility/visibility.js +9 -15
- package/dist/visibility/visibility.js.map +1 -1
- package/package.json +71 -19
- package/LICENSE +0 -21
- package/dist/ecs/component-registry.d.ts +0 -54
- package/dist/ecs/component-registry.d.ts.map +0 -1
- package/dist/ecs/component-registry.js +0 -86
- package/dist/ecs/component-registry.js.map +0 -1
- package/dist/level/level-entity-creator.d.ts +0 -27
- package/dist/level/level-entity-creator.d.ts.map +0 -1
- package/dist/level/level-entity-creator.js +0 -111
- package/dist/level/level-entity-creator.js.map +0 -1
- package/dist/level/level-glxf-importer.d.ts +0 -22
- package/dist/level/level-glxf-importer.d.ts.map +0 -1
- package/dist/level/level-glxf-importer.js +0 -40
- package/dist/level/level-glxf-importer.js.map +0 -1
|
@@ -4,7 +4,25 @@
|
|
|
4
4
|
* This source code is licensed under the MIT license found in the
|
|
5
5
|
* LICENSE file in the root directory of this source tree.
|
|
6
6
|
*/
|
|
7
|
-
import { Types } from '.././index.js';
|
|
7
|
+
import { Entity, Types } from '.././index.js';
|
|
8
|
+
import { Vector3, Quaternion } from '../runtime/three.js';
|
|
9
|
+
type Vector3Input = Vector3 | readonly [number, number, number];
|
|
10
|
+
type QuaternionInput = Quaternion | readonly [number, number, number, number];
|
|
11
|
+
/** Pose passed to {@link PhysicsSystem.setBodyTransform}. */
|
|
12
|
+
export interface PhysicsBodyTransformPose {
|
|
13
|
+
position: Vector3Input;
|
|
14
|
+
quaternion: QuaternionInput;
|
|
15
|
+
}
|
|
16
|
+
/** Options for {@link PhysicsSystem.setBodyTransform}. */
|
|
17
|
+
export interface PhysicsBodyTransformOptions {
|
|
18
|
+
/**
|
|
19
|
+
* Clear linear and angular velocity after teleporting the body.
|
|
20
|
+
*
|
|
21
|
+
* @default true
|
|
22
|
+
*/
|
|
23
|
+
resetVelocity?: boolean;
|
|
24
|
+
}
|
|
25
|
+
export declare function getCapsuleAxisEndpoints(radius: number, totalHeight: number): [[number, number, number], [number, number, number]] | null;
|
|
8
26
|
declare const PhysicsSystem_base: import("elics").SystemConstructor<{
|
|
9
27
|
gravity: {
|
|
10
28
|
type: Types.Vec3;
|
|
@@ -54,6 +72,18 @@ declare const PhysicsSystem_base: import("elics").SystemConstructor<{
|
|
|
54
72
|
type: Types.Float64;
|
|
55
73
|
default: number;
|
|
56
74
|
};
|
|
75
|
+
_engineGravityFactor: {
|
|
76
|
+
type: Types.Float32;
|
|
77
|
+
default: number;
|
|
78
|
+
};
|
|
79
|
+
_engineLinearDamping: {
|
|
80
|
+
type: Types.Float32;
|
|
81
|
+
default: number;
|
|
82
|
+
};
|
|
83
|
+
_engineAngularDamping: {
|
|
84
|
+
type: Types.Float32;
|
|
85
|
+
default: number;
|
|
86
|
+
};
|
|
57
87
|
}> | import("elics").Component<{
|
|
58
88
|
shape: {
|
|
59
89
|
type: Types.Enum;
|
|
@@ -133,6 +163,18 @@ declare const PhysicsSystem_base: import("elics").SystemConstructor<{
|
|
|
133
163
|
type: Types.Float64;
|
|
134
164
|
default: number;
|
|
135
165
|
};
|
|
166
|
+
_engineGravityFactor: {
|
|
167
|
+
type: Types.Float32;
|
|
168
|
+
default: number;
|
|
169
|
+
};
|
|
170
|
+
_engineLinearDamping: {
|
|
171
|
+
type: Types.Float32;
|
|
172
|
+
default: number;
|
|
173
|
+
};
|
|
174
|
+
_engineAngularDamping: {
|
|
175
|
+
type: Types.Float32;
|
|
176
|
+
default: number;
|
|
177
|
+
};
|
|
136
178
|
}> | import("elics").Component<{
|
|
137
179
|
force: {
|
|
138
180
|
type: Types.Vec3;
|
|
@@ -149,13 +191,99 @@ declare const PhysicsSystem_base: import("elics").SystemConstructor<{
|
|
|
149
191
|
}>)[];
|
|
150
192
|
where: import("elics").ValuePredicate[];
|
|
151
193
|
};
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
194
|
+
gravityOverrides: {
|
|
195
|
+
required: (import("elics").Component<{
|
|
196
|
+
state: {
|
|
197
|
+
type: Types.Enum;
|
|
198
|
+
enum: {
|
|
199
|
+
readonly Static: "STATIC";
|
|
200
|
+
readonly Dynamic: "DYNAMIC";
|
|
201
|
+
readonly Kinematic: "KINEMATIC";
|
|
202
|
+
};
|
|
203
|
+
default: "DYNAMIC";
|
|
204
|
+
};
|
|
205
|
+
linearDamping: {
|
|
206
|
+
type: Types.Float32;
|
|
207
|
+
default: number;
|
|
208
|
+
};
|
|
209
|
+
angularDamping: {
|
|
210
|
+
type: Types.Float32;
|
|
211
|
+
default: number;
|
|
212
|
+
};
|
|
213
|
+
gravityFactor: {
|
|
214
|
+
type: Types.Float32;
|
|
215
|
+
default: number;
|
|
216
|
+
};
|
|
217
|
+
centerOfMass: {
|
|
218
|
+
type: Types.Vec3;
|
|
219
|
+
default: [number, number, number];
|
|
220
|
+
};
|
|
221
|
+
_linearVelocity: {
|
|
222
|
+
type: Types.Vec3;
|
|
223
|
+
default: [number, number, number];
|
|
224
|
+
};
|
|
225
|
+
_angularVelocity: {
|
|
226
|
+
type: Types.Vec3;
|
|
227
|
+
default: [number, number, number];
|
|
228
|
+
};
|
|
229
|
+
_engineBody: {
|
|
230
|
+
type: Types.Float64;
|
|
231
|
+
default: number;
|
|
232
|
+
};
|
|
233
|
+
_engineOffset: {
|
|
234
|
+
type: Types.Float64;
|
|
235
|
+
default: number;
|
|
236
|
+
};
|
|
237
|
+
_engineGravityFactor: {
|
|
238
|
+
type: Types.Float32;
|
|
239
|
+
default: number;
|
|
240
|
+
};
|
|
241
|
+
_engineLinearDamping: {
|
|
242
|
+
type: Types.Float32;
|
|
243
|
+
default: number;
|
|
244
|
+
};
|
|
245
|
+
_engineAngularDamping: {
|
|
246
|
+
type: Types.Float32;
|
|
247
|
+
default: number;
|
|
248
|
+
};
|
|
249
|
+
}> | import("elics").Component<{
|
|
250
|
+
shape: {
|
|
251
|
+
type: Types.Enum;
|
|
252
|
+
enum: {
|
|
253
|
+
readonly Sphere: "Sphere";
|
|
254
|
+
readonly Box: "Box";
|
|
255
|
+
readonly Cylinder: "Cylinder";
|
|
256
|
+
readonly Capsules: "Capsules";
|
|
257
|
+
readonly ConvexHull: "ConvexHull";
|
|
258
|
+
readonly TriMesh: "TriMesh";
|
|
259
|
+
readonly Auto: "Auto";
|
|
260
|
+
};
|
|
261
|
+
default: "Auto";
|
|
262
|
+
};
|
|
263
|
+
dimensions: {
|
|
264
|
+
type: Types.Vec3;
|
|
265
|
+
default: [number, number, number];
|
|
266
|
+
};
|
|
267
|
+
density: {
|
|
268
|
+
type: Types.Float32;
|
|
269
|
+
default: number;
|
|
270
|
+
};
|
|
271
|
+
restitution: {
|
|
272
|
+
type: Types.Float32;
|
|
273
|
+
default: number;
|
|
274
|
+
};
|
|
275
|
+
friction: {
|
|
276
|
+
type: Types.Float32;
|
|
277
|
+
default: number;
|
|
278
|
+
};
|
|
279
|
+
_engineShape: {
|
|
280
|
+
type: Types.Float64;
|
|
281
|
+
default: number;
|
|
282
|
+
};
|
|
283
|
+
}>)[];
|
|
284
|
+
where: import("elics").ValuePredicate[];
|
|
156
285
|
};
|
|
157
|
-
|
|
158
|
-
physicsEntities: {
|
|
286
|
+
linearDampingOverrides: {
|
|
159
287
|
required: (import("elics").Component<{
|
|
160
288
|
state: {
|
|
161
289
|
type: Types.Enum;
|
|
@@ -198,6 +326,18 @@ declare const PhysicsSystem_base: import("elics").SystemConstructor<{
|
|
|
198
326
|
type: Types.Float64;
|
|
199
327
|
default: number;
|
|
200
328
|
};
|
|
329
|
+
_engineGravityFactor: {
|
|
330
|
+
type: Types.Float32;
|
|
331
|
+
default: number;
|
|
332
|
+
};
|
|
333
|
+
_engineLinearDamping: {
|
|
334
|
+
type: Types.Float32;
|
|
335
|
+
default: number;
|
|
336
|
+
};
|
|
337
|
+
_engineAngularDamping: {
|
|
338
|
+
type: Types.Float32;
|
|
339
|
+
default: number;
|
|
340
|
+
};
|
|
201
341
|
}> | import("elics").Component<{
|
|
202
342
|
shape: {
|
|
203
343
|
type: Types.Enum;
|
|
@@ -233,8 +373,9 @@ declare const PhysicsSystem_base: import("elics").SystemConstructor<{
|
|
|
233
373
|
default: number;
|
|
234
374
|
};
|
|
235
375
|
}>)[];
|
|
376
|
+
where: import("elics").ValuePredicate[];
|
|
236
377
|
};
|
|
237
|
-
|
|
378
|
+
angularDampingOverrides: {
|
|
238
379
|
required: (import("elics").Component<{
|
|
239
380
|
state: {
|
|
240
381
|
type: Types.Enum;
|
|
@@ -277,19 +418,496 @@ declare const PhysicsSystem_base: import("elics").SystemConstructor<{
|
|
|
277
418
|
type: Types.Float64;
|
|
278
419
|
default: number;
|
|
279
420
|
};
|
|
421
|
+
_engineGravityFactor: {
|
|
422
|
+
type: Types.Float32;
|
|
423
|
+
default: number;
|
|
424
|
+
};
|
|
425
|
+
_engineLinearDamping: {
|
|
426
|
+
type: Types.Float32;
|
|
427
|
+
default: number;
|
|
428
|
+
};
|
|
429
|
+
_engineAngularDamping: {
|
|
430
|
+
type: Types.Float32;
|
|
431
|
+
default: number;
|
|
432
|
+
};
|
|
280
433
|
}> | import("elics").Component<{
|
|
281
|
-
|
|
434
|
+
shape: {
|
|
435
|
+
type: Types.Enum;
|
|
436
|
+
enum: {
|
|
437
|
+
readonly Sphere: "Sphere";
|
|
438
|
+
readonly Box: "Box";
|
|
439
|
+
readonly Cylinder: "Cylinder";
|
|
440
|
+
readonly Capsules: "Capsules";
|
|
441
|
+
readonly ConvexHull: "ConvexHull";
|
|
442
|
+
readonly TriMesh: "TriMesh";
|
|
443
|
+
readonly Auto: "Auto";
|
|
444
|
+
};
|
|
445
|
+
default: "Auto";
|
|
446
|
+
};
|
|
447
|
+
dimensions: {
|
|
282
448
|
type: Types.Vec3;
|
|
283
449
|
default: [number, number, number];
|
|
284
450
|
};
|
|
285
|
-
|
|
451
|
+
density: {
|
|
452
|
+
type: Types.Float32;
|
|
453
|
+
default: number;
|
|
454
|
+
};
|
|
455
|
+
restitution: {
|
|
456
|
+
type: Types.Float32;
|
|
457
|
+
default: number;
|
|
458
|
+
};
|
|
459
|
+
friction: {
|
|
460
|
+
type: Types.Float32;
|
|
461
|
+
default: number;
|
|
462
|
+
};
|
|
463
|
+
_engineShape: {
|
|
464
|
+
type: Types.Float64;
|
|
465
|
+
default: number;
|
|
466
|
+
};
|
|
467
|
+
}>)[];
|
|
468
|
+
where: import("elics").ValuePredicate[];
|
|
469
|
+
};
|
|
470
|
+
}, import("../ecs/world.js").World, import("../ecs/system.js").System<{
|
|
471
|
+
gravity: {
|
|
472
|
+
type: Types.Vec3;
|
|
473
|
+
default: [number, number, number];
|
|
474
|
+
};
|
|
475
|
+
}, {
|
|
476
|
+
physicsEntities: {
|
|
477
|
+
required: (import("elics").Component<{
|
|
478
|
+
state: {
|
|
479
|
+
type: Types.Enum;
|
|
480
|
+
enum: {
|
|
481
|
+
readonly Static: "STATIC";
|
|
482
|
+
readonly Dynamic: "DYNAMIC";
|
|
483
|
+
readonly Kinematic: "KINEMATIC";
|
|
484
|
+
};
|
|
485
|
+
default: "DYNAMIC";
|
|
486
|
+
};
|
|
487
|
+
linearDamping: {
|
|
488
|
+
type: Types.Float32;
|
|
489
|
+
default: number;
|
|
490
|
+
};
|
|
491
|
+
angularDamping: {
|
|
492
|
+
type: Types.Float32;
|
|
493
|
+
default: number;
|
|
494
|
+
};
|
|
495
|
+
gravityFactor: {
|
|
496
|
+
type: Types.Float32;
|
|
497
|
+
default: number;
|
|
498
|
+
};
|
|
499
|
+
centerOfMass: {
|
|
286
500
|
type: Types.Vec3;
|
|
287
501
|
default: [number, number, number];
|
|
288
502
|
};
|
|
289
|
-
|
|
503
|
+
_linearVelocity: {
|
|
504
|
+
type: Types.Vec3;
|
|
505
|
+
default: [number, number, number];
|
|
506
|
+
};
|
|
507
|
+
_angularVelocity: {
|
|
508
|
+
type: Types.Vec3;
|
|
509
|
+
default: [number, number, number];
|
|
510
|
+
};
|
|
511
|
+
_engineBody: {
|
|
512
|
+
type: Types.Float64;
|
|
513
|
+
default: number;
|
|
514
|
+
};
|
|
515
|
+
_engineOffset: {
|
|
516
|
+
type: Types.Float64;
|
|
517
|
+
default: number;
|
|
518
|
+
};
|
|
519
|
+
_engineGravityFactor: {
|
|
520
|
+
type: Types.Float32;
|
|
521
|
+
default: number;
|
|
522
|
+
};
|
|
523
|
+
_engineLinearDamping: {
|
|
524
|
+
type: Types.Float32;
|
|
525
|
+
default: number;
|
|
526
|
+
};
|
|
527
|
+
_engineAngularDamping: {
|
|
528
|
+
type: Types.Float32;
|
|
529
|
+
default: number;
|
|
530
|
+
};
|
|
531
|
+
}> | import("elics").Component<{
|
|
532
|
+
shape: {
|
|
533
|
+
type: Types.Enum;
|
|
534
|
+
enum: {
|
|
535
|
+
readonly Sphere: "Sphere";
|
|
536
|
+
readonly Box: "Box";
|
|
537
|
+
readonly Cylinder: "Cylinder";
|
|
538
|
+
readonly Capsules: "Capsules";
|
|
539
|
+
readonly ConvexHull: "ConvexHull";
|
|
540
|
+
readonly TriMesh: "TriMesh";
|
|
541
|
+
readonly Auto: "Auto";
|
|
542
|
+
};
|
|
543
|
+
default: "Auto";
|
|
544
|
+
};
|
|
545
|
+
dimensions: {
|
|
290
546
|
type: Types.Vec3;
|
|
291
547
|
default: [number, number, number];
|
|
292
548
|
};
|
|
549
|
+
density: {
|
|
550
|
+
type: Types.Float32;
|
|
551
|
+
default: number;
|
|
552
|
+
};
|
|
553
|
+
restitution: {
|
|
554
|
+
type: Types.Float32;
|
|
555
|
+
default: number;
|
|
556
|
+
};
|
|
557
|
+
friction: {
|
|
558
|
+
type: Types.Float32;
|
|
559
|
+
default: number;
|
|
560
|
+
};
|
|
561
|
+
_engineShape: {
|
|
562
|
+
type: Types.Float64;
|
|
563
|
+
default: number;
|
|
564
|
+
};
|
|
565
|
+
}>)[];
|
|
566
|
+
};
|
|
567
|
+
manipluatedEntities: {
|
|
568
|
+
required: (import("elics").Component<{
|
|
569
|
+
state: {
|
|
570
|
+
type: Types.Enum;
|
|
571
|
+
enum: {
|
|
572
|
+
readonly Static: "STATIC";
|
|
573
|
+
readonly Dynamic: "DYNAMIC";
|
|
574
|
+
readonly Kinematic: "KINEMATIC";
|
|
575
|
+
};
|
|
576
|
+
default: "DYNAMIC";
|
|
577
|
+
};
|
|
578
|
+
linearDamping: {
|
|
579
|
+
type: Types.Float32;
|
|
580
|
+
default: number;
|
|
581
|
+
};
|
|
582
|
+
angularDamping: {
|
|
583
|
+
type: Types.Float32;
|
|
584
|
+
default: number;
|
|
585
|
+
};
|
|
586
|
+
gravityFactor: {
|
|
587
|
+
type: Types.Float32;
|
|
588
|
+
default: number;
|
|
589
|
+
};
|
|
590
|
+
centerOfMass: {
|
|
591
|
+
type: Types.Vec3;
|
|
592
|
+
default: [number, number, number];
|
|
593
|
+
};
|
|
594
|
+
_linearVelocity: {
|
|
595
|
+
type: Types.Vec3;
|
|
596
|
+
default: [number, number, number];
|
|
597
|
+
};
|
|
598
|
+
_angularVelocity: {
|
|
599
|
+
type: Types.Vec3;
|
|
600
|
+
default: [number, number, number];
|
|
601
|
+
};
|
|
602
|
+
_engineBody: {
|
|
603
|
+
type: Types.Float64;
|
|
604
|
+
default: number;
|
|
605
|
+
};
|
|
606
|
+
_engineOffset: {
|
|
607
|
+
type: Types.Float64;
|
|
608
|
+
default: number;
|
|
609
|
+
};
|
|
610
|
+
_engineGravityFactor: {
|
|
611
|
+
type: Types.Float32;
|
|
612
|
+
default: number;
|
|
613
|
+
};
|
|
614
|
+
_engineLinearDamping: {
|
|
615
|
+
type: Types.Float32;
|
|
616
|
+
default: number;
|
|
617
|
+
};
|
|
618
|
+
_engineAngularDamping: {
|
|
619
|
+
type: Types.Float32;
|
|
620
|
+
default: number;
|
|
621
|
+
};
|
|
622
|
+
}> | import("elics").Component<{
|
|
623
|
+
force: {
|
|
624
|
+
type: Types.Vec3;
|
|
625
|
+
default: [number, number, number];
|
|
626
|
+
};
|
|
627
|
+
linearVelocity: {
|
|
628
|
+
type: Types.Vec3;
|
|
629
|
+
default: [number, number, number];
|
|
630
|
+
};
|
|
631
|
+
angularVelocity: {
|
|
632
|
+
type: Types.Vec3;
|
|
633
|
+
default: [number, number, number];
|
|
634
|
+
};
|
|
635
|
+
}>)[];
|
|
636
|
+
where: import("elics").ValuePredicate[];
|
|
637
|
+
};
|
|
638
|
+
gravityOverrides: {
|
|
639
|
+
required: (import("elics").Component<{
|
|
640
|
+
state: {
|
|
641
|
+
type: Types.Enum;
|
|
642
|
+
enum: {
|
|
643
|
+
readonly Static: "STATIC";
|
|
644
|
+
readonly Dynamic: "DYNAMIC";
|
|
645
|
+
readonly Kinematic: "KINEMATIC";
|
|
646
|
+
};
|
|
647
|
+
default: "DYNAMIC";
|
|
648
|
+
};
|
|
649
|
+
linearDamping: {
|
|
650
|
+
type: Types.Float32;
|
|
651
|
+
default: number;
|
|
652
|
+
};
|
|
653
|
+
angularDamping: {
|
|
654
|
+
type: Types.Float32;
|
|
655
|
+
default: number;
|
|
656
|
+
};
|
|
657
|
+
gravityFactor: {
|
|
658
|
+
type: Types.Float32;
|
|
659
|
+
default: number;
|
|
660
|
+
};
|
|
661
|
+
centerOfMass: {
|
|
662
|
+
type: Types.Vec3;
|
|
663
|
+
default: [number, number, number];
|
|
664
|
+
};
|
|
665
|
+
_linearVelocity: {
|
|
666
|
+
type: Types.Vec3;
|
|
667
|
+
default: [number, number, number];
|
|
668
|
+
};
|
|
669
|
+
_angularVelocity: {
|
|
670
|
+
type: Types.Vec3;
|
|
671
|
+
default: [number, number, number];
|
|
672
|
+
};
|
|
673
|
+
_engineBody: {
|
|
674
|
+
type: Types.Float64;
|
|
675
|
+
default: number;
|
|
676
|
+
};
|
|
677
|
+
_engineOffset: {
|
|
678
|
+
type: Types.Float64;
|
|
679
|
+
default: number;
|
|
680
|
+
};
|
|
681
|
+
_engineGravityFactor: {
|
|
682
|
+
type: Types.Float32;
|
|
683
|
+
default: number;
|
|
684
|
+
};
|
|
685
|
+
_engineLinearDamping: {
|
|
686
|
+
type: Types.Float32;
|
|
687
|
+
default: number;
|
|
688
|
+
};
|
|
689
|
+
_engineAngularDamping: {
|
|
690
|
+
type: Types.Float32;
|
|
691
|
+
default: number;
|
|
692
|
+
};
|
|
693
|
+
}> | import("elics").Component<{
|
|
694
|
+
shape: {
|
|
695
|
+
type: Types.Enum;
|
|
696
|
+
enum: {
|
|
697
|
+
readonly Sphere: "Sphere";
|
|
698
|
+
readonly Box: "Box";
|
|
699
|
+
readonly Cylinder: "Cylinder";
|
|
700
|
+
readonly Capsules: "Capsules";
|
|
701
|
+
readonly ConvexHull: "ConvexHull";
|
|
702
|
+
readonly TriMesh: "TriMesh";
|
|
703
|
+
readonly Auto: "Auto";
|
|
704
|
+
};
|
|
705
|
+
default: "Auto";
|
|
706
|
+
};
|
|
707
|
+
dimensions: {
|
|
708
|
+
type: Types.Vec3;
|
|
709
|
+
default: [number, number, number];
|
|
710
|
+
};
|
|
711
|
+
density: {
|
|
712
|
+
type: Types.Float32;
|
|
713
|
+
default: number;
|
|
714
|
+
};
|
|
715
|
+
restitution: {
|
|
716
|
+
type: Types.Float32;
|
|
717
|
+
default: number;
|
|
718
|
+
};
|
|
719
|
+
friction: {
|
|
720
|
+
type: Types.Float32;
|
|
721
|
+
default: number;
|
|
722
|
+
};
|
|
723
|
+
_engineShape: {
|
|
724
|
+
type: Types.Float64;
|
|
725
|
+
default: number;
|
|
726
|
+
};
|
|
727
|
+
}>)[];
|
|
728
|
+
where: import("elics").ValuePredicate[];
|
|
729
|
+
};
|
|
730
|
+
linearDampingOverrides: {
|
|
731
|
+
required: (import("elics").Component<{
|
|
732
|
+
state: {
|
|
733
|
+
type: Types.Enum;
|
|
734
|
+
enum: {
|
|
735
|
+
readonly Static: "STATIC";
|
|
736
|
+
readonly Dynamic: "DYNAMIC";
|
|
737
|
+
readonly Kinematic: "KINEMATIC";
|
|
738
|
+
};
|
|
739
|
+
default: "DYNAMIC";
|
|
740
|
+
};
|
|
741
|
+
linearDamping: {
|
|
742
|
+
type: Types.Float32;
|
|
743
|
+
default: number;
|
|
744
|
+
};
|
|
745
|
+
angularDamping: {
|
|
746
|
+
type: Types.Float32;
|
|
747
|
+
default: number;
|
|
748
|
+
};
|
|
749
|
+
gravityFactor: {
|
|
750
|
+
type: Types.Float32;
|
|
751
|
+
default: number;
|
|
752
|
+
};
|
|
753
|
+
centerOfMass: {
|
|
754
|
+
type: Types.Vec3;
|
|
755
|
+
default: [number, number, number];
|
|
756
|
+
};
|
|
757
|
+
_linearVelocity: {
|
|
758
|
+
type: Types.Vec3;
|
|
759
|
+
default: [number, number, number];
|
|
760
|
+
};
|
|
761
|
+
_angularVelocity: {
|
|
762
|
+
type: Types.Vec3;
|
|
763
|
+
default: [number, number, number];
|
|
764
|
+
};
|
|
765
|
+
_engineBody: {
|
|
766
|
+
type: Types.Float64;
|
|
767
|
+
default: number;
|
|
768
|
+
};
|
|
769
|
+
_engineOffset: {
|
|
770
|
+
type: Types.Float64;
|
|
771
|
+
default: number;
|
|
772
|
+
};
|
|
773
|
+
_engineGravityFactor: {
|
|
774
|
+
type: Types.Float32;
|
|
775
|
+
default: number;
|
|
776
|
+
};
|
|
777
|
+
_engineLinearDamping: {
|
|
778
|
+
type: Types.Float32;
|
|
779
|
+
default: number;
|
|
780
|
+
};
|
|
781
|
+
_engineAngularDamping: {
|
|
782
|
+
type: Types.Float32;
|
|
783
|
+
default: number;
|
|
784
|
+
};
|
|
785
|
+
}> | import("elics").Component<{
|
|
786
|
+
shape: {
|
|
787
|
+
type: Types.Enum;
|
|
788
|
+
enum: {
|
|
789
|
+
readonly Sphere: "Sphere";
|
|
790
|
+
readonly Box: "Box";
|
|
791
|
+
readonly Cylinder: "Cylinder";
|
|
792
|
+
readonly Capsules: "Capsules";
|
|
793
|
+
readonly ConvexHull: "ConvexHull";
|
|
794
|
+
readonly TriMesh: "TriMesh";
|
|
795
|
+
readonly Auto: "Auto";
|
|
796
|
+
};
|
|
797
|
+
default: "Auto";
|
|
798
|
+
};
|
|
799
|
+
dimensions: {
|
|
800
|
+
type: Types.Vec3;
|
|
801
|
+
default: [number, number, number];
|
|
802
|
+
};
|
|
803
|
+
density: {
|
|
804
|
+
type: Types.Float32;
|
|
805
|
+
default: number;
|
|
806
|
+
};
|
|
807
|
+
restitution: {
|
|
808
|
+
type: Types.Float32;
|
|
809
|
+
default: number;
|
|
810
|
+
};
|
|
811
|
+
friction: {
|
|
812
|
+
type: Types.Float32;
|
|
813
|
+
default: number;
|
|
814
|
+
};
|
|
815
|
+
_engineShape: {
|
|
816
|
+
type: Types.Float64;
|
|
817
|
+
default: number;
|
|
818
|
+
};
|
|
819
|
+
}>)[];
|
|
820
|
+
where: import("elics").ValuePredicate[];
|
|
821
|
+
};
|
|
822
|
+
angularDampingOverrides: {
|
|
823
|
+
required: (import("elics").Component<{
|
|
824
|
+
state: {
|
|
825
|
+
type: Types.Enum;
|
|
826
|
+
enum: {
|
|
827
|
+
readonly Static: "STATIC";
|
|
828
|
+
readonly Dynamic: "DYNAMIC";
|
|
829
|
+
readonly Kinematic: "KINEMATIC";
|
|
830
|
+
};
|
|
831
|
+
default: "DYNAMIC";
|
|
832
|
+
};
|
|
833
|
+
linearDamping: {
|
|
834
|
+
type: Types.Float32;
|
|
835
|
+
default: number;
|
|
836
|
+
};
|
|
837
|
+
angularDamping: {
|
|
838
|
+
type: Types.Float32;
|
|
839
|
+
default: number;
|
|
840
|
+
};
|
|
841
|
+
gravityFactor: {
|
|
842
|
+
type: Types.Float32;
|
|
843
|
+
default: number;
|
|
844
|
+
};
|
|
845
|
+
centerOfMass: {
|
|
846
|
+
type: Types.Vec3;
|
|
847
|
+
default: [number, number, number];
|
|
848
|
+
};
|
|
849
|
+
_linearVelocity: {
|
|
850
|
+
type: Types.Vec3;
|
|
851
|
+
default: [number, number, number];
|
|
852
|
+
};
|
|
853
|
+
_angularVelocity: {
|
|
854
|
+
type: Types.Vec3;
|
|
855
|
+
default: [number, number, number];
|
|
856
|
+
};
|
|
857
|
+
_engineBody: {
|
|
858
|
+
type: Types.Float64;
|
|
859
|
+
default: number;
|
|
860
|
+
};
|
|
861
|
+
_engineOffset: {
|
|
862
|
+
type: Types.Float64;
|
|
863
|
+
default: number;
|
|
864
|
+
};
|
|
865
|
+
_engineGravityFactor: {
|
|
866
|
+
type: Types.Float32;
|
|
867
|
+
default: number;
|
|
868
|
+
};
|
|
869
|
+
_engineLinearDamping: {
|
|
870
|
+
type: Types.Float32;
|
|
871
|
+
default: number;
|
|
872
|
+
};
|
|
873
|
+
_engineAngularDamping: {
|
|
874
|
+
type: Types.Float32;
|
|
875
|
+
default: number;
|
|
876
|
+
};
|
|
877
|
+
}> | import("elics").Component<{
|
|
878
|
+
shape: {
|
|
879
|
+
type: Types.Enum;
|
|
880
|
+
enum: {
|
|
881
|
+
readonly Sphere: "Sphere";
|
|
882
|
+
readonly Box: "Box";
|
|
883
|
+
readonly Cylinder: "Cylinder";
|
|
884
|
+
readonly Capsules: "Capsules";
|
|
885
|
+
readonly ConvexHull: "ConvexHull";
|
|
886
|
+
readonly TriMesh: "TriMesh";
|
|
887
|
+
readonly Auto: "Auto";
|
|
888
|
+
};
|
|
889
|
+
default: "Auto";
|
|
890
|
+
};
|
|
891
|
+
dimensions: {
|
|
892
|
+
type: Types.Vec3;
|
|
893
|
+
default: [number, number, number];
|
|
894
|
+
};
|
|
895
|
+
density: {
|
|
896
|
+
type: Types.Float32;
|
|
897
|
+
default: number;
|
|
898
|
+
};
|
|
899
|
+
restitution: {
|
|
900
|
+
type: Types.Float32;
|
|
901
|
+
default: number;
|
|
902
|
+
};
|
|
903
|
+
friction: {
|
|
904
|
+
type: Types.Float32;
|
|
905
|
+
default: number;
|
|
906
|
+
};
|
|
907
|
+
_engineShape: {
|
|
908
|
+
type: Types.Float64;
|
|
909
|
+
default: number;
|
|
910
|
+
};
|
|
293
911
|
}>)[];
|
|
294
912
|
where: import("elics").ValuePredicate[];
|
|
295
913
|
};
|
|
@@ -330,13 +948,88 @@ export declare class PhysicsSystem extends PhysicsSystem_base {
|
|
|
330
948
|
private bodyBuffer?;
|
|
331
949
|
private scaleBuffer;
|
|
332
950
|
private matrixBuffer;
|
|
951
|
+
/**
|
|
952
|
+
* Cached Float32Array view over the entire Havok heap, reused across frames
|
|
953
|
+
* and bodies. Recreated only when the underlying ArrayBuffer changes (the
|
|
954
|
+
* WASM heap can grow and detach the old buffer), so per-body transform reads
|
|
955
|
+
* don't allocate a fresh typed-array view every frame.
|
|
956
|
+
*/
|
|
957
|
+
private heapFloatView?;
|
|
958
|
+
/** Float32 view over the current Havok heap buffer (see {@link heapFloatView}). */
|
|
959
|
+
private getHeapFloatView;
|
|
333
960
|
init(): Promise<void>;
|
|
961
|
+
/**
|
|
962
|
+
* Teleport an existing Havok body to `pose`.
|
|
963
|
+
*
|
|
964
|
+
* @remarks
|
|
965
|
+
* No-ops until the entity has a live {@link PhysicsBody}. The pose is pushed
|
|
966
|
+
* directly to Havok and mirrored onto `entity.object3D` immediately so callers
|
|
967
|
+
* do not need to wait for the next physics tick before reading the reset
|
|
968
|
+
* transform. Linear and angular velocity are cleared by default, which is the
|
|
969
|
+
* expected behavior for reset/home-position flows.
|
|
970
|
+
*
|
|
971
|
+
* @example Reset a fallen prop to its home pose
|
|
972
|
+
* ```ts
|
|
973
|
+
* const physics = world.getSystem(PhysicsSystem);
|
|
974
|
+
* physics.setBodyTransform(prop, {
|
|
975
|
+
* position: homePosition,
|
|
976
|
+
* quaternion: homeQuaternion,
|
|
977
|
+
* });
|
|
978
|
+
* ```
|
|
979
|
+
*/
|
|
980
|
+
setBodyTransform(entity: Entity, pose: PhysicsBodyTransformPose, options?: PhysicsBodyTransformOptions): void;
|
|
981
|
+
/**
|
|
982
|
+
* Reset a body's gravityFactor / linearDamping / angularDamping to the engine
|
|
983
|
+
* default when its field returns to the default value. The entity then drops
|
|
984
|
+
* out of the override set, so {@link syncReactiveOverrides} no longer visits
|
|
985
|
+
* it — this is the one place that restores the default. The `hasComponent`
|
|
986
|
+
* guard distinguishes the value-returned-to-default case from the other
|
|
987
|
+
* disqualify cause (PhysicsBody/PhysicsShape removal), where the body is being
|
|
988
|
+
* released and must not be written to.
|
|
989
|
+
*/
|
|
990
|
+
private subscribeReactiveOverrides;
|
|
334
991
|
update(delta: number): void;
|
|
335
992
|
private createBody;
|
|
993
|
+
/**
|
|
994
|
+
* Push post-creation gravityFactor / linearDamping / angularDamping edits to
|
|
995
|
+
* Havok. Only overridden bodies are visited (see the value-predicate queries
|
|
996
|
+
* in the system definition); each sync diffs the component value against the
|
|
997
|
+
* last-pushed shadow, so a body whose field is unchanged this frame costs only
|
|
998
|
+
* a typed-array compare.
|
|
999
|
+
*/
|
|
1000
|
+
private syncReactiveOverrides;
|
|
1001
|
+
/**
|
|
1002
|
+
* Sync the entity's current {@link PhysicsBody.gravityFactor} onto its Havok
|
|
1003
|
+
* body. Diffs the component value against `_engineGravityFactor` (the last
|
|
1004
|
+
* value pushed) rather than reading back from Havok, so an unchanged body
|
|
1005
|
+
* costs only a typed-array compare — no WASM call and no allocation. The Havok
|
|
1006
|
+
* write and shadow update happen only on an actual change. No-op until the body
|
|
1007
|
+
* exists. See {@link gravityOverrides}.
|
|
1008
|
+
*/
|
|
1009
|
+
private syncGravityFactor;
|
|
1010
|
+
/**
|
|
1011
|
+
* Sync the entity's current {@link PhysicsBody.linearDamping} onto its Havok
|
|
1012
|
+
* body. Diffs against `_engineLinearDamping` (the last value pushed) rather
|
|
1013
|
+
* than reading back from Havok, so an unchanged body costs only a typed-array
|
|
1014
|
+
* compare — no WASM call and no allocation. The Havok write and shadow update
|
|
1015
|
+
* happen only on an actual change. No-op until the body exists.
|
|
1016
|
+
* See {@link linearDampingOverrides}.
|
|
1017
|
+
*/
|
|
1018
|
+
private syncLinearDamping;
|
|
1019
|
+
/**
|
|
1020
|
+
* Sync the entity's current {@link PhysicsBody.angularDamping} onto its Havok
|
|
1021
|
+
* body. Diffs against `_engineAngularDamping` (the last value pushed) rather
|
|
1022
|
+
* than reading back from Havok, so an unchanged body costs only a typed-array
|
|
1023
|
+
* compare — no WASM call and no allocation. The Havok write and shadow update
|
|
1024
|
+
* happen only on an actual change. No-op until the body exists.
|
|
1025
|
+
* See {@link angularDampingOverrides}.
|
|
1026
|
+
*/
|
|
1027
|
+
private syncAngularDamping;
|
|
336
1028
|
private createHavokShapes;
|
|
337
1029
|
private createBallShape;
|
|
338
1030
|
private createBoxShape;
|
|
339
1031
|
private createCylinderShape;
|
|
1032
|
+
private createCapsuleShape;
|
|
340
1033
|
private createConvexHullShape;
|
|
341
1034
|
private createTriMeshShape;
|
|
342
1035
|
private getVertices;
|