@woosh/meep-engine 2.120.5 → 2.121.1
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 +1 -1
- package/editor/view/node-graph/NodeGraphEditorView.d.ts.map +1 -1
- package/editor/view/node-graph/NodeGraphView.d.ts.map +1 -1
- package/editor/view/node-graph/NodeView.d.ts.map +1 -1
- package/editor/view/node-graph/PortView.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/core/codegen/LineBuilder.d.ts +2 -2
- package/src/core/codegen/LineBuilder.d.ts.map +1 -1
- package/src/core/codegen/LineBuilder.js +14 -9
- package/src/core/collection/array/array_set_diff_sorting.d.ts +1 -1
- package/src/core/collection/array/array_set_diff_sorting.js +1 -1
- package/src/core/collection/map/HashMap.d.ts.map +1 -1
- package/src/core/collection/map/HashMap.js +29 -2
- package/src/core/color/oklab/find_cusp.d.ts.map +1 -1
- package/src/core/color/oklab/find_cusp.js +4 -1
- package/src/core/color/oklab/oklab_to_linear_srgb.d.ts.map +1 -1
- package/src/core/color/oklab/oklab_to_linear_srgb.js +1 -0
- package/src/core/color/operations/color_lighten.d.ts +1 -1
- package/src/core/color/operations/color_lighten.d.ts.map +1 -1
- package/src/core/color/operations/color_lighten.js +6 -1
- package/src/core/geom/2d/aabb/aabb2_intersects_point.d.ts +12 -0
- package/src/core/geom/2d/aabb/aabb2_intersects_point.d.ts.map +1 -0
- package/src/core/geom/2d/aabb/aabb2_intersects_point.js +17 -0
- package/src/core/geom/2d/quad-tree/QuadTreeNode.d.ts +17 -6
- package/src/core/geom/2d/quad-tree/QuadTreeNode.d.ts.map +1 -1
- package/src/core/geom/2d/quad-tree/QuadTreeNode.js +59 -98
- package/src/core/geom/2d/quad-tree/qt_collect_by_box.d.ts +14 -0
- package/src/core/geom/2d/quad-tree/qt_collect_by_box.d.ts.map +1 -0
- package/src/core/geom/2d/quad-tree/qt_collect_by_box.js +90 -0
- package/src/core/geom/2d/quad-tree/qt_collect_by_point.d.ts +11 -0
- package/src/core/geom/2d/quad-tree/qt_collect_by_point.d.ts.map +1 -0
- package/src/core/geom/2d/quad-tree/qt_collect_by_point.js +85 -0
- package/src/core/geom/3d/ray/ray3_distance_to_point.d.ts +14 -1
- package/src/core/geom/3d/ray/ray3_distance_to_point.d.ts.map +1 -1
- package/src/core/geom/3d/ray/ray3_distance_to_point.js +18 -1
- package/src/core/geom/3d/shape/UnionShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/UnionShape3D.js +4 -0
- package/src/core/geom/3d/shape/UnitCubeShape3D.d.ts.map +1 -1
- package/src/core/geom/3d/shape/UnitCubeShape3D.js +4 -0
- package/src/core/geom/ConicRay.d.ts +5 -1
- package/src/core/geom/ConicRay.d.ts.map +1 -1
- package/src/core/geom/ConicRay.js +5 -1
- package/src/core/geom/Vector1.d.ts.map +1 -1
- package/src/core/geom/Vector1.js +15 -2
- package/src/core/geom/Vector3.d.ts.map +1 -1
- package/src/core/geom/Vector3.js +10 -2
- package/src/core/geom/packing/max-rect/MaxRectanglesPacker.d.ts.map +1 -1
- package/src/core/geom/packing/max-rect/MaxRectanglesPacker.js +3 -0
- package/src/core/geom/packing/max-rect/cutArea.d.ts.map +1 -1
- package/src/core/geom/packing/max-rect/cutArea.js +8 -1
- package/src/core/geom/packing/max-rect/findBestContainer.d.ts +4 -4
- package/src/core/geom/packing/max-rect/findBestContainer.d.ts.map +1 -1
- package/src/core/geom/packing/max-rect/findBestContainer.js +30 -8
- package/src/core/geom/packing/max-rect/packOneBox.d.ts.map +1 -1
- package/src/core/geom/packing/max-rect/packOneBox.js +7 -2
- package/src/core/geom/packing/max-rect/removeRedundantBoxesArray.d.ts.map +1 -1
- package/src/core/geom/packing/max-rect/removeRedundantBoxesArray.js +13 -7
- package/src/core/geom/packing/miniball/Miniball.d.ts.map +1 -1
- package/src/core/geom/packing/miniball/Miniball.js +27 -1
- package/src/core/geom/packing/miniball/PointSet.d.ts.map +1 -1
- package/src/core/geom/packing/miniball/PointSet.js +25 -4
- package/src/core/geom/packing/miniball/Quality.js +1 -3
- package/src/core/process/action/AsynchronousDelayAction.js +1 -1
- package/src/engine/EntityCreator.js +1 -1
- package/src/engine/achievements/AchievementManager.js +1 -1
- package/src/engine/animation/AnimationUtils.js +1 -1
- package/src/engine/animation/async/prototypeAsyncAnimation.js +2 -2
- package/src/engine/animation/behavior/animateProperty.js +1 -1
- package/src/engine/animation/playTrackRealTime.js +1 -1
- package/src/engine/ecs/Entity.d.ts.map +1 -1
- package/src/engine/ecs/Entity.js +12 -7
- package/src/engine/ecs/EntityComponentDataset.d.ts.map +1 -1
- package/src/engine/ecs/EntityComponentDataset.js +14 -7
- package/src/engine/ecs/EntityReference.d.ts +4 -4
- package/src/engine/ecs/EntityReference.js +4 -4
- package/src/engine/ecs/dynamic_actions/DynamicActorSystem.js +1 -1
- package/src/engine/ecs/speaker/VoiceSystem.d.ts +8 -2
- package/src/engine/ecs/speaker/VoiceSystem.d.ts.map +1 -1
- package/src/engine/ecs/speaker/VoiceSystem.js +1 -1
- package/src/engine/ecs/util/hideEntityGracefully.js +3 -3
- package/src/engine/graphics/ecs/camera/filter/setup_filtered_camera_controller.d.ts.map +1 -1
- package/src/engine/graphics/ecs/camera/filter/setup_filtered_camera_controller.js +6 -6
- package/src/engine/graphics/ecs/decal/v2/prototypeDecalSystem.js +1 -1
- package/src/engine/graphics/ecs/mesh-v2/aggregate/prototypeSGMesh.js +1 -1
- package/src/engine/graphics/ecs/mesh-v2/sample/prototypeShadedGeometry.js +2 -2
- package/src/engine/graphics/ecs/mesh-v2/sample/prototype_sg_raycast.js +1 -1
- package/src/engine/graphics/ecs/path/tube/prototypeAnimatedPathMask.js +1 -1
- package/src/engine/graphics/ecs/trail2d/prototypeTrail2D.js +1 -1
- package/src/engine/graphics/impostors/octahedral/prototypeBaker.js +1 -1
- package/src/engine/graphics/particles/particular/engine/utils/volume/prototypeParticleVolume.js +2 -2
- package/src/engine/graphics/render/forward_plus/plugin/ptototypeFPPlugin.js +4 -4
- package/src/engine/graphics/sh3/path_tracer/make_one_vector3.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/make_sky_hosek.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/make_sky_rtiw.d.ts.map +1 -1
- package/src/engine/graphics/sh3/path_tracer/make_zero_vector3.d.ts.map +1 -1
- package/src/engine/input/devices/PointerDevice.js +1 -1
- package/src/engine/intelligence/behavior/ecs/BehaviorComponent.d.ts +79 -3
- package/src/engine/intelligence/behavior/ecs/BehaviorComponent.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/BehaviorComponent.js +24 -8
- package/src/engine/intelligence/behavior/ecs/BehaviorComponentSerializationAdapter.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/BehaviorComponentSerializationAdapter.js +2 -2
- package/src/engine/intelligence/behavior/ecs/BehaviorSystem.d.ts +33 -7
- package/src/engine/intelligence/behavior/primitive/ActionBehavior.d.ts +3 -2
- package/src/engine/intelligence/behavior/primitive/ActionBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/primitive/ActionBehavior.js +7 -5
- package/src/engine/intelligence/behavior/primitive/SucceedingBehavior.d.ts +10 -9
- package/src/engine/intelligence/behavior/primitive/SucceedingBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/primitive/SucceedingBehavior.js +19 -20
- package/src/engine/physics/fluid/prototype.js +1 -1
- package/src/engine/physics/inverse_kinematics/fabrik/prototype.js +1 -1
- package/src/view/View.d.ts.map +1 -1
- package/src/view/View.js +14 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ActionBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/primitive/ActionBehavior.js"],"names":[],"mappings":"AAIA
|
|
1
|
+
{"version":3,"file":"ActionBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/primitive/ActionBehavior.js"],"names":[],"mappings":"AAIA;;;;GAIG;AACH,4BAHa,GAAG;IAIZ;;;;OAIG;IACH,mCAFW,GAAC,EAeX;IARG,cAAsB;IAIlB,eAAqB;IAM7B,uEAcC;CACJ;yBA5CwB,gBAAgB;+BACV,sBAAsB"}
|
|
@@ -1,25 +1,27 @@
|
|
|
1
|
+
import { assert } from "../../../../core/assert.js";
|
|
1
2
|
import { Behavior } from "../Behavior.js";
|
|
2
3
|
import { BehaviorStatus } from "../BehaviorStatus.js";
|
|
3
|
-
import { assert } from "../../../../core/assert.js";
|
|
4
4
|
|
|
5
5
|
/**
|
|
6
|
+
* Single-shot behavior that executes the given function and resolves {@link BehaviorStatus.SUCCESS}
|
|
6
7
|
* @template CTX
|
|
7
8
|
* @extends {Behavior<CTX>}
|
|
8
9
|
*/
|
|
9
10
|
export class ActionBehavior extends Behavior {
|
|
10
11
|
/**
|
|
11
12
|
*
|
|
12
|
-
* @param {function(timeDelta:number, context:CTX)}
|
|
13
|
+
* @param {function(timeDelta:number, context:CTX)} action
|
|
13
14
|
* @param {*} [thisArg] defaults to behavior itself if not specified
|
|
14
15
|
*/
|
|
15
|
-
constructor(
|
|
16
|
+
constructor(action, thisArg) {
|
|
16
17
|
super();
|
|
17
18
|
|
|
18
|
-
assert.
|
|
19
|
+
assert.isFunction(action, "action");
|
|
19
20
|
|
|
20
|
-
this.__action =
|
|
21
|
+
this.__action = action;
|
|
21
22
|
|
|
22
23
|
if (thisArg === undefined) {
|
|
24
|
+
// if thisArg is not supplied, will bind to behavior instead
|
|
23
25
|
this.__context = this;
|
|
24
26
|
} else {
|
|
25
27
|
this.__context = thisArg;
|
|
@@ -1,21 +1,22 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Behavior that always succeeds
|
|
2
|
+
* Behavior that always succeeds.
|
|
3
|
+
* Useful when you need to specify a behavior to fulfill the API, but you don't actually want to perform any action.
|
|
4
|
+
* You usually want to use {@link INSTANCE} singleton
|
|
3
5
|
*/
|
|
4
6
|
export class SucceedingBehavior extends Behavior<any> {
|
|
5
7
|
/**
|
|
6
8
|
* @deprecated use static INSTANCE instead
|
|
7
|
-
* @param {number} delayTicks
|
|
8
9
|
* @return {SucceedingBehavior}
|
|
9
10
|
*/
|
|
10
|
-
static from(
|
|
11
|
-
static INSTANCE: SucceedingBehavior;
|
|
12
|
-
constructor(delayTicks?: number);
|
|
11
|
+
static from(): SucceedingBehavior;
|
|
13
12
|
/**
|
|
14
|
-
* @
|
|
15
|
-
* @type {
|
|
13
|
+
* @readonly
|
|
14
|
+
* @type {SucceedingBehavior}
|
|
16
15
|
*/
|
|
17
|
-
|
|
18
|
-
|
|
16
|
+
static readonly INSTANCE: SucceedingBehavior;
|
|
17
|
+
constructor();
|
|
18
|
+
initialize(context: any): void;
|
|
19
|
+
tick(timeDelta: any): BehaviorStatus;
|
|
19
20
|
}
|
|
20
21
|
export namespace SucceedingBehavior {
|
|
21
22
|
let typeName: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SucceedingBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/primitive/SucceedingBehavior.js"],"names":[],"mappings":"AAGA
|
|
1
|
+
{"version":3,"file":"SucceedingBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/primitive/SucceedingBehavior.js"],"names":[],"mappings":"AAGA;;;;GAIG;AACH;IAcI;;;OAGG;IACH,eAFY,kBAAkB,CAI7B;IAMD;;;OAGG;IACH,0BAFU,kBAAkB,CAE8B;IA5B1D,cAEC;IAED,+BAEC;IAcD,qCAEC;CAOJ;;;;yBAvCwB,gBAAgB;+BACV,sBAAsB"}
|
|
@@ -2,42 +2,41 @@ import { Behavior } from "../Behavior.js";
|
|
|
2
2
|
import { BehaviorStatus } from "../BehaviorStatus.js";
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
|
-
* Behavior that always succeeds
|
|
5
|
+
* Behavior that always succeeds.
|
|
6
|
+
* Useful when you need to specify a behavior to fulfill the API, but you don't actually want to perform any action.
|
|
7
|
+
* You usually want to use {@link INSTANCE} singleton
|
|
6
8
|
*/
|
|
7
9
|
export class SucceedingBehavior extends Behavior {
|
|
8
|
-
|
|
10
|
+
|
|
11
|
+
constructor() {
|
|
9
12
|
super();
|
|
13
|
+
}
|
|
10
14
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
15
|
+
initialize(context) {
|
|
16
|
+
this.onInitialized.send2(this, context);
|
|
17
|
+
}
|
|
14
18
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
* @type {number}
|
|
18
|
-
*/
|
|
19
|
-
this.delayTicks = delayTicks;
|
|
19
|
+
finalize() {
|
|
20
|
+
this.onFinalized.send1(this);
|
|
20
21
|
}
|
|
21
22
|
|
|
22
23
|
/**
|
|
23
24
|
* @deprecated use static INSTANCE instead
|
|
24
|
-
* @param {number} delayTicks
|
|
25
25
|
* @return {SucceedingBehavior}
|
|
26
26
|
*/
|
|
27
|
-
static from(
|
|
28
|
-
|
|
27
|
+
static from() {
|
|
28
|
+
throw new Error(`Deprecated, use INSTANCE instead`)
|
|
29
29
|
}
|
|
30
30
|
|
|
31
31
|
tick(timeDelta) {
|
|
32
|
-
|
|
33
|
-
return BehaviorStatus.Succeeded;
|
|
34
|
-
} else {
|
|
35
|
-
this.delayTicks--;
|
|
36
|
-
return BehaviorStatus.Running;
|
|
37
|
-
}
|
|
32
|
+
return BehaviorStatus.Succeeded;
|
|
38
33
|
}
|
|
39
34
|
|
|
40
|
-
|
|
35
|
+
/**
|
|
36
|
+
* @readonly
|
|
37
|
+
* @type {SucceedingBehavior}
|
|
38
|
+
*/
|
|
39
|
+
static INSTANCE = Object.freeze(new SucceedingBehavior());
|
|
41
40
|
}
|
|
42
41
|
|
|
43
42
|
SucceedingBehavior.typeName = "SucceedingBehavior";
|
|
@@ -70,7 +70,7 @@ EngineHarness.bootstrap({
|
|
|
70
70
|
const lengths = chain.map(x => 0.1);
|
|
71
71
|
|
|
72
72
|
new Entity()
|
|
73
|
-
.add(BehaviorComponent.
|
|
73
|
+
.add(BehaviorComponent.loop(timeDelta => {
|
|
74
74
|
const last = joints[joints.length - 1];
|
|
75
75
|
const target = last.position.clone();
|
|
76
76
|
|
package/src/view/View.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"View.d.ts","sourceRoot":"","sources":["../../../src/view/View.js"],"names":[],"mappings":"wBAsBU,MAAM;;;;;;;AAchB
|
|
1
|
+
{"version":3,"file":"View.d.ts","sourceRoot":"","sources":["../../../src/view/View.js"],"names":[],"mappings":"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"}
|
package/src/view/View.js
CHANGED
|
@@ -35,7 +35,9 @@ export const ViewFlags = {
|
|
|
35
35
|
const INITIAL_FLAGS = ViewFlags.Visible;
|
|
36
36
|
|
|
37
37
|
/**
|
|
38
|
-
*
|
|
38
|
+
* Building block for UI elements.
|
|
39
|
+
* Implements a DOM model, built around HTML elements (svg and XML is allowed as well)
|
|
40
|
+
* Base View class.
|
|
39
41
|
* @class
|
|
40
42
|
*/
|
|
41
43
|
class View {
|
|
@@ -43,6 +45,7 @@ class View {
|
|
|
43
45
|
/**
|
|
44
46
|
* Signal bindings, these will be linked and unlinked along with the view
|
|
45
47
|
* @private
|
|
48
|
+
* @readonly
|
|
46
49
|
* @type {SignalBinding[]}
|
|
47
50
|
*/
|
|
48
51
|
bindings = [];
|
|
@@ -84,14 +87,24 @@ class View {
|
|
|
84
87
|
*/
|
|
85
88
|
transformOrigin = new Vector2(0.5, 0.5);
|
|
86
89
|
|
|
90
|
+
/**
|
|
91
|
+
* @readonly
|
|
92
|
+
*/
|
|
87
93
|
on = {
|
|
94
|
+
/**
|
|
95
|
+
* @readonly
|
|
96
|
+
*/
|
|
88
97
|
linked: new Signal(),
|
|
98
|
+
/**
|
|
99
|
+
* @readonly
|
|
100
|
+
*/
|
|
89
101
|
unlinked: new Signal()
|
|
90
102
|
};
|
|
91
103
|
|
|
92
104
|
/**
|
|
93
105
|
*
|
|
94
106
|
* @type {View[]}
|
|
107
|
+
* @readonly
|
|
95
108
|
*/
|
|
96
109
|
children = [];
|
|
97
110
|
|