@woosh/meep-engine 2.119.17 → 2.119.19
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 +2 -2
- package/build/bundle-worker-image-decoder.js +1 -1
- package/package.json +1 -1
- package/src/core/binary/BinaryBuffer.d.ts +2 -6
- package/src/core/binary/BinaryBuffer.d.ts.map +1 -1
- package/src/core/binary/BinaryBuffer.js +7 -8
- package/src/core/binary/BitSet.d.ts.map +1 -1
- package/src/core/binary/BitSet.js +2 -3
- package/src/core/bvh2/bvh3/BVH.d.ts.map +1 -1
- package/src/core/bvh2/bvh3/BVH.js +8 -0
- package/src/core/cache/FrequencySketch.js +1 -1
- package/src/core/codegen/LineBuilder.d.ts +7 -1
- package/src/core/codegen/LineBuilder.d.ts.map +1 -1
- package/src/core/codegen/LineBuilder.js +10 -1
- package/src/core/geom/2d/convex-hull/fixed_convex_hull_relaxation.d.ts.map +1 -1
- package/src/core/geom/2d/convex-hull/fixed_convex_hull_relaxation.js +1 -0
- package/src/core/geom/3d/Ray3.d.ts +12 -0
- package/src/core/geom/3d/Ray3.d.ts.map +1 -1
- package/src/core/geom/3d/Ray3.js +32 -0
- package/src/core/geom/3d/aabb/AABB3.d.ts.map +1 -1
- package/src/core/geom/3d/aabb/AABB3.js +17 -7
- package/src/core/geom/3d/sphere/harmonics/sh3_basis_at.d.ts +2 -2
- package/src/core/geom/3d/sphere/harmonics/sh3_basis_at.d.ts.map +1 -1
- package/src/core/geom/3d/sphere/harmonics/sh3_basis_at.js +11 -11
- package/src/core/geom/3d/sphere/harmonics/sh3_dering_optimize_positive.d.ts.map +1 -1
- package/src/core/geom/3d/sphere/harmonics/sh3_dering_optimize_positive.js +2 -1
- package/src/core/geom/3d/tetrahedra/bvh/tetrahedral_mesh_to_bvh.d.ts +8 -0
- package/src/core/geom/3d/tetrahedra/bvh/tetrahedral_mesh_to_bvh.d.ts.map +1 -0
- package/src/core/geom/3d/tetrahedra/bvh/tetrahedral_mesh_to_bvh.js +36 -0
- package/src/core/geom/3d/tetrahedra/tetrahedral_mesh_compute_tet_aabb3.d.ts +10 -0
- package/src/core/geom/3d/tetrahedra/tetrahedral_mesh_compute_tet_aabb3.d.ts.map +1 -0
- package/src/core/geom/3d/tetrahedra/tetrahedral_mesh_compute_tet_aabb3.js +49 -0
- package/src/core/geom/random/randomPointInCircle.d.ts +3 -2
- package/src/core/geom/random/randomPointInCircle.d.ts.map +1 -1
- package/src/core/geom/random/randomPointInCircle.js +6 -3
- package/src/core/geom/vec2/v2_magnitude.d.ts +3 -5
- package/src/core/geom/vec2/v2_magnitude.d.ts.map +1 -1
- package/src/core/geom/vec2/v2_magnitude.js +3 -8
- package/src/core/graph/v2/NodeContainer.d.ts.map +1 -1
- package/src/core/graph/v2/NodeContainer.js +3 -9
- package/src/core/lang/reactive/AbstractCachingParser.d.ts +8 -5
- package/src/core/lang/reactive/AbstractCachingParser.d.ts.map +1 -1
- package/src/core/lang/reactive/AbstractCachingParser.js +19 -24
- package/src/core/lang/reactive/pegjs/ReactivePegParser.d.ts +2 -1
- package/src/core/lang/reactive/pegjs/ReactivePegParser.d.ts.map +1 -1
- package/src/core/localization/Localization.js +1 -1
- package/src/engine/achievements/AchievementManager.d.ts +1 -1
- package/src/engine/achievements/AchievementManager.d.ts.map +1 -1
- package/src/engine/achievements/AchievementManager.js +11 -28
- package/src/engine/ecs/EntityComponentDataset.d.ts.map +1 -1
- package/src/engine/ecs/EntityComponentDataset.js +5 -2
- package/src/engine/ecs/EntityReference.d.ts +6 -0
- package/src/engine/ecs/EntityReference.d.ts.map +1 -1
- package/src/engine/ecs/EntityReference.js +16 -1
- package/src/engine/ecs/storage/BinaryBufferDeSerializer.js +1 -1
- package/src/engine/graphics/sh3/prototypeSH3Probe.js +1 -1
- package/src/engine/graphics/texture/virtual/VirtualTextureTileLoader.d.ts +10 -0
- package/src/engine/graphics/texture/virtual/VirtualTextureTileLoader.d.ts.map +1 -1
- package/src/engine/graphics/texture/virtual/VirtualTextureTileLoader.js +39 -19
- package/src/engine/graphics/texture/virtual/VirtualTextureUsage.d.ts +8 -0
- package/src/engine/graphics/texture/virtual/VirtualTextureUsage.d.ts.map +1 -1
- package/src/engine/graphics/texture/virtual/VirtualTextureUsage.js +8 -1
- package/src/engine/graphics/texture/virtual/VirtualTextureUsageUpdater.d.ts.map +1 -1
- package/src/engine/graphics/texture/virtual/VirtualTextureUsageUpdater.js +2 -1
- package/src/engine/intelligence/behavior/composite/SequenceBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/composite/SequenceBehavior.js +17 -5
- package/src/engine/intelligence/behavior/ecs/DieBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/DieBehavior.js +2 -7
- package/src/engine/intelligence/behavior/ecs/SendEventBehavior.d.ts +4 -0
- package/src/engine/intelligence/behavior/ecs/SendEventBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/SendEventBehavior.js +8 -7
- package/src/engine/intelligence/behavior/ecs/WaitForEventBehavior.d.ts.map +1 -1
- package/src/engine/intelligence/behavior/ecs/WaitForEventBehavior.js +21 -22
- package/src/core/bvh2/bvh3/query/cache/BVH_QUERY_CACHE_SIZE.d.ts +0 -2
- package/src/core/bvh2/bvh3/query/cache/BVH_QUERY_CACHE_SIZE.d.ts.map +0 -1
- package/src/core/bvh2/bvh3/query/cache/BVH_QUERY_CACHE_SIZE.js +0 -1
- package/src/core/bvh2/bvh3/query/cache/bvh_query_cache_hash_v3.d.ts +0 -9
- package/src/core/bvh2/bvh3/query/cache/bvh_query_cache_hash_v3.d.ts.map +0 -1
- package/src/core/bvh2/bvh3/query/cache/bvh_query_cache_hash_v3.js +0 -31
- package/src/core/geom/2d/lt-grid/LooseTightGrid.d.ts +0 -55
- package/src/core/geom/2d/lt-grid/LooseTightGrid.d.ts.map +0 -1
- package/src/core/geom/2d/lt-grid/LooseTightGrid.js +0 -221
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityComponentDataset.d.ts","sourceRoot":"","sources":["../../../../src/engine/ecs/EntityComponentDataset.js"],"names":[],"mappings":"AA2GA;;;;;GAKG;AACH;IAEI;;;OAGG;IACH,wBAA+B;IAE/B;;;;;OAKG;IACH,yBAAsC;IAEtC;;;OAGG;IACH,2BAAkC;IAElC;;;OAGG;IACH,yBAAsB;IAEtB;;;;OAIG;IACH,4BAAgC;IAEhC;;;;OAIG;IACH,2BAAuB;IAEvB;;;OAGG;IACH,mBAAgB;IAEhB;;;;OAIG;IACH,oBAAgB;IAEhB;;;;;;;OAOG;IACH,mBAAe;IAEf;;;OAGG;IACH,0BAFU,OAAO,MAAM,CAAC,CAEO;IAE/B;;;OAGG;IACH,0BAFU,MAAM,CAEe;IAG/B;;;;OAIG;IACH,+BAA4B;IAE5B;;;;OAIG;IACH,kCAA+B;IAE/B;;;OAGG;IACH,kBAAe;IAGf;;;;;;OAMG;IACH,kEAkCC;IAED;;;;;OAKG;IACH,kDAHW,OAAO,GACL,OAAO,CAqDnB;IAED;;;;;OAKG;IACH,qDAHW,OAAO,GACL,OAAO,CAuDnB;IAED;;;OAGG;IACH,kBAFa,MAAM,CAIlB;IAED;;;OAGG;IACH,yBAFa,MAAM,CAIlB;IAED;;;;;OAKG;IACH,sBAJW,MAAM,kCAoChB;IAED;;;;OAIG;IACH,8BAFW,MAAM,SAkBhB;IAED;;;;OAIG;IACH,yBAHW,OAAO,QAwLjB;IAED;;;;OAIG;IACH,mCAHW,OAAO,GACL,OAAO,CAYnB;IAED;;;OAGG;IACH,gCAHW,gBAAc,GACb,OAAO,CAMlB;IAED;;;OAGG;IACH,uBAFa,OAAO,CAInB;IAED;;;;OAIG;IACH,kCAHW,OAAO,GACL,OAAO,CAgBnB;IAED;;;;OAIG;IACH,4BAHW,gBAAc,GACZ,OAAO,CAanB;IAED;;;;OAIG;IACH,sCAFa,OAAO,CAiBnB;IAED;;;OAGG;IACH,iCAFW,MAAM,QAgBhB;IAED;;;;OAIG;IACH,+BAHW,MAAM,GACJ,MAAM,CAIlB;IAED;;;OAGG;IACH,2BAiBC;IAED;;;OAGG;IACH,gBAFa,MAAM,CAQlB;IAED;;;;OAIG;IACH,gCAHW,MAAM,QAShB;IAED;;;;OAIG;IACH,0BAHW,MAAM,GACJ,OAAO,CAMnB;IAED;;;;OAIG;IACH,qCAHW,MAAM,GACJ,OAAO,CAMnB;IAED
|
|
1
|
+
{"version":3,"file":"EntityComponentDataset.d.ts","sourceRoot":"","sources":["../../../../src/engine/ecs/EntityComponentDataset.js"],"names":[],"mappings":"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"}
|
|
@@ -487,7 +487,7 @@ export class EntityComponentDataset {
|
|
|
487
487
|
|
|
488
488
|
if (presentComponentTypes.length > 0) {
|
|
489
489
|
const sTypes = presentComponentTypes.map(t => t.typeName).join(", ");
|
|
490
|
-
throw
|
|
490
|
+
throw new Error(`Component types can not be unmapped due to presence of live components: ${sTypes}`);
|
|
491
491
|
}
|
|
492
492
|
}
|
|
493
493
|
|
|
@@ -838,11 +838,12 @@ export class EntityComponentDataset {
|
|
|
838
838
|
/**
|
|
839
839
|
*
|
|
840
840
|
* @param {number} entity_id
|
|
841
|
+
* @returns {boolean}
|
|
841
842
|
*/
|
|
842
843
|
removeEntity(entity_id) {
|
|
843
844
|
if (!this.entityExists(entity_id)) {
|
|
844
845
|
// entity doesn't exist
|
|
845
|
-
return;
|
|
846
|
+
return false;
|
|
846
847
|
}
|
|
847
848
|
|
|
848
849
|
const componentOccupancy = this.componentOccupancy;
|
|
@@ -873,6 +874,8 @@ export class EntityComponentDataset {
|
|
|
873
874
|
this.entityCount--;
|
|
874
875
|
|
|
875
876
|
this.onEntityRemoved.send1(entity_id);
|
|
877
|
+
|
|
878
|
+
return true;
|
|
876
879
|
}
|
|
877
880
|
|
|
878
881
|
/**
|
|
@@ -33,6 +33,12 @@ export class EntityReference {
|
|
|
33
33
|
* @returns {boolean}
|
|
34
34
|
*/
|
|
35
35
|
verify(ecd: EntityComponentDataset): boolean;
|
|
36
|
+
/**
|
|
37
|
+
*
|
|
38
|
+
* @param {EntityComponentDataset} ecd
|
|
39
|
+
* @returns {boolean}
|
|
40
|
+
*/
|
|
41
|
+
destroy(ecd: EntityComponentDataset): boolean;
|
|
36
42
|
}
|
|
37
43
|
export namespace EntityReference {
|
|
38
44
|
let NULL: EntityReference;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EntityReference.d.ts","sourceRoot":"","sources":["../../../../src/engine/ecs/EntityReference.js"],"names":[],"mappings":"AAEA;
|
|
1
|
+
{"version":3,"file":"EntityReference.d.ts","sourceRoot":"","sources":["../../../../src/engine/ecs/EntityReference.js"],"names":[],"mappings":"AAEA;IA4DI;;;;;OAKG;IACH,gBAJW,MAAM,cACN,MAAM,GACL,eAAe,CAa1B;IA3ED;;;OAGG;IACH,IAFU,MAAM,CAET;IAEP;;;OAGG;IACH,YAFU,MAAM,CAED;IAEf;;;OAGG;IACH,QAFY,MAAM,CAIjB;IAED;;;;OAIG;IACH,cAHW,eAAe,GACd,OAAO,CAMlB;IAED;;;;OAIG;IACH,qCAFa,OAAO,CAQnB;IAED;;;;OAIG;IACH,sCAFa,OAAO,CASnB;CAoBJ;;cAIS,eAAe"}
|
|
@@ -1,18 +1,19 @@
|
|
|
1
1
|
import { assert } from "../../core/assert.js";
|
|
2
2
|
|
|
3
3
|
export class EntityReference {
|
|
4
|
+
|
|
4
5
|
/**
|
|
5
6
|
* Entity ID
|
|
6
7
|
* @type {number}
|
|
7
8
|
*/
|
|
8
9
|
id = -1
|
|
10
|
+
|
|
9
11
|
/**
|
|
10
12
|
* Entity generation number. This uniquely identifies an entity in combination with the ID
|
|
11
13
|
* @type {number}
|
|
12
14
|
*/
|
|
13
15
|
generation = -1
|
|
14
16
|
|
|
15
|
-
|
|
16
17
|
/**
|
|
17
18
|
*
|
|
18
19
|
* @return {number}
|
|
@@ -45,6 +46,20 @@ export class EntityReference {
|
|
|
45
46
|
|
|
46
47
|
}
|
|
47
48
|
|
|
49
|
+
/**
|
|
50
|
+
*
|
|
51
|
+
* @param {EntityComponentDataset} ecd
|
|
52
|
+
* @returns {boolean}
|
|
53
|
+
*/
|
|
54
|
+
destroy(ecd) {
|
|
55
|
+
if (this.verify(ecd)) {
|
|
56
|
+
ecd.removeEntity(this.id);
|
|
57
|
+
return true;
|
|
58
|
+
} else {
|
|
59
|
+
return false;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
48
63
|
/**
|
|
49
64
|
*
|
|
50
65
|
* @param {number} id
|
|
@@ -108,7 +108,7 @@ async function persist_component(storage, component, adapter, key = 'temp', sign
|
|
|
108
108
|
|
|
109
109
|
|
|
110
110
|
current_state.setCapacity(buffer.length);
|
|
111
|
-
array_copy(buffer.__data_uint8, 0, current_state.__data_uint8, 0, buffer.
|
|
111
|
+
array_copy(buffer.__data_uint8, 0, current_state.__data_uint8, 0, buffer.capacity);
|
|
112
112
|
}
|
|
113
113
|
}
|
|
114
114
|
|
|
@@ -2,6 +2,16 @@
|
|
|
2
2
|
* Facilitates prioritized queueing and loading of individual texture tiles
|
|
3
3
|
*/
|
|
4
4
|
export class VirtualTextureTileLoader {
|
|
5
|
+
/**
|
|
6
|
+
*
|
|
7
|
+
* @param {function(mip:number, x:number, y:number):string} builder
|
|
8
|
+
*/
|
|
9
|
+
set file_name_builder(arg: (arg0: number, arg1: number, arg2: number) => string);
|
|
10
|
+
/**
|
|
11
|
+
*
|
|
12
|
+
* @return {function(number, number, number): string}
|
|
13
|
+
*/
|
|
14
|
+
get file_name_builder(): (arg0: number, arg1: number, arg2: number) => string;
|
|
5
15
|
set path(arg: any);
|
|
6
16
|
/**
|
|
7
17
|
* When queue gets larger than this, we start discarding elements
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VirtualTextureTileLoader.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/texture/virtual/VirtualTextureTileLoader.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"VirtualTextureTileLoader.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/texture/virtual/VirtualTextureTileLoader.js"],"names":[],"mappings":"AAYA;;GAEG;AACH;IA6BI;;;OAGG;IACH,kCAVqB,MAAM,QAAE,MAAM,QAAE,MAAM,KAAG,MAAM,EAcnD;IAhBD;;;OAGG;IACH,gCAFqB,MAAM,QAAE,MAAM,QAAE,MAAM,KAAG,MAAM,CAInD;IAYD,mBAEC;IAED;;;OAGG;IACH,aAFU,MAAM,CAEO;IAQvB,4BAEC;IAsBD;;OAEG;IACH;QACI;;WAEG;gBADO,OAAO,kBAAkB,CAAC;MAGtC;IAkCF;;;OAGG;IACH,qBAFW,MAAM,WAchB;IAED;;;;OAIG;IACH,uBAHW,MAAM,GACJ,OAAO,CAMnB;IAsBD;;;OAGG;IACH,+CASC;;CAiEJ;mBApQkB,0CAA0C;mCAO1B,8BAA8B"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { assert } from "../../../../core/assert.js";
|
|
2
|
+
import { array_remove_first } from "../../../../core/collection/array/array_remove_first.js";
|
|
2
3
|
import { array_sort_quick } from "../../../../core/collection/array/array_sort_quick.js";
|
|
3
4
|
import Signal from "../../../../core/events/signal/Signal.js";
|
|
4
5
|
import { AssetManager } from "../../../asset/AssetManager.js";
|
|
@@ -19,6 +20,38 @@ export class VirtualTextureTileLoader {
|
|
|
19
20
|
*/
|
|
20
21
|
#root_path = "";
|
|
21
22
|
|
|
23
|
+
/**
|
|
24
|
+
* Lets user specify a custom file name template
|
|
25
|
+
* @type {function(mip:number, x:number, y:number):string}
|
|
26
|
+
*/
|
|
27
|
+
#file_name_builder = (mip, x, y) => {
|
|
28
|
+
|
|
29
|
+
assert.isNonNegativeInteger(mip, 'mip');
|
|
30
|
+
assert.isNonNegativeInteger(x, 'x');
|
|
31
|
+
assert.isNonNegativeInteger(y, 'y');
|
|
32
|
+
|
|
33
|
+
return `${mip}-${x}-${y}.png`;
|
|
34
|
+
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
*
|
|
39
|
+
* @return {function(number, number, number): string}
|
|
40
|
+
*/
|
|
41
|
+
get file_name_builder() {
|
|
42
|
+
return this.#file_name_builder;
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
*
|
|
47
|
+
* @param {function(mip:number, x:number, y:number):string} builder
|
|
48
|
+
*/
|
|
49
|
+
set file_name_builder(builder) {
|
|
50
|
+
assert.isFunction(builder, 'builder');
|
|
51
|
+
|
|
52
|
+
this.#file_name_builder = builder;
|
|
53
|
+
}
|
|
54
|
+
|
|
22
55
|
set path(v) {
|
|
23
56
|
this.#root_path = v;
|
|
24
57
|
}
|
|
@@ -159,27 +192,12 @@ export class VirtualTextureTileLoader {
|
|
|
159
192
|
|
|
160
193
|
// truncate the queue if necessary
|
|
161
194
|
const queue_overflow = this.#queue.length - this.queue_limit;
|
|
195
|
+
|
|
162
196
|
if (queue_overflow > 0) {
|
|
163
197
|
this.#queue.splice(this.queue_limit, queue_overflow);
|
|
164
198
|
}
|
|
165
199
|
}
|
|
166
200
|
|
|
167
|
-
/**
|
|
168
|
-
*
|
|
169
|
-
* @param {number} mip
|
|
170
|
-
* @param {number} x
|
|
171
|
-
* @param {number} y
|
|
172
|
-
* @returns {string}
|
|
173
|
-
*/
|
|
174
|
-
#build_file_name(mip, x, y) {
|
|
175
|
-
|
|
176
|
-
assert.isNonNegativeInteger(mip, 'mip');
|
|
177
|
-
assert.isNonNegativeInteger(x, 'x');
|
|
178
|
-
assert.isNonNegativeInteger(y, 'y');
|
|
179
|
-
|
|
180
|
-
return `${mip}-${x}-${y}.png`;
|
|
181
|
-
}
|
|
182
|
-
|
|
183
201
|
/**
|
|
184
202
|
* Initializes load of the next element in the queue if there is capacity
|
|
185
203
|
*/
|
|
@@ -200,7 +218,10 @@ export class VirtualTextureTileLoader {
|
|
|
200
218
|
* @returns {Promise<VirtualTextureTile>}
|
|
201
219
|
*/
|
|
202
220
|
#load(mip, x, y) {
|
|
203
|
-
const file_name = this.#
|
|
221
|
+
const file_name = this.#file_name_builder(mip, x, y);
|
|
222
|
+
|
|
223
|
+
assert.isString(file_name, 'file_name');
|
|
224
|
+
|
|
204
225
|
const finger_print = compose_finger_print(mip, x, y);
|
|
205
226
|
|
|
206
227
|
this.#queue_remove(finger_print);
|
|
@@ -233,8 +254,7 @@ export class VirtualTextureTileLoader {
|
|
|
233
254
|
})
|
|
234
255
|
.finally(() => {
|
|
235
256
|
|
|
236
|
-
|
|
237
|
-
this.#in_flight.splice(index, 1);
|
|
257
|
+
array_remove_first(this.#in_flight,finger_print);
|
|
238
258
|
|
|
239
259
|
this.#prod();
|
|
240
260
|
|
|
@@ -2,7 +2,15 @@ export class VirtualTextureUsage {
|
|
|
2
2
|
get counts(): Uint32Array;
|
|
3
3
|
set max_mip_level(arg: number);
|
|
4
4
|
get max_mip_level(): number;
|
|
5
|
+
/**
|
|
6
|
+
*
|
|
7
|
+
* @return {Uint32Array}
|
|
8
|
+
*/
|
|
5
9
|
get occupancy(): Uint32Array;
|
|
10
|
+
/**
|
|
11
|
+
*
|
|
12
|
+
* @return {number}
|
|
13
|
+
*/
|
|
6
14
|
get occupancy_count(): number;
|
|
7
15
|
/**
|
|
8
16
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VirtualTextureUsage.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/texture/virtual/VirtualTextureUsage.js"],"names":[],"mappings":"AAMA;IAcI,0BAEC;IAKD,+BAIC;IAED,4BAEC;
|
|
1
|
+
{"version":3,"file":"VirtualTextureUsage.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/texture/virtual/VirtualTextureUsage.js"],"names":[],"mappings":"AAMA;IAcI,0BAEC;IAKD,+BAIC;IAED,4BAEC;IAED;;;OAGG;IACH,6BAEC;IAED;;;OAGG;IACH,8BAEC;IAkBD;;;;OAIG;IACH,mCAHW,MAAM,GACJ,MAAM,CAMlB;IAED;;;;;;OAMG;IACH,gBALW,MAAM,KACN,MAAM,KACN,MAAM,GACJ,MAAM,CAMlB;IAED,cAGC;IAED;;;;OAIG;IACH,wBAFW,MAAM,QAsChB;IAWD,2BAiCC;IAGD;;;OAGG;IACH,kBAFW,UAAU,QAsCpB;;CACJ"}
|
|
@@ -35,11 +35,18 @@ export class VirtualTextureUsage {
|
|
|
35
35
|
return this.#max_mip_level;
|
|
36
36
|
}
|
|
37
37
|
|
|
38
|
-
|
|
38
|
+
/**
|
|
39
|
+
*
|
|
40
|
+
* @return {Uint32Array}
|
|
41
|
+
*/
|
|
39
42
|
get occupancy() {
|
|
40
43
|
return this.#occupancy;
|
|
41
44
|
}
|
|
42
45
|
|
|
46
|
+
/**
|
|
47
|
+
*
|
|
48
|
+
* @return {number}
|
|
49
|
+
*/
|
|
43
50
|
get occupancy_count() {
|
|
44
51
|
return this.#occupancy_cursor;
|
|
45
52
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"VirtualTextureUsageUpdater.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/texture/virtual/VirtualTextureUsageUpdater.js"],"names":[],"mappings":"AA2EA;IAgBI;;;OAGG;IACH,uCAEC;IAVD,oCAEC;IA8CD,iCAEC;IAED,8BAEC;IAED,4BAEC;IASD;;;;;OAKG;IACH,iCAJW,MAAM,aACN,MAAM,cACN,MAAM,QAqBhB;IAED,0CAEC;IAED,4BAEC;IAiCD;;;;OAIG;IACH,yBAHW,MAAM,KACN,MAAM,QA+BhB;IA0BD;;;;;OAKG;IACH,
|
|
1
|
+
{"version":3,"file":"VirtualTextureUsageUpdater.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/graphics/texture/virtual/VirtualTextureUsageUpdater.js"],"names":[],"mappings":"AA2EA;IAgBI;;;OAGG;IACH,uCAEC;IAVD,oCAEC;IA8CD,iCAEC;IAED,8BAEC;IAED,4BAEC;IASD;;;;;OAKG;IACH,iCAJW,MAAM,aACN,MAAM,cACN,MAAM,QAqBhB;IAED,0CAEC;IAED,4BAEC;IAiCD;;;;OAIG;IACH,yBAHW,MAAM,KACN,MAAM,QA+BhB;IA0BD;;;;;OAKG;IACH,yEAqDC;IAED,gBAEC;;CACJ;oCAnUmC,0BAA0B;0BADpC,yBAAyB"}
|
|
@@ -288,13 +288,14 @@ export class VirtualTextureUsageUpdater {
|
|
|
288
288
|
|
|
289
289
|
const usage_buffer = this.#usage_buffer;
|
|
290
290
|
|
|
291
|
-
|
|
292
291
|
const camera_projection_matrix = camera.projectionMatrix.elements;
|
|
293
292
|
|
|
294
293
|
// remember existing state
|
|
295
294
|
const _old_render_target = renderer.getRenderTarget();
|
|
296
295
|
const _auto_clear = renderer.autoClear;
|
|
296
|
+
|
|
297
297
|
array_copy(camera_projection_matrix, 0, scratch_matrix, 0, 16);
|
|
298
|
+
|
|
298
299
|
const _old_material = scene.overrideMaterial;
|
|
299
300
|
const _old_camera_matrix_update = camera.matrixAutoUpdate;
|
|
300
301
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SequenceBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/composite/SequenceBehavior.js"],"names":[],"mappings":"AAKA;;;GAGG;AACH;
|
|
1
|
+
{"version":3,"file":"SequenceBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/composite/SequenceBehavior.js"],"names":[],"mappings":"AAKA;;;GAGG;AACH;IA6GI;;;;OAIG;IACH,kBAHW,eAAU,GACT,gBAAgB,CAQ3B;IApHG;;;;OAIG;IACH,mCAHU,MAAM,CAGiB;IACjC;;;;OAIG;IACH,gCAAqD;IAErD;;;;OAIG;IACH,4CAAmC;IAGvC,+BAeC;IAmFL;;;OAGG;IACH,6BAFU,OAAO,CAE4B;CAN5C;;;;kCA/HiC,wBAAwB;yBAFjC,gBAAgB"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
+
import { assert } from "../../../../core/assert.js";
|
|
1
2
|
import { Behavior } from "../Behavior.js";
|
|
2
|
-
import { CompositeBehavior } from "./CompositeBehavior.js";
|
|
3
3
|
import { BehaviorStatus } from "../BehaviorStatus.js";
|
|
4
|
-
import {
|
|
4
|
+
import { CompositeBehavior } from "./CompositeBehavior.js";
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* Executes all contained behaviors one after another in a sequence, next behaviour in the sequence will not be started until the previous one signal success
|
|
@@ -38,8 +38,11 @@ export class SequenceBehavior extends CompositeBehavior {
|
|
|
38
38
|
this.__currentBehaviourIndex = 0;
|
|
39
39
|
this.__currentBehaviour = this.__children[0];
|
|
40
40
|
|
|
41
|
-
//
|
|
42
|
-
this.__currentBehaviour
|
|
41
|
+
// allow for empty sequence
|
|
42
|
+
if (this.__currentBehaviour !== undefined) {
|
|
43
|
+
//initialize first behaviour
|
|
44
|
+
this.__currentBehaviour.initialize(context);
|
|
45
|
+
}
|
|
43
46
|
|
|
44
47
|
this.__currentBehaviourState = BehaviorStatus.Running;
|
|
45
48
|
|
|
@@ -57,6 +60,12 @@ export class SequenceBehavior extends CompositeBehavior {
|
|
|
57
60
|
|
|
58
61
|
const currentBehaviour = this.__currentBehaviour;
|
|
59
62
|
|
|
63
|
+
if (currentBehaviour === undefined) {
|
|
64
|
+
// either un-initialized, or an empty sequence
|
|
65
|
+
this.__currentBehaviourState = BehaviorStatus.Succeeded;
|
|
66
|
+
return BehaviorStatus.Succeeded;
|
|
67
|
+
}
|
|
68
|
+
|
|
60
69
|
const s = currentBehaviour.tick(timeDelta);
|
|
61
70
|
|
|
62
71
|
this.__currentBehaviourState = s;
|
|
@@ -92,7 +101,10 @@ export class SequenceBehavior extends CompositeBehavior {
|
|
|
92
101
|
if (this.__currentBehaviourIndex !== child_count) {
|
|
93
102
|
//sequence has not been finished
|
|
94
103
|
|
|
95
|
-
if (
|
|
104
|
+
if (
|
|
105
|
+
this.__currentBehaviour !== undefined
|
|
106
|
+
&& this.__currentBehaviourState !== BehaviorStatus.Initial
|
|
107
|
+
) {
|
|
96
108
|
this.__currentBehaviour.finalize();
|
|
97
109
|
}
|
|
98
110
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DieBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/ecs/DieBehavior.js"],"names":[],"mappings":"AAGA;IAGI,6BAEC;IAED,
|
|
1
|
+
{"version":3,"file":"DieBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/ecs/DieBehavior.js"],"names":[],"mappings":"AAGA;IAGI,6BAEC;IAED,qCASC;CACJ;+BAnB8B,qBAAqB;+BADrB,sBAAsB"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { EntityBehavior } from "./EntityBehavior.js";
|
|
2
1
|
import { BehaviorStatus } from "../BehaviorStatus.js";
|
|
2
|
+
import { EntityBehavior } from "./EntityBehavior.js";
|
|
3
3
|
|
|
4
4
|
export class DieBehavior extends EntityBehavior {
|
|
5
5
|
|
|
@@ -13,14 +13,9 @@ export class DieBehavior extends EntityBehavior {
|
|
|
13
13
|
const entity = this.entity;
|
|
14
14
|
const ecd = this.ecd;
|
|
15
15
|
|
|
16
|
-
if (!ecd.entityExists(entity)) {
|
|
17
|
-
//entity doesn't exist, count as success
|
|
18
|
-
|
|
19
|
-
return BehaviorStatus.Succeeded;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
16
|
ecd.removeEntity(entity);
|
|
23
17
|
|
|
24
18
|
return BehaviorStatus.Succeeded;
|
|
19
|
+
|
|
25
20
|
}
|
|
26
21
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SendEventBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/ecs/SendEventBehavior.js"],"names":[],"mappings":"AAIA;
|
|
1
|
+
{"version":3,"file":"SendEventBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/ecs/SendEventBehavior.js"],"names":[],"mappings":"AAIA;IAkBI,2CAMC;IAtBD;;;OAGG;IACH,OAFU,MAAM,CAEL;IACX,SAAU;IACV,eAAY;IAEZ;;;;aAMC;IAcD,qCAQC;CACJ;+BAzC8B,qBAAqB;+BADrB,sBAAsB"}
|
|
@@ -3,16 +3,17 @@ import { BehaviorStatus } from "../BehaviorStatus.js";
|
|
|
3
3
|
import { EntityBehavior } from "./EntityBehavior.js";
|
|
4
4
|
|
|
5
5
|
export class SendEventBehavior extends EntityBehavior {
|
|
6
|
-
constructor() {
|
|
7
|
-
super();
|
|
8
6
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
7
|
+
/**
|
|
8
|
+
* ID of the event
|
|
9
|
+
* @type {string}
|
|
10
|
+
*/
|
|
11
|
+
event = "";
|
|
12
|
+
data = {};
|
|
13
|
+
target = -1;
|
|
13
14
|
|
|
14
15
|
fromJSON({ event, data = {}, target = -1 }) {
|
|
15
|
-
assert.
|
|
16
|
+
assert.isString(event, 'event');
|
|
16
17
|
|
|
17
18
|
this.event = event;
|
|
18
19
|
this.data = data;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WaitForEventBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/ecs/WaitForEventBehavior.js"],"names":[],"mappings":"AAIA;
|
|
1
|
+
{"version":3,"file":"WaitForEventBehavior.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/intelligence/behavior/ecs/WaitForEventBehavior.js"],"names":[],"mappings":"AAIA;IA6BI;;;;OAIG;IACH,4BAFY,oBAAoB,CAQ/B;IArCD;;;OAGG;IACH,OAFU,MAAM,CAEL;IAEX;;;OAGG;IACH,UAFU,OAAO,CAEA;IAEjB;;;OAGG;IACH,QAFU,MAAM,CAEJ;IAGZ;;;aAKC;IAeD,wEAMC;IAED;;OAEG;IACH,iBAIC;CAoBJ;;kBAIS,MAAM;;+BAnFe,qBAAqB;+BADrB,sBAAsB"}
|
|
@@ -1,29 +1,28 @@
|
|
|
1
|
-
import { EntityBehavior } from "./EntityBehavior.js";
|
|
2
|
-
import { BehaviorStatus } from "../BehaviorStatus.js";
|
|
3
1
|
import { assert } from "../../../../core/assert.js";
|
|
2
|
+
import { BehaviorStatus } from "../BehaviorStatus.js";
|
|
3
|
+
import { EntityBehavior } from "./EntityBehavior.js";
|
|
4
4
|
|
|
5
5
|
export class WaitForEventBehavior extends EntityBehavior {
|
|
6
|
-
constructor() {
|
|
7
|
-
super();
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* Event name
|
|
11
|
-
* @type {string}
|
|
12
|
-
*/
|
|
13
|
-
this.event = "";
|
|
14
|
-
|
|
15
|
-
/**
|
|
16
|
-
*
|
|
17
|
-
* @type {boolean}
|
|
18
|
-
*/
|
|
19
|
-
this.detected = false;
|
|
20
6
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Event name
|
|
10
|
+
* @type {string}
|
|
11
|
+
*/
|
|
12
|
+
event = "";
|
|
13
|
+
|
|
14
|
+
/**
|
|
15
|
+
*
|
|
16
|
+
* @type {boolean}
|
|
17
|
+
*/
|
|
18
|
+
detected = false;
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Entity to listen event on
|
|
22
|
+
* @type {number}
|
|
23
|
+
*/
|
|
24
|
+
target = -1;
|
|
25
|
+
|
|
27
26
|
|
|
28
27
|
fromJSON({ event, target = -1 }) {
|
|
29
28
|
assert.isString(event, 'event');
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"BVH_QUERY_CACHE_SIZE.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/bvh2/bvh3/query/cache/BVH_QUERY_CACHE_SIZE.js"],"names":[],"mappings":"AAAA,0CAA0C"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export const BVH_QUERY_CACHE_SIZE = 2**12;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bvh_query_cache_hash_v3.d.ts","sourceRoot":"","sources":["../../../../../../../src/core/bvh2/bvh3/query/cache/bvh_query_cache_hash_v3.js"],"names":[],"mappings":"AAEA;;;;;;GAMG;AACH,2CALW,MAAM,KACN,MAAM,KACN,MAAM,GACJ,MAAM,CAuBlB"}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { BVH_QUERY_CACHE_SIZE } from "./BVH_QUERY_CACHE_SIZE.js";
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
*
|
|
5
|
-
* @param {number} x
|
|
6
|
-
* @param {number} y
|
|
7
|
-
* @param {number} z
|
|
8
|
-
* @returns {number}
|
|
9
|
-
*/
|
|
10
|
-
export function bvh_query_cache_hash_v3(x, y, z) {
|
|
11
|
-
|
|
12
|
-
//
|
|
13
|
-
// const i0 = computeHashFloat(x);
|
|
14
|
-
// const i1 = computeHashFloat(y);
|
|
15
|
-
// const i2 = computeHashFloat(z);
|
|
16
|
-
//
|
|
17
|
-
// const key = ((i0 * 0xB5297A4D) ^ (i1 * 0x68E31DA4) ^ (i2 * 0x1B56C4E9))
|
|
18
|
-
// & (BVH_QUERY_CACHE_SIZE - 1);
|
|
19
|
-
|
|
20
|
-
const s = 16;
|
|
21
|
-
|
|
22
|
-
const i0 = x*s;
|
|
23
|
-
const i1 = y*s;
|
|
24
|
-
const i2 = z*s;
|
|
25
|
-
|
|
26
|
-
const key = ((i0 * 73856093) ^ (i1 * 19349663) ^ (i2 * 83492791))
|
|
27
|
-
& (BVH_QUERY_CACHE_SIZE - 1);
|
|
28
|
-
|
|
29
|
-
// convert to unsigned
|
|
30
|
-
return key >>> 0;
|
|
31
|
-
}
|
|
@@ -1,55 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
*
|
|
3
|
-
* NOTE: THIS CODE IS UNFINISHED, IT IS ONLY A SKETCH
|
|
4
|
-
* TODO finish implementation
|
|
5
|
-
*
|
|
6
|
-
* Inspired by Makyen's post on stackoverflow: https://stackoverflow.com/a/48384354
|
|
7
|
-
* Core idea is to have dynamically-sized bounding volumes that contain our AABBs, and then have a grid-aligned index that stores pointers to these volumes
|
|
8
|
-
* Makyren called it "Loose/Tight Double-Grid", where "loose" refers to dynamic bounding volumes and tight refers to the grid
|
|
9
|
-
*
|
|
10
|
-
* Invariants:
|
|
11
|
-
* - An element inserted into the structure will belong to exactly one "loose" cell
|
|
12
|
-
*
|
|
13
|
-
*/
|
|
14
|
-
export class LooseTightGrid {
|
|
15
|
-
/**
|
|
16
|
-
*
|
|
17
|
-
* @param {number} v
|
|
18
|
-
*/
|
|
19
|
-
set grid_scale(arg: number);
|
|
20
|
-
/**
|
|
21
|
-
*
|
|
22
|
-
* @returns {number}
|
|
23
|
-
*/
|
|
24
|
-
get grid_scale(): number;
|
|
25
|
-
/**
|
|
26
|
-
*
|
|
27
|
-
* @param {number} size_x
|
|
28
|
-
* @param {number} size_y
|
|
29
|
-
*/
|
|
30
|
-
resize(size_x: number, size_y: number): void;
|
|
31
|
-
/**
|
|
32
|
-
*
|
|
33
|
-
* @param {number} x
|
|
34
|
-
* @param {number} y
|
|
35
|
-
* @returns {number}
|
|
36
|
-
*/
|
|
37
|
-
cell_position_to_index(x: number, y: number): number;
|
|
38
|
-
/**
|
|
39
|
-
*
|
|
40
|
-
* @param {number[]} out
|
|
41
|
-
* @param {number} out_offset
|
|
42
|
-
* @param {number} index
|
|
43
|
-
*/
|
|
44
|
-
cell_index_to_position(out: number[], out_offset: number, index: number): void;
|
|
45
|
-
allocate_datum(): void;
|
|
46
|
-
insert(): void;
|
|
47
|
-
/**
|
|
48
|
-
* Rebuild structure from ground-up
|
|
49
|
-
* This is an expensive operation
|
|
50
|
-
* Generally you'll never want to call it explicitly, it is used internally when underlying structure changes
|
|
51
|
-
*/
|
|
52
|
-
rebuild(): void;
|
|
53
|
-
#private;
|
|
54
|
-
}
|
|
55
|
-
//# sourceMappingURL=LooseTightGrid.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"LooseTightGrid.d.ts","sourceRoot":"","sources":["../../../../../../src/core/geom/2d/lt-grid/LooseTightGrid.js"],"names":[],"mappings":"AAiBA;;;;;;;;;;;;GAYG;AACH;IAcI;;;OAGG;IACH,4BAYC;IAED;;;OAGG;IACH,yBAEC;IAED;;;;OAIG;IACH,eAHW,MAAM,UACN,MAAM,QAehB;IAED;;;;;OAKG;IACH,0BAJW,MAAM,KACN,MAAM,GACJ,MAAM,CAUlB;IAED;;;;;OAKG;IACH,4BAJW,MAAM,EAAE,cACR,MAAM,SACN,MAAM,QAOhB;IAED,uBAEC;IAED,eAEC;IAwDD;;;;OAIG;IACH,gBAgCC;;CAEJ"}
|