excalibur 0.33.0-alpha.99 → 1.1.0-alpha.310
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/.nvmrc +1 -1
- package/CHANGELOG.md +206 -5
- package/build/esm/excalibur.development.js +37363 -35202
- package/build/esm/excalibur.js +37363 -35202
- package/build/esm/excalibur.min.development.js +18360 -23963
- package/build/esm/excalibur.min.js +18360 -23963
- package/build/{dist → esm/src/engine}/actions/action/move-by.d.ts +1 -4
- package/build/{dist → esm/src/engine}/actions/action/move-to.d.ts +1 -4
- package/build/{dist → esm/src/engine}/actions/action/repeat-forever.d.ts +8 -0
- package/build/{dist → esm/src/engine}/actions/action/rotate-by.d.ts +9 -3
- package/build/{dist → esm/src/engine}/actions/action-context.d.ts +9 -43
- package/build/{dist → esm/src/engine}/actions/actions-component.d.ts +3 -41
- package/build/{dist → esm/src/engine}/actions/actions-system.d.ts +2 -3
- package/build/{dist → esm/src/engine}/actions/index.d.ts +0 -2
- package/build/{dist → esm/src/engine}/actor.d.ts +19 -30
- package/build/{dist → esm/src/engine}/camera.d.ts +13 -10
- package/build/{dist → esm/src/engine}/collision/body-component.d.ts +11 -20
- package/build/{dist → esm/src/engine}/collision/bounding-box.d.ts +3 -10
- package/build/{dist → esm/src/engine}/collision/collider-component.d.ts +17 -2
- package/build/{dist → esm/src/engine}/collision/colliders/circle-collider.d.ts +8 -0
- package/build/{dist → esm/src/engine}/collision/colliders/closest-line-jump-table.d.ts +1 -1
- package/build/{dist → esm/src/engine}/collision/colliders/collider.d.ts +7 -1
- package/build/{dist/collision/colliders/shape.d.ts → esm/src/engine/collision/colliders/colliders.d.ts} +50 -0
- package/build/{dist → esm/src/engine}/collision/colliders/collision-jump-table.d.ts +2 -1
- package/build/{dist → esm/src/engine}/collision/colliders/edge-collider.d.ts +25 -1
- package/build/{dist → esm/src/engine}/collision/colliders/polygon-collider.d.ts +23 -0
- package/build/esm/src/engine/collision/colliders/sat-shape.d.ts +27 -0
- package/build/{dist → esm/src/engine}/collision/colliders/separating-axis.d.ts +11 -6
- package/build/{dist → esm/src/engine}/collision/collision-system.d.ts +9 -5
- package/build/{dist → esm/src/engine}/collision/detection/collision-contact.d.ts +6 -0
- package/build/{dist → esm/src/engine}/collision/detection/dynamic-tree.d.ts +9 -11
- package/build/{dist → esm/src/engine}/collision/detection/pair.d.ts +9 -0
- package/build/{dist → esm/src/engine}/collision/detection/quad-tree.d.ts +2 -2
- package/build/{dist → esm/src/engine}/collision/detection/sparse-hash-grid-collision-processor.d.ts +7 -2
- package/build/{dist → esm/src/engine}/collision/detection/sparse-hash-grid.d.ts +11 -3
- package/build/{dist → esm/src/engine}/collision/group/collision-group-manager.d.ts +1 -1
- package/build/{dist → esm/src/engine}/collision/index.d.ts +2 -1
- package/build/{dist → esm/src/engine}/collision/motion-system.d.ts +2 -3
- package/build/{dist → esm/src/engine}/collision/physics-config.d.ts +7 -0
- package/build/{dist → esm/src/engine}/collision/physics-world.d.ts +34 -33
- package/build/esm/src/engine/collision/solver/realistic-solver.d.ts +50 -0
- package/build/{dist → esm/src/engine}/collision/solver/solver.d.ts +4 -2
- package/build/{dist → esm/src/engine}/debug/debug-config.d.ts +16 -0
- package/build/{dist → esm/src/engine}/debug/debug-system.d.ts +3 -3
- package/build/esm/src/engine/deprecated.d.ts +1 -0
- package/build/{dist → esm/src/engine}/director/director.d.ts +13 -8
- package/build/{dist → esm/src/engine}/director/slide.d.ts +2 -2
- package/build/{dist → esm/src/engine}/director/transition.d.ts +1 -4
- package/build/{dist → esm/src/engine}/engine.d.ts +58 -8
- package/build/{dist → esm/src/engine}/entity-component-system/component.d.ts +1 -1
- package/build/{dist → esm/src/engine}/entity-component-system/components/motion-component.d.ts +1 -0
- package/build/{dist → esm/src/engine}/entity-component-system/components/pause-component.d.ts +2 -0
- package/build/{dist → esm/src/engine}/entity-component-system/components/tags-component.d.ts +1 -0
- package/build/{dist → esm/src/engine}/entity-component-system/components/transform-component.d.ts +1 -0
- package/build/{dist → esm/src/engine}/entity-component-system/entity.d.ts +0 -10
- package/build/{dist → esm/src/engine}/entity-component-system/index.d.ts +0 -1
- package/build/{dist → esm/src/engine}/entity-component-system/query.d.ts +1 -1
- package/build/{dist → esm/src/engine}/entity-component-system/system.d.ts +11 -4
- package/build/{dist → esm/src/engine}/entity-component-system/world.d.ts +1 -5
- package/build/{dist → esm/src/engine}/events/media-events.d.ts +3 -3
- package/build/{dist → esm/src/engine}/events.d.ts +4 -4
- package/build/{dist → esm/src/engine}/graphics/animation.d.ts +15 -5
- package/build/{dist → esm/src/engine}/graphics/context/circle-renderer/circle-renderer.d.ts +5 -0
- package/build/{dist → esm/src/engine}/graphics/context/debug-text.d.ts +13 -1
- package/build/{dist → esm/src/engine}/graphics/context/excalibur-graphics-context-2d-canvas.d.ts +13 -3
- package/build/{dist → esm/src/engine}/graphics/context/excalibur-graphics-context-webgl.d.ts +43 -6
- package/build/{dist → esm/src/engine}/graphics/context/excalibur-graphics-context.d.ts +108 -4
- package/build/esm/src/engine/graphics/context/framebuffer.d.ts +154 -0
- package/build/esm/src/engine/graphics/context/glsl.d.ts +47 -0
- package/build/{dist → esm/src/engine}/graphics/context/material-renderer/material-renderer.d.ts +1 -0
- package/build/esm/src/engine/graphics/context/material.d.ts +208 -0
- package/build/esm/src/engine/graphics/context/shader-pipeline/effects/bloom-effect.d.ts +80 -0
- package/build/esm/src/engine/graphics/context/shader-pipeline/effects/blur-passes.d.ts +75 -0
- package/build/esm/src/engine/graphics/context/shader-pipeline/effects/glow-passes.d.ts +93 -0
- package/build/esm/src/engine/graphics/context/shader-pipeline/shader-pass.d.ts +138 -0
- package/build/esm/src/engine/graphics/context/shader-pipeline/shader-pipeline.d.ts +91 -0
- package/build/{dist → esm/src/engine}/graphics/context/shader.d.ts +43 -6
- package/build/{dist → esm/src/engine}/graphics/context/texture-loader.d.ts +1 -1
- package/build/{dist → esm/src/engine}/graphics/context/webgl-util.d.ts +2 -2
- package/build/{dist → esm/src/engine}/graphics/debug-graphics-component.d.ts +1 -0
- package/build/{dist → esm/src/engine}/graphics/filtering.d.ts +1 -1
- package/build/{dist → esm/src/engine}/graphics/font-common.d.ts +2 -2
- package/build/{dist → esm/src/engine}/graphics/font-text-instance.d.ts +5 -5
- package/build/{dist → esm/src/engine}/graphics/font.d.ts +3 -3
- package/build/{dist → esm/src/engine}/graphics/graphics-component.d.ts +28 -15
- package/build/{dist → esm/src/engine}/graphics/graphics-group.d.ts +6 -0
- package/build/{dist → esm/src/engine}/graphics/graphics-system.d.ts +3 -3
- package/build/{dist → esm/src/engine}/graphics/image-source.d.ts +1 -1
- package/build/{dist → esm/src/engine}/graphics/index.d.ts +8 -0
- package/build/{dist → esm/src/engine}/graphics/offscreen-system.d.ts +2 -2
- package/build/{dist → esm/src/engine}/graphics/parallax-component.d.ts +1 -0
- package/build/{dist → esm/src/engine}/graphics/post-processor/color-blindness-post-processor.d.ts +3 -5
- package/build/esm/src/engine/graphics/post-processor/post-processor.d.ts +66 -0
- package/build/esm/src/engine/graphics/post-processor/shader-pipeline-post-processor.d.ts +45 -0
- package/build/{dist → esm/src/engine}/graphics/sprite-font.d.ts +3 -3
- package/build/{dist → esm/src/engine}/index.d.ts +5 -5
- package/build/{dist → esm/src/engine}/input/gamepad.d.ts +4 -7
- package/build/{dist → esm/src/engine}/input/keyboard.d.ts +3 -3
- package/build/{dist → esm/src/engine}/input/pointer-component.d.ts +1 -0
- package/build/{dist → esm/src/engine}/input/pointer-event-receiver.d.ts +13 -0
- package/build/{dist → esm/src/engine}/input/pointer-system.d.ts +3 -3
- package/build/{dist → esm/src/engine}/interfaces/index.d.ts +0 -2
- package/build/{dist → esm/src/engine}/label.d.ts +2 -2
- package/build/esm/src/engine/lighting/cone-light-component.d.ts +47 -0
- package/build/esm/src/engine/lighting/darkness-component.d.ts +34 -0
- package/build/esm/src/engine/lighting/flicker-options.d.ts +17 -0
- package/build/esm/src/engine/lighting/flicker-system.d.ts +19 -0
- package/build/esm/src/engine/lighting/index.d.ts +8 -0
- package/build/esm/src/engine/lighting/light-occluder-component.d.ts +66 -0
- package/build/esm/src/engine/lighting/lighting-config.d.ts +47 -0
- package/build/esm/src/engine/lighting/lighting-system.d.ts +153 -0
- package/build/esm/src/engine/lighting/point-light-component.d.ts +46 -0
- package/build/{dist → esm/src/engine}/math/affine-matrix.d.ts +8 -1
- package/build/esm/src/engine/math/coord-plane.d.ts +52 -0
- package/build/{dist → esm/src/engine}/math/graph.d.ts +2 -3
- package/build/{dist → esm/src/engine}/math/index.d.ts +2 -0
- package/build/{dist → esm/src/engine}/math/line-segment.d.ts +1 -1
- package/build/{dist → esm/src/engine}/math/matrix.d.ts +25 -0
- package/build/{dist → esm/src/engine}/math/ray.d.ts +1 -1
- package/build/{dist → esm/src/engine}/math/transform.d.ts +9 -0
- package/build/{dist → esm/src/engine}/math/vector.d.ts +16 -13
- package/build/esm/src/engine/math/vector3.d.ts +163 -0
- package/build/esm/src/engine/math/vector4.d.ts +157 -0
- package/build/{dist → esm/src/engine}/particles/gpu-particle-emitter.d.ts +2 -2
- package/build/{dist → esm/src/engine}/particles/particle-emitter.d.ts +2 -2
- package/build/{dist → esm/src/engine}/particles/particles.d.ts +6 -1
- package/build/esm/src/engine/plugin.d.ts +253 -0
- package/build/{dist → esm/src/engine}/resources/resource.d.ts +8 -0
- package/build/{dist → esm/src/engine}/resources/sound/index.d.ts +1 -1
- package/build/esm/src/engine/resources/sound/sound-manager.d.ts +378 -0
- package/build/esm/src/engine/resources/sound/sound-track.d.ts +176 -0
- package/build/esm/src/engine/resources/sound/sound.d.ts +351 -0
- package/build/{dist → esm/src/engine}/scene.d.ts +13 -7
- package/build/{dist → esm/src/engine}/screen-element.d.ts +2 -2
- package/build/{dist → esm/src/engine}/screen.d.ts +97 -29
- package/build/{dist → esm/src/engine}/tile-map/isometric-entity-component.d.ts +1 -0
- package/build/{dist → esm/src/engine}/tile-map/isometric-entity-system.d.ts +2 -3
- package/build/{dist → esm/src/engine}/tile-map/isometric-map.d.ts +0 -10
- package/build/{dist → esm/src/engine}/tile-map/tile-map.d.ts +2 -0
- package/build/{dist → esm/src/engine}/timer.d.ts +5 -8
- package/build/{dist/util/pool.d.ts → esm/src/engine/util/arena-pool.d.ts} +15 -4
- package/build/{dist → esm/src/engine}/util/browser.d.ts +8 -0
- package/build/{dist → esm/src/engine}/util/detector.d.ts +1 -1
- package/build/{dist → esm/src/engine}/util/draw-util.d.ts +2 -2
- package/build/{dist → esm/src/engine}/util/index.d.ts +0 -1
- package/build/{dist → esm/src/engine}/util/pause-system.d.ts +7 -1
- package/build/{dist → esm/src/engine}/util/rental-pool.d.ts +1 -0
- package/build/{dist → esm/src/engine}/util/serializer.d.ts +1 -1
- package/build/{dist → esm/src/engine}/util/state-machine.d.ts +1 -1
- package/package.json +38 -44
- package/tsconfig.json +38 -1
- package/.devcontainer/devcontainer.json +0 -26
- package/.git-blame-ignore-revs +0 -3
- package/.gitattributes +0 -70
- package/.gitmodules +0 -0
- package/.husky/pre-commit +0 -1
- package/.prettierrc +0 -8
- package/build/dist/collision/solver/realistic-solver.d.ts +0 -28
- package/build/dist/deprecated.d.ts +0 -0
- package/build/dist/entity-component-system/tag-query.d.ts +0 -28
- package/build/dist/excalibur.development.js +0 -35408
- package/build/dist/excalibur.js +0 -35408
- package/build/dist/excalibur.min.development.js +0 -931
- package/build/dist/excalibur.min.js +0 -931
- package/build/dist/graphics/context/material.d.ts +0 -102
- package/build/dist/graphics/context/render-source.d.ts +0 -7
- package/build/dist/graphics/context/render-target.d.ts +0 -60
- package/build/dist/graphics/post-processor/post-processor.d.ts +0 -36
- package/build/dist/interfaces/audio-implementation.d.ts +0 -25
- package/build/dist/interfaces/audio.d.ts +0 -55
- package/build/dist/math/coord-plane.d.ts +0 -15
- package/build/dist/resources/sound/sound-manager.d.ts +0 -102
- package/build/dist/resources/sound/sound.d.ts +0 -215
- package/build/dist/resources/sound/web-audio-instance.d.ts +0 -49
- package/build/dist/util/decorators.d.ts +0 -15
- package/build/dist/util/easing-functions.d.ts +0 -89
- package/build/dist/util/sound.d.ts +0 -5
- package/deno.json +0 -10
- package/eslint.config.mjs +0 -210
- package/playground/README.md +0 -71
- package/playground/index.html +0 -75
- package/playground/package-lock.json +0 -1976
- package/playground/package.json +0 -27
- package/playground/public/favicon.ico +0 -0
- package/playground/public/icon.png +0 -0
- package/playground/public/logo-white@2x.png +0 -0
- package/playground/public/logo@2x.png +0 -0
- package/playground/public/player-run.png +0 -0
- package/playground/public/rpg-audio/License.txt +0 -21
- package/playground/public/rpg-audio/audio/handleCoins.ogg +0 -0
- package/playground/public/social.jpg +0 -0
- package/playground/public/social.png +0 -0
- package/playground/public/tiny-town/License.txt +0 -22
- package/playground/public/tiny-town/tilemap/tilemap.png +0 -0
- package/playground/tsconfig.json +0 -26
- package/playground/tsdown.config.ts +0 -13
- package/playground/vite.config.ts +0 -5
- package/vite.config.common.js +0 -27
- package/vite.config.ts +0 -78
- package/vitest.config.ts +0 -41
- /package/build/{dist → esm/src/engine}/actions/action/action-sequence.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/blink.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/call-method.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/curve-by.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/curve-to.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/delay.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/die.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/ease-by.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/ease-to.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/fade.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/flash.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/follow.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/meet.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/parallel-actions.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/repeat.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/rotate-to.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/scale-by.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action/scale-to.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action-queue.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/action.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/actions/actionable.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/colliders/composite-collider.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/collision-type.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/detection/collision-processor.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/detection/dynamic-tree-collision-processor.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/detection/ray-cast-hit.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/detection/ray-cast-options.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/detection/spatial-partition-strategy.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/group/collision-group.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/integrator.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/island.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/side.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/solver/arcade-solver.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/solver/contact-bias.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/solver/contact-constraint-point.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/collision/solver-strategy.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/color.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/context.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/debug/debug-flags.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/debug/index.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/director/cross-fade.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/director/default-loader.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/director/fade-in-out.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/director/index.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/director/loader.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/entity-component-system/entity-manager.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/entity-component-system/priority.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/entity-component-system/query-manager.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/entity-component-system/system-manager.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/entity-component-system/types.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/event-emitter.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/events/ex-event.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/events/pointer-events.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/excalibur.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/flags.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/garbage-collector.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/canvas.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/circle.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/debug-circle-renderer/debug-circle-renderer.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/debug-line-renderer/debug-line-renderer.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/debug-point-renderer/debug-point-renderer.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/draw-call.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/image-renderer/image-renderer.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/image-renderer-v2/image-renderer-v2.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/particle-renderer/particle-renderer.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/quad-index-buffer.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/rectangle-renderer/rectangle-renderer.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/renderer.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/screen-pass-painter/screen-pass-painter.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/state-stack.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/transform-stack.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/uniform-buffer.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/vertex-buffer.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/context/vertex-layout.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/debug.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/font-cache.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/graphic.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/graphics-diagnostics.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/line.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/nine-slice.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/polygon.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/post-processor/color-blindness-mode.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/post-processor/screen-shader.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/raster.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/rectangle.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/sprite-sheet.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/sprite.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/text.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/tiled-animation.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/tiled-sprite.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/transform-interpolation.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/graphics/wrapping.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/id.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/input/capture-pointer-config.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/input/input-host.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/input/input-mapper.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/input/native-pointer-button.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/input/pointer-abstraction.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/input/pointer-button.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/input/pointer-event.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/input/pointer-events-to-object-dispatcher.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/input/pointer-scope.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/input/pointer-type.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/input/wheel-delta-mode.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/input/wheel-event.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/interfaces/clonable.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/interfaces/evented.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/interfaces/lifecycle-events.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/interfaces/loadable.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/interfaces/pointer-event-handlers.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/math/bezier-curve.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/math/easings.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/math/global-coordinates.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/math/lerp.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/math/projection.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/math/random.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/math/rotation-type.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/math/util.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/math/vector-view.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/math/watch-vector.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/particles/emitter-type.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/particles/gpu-particle-renderer.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/particles/index.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/polyfill.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/resources/font.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/resources/gif.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/resources/index.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/resources/sound/audio-context.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/tile-map/index.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/trigger.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/assert.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/clock.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/coroutine.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/fps.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/future.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/iframe.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/log.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/observable.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/required.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/semaphore.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/string.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/toaster.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/util.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/watch.d.ts +0 -0
- /package/build/{dist → esm/src/engine}/util/web-audio.d.ts +0 -0
|
@@ -1,4 +1,6 @@
|
|
|
1
1
|
import { Vector } from './vector';
|
|
2
|
+
import { Vector3 } from './vector3';
|
|
3
|
+
import { Vector4 } from './vector4';
|
|
2
4
|
export declare enum MatrixLocations {
|
|
3
5
|
X = 12,
|
|
4
6
|
Y = 13
|
|
@@ -59,6 +61,17 @@ export declare class Matrix {
|
|
|
59
61
|
* @param y
|
|
60
62
|
*/
|
|
61
63
|
static translation(x: number, y: number): Matrix;
|
|
64
|
+
/**
|
|
65
|
+
* Creates a brand new translation matrix at the specified 3d point
|
|
66
|
+
* @param vec
|
|
67
|
+
*/
|
|
68
|
+
static translation3d(vec: Vector3): Matrix;
|
|
69
|
+
/**
|
|
70
|
+
* Creates a brand new translation matrix at the specified 4d point
|
|
71
|
+
* @param vec
|
|
72
|
+
*
|
|
73
|
+
*/
|
|
74
|
+
static translation4d(vec: Vector4): Matrix;
|
|
62
75
|
/**
|
|
63
76
|
* Creates a brand new scaling matrix with the specified scaling factor
|
|
64
77
|
* @param sx
|
|
@@ -82,6 +95,18 @@ export declare class Matrix {
|
|
|
82
95
|
* @param dest
|
|
83
96
|
*/
|
|
84
97
|
multiply(matrix: Matrix, dest?: Matrix): Matrix;
|
|
98
|
+
/**
|
|
99
|
+
* Multiply the current matrix by a 4D vector producing a new 4D vector
|
|
100
|
+
* @param vector
|
|
101
|
+
* @param dest
|
|
102
|
+
*/
|
|
103
|
+
multiply(vector: Vector4, dest?: Vector4): Vector4;
|
|
104
|
+
/**
|
|
105
|
+
* Multiply the current matrix by a 3D vector producing a new 3D vector
|
|
106
|
+
* @param vector
|
|
107
|
+
* @param dest
|
|
108
|
+
*/
|
|
109
|
+
multiply(vector: Vector3, dest?: Vector3): Vector3;
|
|
85
110
|
/**
|
|
86
111
|
* Applies translation to the current matrix mutating it
|
|
87
112
|
* @param x
|
|
@@ -17,7 +17,7 @@ export declare class Ray {
|
|
|
17
17
|
* @param line The line to test
|
|
18
18
|
*/
|
|
19
19
|
intersect(line: LineSegment): number;
|
|
20
|
-
intersectPoint(line: LineSegment): Vector;
|
|
20
|
+
intersectPoint(line: LineSegment): Vector | null;
|
|
21
21
|
/**
|
|
22
22
|
* Returns the point of intersection given the intersection time
|
|
23
23
|
*/
|
|
@@ -44,7 +44,16 @@ export declare class Transform {
|
|
|
44
44
|
*/
|
|
45
45
|
get inverse(): AffineMatrix;
|
|
46
46
|
private _scratch;
|
|
47
|
+
private _trigRotation;
|
|
48
|
+
private _cos;
|
|
49
|
+
private _sin;
|
|
47
50
|
private _calculateMatrix;
|
|
51
|
+
private _version;
|
|
52
|
+
/**
|
|
53
|
+
* Increments every time this transform (or one of its parents) changes, cheap change detection for caches built
|
|
54
|
+
* from this transform
|
|
55
|
+
*/
|
|
56
|
+
get version(): number;
|
|
48
57
|
flagDirty(): void;
|
|
49
58
|
apply(point: Vector): Vector;
|
|
50
59
|
applyInverse(point: Vector): Vector;
|
|
@@ -100,17 +100,6 @@ export declare class Vector implements Clonable<Vector> {
|
|
|
100
100
|
* @param magnitude
|
|
101
101
|
*/
|
|
102
102
|
clampMagnitude(magnitude: number): Vector;
|
|
103
|
-
/**
|
|
104
|
-
* The size (magnitude) of the Vector
|
|
105
|
-
* @deprecated Will be removed in v1, use Vector.magnitude
|
|
106
|
-
*/
|
|
107
|
-
get size(): number;
|
|
108
|
-
/**
|
|
109
|
-
* Setting the size mutates the current vector
|
|
110
|
-
* @warning Can be used to set the size of the vector, **be very careful using this, mutating vectors can cause hard to find bugs**
|
|
111
|
-
* @deprecated Will be removed in v1, use Vector.magnitude
|
|
112
|
-
*/
|
|
113
|
-
set size(newLength: number);
|
|
114
103
|
/**
|
|
115
104
|
* The magnitude (length) of the Vector
|
|
116
105
|
*/
|
|
@@ -130,10 +119,15 @@ export declare class Vector implements Clonable<Vector> {
|
|
|
130
119
|
average(vec: Vector): Vector;
|
|
131
120
|
/**
|
|
132
121
|
* Scales a vector's by a factor of size
|
|
133
|
-
* @param
|
|
134
|
-
* @param dest
|
|
122
|
+
* @param scale The factor to scale the magnitude by
|
|
123
|
+
* @param dest {Optional} Optionally provide a destination vector for the result
|
|
135
124
|
*/
|
|
136
125
|
scale(scale: Vector, dest?: Vector): Vector;
|
|
126
|
+
/**
|
|
127
|
+
* Scales a vector's by a factor of size
|
|
128
|
+
* @param size The factor to scale the magnitude by
|
|
129
|
+
* @param dest {Optional} Optionally provide a destination vector for the result
|
|
130
|
+
*/
|
|
137
131
|
scale(size: number, dest?: Vector): Vector;
|
|
138
132
|
/**
|
|
139
133
|
* Adds one vector to another
|
|
@@ -226,6 +220,15 @@ export declare class Vector implements Clonable<Vector> {
|
|
|
226
220
|
* @returns A new vector that is the result of the linear interpolation.
|
|
227
221
|
*/
|
|
228
222
|
lerp(target: Vector, t: number): Vector;
|
|
223
|
+
/**
|
|
224
|
+
* Copies components out into an array or Float32Array
|
|
225
|
+
*/
|
|
226
|
+
toArray(dest?: number[], offset?: number): number[];
|
|
227
|
+
toArray(dest: Float32Array, offset?: number): Float32Array;
|
|
228
|
+
/**
|
|
229
|
+
* Converts to a Float32Array suitable for WebGL uniforms
|
|
230
|
+
*/
|
|
231
|
+
toFloat32Array(): Float32Array;
|
|
229
232
|
}
|
|
230
233
|
/**
|
|
231
234
|
* Shorthand for creating new Vectors - returns a new Vector instance with the
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
import type { Clonable } from '../interfaces/clonable';
|
|
2
|
+
/**
|
|
3
|
+
* A 3D vector.
|
|
4
|
+
*/
|
|
5
|
+
export declare class Vector3 implements Clonable<Vector3> {
|
|
6
|
+
/**
|
|
7
|
+
* Get or set the vector equals epsilon, by default 0.001 meaning vectors within that tolerance on x, y, or z will be considered equal.
|
|
8
|
+
*/
|
|
9
|
+
static EQUALS_EPSILON: number;
|
|
10
|
+
/**
|
|
11
|
+
* A (0, 0, 0) vector
|
|
12
|
+
*/
|
|
13
|
+
static get Zero(): Vector3;
|
|
14
|
+
/**
|
|
15
|
+
* A (1, 1, 1) vector
|
|
16
|
+
*/
|
|
17
|
+
static get One(): Vector3;
|
|
18
|
+
/**
|
|
19
|
+
* A unit vector pointing right (1, 0, 0)
|
|
20
|
+
*/
|
|
21
|
+
static get Right(): Vector3;
|
|
22
|
+
/**
|
|
23
|
+
* A unit vector pointing left (-1, 0, 0)
|
|
24
|
+
*/
|
|
25
|
+
static get Left(): Vector3;
|
|
26
|
+
/**
|
|
27
|
+
* A unit vector pointing up (0, -1, 0)
|
|
28
|
+
*/
|
|
29
|
+
static get Up(): Vector3;
|
|
30
|
+
/**
|
|
31
|
+
* A unit vector pointing down (0, 1, 0)
|
|
32
|
+
*/
|
|
33
|
+
static get Down(): Vector3;
|
|
34
|
+
/**
|
|
35
|
+
* A unit vector pointing forward/out (0, 0, 1)
|
|
36
|
+
*/
|
|
37
|
+
static get Forward(): Vector3;
|
|
38
|
+
/**
|
|
39
|
+
* A unit vector pointing backward/in (0, 0, -1)
|
|
40
|
+
*/
|
|
41
|
+
static get Back(): Vector3;
|
|
42
|
+
/**
|
|
43
|
+
* Checks if vector is not null, undefined, or if any of its components are NaN or Infinity.
|
|
44
|
+
*/
|
|
45
|
+
static isValid(vec: Vector3): boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Calculates distance between two Vectors
|
|
48
|
+
*/
|
|
49
|
+
static distance(vec1: Vector3, vec2: Vector3): number;
|
|
50
|
+
static min(vec1: Vector3, vec2: Vector3): Vector3;
|
|
51
|
+
static max(vec1: Vector3, vec2: Vector3): Vector3;
|
|
52
|
+
/**
|
|
53
|
+
* Creates a Vector3 from an array [x, y, z]
|
|
54
|
+
*/
|
|
55
|
+
static fromArray(array: number[] | Float32Array, offset?: number): Vector3;
|
|
56
|
+
/**
|
|
57
|
+
* @param x X component of the Vector
|
|
58
|
+
* @param y Y component of the Vector
|
|
59
|
+
* @param z Z component of the Vector
|
|
60
|
+
*/
|
|
61
|
+
constructor(x: number, y: number, z: number);
|
|
62
|
+
protected _x: number;
|
|
63
|
+
get x(): number;
|
|
64
|
+
set x(val: number);
|
|
65
|
+
protected _y: number;
|
|
66
|
+
get y(): number;
|
|
67
|
+
set y(val: number);
|
|
68
|
+
protected _z: number;
|
|
69
|
+
get z(): number;
|
|
70
|
+
set z(val: number);
|
|
71
|
+
/**
|
|
72
|
+
* Sets the x, y, and z components at once, THIS MUTATES the current vector.
|
|
73
|
+
*/
|
|
74
|
+
setTo(x: number, y: number, z: number): void;
|
|
75
|
+
/**
|
|
76
|
+
* Compares this vector against another and tests for equality
|
|
77
|
+
*/
|
|
78
|
+
equals(vector: Vector3, tolerance?: number): boolean;
|
|
79
|
+
/**
|
|
80
|
+
* The distance to another vector. If no other Vector is specified, this will return magnitude.
|
|
81
|
+
*/
|
|
82
|
+
distance(v?: Vector3): number;
|
|
83
|
+
squareDistance(v?: Vector3): number;
|
|
84
|
+
/**
|
|
85
|
+
* Clamps the current vector's magnitude mutating it
|
|
86
|
+
*/
|
|
87
|
+
clampMagnitude(magnitude: number): Vector3;
|
|
88
|
+
/**
|
|
89
|
+
* The magnitude (length) of the Vector
|
|
90
|
+
*/
|
|
91
|
+
get magnitude(): number;
|
|
92
|
+
set magnitude(newMagnitude: number);
|
|
93
|
+
/**
|
|
94
|
+
* Normalizes a non-zero vector to have a magnitude of 1. Zero vectors return a new zero vector.
|
|
95
|
+
*/
|
|
96
|
+
normalize(): Vector3;
|
|
97
|
+
/**
|
|
98
|
+
* Returns the average (midpoint) between the current point and the specified point
|
|
99
|
+
*/
|
|
100
|
+
average(vec: Vector3): Vector3;
|
|
101
|
+
/**
|
|
102
|
+
* Scales a vector by a factor or component-wise vector
|
|
103
|
+
*/
|
|
104
|
+
scale(scale: Vector3, dest?: Vector3): Vector3;
|
|
105
|
+
scale(size: number, dest?: Vector3): Vector3;
|
|
106
|
+
/**
|
|
107
|
+
* Adds one vector to another
|
|
108
|
+
*/
|
|
109
|
+
add(v: Vector3, dest?: Vector3): Vector3;
|
|
110
|
+
/**
|
|
111
|
+
* Subtracts a vector from another
|
|
112
|
+
*/
|
|
113
|
+
sub(v: Vector3, dest?: Vector3): Vector3;
|
|
114
|
+
/**
|
|
115
|
+
* Adds one vector to this one modifying the original
|
|
116
|
+
*/
|
|
117
|
+
addEqual(v: Vector3): Vector3;
|
|
118
|
+
/**
|
|
119
|
+
* Subtracts a vector from this one modifying the original
|
|
120
|
+
*/
|
|
121
|
+
subEqual(v: Vector3): Vector3;
|
|
122
|
+
/**
|
|
123
|
+
* Scales this vector by a factor and modifies the original
|
|
124
|
+
*/
|
|
125
|
+
scaleEqual(size: number): Vector3;
|
|
126
|
+
/**
|
|
127
|
+
* Performs a dot product with another vector
|
|
128
|
+
*/
|
|
129
|
+
dot(v: Vector3): number;
|
|
130
|
+
/**
|
|
131
|
+
* Performs a 3D cross product with another vector
|
|
132
|
+
*/
|
|
133
|
+
cross(v: Vector3, dest?: Vector3): Vector3;
|
|
134
|
+
/**
|
|
135
|
+
* Negate the current vector
|
|
136
|
+
*/
|
|
137
|
+
negate(): Vector3;
|
|
138
|
+
/**
|
|
139
|
+
* Creates new vector that has the same values as the previous.
|
|
140
|
+
*/
|
|
141
|
+
clone(dest?: Vector3): Vector3;
|
|
142
|
+
/**
|
|
143
|
+
* Returns a string representation of the vector.
|
|
144
|
+
*/
|
|
145
|
+
toString(fixed?: number): string;
|
|
146
|
+
/**
|
|
147
|
+
* Linearly interpolates between current vector and target vector.
|
|
148
|
+
*/
|
|
149
|
+
lerp(target: Vector3, t: number): Vector3;
|
|
150
|
+
/**
|
|
151
|
+
* Copies components out into an array or Float32Array
|
|
152
|
+
*/
|
|
153
|
+
toArray(dest?: number[], offset?: number): number[];
|
|
154
|
+
toArray(dest: Float32Array, offset?: number): Float32Array;
|
|
155
|
+
/**
|
|
156
|
+
* Converts to a Float32Array suitable for WebGL uniforms
|
|
157
|
+
*/
|
|
158
|
+
toFloat32Array(): Float32Array;
|
|
159
|
+
}
|
|
160
|
+
/**
|
|
161
|
+
* Shorthand for creating new 3D Vectors
|
|
162
|
+
*/
|
|
163
|
+
export declare function vec3(x: number, y: number, z: number): Vector3;
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import type { Clonable } from '../interfaces/clonable';
|
|
2
|
+
import type { Matrix } from './matrix';
|
|
3
|
+
import { Vector3 } from './vector3';
|
|
4
|
+
/**
|
|
5
|
+
* A 4D vector, often used for homogeneous coordinates in WebGL shaders and transforms.
|
|
6
|
+
*/
|
|
7
|
+
export declare class Vector4 implements Clonable<Vector4> {
|
|
8
|
+
/**
|
|
9
|
+
* Get or set the vector equals epsilon, by default 0.001 meaning vectors within that tolerance will be considered equal.
|
|
10
|
+
*/
|
|
11
|
+
static EQUALS_EPSILON: number;
|
|
12
|
+
/**
|
|
13
|
+
* A (0, 0, 0, 0) vector
|
|
14
|
+
*/
|
|
15
|
+
static get Zero(): Vector4;
|
|
16
|
+
/**
|
|
17
|
+
* A (1, 1, 1, 1) vector
|
|
18
|
+
*/
|
|
19
|
+
static get One(): Vector4;
|
|
20
|
+
/**
|
|
21
|
+
* Creates a homogeneous point vector (w = 1) from a Vector3
|
|
22
|
+
*/
|
|
23
|
+
static fromPoint(v: Vector3): Vector4;
|
|
24
|
+
/**
|
|
25
|
+
* Creates a homogeneous direction vector (w = 0) from a Vector3
|
|
26
|
+
*/
|
|
27
|
+
static fromDirection(v: Vector3): Vector4;
|
|
28
|
+
/**
|
|
29
|
+
* Checks if vector is not null, undefined, or if any of its components are NaN or Infinity.
|
|
30
|
+
*/
|
|
31
|
+
static isValid(vec: Vector4): boolean;
|
|
32
|
+
/**
|
|
33
|
+
* Calculates distance between two Vectors
|
|
34
|
+
*/
|
|
35
|
+
static distance(vec1: Vector4, vec2: Vector4): number;
|
|
36
|
+
static min(vec1: Vector4, vec2: Vector4): Vector4;
|
|
37
|
+
static max(vec1: Vector4, vec2: Vector4): Vector4;
|
|
38
|
+
/**
|
|
39
|
+
* Creates a Vector4 from an array [x, y, z, w]
|
|
40
|
+
*/
|
|
41
|
+
static fromArray(array: number[] | Float32Array, offset?: number): Vector4;
|
|
42
|
+
/**
|
|
43
|
+
* @param x X component
|
|
44
|
+
* @param y Y component
|
|
45
|
+
* @param z Z component
|
|
46
|
+
* @param w W component
|
|
47
|
+
*/
|
|
48
|
+
constructor(x: number, y: number, z: number, w: number);
|
|
49
|
+
protected _x: number;
|
|
50
|
+
get x(): number;
|
|
51
|
+
set x(val: number);
|
|
52
|
+
protected _y: number;
|
|
53
|
+
get y(): number;
|
|
54
|
+
set y(val: number);
|
|
55
|
+
protected _z: number;
|
|
56
|
+
get z(): number;
|
|
57
|
+
set z(val: number);
|
|
58
|
+
protected _w: number;
|
|
59
|
+
get w(): number;
|
|
60
|
+
set w(val: number);
|
|
61
|
+
/**
|
|
62
|
+
* Sets all 4 components at once, THIS MUTATES the current vector.
|
|
63
|
+
*/
|
|
64
|
+
setTo(x: number, y: number, z: number, w: number): void;
|
|
65
|
+
/**
|
|
66
|
+
* Compares this vector against another and tests for equality
|
|
67
|
+
*/
|
|
68
|
+
equals(vector: Vector4, tolerance?: number): boolean;
|
|
69
|
+
/**
|
|
70
|
+
* Distance to another vector or magnitude if omitted
|
|
71
|
+
*/
|
|
72
|
+
distance(v?: Vector4): number;
|
|
73
|
+
squareDistance(v?: Vector4): number;
|
|
74
|
+
/**
|
|
75
|
+
* Clamps the current vector's magnitude mutating it
|
|
76
|
+
*/
|
|
77
|
+
clampMagnitude(magnitude: number): Vector4;
|
|
78
|
+
/**
|
|
79
|
+
* Magnitude (length) of the Vector
|
|
80
|
+
*/
|
|
81
|
+
get magnitude(): number;
|
|
82
|
+
set magnitude(newMagnitude: number);
|
|
83
|
+
/**
|
|
84
|
+
* Normalizes a non-zero vector. Zero vectors return a new zero vector.
|
|
85
|
+
*/
|
|
86
|
+
normalize(): Vector4;
|
|
87
|
+
/**
|
|
88
|
+
* Returns midpoint between this and target point
|
|
89
|
+
*/
|
|
90
|
+
average(vec: Vector4): Vector4;
|
|
91
|
+
/**
|
|
92
|
+
* Scales vector component-wise or by scalar
|
|
93
|
+
*/
|
|
94
|
+
scale(scale: Vector4, dest?: Vector4): Vector4;
|
|
95
|
+
scale(size: number, dest?: Vector4): Vector4;
|
|
96
|
+
/**
|
|
97
|
+
* Adds one vector to another
|
|
98
|
+
*/
|
|
99
|
+
add(v: Vector4, dest?: Vector4): Vector4;
|
|
100
|
+
/**
|
|
101
|
+
* Subtracts a vector from another
|
|
102
|
+
*/
|
|
103
|
+
sub(v: Vector4, dest?: Vector4): Vector4;
|
|
104
|
+
/**
|
|
105
|
+
* Adds one vector to this one modifying the original
|
|
106
|
+
*/
|
|
107
|
+
addEqual(v: Vector4): Vector4;
|
|
108
|
+
/**
|
|
109
|
+
* Subtracts a vector from this one modifying the original
|
|
110
|
+
*/
|
|
111
|
+
subEqual(v: Vector4): Vector4;
|
|
112
|
+
/**
|
|
113
|
+
* Scales this vector by a factor and modifies the original
|
|
114
|
+
*/
|
|
115
|
+
scaleEqual(size: number): Vector4;
|
|
116
|
+
/**
|
|
117
|
+
* Performs a dot product with another vector
|
|
118
|
+
*/
|
|
119
|
+
dot(v: Vector4): number;
|
|
120
|
+
/**
|
|
121
|
+
* Negates current vector
|
|
122
|
+
*/
|
|
123
|
+
negate(): Vector4;
|
|
124
|
+
/**
|
|
125
|
+
* Transforms this vector using a 4x4 Matrix
|
|
126
|
+
*/
|
|
127
|
+
transform(matrix: Matrix, dest?: Vector4): Vector4;
|
|
128
|
+
/**
|
|
129
|
+
* Projects back down to 3D via perspective divide (x/w, y/w, z/w)
|
|
130
|
+
*/
|
|
131
|
+
toVector3(): Vector3;
|
|
132
|
+
/**
|
|
133
|
+
* Creates new vector that has the same values as the previous.
|
|
134
|
+
*/
|
|
135
|
+
clone(dest?: Vector4): Vector4;
|
|
136
|
+
/**
|
|
137
|
+
* Returns a string representation of the vector.
|
|
138
|
+
*/
|
|
139
|
+
toString(fixed?: number): string;
|
|
140
|
+
/**
|
|
141
|
+
* Linearly interpolates between current vector and target vector.
|
|
142
|
+
*/
|
|
143
|
+
lerp(target: Vector4, t: number): Vector4;
|
|
144
|
+
/**
|
|
145
|
+
* Copies components out into an array or Float32Array
|
|
146
|
+
*/
|
|
147
|
+
toArray(dest?: number[], offset?: number): number[];
|
|
148
|
+
toArray(dest: Float32Array, offset?: number): Float32Array;
|
|
149
|
+
/**
|
|
150
|
+
* Converts to a Float32Array suitable for WebGL uniforms
|
|
151
|
+
*/
|
|
152
|
+
toFloat32Array(): Float32Array;
|
|
153
|
+
}
|
|
154
|
+
/**
|
|
155
|
+
* Shorthand for creating new 4D Vectors
|
|
156
|
+
*/
|
|
157
|
+
export declare function vec4(x: number, y: number, z: number, w: number): Vector4;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { Engine } from '../engine';
|
|
2
2
|
import { Actor } from '../actor';
|
|
3
3
|
import { EmitterType } from './emitter-type';
|
|
4
|
-
import type {
|
|
4
|
+
import type { ParticleEmitterOptions } from './particles';
|
|
5
5
|
import type { GpuParticleConfig } from './gpu-particle-renderer';
|
|
6
6
|
import { GpuParticleRenderer } from './gpu-particle-renderer';
|
|
7
7
|
import { GraphicsComponent } from '../graphics/graphics-component';
|
|
@@ -22,7 +22,7 @@ export declare class GpuParticleEmitter extends Actor {
|
|
|
22
22
|
set pos(pos: Vector);
|
|
23
23
|
get z(): number;
|
|
24
24
|
set z(z: number);
|
|
25
|
-
constructor(config:
|
|
25
|
+
constructor(config: ParticleEmitterOptions & {
|
|
26
26
|
maxParticles?: number;
|
|
27
27
|
particle?: GpuParticleConfig;
|
|
28
28
|
});
|
|
@@ -2,7 +2,7 @@ import type { Engine } from '../engine';
|
|
|
2
2
|
import { Actor } from '../actor';
|
|
3
3
|
import { Random } from '../math/random';
|
|
4
4
|
import { EmitterType } from './emitter-type';
|
|
5
|
-
import type {
|
|
5
|
+
import type { ParticleConfig, ParticleEmitterOptions } from './particles';
|
|
6
6
|
import { Particle } from './particles';
|
|
7
7
|
/**
|
|
8
8
|
* Using a particle emitter is a great way to create interesting effects
|
|
@@ -43,7 +43,7 @@ export declare class ParticleEmitter extends Actor {
|
|
|
43
43
|
/**
|
|
44
44
|
* @param config particle emitter options bag
|
|
45
45
|
*/
|
|
46
|
-
constructor(config:
|
|
46
|
+
constructor(config: ParticleEmitterOptions);
|
|
47
47
|
removeParticle(particle: Particle): void;
|
|
48
48
|
private _activeParticles;
|
|
49
49
|
/**
|
|
@@ -41,6 +41,7 @@ export declare class Particle extends Entity {
|
|
|
41
41
|
name: string;
|
|
42
42
|
constructor(options: ParticleConfig);
|
|
43
43
|
private _emitter?;
|
|
44
|
+
private _isDead;
|
|
44
45
|
registerEmitter(emitter: ParticleEmitter): void;
|
|
45
46
|
configure(options: ParticleConfig): void;
|
|
46
47
|
kill(): void;
|
|
@@ -166,7 +167,7 @@ export declare enum ParticleTransform {
|
|
|
166
167
|
*/
|
|
167
168
|
Local = "local"
|
|
168
169
|
}
|
|
169
|
-
export interface
|
|
170
|
+
export interface ParticleEmitterOptions {
|
|
170
171
|
particle?: ParticleConfig;
|
|
171
172
|
x?: number;
|
|
172
173
|
y?: number;
|
|
@@ -194,3 +195,7 @@ export interface ParticleEmitterArgs {
|
|
|
194
195
|
radius?: number;
|
|
195
196
|
random?: Random;
|
|
196
197
|
}
|
|
198
|
+
/**
|
|
199
|
+
* @deprecated use ParticleEmitterOptions
|
|
200
|
+
*/
|
|
201
|
+
export type ParticleEmitterArgs = ParticleEmitterOptions;
|