@needle-tools/engine 4.3.1 → 4.3.2-beta.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.
Files changed (28) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/dist/needle-engine.bundle.js +4087 -4080
  3. package/dist/needle-engine.bundle.light.js +4089 -4085
  4. package/dist/needle-engine.bundle.light.min.js +124 -127
  5. package/dist/needle-engine.bundle.light.umd.cjs +122 -125
  6. package/dist/needle-engine.bundle.min.js +124 -127
  7. package/dist/needle-engine.bundle.umd.cjs +123 -126
  8. package/dist/needle-engine.d.ts +9 -9
  9. package/lib/engine/engine_mainloop_utils.js +2 -3
  10. package/lib/engine/engine_mainloop_utils.js.map +1 -1
  11. package/lib/engine/engine_time.d.ts +11 -2
  12. package/lib/engine/engine_time.js +12 -1
  13. package/lib/engine/engine_time.js.map +1 -1
  14. package/lib/engine-components/RendererInstancing.d.ts +1 -3
  15. package/lib/engine-components/RendererInstancing.js +6 -54
  16. package/lib/engine-components/RendererInstancing.js.map +1 -1
  17. package/lib/engine-components/postprocessing/PostProcessingHandler.d.ts +1 -1
  18. package/lib/engine-components/postprocessing/PostProcessingHandler.js +6 -14
  19. package/lib/engine-components/postprocessing/PostProcessingHandler.js.map +1 -1
  20. package/lib/engine-components/postprocessing/Volume.d.ts +15 -0
  21. package/lib/engine-components/postprocessing/Volume.js +73 -4
  22. package/lib/engine-components/postprocessing/Volume.js.map +1 -1
  23. package/package.json +1 -1
  24. package/src/engine/engine_mainloop_utils.ts +3 -2
  25. package/src/engine/engine_time.ts +14 -2
  26. package/src/engine-components/RendererInstancing.ts +6 -57
  27. package/src/engine-components/postprocessing/PostProcessingHandler.ts +8 -14
  28. package/src/engine-components/postprocessing/Volume.ts +82 -6
@@ -1,6 +1,15 @@
1
1
  export { }
2
2
 
3
3
 
4
+ declare global {
5
+ interface NavigatorUAData {
6
+ platform: string;
7
+ }
8
+ interface Navigator {
9
+ userAgentData?: NavigatorUAData;
10
+ }
11
+ }
12
+
4
13
  declare module 'three' {
5
14
  interface SkinnedMesh {
6
15
  staticGenerator?: StaticGeometryGenerator;
@@ -16,15 +25,6 @@ declare module 'three' {
16
25
  }
17
26
  }
18
27
 
19
- declare global {
20
- interface NavigatorUAData {
21
- platform: string;
22
- }
23
- interface Navigator {
24
- userAgentData?: NavigatorUAData;
25
- }
26
- }
27
-
28
28
  declare module 'three' {
29
29
  interface Object3D {
30
30
  get guid(): string | undefined;
@@ -21,11 +21,8 @@ export function hasNewScripts() {
21
21
  * @internal
22
22
  */
23
23
  export function processNewScripts(context) {
24
- if (context.new_scripts.length <= 0)
25
- return;
26
24
  if (debug)
27
25
  console.log("Register new components", context.new_scripts.length, [...context.new_scripts], context.alias ? ("element: " + context.alias) : context["hash"], context);
28
- // if(new_scripts_post_setup_callbacks.length > 0) console.log(new_scripts_post_setup_callbacks);
29
26
  if (context.new_scripts_pre_setup_callbacks.length > 0) {
30
27
  for (const cb of context.new_scripts_pre_setup_callbacks) {
31
28
  if (!cb)
@@ -34,6 +31,8 @@ export function processNewScripts(context) {
34
31
  }
35
32
  context.new_scripts_pre_setup_callbacks.length = 0;
36
33
  }
34
+ if (context.new_scripts.length <= 0)
35
+ return;
37
36
  // TODO: update all the code from above to use this logic
38
37
  // basically code gen should add the scripts to new scripts
39
38
  // and this code below should go into some util method
@@ -1 +1 @@
1
- {"version":3,"file":"engine_mainloop_utils.js","sourceRoot":"","sources":["../../src/engine/engine_mainloop_utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine_mainloop_utils.js","sourceRoot":"","sources":["../../src/engine/engine_mainloop_utils.ts"],"names":[],"mappings":"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"}
@@ -25,14 +25,23 @@ export declare class Time implements ITime {
25
25
  get frameCount(): number;
26
26
  /** The time in seconds it took to complete the last frame (Read Only). */
27
27
  get realtimeSinceStartup(): number;
28
- /** Approximated frames per second (Read Only). */
28
+ /**
29
+ * @returns {Number} FPS for this frame.
30
+ * Note that this returns the raw value (e.g. 59.88023952362959) and will fluctuate a lot between frames.
31
+ * If you want a more stable FPS, use `smoothedFps` instead.
32
+ */
33
+ get fps(): number;
34
+ /**
35
+ * Approximated frames per second
36
+ * @returns the smoothed FPS value over the last 60 frames with decimals.
37
+ */
29
38
  get smoothedFps(): number;
30
39
  /** The smoothed time in seconds it took to complete the last frame (Read Only). */
31
40
  get smoothedDeltaTime(): number;
32
41
  private clock;
33
42
  private _smoothedFps;
34
43
  private _smoothedDeltaTime;
35
- private _fpsSamples;
44
+ private readonly _fpsSamples;
36
45
  private _fpsSampleIndex;
37
46
  constructor();
38
47
  /** Step the time. This is called automatically by the Needle Engine Context.
@@ -32,7 +32,18 @@ export class Time {
32
32
  get realtimeSinceStartup() {
33
33
  return this.clock.elapsedTime;
34
34
  }
35
- /** Approximated frames per second (Read Only). */
35
+ /**
36
+ * @returns {Number} FPS for this frame.
37
+ * Note that this returns the raw value (e.g. 59.88023952362959) and will fluctuate a lot between frames.
38
+ * If you want a more stable FPS, use `smoothedFps` instead.
39
+ */
40
+ get fps() {
41
+ return 1 / this.deltaTime;
42
+ }
43
+ /**
44
+ * Approximated frames per second
45
+ * @returns the smoothed FPS value over the last 60 frames with decimals.
46
+ */
36
47
  get smoothedFps() { return this._smoothedFps; }
37
48
  /** The smoothed time in seconds it took to complete the last frame (Read Only). */
38
49
  get smoothedDeltaTime() { return 1 / this._smoothedFps; }
@@ -1 +1 @@
1
- {"version":3,"file":"engine_time.js","sourceRoot":"","sources":["../../src/engine/engine_time.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAG7B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,MAAM,YAAY,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;AAC3C,IAAI,SAAS,GAAG,CAAC,CAAC;AAClB,IAAI,OAAO,YAAY,KAAK,QAAQ;IAAE,SAAS,GAAG,YAAY,CAAC;AAE/D;;;GAGG;AACH,MAAM,OAAO,IAAI;IAEb,4DAA4D;IAC5D,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACjC,IAAY,IAAI,CAAC,KAAa,IAAI,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC;IAC/C,KAAK,GAAG,CAAC,CAAC;IAElB,0EAA0E;IAC1E,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAC3C,IAAY,SAAS,CAAC,KAAa,IAAI,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC;IACzD,UAAU,GAAG,CAAC,CAAC;IAEvB,oGAAoG;IACpG,IAAI,iBAAiB,KAAK,OAAO,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACnD,kBAAkB,GAAG,CAAC,CAAC;IAE/B,oGAAoG;IACpG,SAAS,GAAG,CAAC,CAAC;IAEd,yBAAyB;IACzB,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACnC,IAAY,KAAK,CAAC,KAAa,IAAI,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;IACjD,MAAM,GAAG,CAAC,CAAC;IACnB,6EAA6E;IAC7E,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAEvC,0EAA0E;IAC1E,IAAI,oBAAoB;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;IAClC,CAAC;IAED,kDAAkD;IAClD,IAAI,WAAW,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAC/C,mFAAmF;IACnF,IAAI,iBAAiB,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAGjD,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC;IACpB,YAAY,GAAW,CAAC,CAAC;IACzB,kBAAkB,GAAW,CAAC,CAAC;IAC/B,WAAW,GAAa,EAAE,CAAC;IAC3B,eAAe,GAAW,CAAC,CAAC;IAEpC;QACI,IAAI,OAAO,SAAS,KAAK,QAAQ;YAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,MAAM;QACF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QACvC,kFAAkF;QAClF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC;QACzC,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC;YAAE,IAAI,CAAC,SAAS,GAAG,cAAc,CAAC;QACzD,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;QAChB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC;QAE5B,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,EAAE;YAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;;YACnE,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;QACtE,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE;YAC5C,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,kBAAkB,GAAG,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;QACxD,IAAI,CAAC,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC;IACpD,CAAC;CACJ"}
1
+ {"version":3,"file":"engine_time.js","sourceRoot":"","sources":["../../src/engine/engine_time.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAG7B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAE7C,MAAM,YAAY,GAAG,QAAQ,CAAC,WAAW,CAAC,CAAC;AAC3C,IAAI,SAAS,GAAG,CAAC,CAAC;AAClB,IAAI,OAAO,YAAY,KAAK,QAAQ;IAAE,SAAS,GAAG,YAAY,CAAC;AAE/D;;;GAGG;AACH,MAAM,OAAO,IAAI;IAEb,4DAA4D;IAC5D,IAAI,IAAI,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IACjC,IAAY,IAAI,CAAC,KAAa,IAAI,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC;IAC/C,KAAK,GAAG,CAAC,CAAC;IAElB,0EAA0E;IAC1E,IAAI,SAAS,KAAK,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IAC3C,IAAY,SAAS,CAAC,KAAa,IAAI,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC,CAAC,CAAC;IACzD,UAAU,GAAG,CAAC,CAAC;IAEvB,oGAAoG;IACpG,IAAI,iBAAiB,KAAK,OAAO,IAAI,CAAC,kBAAkB,CAAC,CAAC,CAAC;IACnD,kBAAkB,GAAG,CAAC,CAAC;IAE/B,oGAAoG;IACpG,SAAS,GAAG,CAAC,CAAC;IAEd,yBAAyB;IACzB,IAAI,KAAK,KAAK,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;IACnC,IAAY,KAAK,CAAC,KAAa,IAAI,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC;IACjD,MAAM,GAAG,CAAC,CAAC;IACnB,6EAA6E;IAC7E,IAAI,UAAU,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;IAEvC,0EAA0E;IAC1E,IAAI,oBAAoB;QACpB,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC;IAClC,CAAC;IAED;;;;MAIE;IACF,IAAI,GAAG;QACH,OAAO,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;IAC9B,CAAC;IAED;;;MAGE;IACF,IAAI,WAAW,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAC/C,mFAAmF;IACnF,IAAI,iBAAiB,KAAK,OAAO,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC;IAGjD,KAAK,GAAG,IAAI,KAAK,EAAE,CAAC;IACpB,YAAY,GAAW,CAAC,CAAC;IACzB,kBAAkB,GAAW,CAAC,CAAC;IACtB,WAAW,GAAa,EAAE,CAAC;IACpC,eAAe,GAAW,CAAC,CAAC;IAEpC;QACI,IAAI,OAAO,SAAS,KAAK,QAAQ;YAC7B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IACnC,CAAC;IAED;;OAEG;IACH,MAAM;QACF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC;QACvC,kFAAkF;QAClF,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,CAAC,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC;QACzC,IAAI,IAAI,CAAC,SAAS,IAAI,CAAC;YAAE,IAAI,CAAC,SAAS,GAAG,cAAc,CAAC;QACzD,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,SAAS,CAAC;QACjC,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC;QAChB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,SAAS,CAAC;QAE5B,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,EAAE;YAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;;YACnE,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC;QACtE,IAAI,GAAG,GAAG,CAAC,CAAC;QACZ,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,EAAE;YAC5C,GAAG,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,CAAC,kBAAkB,GAAG,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC;QACxD,IAAI,CAAC,YAAY,GAAG,CAAC,GAAG,IAAI,CAAC,kBAAkB,CAAC;IACpD,CAAC;CACJ"}
@@ -119,7 +119,7 @@ declare class InstancedMeshRenderer {
119
119
  add(handle: InstanceHandle): boolean;
120
120
  remove(handle: InstanceHandle, delete_: boolean): void;
121
121
  updateInstance(mat: Matrix4, index: number): void;
122
- updateGeometry(geo: BufferGeometry, index: number): boolean;
122
+ updateGeometry(geo: BufferGeometry, geometryIndex: number): boolean;
123
123
  private onBeforeRender;
124
124
  private onAfterRender;
125
125
  private validateGeometry;
@@ -130,8 +130,6 @@ declare class InstancedMeshRenderer {
130
130
  private mustGrow;
131
131
  private grow;
132
132
  private tryEstimateVertexCountSize;
133
- private readonly _availableBuckets;
134
- private readonly _usedBuckets;
135
133
  private addGeometry;
136
134
  private removeGeometry;
137
135
  }
@@ -502,7 +502,7 @@ class InstancedMeshRenderer {
502
502
  this._batchedMesh.setMatrixAt(index, mat);
503
503
  this.markNeedsUpdate();
504
504
  }
505
- updateGeometry(geo, index) {
505
+ updateGeometry(geo, geometryIndex) {
506
506
  if (!this.validateGeometry(geo)) {
507
507
  return false;
508
508
  }
@@ -510,8 +510,10 @@ class InstancedMeshRenderer {
510
510
  this.grow(geo);
511
511
  }
512
512
  if (debugInstancing)
513
- console.debug("UPDATE MESH", index, this._batchedMesh["_geometryCount"], geo.name, getMeshInformation(geo), geo.attributes.position.count, geo.index ? geo.index.count : 0);
514
- this._batchedMesh.setGeometryAt(index, geo);
513
+ console.debug("[Instancing] UPDATE GEOMETRY at " + geometryIndex, this._batchedMesh["_geometryCount"], geo.name, getMeshInformation(geo), geo.attributes.position.count, geo.index ? geo.index.count : 0);
514
+ this._batchedMesh.setGeometryAt(geometryIndex, geo);
515
+ // for LOD mesh updates we need to make sure to save the geometry index
516
+ this._geometryIds.set(geo, geometryIndex);
515
517
  this.markNeedsUpdate();
516
518
  return true;
517
519
  }
@@ -607,8 +609,6 @@ class InstancedMeshRenderer {
607
609
  this._maxInstanceCount = newSize;
608
610
  // since we have a new batched mesh we need to re-add all the instances
609
611
  // fixes https://linear.app/needle/issue/NE-5711
610
- this._usedBuckets.length = 0;
611
- this._availableBuckets.length = 0;
612
612
  // add current instances to new instanced mesh
613
613
  const original = [...this._handles];
614
614
  this._handles = [];
@@ -663,8 +663,6 @@ class InstancedMeshRenderer {
663
663
  }
664
664
  return { vertexCount: maxVertexCount, indexCount: maxIndexCount };
665
665
  }
666
- _availableBuckets = new Array();
667
- _usedBuckets = new Array();
668
666
  addGeometry(handle) {
669
667
  const obj = handle.object;
670
668
  const geo = obj.geometry;
@@ -672,50 +670,11 @@ class InstancedMeshRenderer {
672
670
  // if the geometry is null we cannot add it
673
671
  return;
674
672
  }
675
- // if (handle.reservedVertexCount <= 0 || handle.reservedIndexCount <= 0) {
676
- // console.error("Cannot add geometry with 0 vertices or indices", handle.name);
677
- // return;
678
- // }
679
- // search the smallest available bucket that fits our handle
680
- let smallestBucket = null;
681
- let smallestBucketIndex = -1;
682
- for (let i = this._availableBuckets.length - 1; i >= 0; i--) {
683
- const bucket = this._availableBuckets[i];
684
- if (bucket.vertexCount >= handle.maxVertexCount && bucket.indexCount >= handle.maxIndexCount) {
685
- if (smallestBucket == null || bucket.vertexCount < smallestBucket.vertexCount) {
686
- smallestBucket = bucket;
687
- smallestBucketIndex = i;
688
- }
689
- }
690
- }
691
- // if we have a bucket that is big enough, use it
692
- if (smallestBucket != null) {
693
- const bucket = smallestBucket;
694
- if (debugInstancing)
695
- console.debug(`[Instancing] SET GEOMETRY \"${handle.name}\"\nGEOMETRY_ID=${bucket.geometryIndex}\n${this._currentInstanceCount} instances\n${handle.maxVertexCount} vertices, ${handle.maxIndexCount} indices, `);
696
- try {
697
- this._batchedMesh.setGeometryAt(bucket.geometryIndex, handle.object.geometry);
698
- const newIndex = this._batchedMesh.addInstance(bucket.geometryIndex);
699
- this._batchedMesh.setMatrixAt(newIndex, handle.object.matrixWorld);
700
- this._batchedMesh.setVisibleAt(newIndex, true);
701
- handle.__instanceIndex = newIndex;
702
- this._usedBuckets[bucket.geometryIndex] = bucket;
703
- this._availableBuckets.splice(smallestBucketIndex, 1);
704
- return;
705
- }
706
- catch (err) {
707
- if (debugInstancing)
708
- console.error("Failed to re-use space", err);
709
- else if (isDevEnvironment()) {
710
- console.warn(`Failed to re-use space \"${err instanceof Error ? err.message : err}\" in bucket ${bucket.geometryIndex} (${bucket.vertexCount}) - will add new geometry instead`);
711
- }
712
- }
713
- }
714
673
  // otherwise add more geometry / instances
715
674
  let geometryId = this._geometryIds.get(geo);
716
675
  if (geometryId === undefined || geometryId === null) {
717
676
  if (debugInstancing)
718
- console.debug(`[Instancing] > ADD GEOMETRY \"${handle.name}\"\n${this._currentInstanceCount} instances, ${handle.maxVertexCount} max vertices, ${handle.maxIndexCount} max indices`);
677
+ console.debug(`[Instancing] > ADD NEW GEOMETRY \"${handle.name} (${geo.name}; ${geo.uuid})\"\n${this._currentInstanceCount} instances, ${handle.maxVertexCount} max vertices, ${handle.maxIndexCount} max indices`);
719
678
  geometryId = this._batchedMesh.addGeometry(geo, handle.maxVertexCount, handle.maxIndexCount);
720
679
  this._geometryIds.set(geo, geometryId);
721
680
  }
@@ -730,7 +689,6 @@ class InstancedMeshRenderer {
730
689
  handle.__instanceIndex = i;
731
690
  handle.__reservedVertexRange = handle.maxVertexCount;
732
691
  handle.__reservedIndexRange = handle.maxIndexCount;
733
- this._usedBuckets[i] = { geometryIndex: geometryId, vertexCount: handle.maxVertexCount, indexCount: handle.maxIndexCount };
734
692
  this._batchedMesh.setMatrixAt(i, handle.object.matrixWorld);
735
693
  if (debugInstancing)
736
694
  console.debug(`[Instancing] > ADDED INSTANCE \"${handle.name}\"\nGEOMETRY_ID=${geometryId}\n${this._currentInstanceCount} instances\nIndex: ${handle.__instanceIndex}`);
@@ -740,7 +698,6 @@ class InstancedMeshRenderer {
740
698
  console.warn("Cannot remove geometry, instance index is invalid", handle.name);
741
699
  return;
742
700
  }
743
- this._usedBuckets.splice(handle.__instanceIndex, 1);
744
701
  // deleteGeometry is currently not useable since there's no optimize method
745
702
  // https://github.com/mrdoob/three.js/issues/27985
746
703
  // if (del)
@@ -751,11 +708,6 @@ class InstancedMeshRenderer {
751
708
  console.debug(`[Instancing] < REMOVE INSTANCE \"${handle.name}\" at [${handle.__instanceIndex}]\nGEOMETRY_ID=${handle.__geometryIndex}\n${this._currentInstanceCount} instances\nIndex: ${handle.__instanceIndex}`);
752
709
  }
753
710
  this._batchedMesh.deleteInstance(handle.__instanceIndex);
754
- this._availableBuckets.push({
755
- geometryIndex: handle.__geometryIndex,
756
- vertexCount: handle.reservedVertexCount,
757
- indexCount: handle.reservedIndexCount
758
- });
759
711
  }
760
712
  }
761
713
  function getMeshInformation(geo) {
@@ -1 +1 @@
1
- {"version":3,"file":"RendererInstancing.js","sourceRoot":"","sources":["../../src/engine-components/RendererInstancing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"RendererInstancing.js","sourceRoot":"","sources":["../../src/engine-components/RendererInstancing.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,7 @@ export declare class PostProcessingHandler {
13
13
  private _isActive;
14
14
  private readonly context;
15
15
  constructor(context: Context);
16
- apply(components: PostProcessingEffect[]): void;
16
+ apply(components: PostProcessingEffect[]): Promise<void>;
17
17
  unapply(): void;
18
18
  dispose(): void;
19
19
  private onApply;
@@ -2,7 +2,7 @@ import { HalfFloatType, NoToneMapping } from "three";
2
2
  import { showBalloonWarning } from "../../engine/debug/index.js";
3
3
  // import { internal_SetSharpeningEffectModule } from "./Effects/Sharpening.js";
4
4
  import { MODULES } from "../../engine/engine_modules.js";
5
- import { DeviceUtilities, getParam } from "../../engine/engine_utils.js";
5
+ import { getParam } from "../../engine/engine_utils.js";
6
6
  globalThis["NEEDLE_USE_POSTPROCESSING"] = globalThis["NEEDLE_USE_POSTPROCESSING"] !== undefined ? globalThis["NEEDLE_USE_POSTPROCESSING"] : true;
7
7
  const debug = getParam("debugpost");
8
8
  const activeKey = Symbol("needle:postprocessing-handler");
@@ -31,17 +31,17 @@ export class PostProcessingHandler {
31
31
  console.warn("Postprocessing is disabled via vite env setting");
32
32
  else
33
33
  console.debug("Postprocessing is disabled via vite env setting");
34
- return;
34
+ return Promise.resolve();
35
35
  }
36
36
  if (!NEEDLE_USE_POSTPROCESSING) {
37
37
  if (debug)
38
38
  console.warn("Postprocessing is disabled via global vite define setting");
39
39
  else
40
40
  console.debug("Postprocessing is disabled via vite define");
41
- return;
41
+ return Promise.resolve();
42
42
  }
43
43
  this._isActive = true;
44
- this.onApply(this.context, components);
44
+ return this.onApply(this.context, components);
45
45
  }
46
46
  unapply() {
47
47
  if (debug)
@@ -79,7 +79,7 @@ export class PostProcessingHandler {
79
79
  return;
80
80
  // IMPORTANT
81
81
  // Load postprocessing modules ONLY here to get lazy loading of the postprocessing package
82
- const modules = await Promise.all([
82
+ await Promise.all([
83
83
  MODULES.POSTPROCESSING.load(),
84
84
  MODULES.POSTPROCESSING_AO.load(),
85
85
  // import("./Effects/Sharpening.effect")
@@ -150,14 +150,12 @@ export class PostProcessingHandler {
150
150
  // and when we disable postprocessing we want to restore the original setting
151
151
  // https://github.com/pmndrs/postprocessing/blob/271944b74b543a5b743a62803a167b60cc6bb4ee/src/core/EffectComposer.js#L230C12-L230C12
152
152
  renderer[autoclearSetting] = renderer.autoClear;
153
- const maxSamples = renderer.capabilities.maxSamples;
154
153
  // create composer and set active on context
155
154
  if (!this._composer) {
156
155
  // const hdrRenderTarget = new WebGLRenderTarget(window.innerWidth, window.innerHeight, { type: HalfFloatType });
157
156
  this._composer = new MODULES.POSTPROCESSING.MODULE.EffectComposer(renderer, {
158
157
  frameBufferType: HalfFloatType,
159
158
  stencilBuffer: true,
160
- multisampling: Math.min(DeviceUtilities.isMobileDevice() ? 4 : 8, maxSamples),
161
159
  });
162
160
  }
163
161
  if (context.composer && context.composer !== this._composer) {
@@ -185,18 +183,12 @@ export class PostProcessingHandler {
185
183
  if (ef instanceof MODULES.POSTPROCESSING.MODULE.Effect)
186
184
  effects.push(ef);
187
185
  else if (ef instanceof MODULES.POSTPROCESSING.MODULE.Pass) {
188
- // const pass = new MODULES.POSTPROCESSING.MODULE.EffectPass(cam, ...effects);
189
- // pass.mainScene = scene;
190
- // pass.name = effects.map(e => e.constructor.name).join(", ");
191
- // pass.enabled = true;
192
- // composer.addPass(pass);
193
- // effects.length = 0;
194
186
  composer.addPass(ef);
195
187
  }
196
188
  else {
197
189
  // seems some effects are not correctly typed, but three can deal with them,
198
190
  // so we might need to just pass them through
199
- // composer.addPass(ef);
191
+ composer.addPass(ef);
200
192
  }
201
193
  }
202
194
  // create and apply uber pass
@@ -1 +1 @@
1
- {"version":3,"file":"PostProcessingHandler.js","sourceRoot":"","sources":["../../../src/engine-components/postprocessing/PostProcessingHandler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PostProcessingHandler.js","sourceRoot":"","sources":["../../../src/engine-components/postprocessing/PostProcessingHandler.ts"],"names":[],"mappings":"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"}
@@ -38,10 +38,21 @@ export declare class Volume extends Behaviour implements IEditorModificationRece
38
38
  /** Currently active postprocessing effects */
39
39
  get effects(): PostProcessingEffect[];
40
40
  sharedProfile?: VolumeProfile;
41
+ /**
42
+ * Set multisampling to "auto" to automatically adjust the multisampling level based on performance.
43
+ * Set to a number to manually set the multisampling level.
44
+ * @default "auto"
45
+ * @min 0
46
+ * @max renderer.capabilities.maxSamples
47
+ */
48
+ multisampling: "auto" | number;
41
49
  /**
42
50
  * Add a post processing effect to the stack and schedules the effect stack to be re-created.
43
51
  */
44
52
  addEffect<T extends PostProcessingEffect | Effect>(effect: T): T;
53
+ /**
54
+ * Remove a post processing effect from the stack and schedules the effect stack to be re-created.
55
+ */
45
56
  removeEffect<T extends PostProcessingEffect | Effect>(effect: T): T;
46
57
  private _postprocessing?;
47
58
  private readonly _activeEffects;
@@ -52,6 +63,10 @@ export declare class Volume extends Behaviour implements IEditorModificationRece
52
63
  markDirty(): void;
53
64
  /** @internal */
54
65
  awake(): void;
66
+ private _componentEnabledTime;
67
+ private _multisampleAutoChangeTime;
68
+ private _multisampleAutoDecreaseTime;
69
+ /** @internal */
55
70
  onEnable(): void;
56
71
  /** @internal */
57
72
  onDisable(): void;