@woosh/meep-engine 2.88.0 → 2.88.2
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/build/meep.cjs +17 -1
- package/build/meep.min.js +1 -1
- package/build/meep.module.js +17 -1
- package/package.json +1 -1
- package/src/engine/ecs/terrain/util/paintTerrainOverlayViaLookupTable.d.ts +3 -1
- package/src/engine/ecs/terrain/util/paintTerrainOverlayViaLookupTable.d.ts.map +1 -1
- package/src/engine/ecs/terrain/util/paintTerrainOverlayViaLookupTable.js +4 -2
- package/src/engine/graphics/ecs/mesh-v2/aggregate/SGMesh.d.ts.map +1 -1
- package/src/engine/graphics/ecs/mesh-v2/aggregate/SGMesh.js +17 -1
- package/src/engine/grid/obstacle/GridObstacle.d.ts.map +1 -1
- package/src/engine/grid/obstacle/GridObstacle.js +4 -4
package/build/meep.module.js
CHANGED
|
@@ -66743,7 +66743,7 @@ class SGMesh {
|
|
|
66743
66743
|
* Do not modify contents unless you know exactly what you're doing
|
|
66744
66744
|
* @returns {EntityNode|null}
|
|
66745
66745
|
*/
|
|
66746
|
-
get node(){
|
|
66746
|
+
get node() {
|
|
66747
66747
|
return this.__node;
|
|
66748
66748
|
}
|
|
66749
66749
|
|
|
@@ -66955,6 +66955,22 @@ class SGMesh {
|
|
|
66955
66955
|
|
|
66956
66956
|
return r;
|
|
66957
66957
|
}
|
|
66958
|
+
|
|
66959
|
+
toJSON() {
|
|
66960
|
+
return {
|
|
66961
|
+
url: this.__url,
|
|
66962
|
+
receiveShadow: this.receiveShadow,
|
|
66963
|
+
castShadow: this.castShadow,
|
|
66964
|
+
};
|
|
66965
|
+
}
|
|
66966
|
+
|
|
66967
|
+
fromJSON({ url, receiveShadow = true, castShadow = true }) {
|
|
66968
|
+
this.clearFlag(SGMeshFlags.Loaded);
|
|
66969
|
+
|
|
66970
|
+
this.__url = url;
|
|
66971
|
+
this.receiveShadow = receiveShadow;
|
|
66972
|
+
this.castShadow = castShadow;
|
|
66973
|
+
}
|
|
66958
66974
|
}
|
|
66959
66975
|
|
|
66960
66976
|
SGMesh.typeName = "SGMesh";
|
package/package.json
CHANGED
|
@@ -5,13 +5,15 @@
|
|
|
5
5
|
* @param {ParameterLookupTable} [params.lut]
|
|
6
6
|
* @param {NumericInterval} [params.range] Range of values of interest within the sampler that are to be mapped onto LUT
|
|
7
7
|
* @param {function(number):number} [params.lookupScaleFunction]
|
|
8
|
+
* @param {number} [params.channel]
|
|
8
9
|
*/
|
|
9
|
-
export function paintTerrainOverlayViaLookupTable({ overlay, sampler, lut, range, lookupScaleFunction }: {
|
|
10
|
+
export function paintTerrainOverlayViaLookupTable({ overlay, sampler, lut, range, lookupScaleFunction, channel }: {
|
|
10
11
|
overlay: TerrainOverlay;
|
|
11
12
|
sampler: Sampler2D;
|
|
12
13
|
lut?: ParameterLookupTable;
|
|
13
14
|
range?: NumericInterval;
|
|
14
15
|
lookupScaleFunction?: (arg0: number) => number;
|
|
16
|
+
channel?: number;
|
|
15
17
|
}): void;
|
|
16
18
|
import { Sampler2D } from "../../../graphics/texture/sampler/Sampler2D.js";
|
|
17
19
|
import { ParameterLookupTable } from "../../../graphics/particles/particular/engine/parameter/ParameterLookupTable.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"paintTerrainOverlayViaLookupTable.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/ecs/terrain/util/paintTerrainOverlayViaLookupTable.js"],"names":[],"mappings":"AAmBA
|
|
1
|
+
{"version":3,"file":"paintTerrainOverlayViaLookupTable.d.ts","sourceRoot":"","sources":["../../../../../../src/engine/ecs/terrain/util/paintTerrainOverlayViaLookupTable.js"],"names":[],"mappings":"AAmBA;;;;;;;;GAQG;AACH;IAPkC,OAAO;IACZ,OAAO,EAAzB,SAAS;IACqB,GAAG,GAAjC,oBAAoB;IACK,KAAK,GAA9B,eAAe;IACkB,mBAAmB,UAA3C,MAAM,KAAE,MAAM;IACP,OAAO,GAAvB,MAAM;SA2ChB;0BAhEyB,gDAAgD;qCAFrC,iFAAiF;gCADtF,mDAAmD"}
|
|
@@ -24,13 +24,15 @@ heatmap_lut.computeUniformPositions();
|
|
|
24
24
|
* @param {ParameterLookupTable} [params.lut]
|
|
25
25
|
* @param {NumericInterval} [params.range] Range of values of interest within the sampler that are to be mapped onto LUT
|
|
26
26
|
* @param {function(number):number} [params.lookupScaleFunction]
|
|
27
|
+
* @param {number} [params.channel]
|
|
27
28
|
*/
|
|
28
29
|
export function paintTerrainOverlayViaLookupTable({
|
|
29
30
|
overlay,
|
|
30
31
|
sampler,
|
|
31
32
|
lut = heatmap_lut,
|
|
32
33
|
range = new NumericInterval(0, 1),
|
|
33
|
-
lookupScaleFunction = passThrough
|
|
34
|
+
lookupScaleFunction = passThrough,
|
|
35
|
+
channel = 0
|
|
34
36
|
}) {
|
|
35
37
|
let i, j;
|
|
36
38
|
|
|
@@ -51,7 +53,7 @@ export function paintTerrainOverlayViaLookupTable({
|
|
|
51
53
|
|
|
52
54
|
for (i = 0; i < w; i++) {
|
|
53
55
|
|
|
54
|
-
const p = scaled_sampler.readChannel(i, j,
|
|
56
|
+
const p = scaled_sampler.readChannel(i, j, channel);
|
|
55
57
|
|
|
56
58
|
const scaledPosition = lookupScaleFunction(p);
|
|
57
59
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SGMesh.d.ts","sourceRoot":"","sources":["../../../../../../../src/engine/graphics/ecs/mesh-v2/aggregate/SGMesh.js"],"names":[],"mappings":";;;;;AAmBA;IA4OI;;;;OAIG;IACH,oBAHW,MAAM,GACJ,MAAM,CAUlB;IAlPD;;;OAGG;IACH,OAFU,MAAM,CAEM;IAEtB;;;OAGG;IACH,OAFU,MAAM,GAAC,IAAI,CAER;IAEb;;;;OAIG;IACH,eAAc;IAEd;;;;OAIG;IACH,yBAA+B;IAE/B;;;;OAIG;IACH,gBAEC;IAED;;;;OAIG;IACH,cAHW,MAAM,GACJ,OAAO,CAUnB;IAED,eAEC;IAED;;;OAGG;IACH,YAFW,MAAM,QAOhB;IAED;;;OAGG;IACH,SAFa,MAAM,CAQlB;IAED;;;OAGG;IACH,oCAYC;IAED,iCAEC;IAED,8BAYC;IAUD;;;OAGG;IACH,qBAOC;IAnBD;;;OAGG;IACH,kBAEC;IAeD;;;;OAIG;IACH,4BAHW,KAAK,GACH,OAAO,CAUnB;IAED;;;OAGG;IACH,yCAFW,KAAK,QAIf;IAED;;;;OAIG;IACH,cAHW,MAAM;;;;KAAY,GAChB,IAAI,CAIhB;IAED;;;;OAIG;IACH,gBAHW,MAAM;;;;KAAY,GAChB,IAAI,CAIhB;IAED;;;;OAIG;IACH,gBAHW,MAAM;;;;KAAY,SAClB,OAAO,QAQjB;IAED;;;;OAIG;IACH,cAHW,MAAM;;;;KAAY,GAChB,OAAO,CAInB;IAUD;;;OAGG;IACH,6BAEC;IAdD;;;OAGG;IACH,0BAEC;IAkBD;;;OAGG;IACH,gCAEC;IAdD;;;OAGG;IACH,6BAEC;;
|
|
1
|
+
{"version":3,"file":"SGMesh.d.ts","sourceRoot":"","sources":["../../../../../../../src/engine/graphics/ecs/mesh-v2/aggregate/SGMesh.js"],"names":[],"mappings":";;;;;AAmBA;IA4OI;;;;OAIG;IACH,oBAHW,MAAM,GACJ,MAAM,CAUlB;IAlPD;;;OAGG;IACH,OAFU,MAAM,CAEM;IAEtB;;;OAGG;IACH,OAFU,MAAM,GAAC,IAAI,CAER;IAEb;;;;OAIG;IACH,eAAc;IAEd;;;;OAIG;IACH,yBAA+B;IAE/B;;;;OAIG;IACH,gBAEC;IAED;;;;OAIG;IACH,cAHW,MAAM,GACJ,OAAO,CAUnB;IAED,eAEC;IAED;;;OAGG;IACH,YAFW,MAAM,QAOhB;IAED;;;OAGG;IACH,SAFa,MAAM,CAQlB;IAED;;;OAGG;IACH,oCAYC;IAED,iCAEC;IAED,8BAYC;IAUD;;;OAGG;IACH,qBAOC;IAnBD;;;OAGG;IACH,kBAEC;IAeD;;;;OAIG;IACH,4BAHW,KAAK,GACH,OAAO,CAUnB;IAED;;;OAGG;IACH,yCAFW,KAAK,QAIf;IAED;;;;OAIG;IACH,cAHW,MAAM;;;;KAAY,GAChB,IAAI,CAIhB;IAED;;;;OAIG;IACH,gBAHW,MAAM;;;;KAAY,GAChB,IAAI,CAIhB;IAED;;;;OAIG;IACH,gBAHW,MAAM;;;;KAAY,SAClB,OAAO,QAQjB;IAED;;;;OAIG;IACH,cAHW,MAAM;;;;KAAY,GAChB,OAAO,CAInB;IAUD;;;OAGG;IACH,6BAEC;IAdD;;;OAGG;IACH,0BAEC;IAkBD;;;OAGG;IACH,gCAEC;IAdD;;;OAGG;IACH,6BAEC;IAyBD;;;;MAMC;IAED;;;;aAMC;;CACJ;;;;sBA7RqB,2CAA2C"}
|
|
@@ -55,7 +55,7 @@ export class SGMesh {
|
|
|
55
55
|
* Do not modify contents unless you know exactly what you're doing
|
|
56
56
|
* @returns {EntityNode|null}
|
|
57
57
|
*/
|
|
58
|
-
get node(){
|
|
58
|
+
get node() {
|
|
59
59
|
return this.__node;
|
|
60
60
|
}
|
|
61
61
|
|
|
@@ -267,6 +267,22 @@ export class SGMesh {
|
|
|
267
267
|
|
|
268
268
|
return r;
|
|
269
269
|
}
|
|
270
|
+
|
|
271
|
+
toJSON() {
|
|
272
|
+
return {
|
|
273
|
+
url: this.__url,
|
|
274
|
+
receiveShadow: this.receiveShadow,
|
|
275
|
+
castShadow: this.castShadow,
|
|
276
|
+
};
|
|
277
|
+
}
|
|
278
|
+
|
|
279
|
+
fromJSON({ url, receiveShadow = true, castShadow = true }) {
|
|
280
|
+
this.clearFlag(SGMeshFlags.Loaded);
|
|
281
|
+
|
|
282
|
+
this.__url = url;
|
|
283
|
+
this.receiveShadow = receiveShadow;
|
|
284
|
+
this.castShadow = castShadow;
|
|
285
|
+
}
|
|
270
286
|
}
|
|
271
287
|
|
|
272
288
|
SGMesh.typeName = "SGMesh";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GridObstacle.d.ts","sourceRoot":"","sources":["../../../../../src/engine/grid/obstacle/GridObstacle.js"],"names":[],"mappings":";AAWA;IA0NI,sCAMC;IA/ND,eAAW;IAEX;;;OAGG;IACH,eAFU,OAAO,CAEQ;IAEzB;;;;OAIG;IACH,UAHW,MAAM,KACN,MAAM,QAiChB;IAED;;;;;;OAMG;IACH,sBALW,MAAM,WACN,MAAM,qCAmChB;IAED;;;;;OAKG;IACH,aAJW,MAAM,KACN,MAAM,GACJ,MAAM,CAWlB;IAED;;;;;OAKG;IACH,cAJW,MAAM,KACN,MAAM,SACN,MAAM,QAShB;IAED;;;;;OAKG;IACH,iBAJW,MAAM,KACN,MAAM,GACJ,OAAO,CAYnB;IAED;;;;;;OAMG;IACH,mBALW,MAAM,KACN,MAAM,iBACN,MAAM,EAAE,GACN,OAAO,CAoDnB;IAED;;;MAKC;IAED;;;aAaC;IAUD;;;OAGG;IACH,QAFa,MAAM,CAOlB;IAED;;;;OAIG;IACH,cAHW,YAAY,GACV,OAAO,CAQnB;CACJ;;;;
|
|
1
|
+
{"version":3,"file":"GridObstacle.d.ts","sourceRoot":"","sources":["../../../../../src/engine/grid/obstacle/GridObstacle.js"],"names":[],"mappings":";AAWA;IA0NI,sCAMC;IA/ND,eAAW;IAEX;;;OAGG;IACH,eAFU,OAAO,CAEQ;IAEzB;;;;OAIG;IACH,UAHW,MAAM,KACN,MAAM,QAiChB;IAED;;;;;;OAMG;IACH,sBALW,MAAM,WACN,MAAM,qCAmChB;IAED;;;;;OAKG;IACH,aAJW,MAAM,KACN,MAAM,GACJ,MAAM,CAWlB;IAED;;;;;OAKG;IACH,cAJW,MAAM,KACN,MAAM,SACN,MAAM,QAShB;IAED;;;;;OAKG;IACH,iBAJW,MAAM,KACN,MAAM,GACJ,OAAO,CAYnB;IAED;;;;;;OAMG;IACH,mBALW,MAAM,KACN,MAAM,iBACN,MAAM,EAAE,GACN,OAAO,CAoDnB;IAED;;;MAKC;IAED;;;aAaC;IAUD;;;OAGG;IACH,QAFa,MAAM,CAOlB;IAED;;;;OAIG;IACH,cAHW,YAAY,GACV,OAAO,CAQnB;CACJ;;;;oBA5PmB,+BAA+B"}
|
|
@@ -3,11 +3,11 @@
|
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
5
|
|
|
6
|
-
import Vector2 from '../../../core/geom/Vector2.js';
|
|
7
6
|
import { assert } from "../../../core/assert.js";
|
|
8
|
-
import { computeIntegerArrayHash } from "../../../core/primitives/array/computeIntegerArrayHash.js";
|
|
9
|
-
import { isArrayEqualStrict } from "../../../core/collection/array/isArrayEqualStrict.js";
|
|
10
7
|
import { computeHashIntegerArray } from "../../../core/collection/array/computeHashIntegerArray.js";
|
|
8
|
+
import { isArrayEqualStrict } from "../../../core/collection/array/isArrayEqualStrict.js";
|
|
9
|
+
import Vector2 from '../../../core/geom/Vector2.js';
|
|
10
|
+
import { computeIntegerArrayHash } from "../../../core/primitives/array/computeIntegerArrayHash.js";
|
|
11
11
|
|
|
12
12
|
class GridObstacle {
|
|
13
13
|
data = [1];
|
|
@@ -208,7 +208,7 @@ class GridObstacle {
|
|
|
208
208
|
toJSON() {
|
|
209
209
|
return {
|
|
210
210
|
size: this.size.toJSON(),
|
|
211
|
-
data: this.data
|
|
211
|
+
data: Array.from(this.data) //make sure to force it to Array type for JSON serialization to work correctly
|
|
212
212
|
};
|
|
213
213
|
}
|
|
214
214
|
|