@onerjs/core 8.54.3 → 8.54.4

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 (45) hide show
  1. package/DeviceInput/webDeviceInputSystem.js +4 -0
  2. package/DeviceInput/webDeviceInputSystem.js.map +1 -1
  3. package/Engines/abstractEngine.pure.js +2 -2
  4. package/Engines/abstractEngine.pure.js.map +1 -1
  5. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.pure.js +3 -1
  6. package/Materials/Node/Blocks/PBR/pbrMetallicRoughnessBlock.pure.js.map +1 -1
  7. package/Meshes/GaussianSplatting/gaussianSplattingMeshBase.pure.js +21 -2
  8. package/Meshes/GaussianSplatting/gaussianSplattingMeshBase.pure.js.map +1 -1
  9. package/Meshes/GaussianSplatting/gaussianSplattingSortWorker.js +17 -4
  10. package/Meshes/GaussianSplatting/gaussianSplattingSortWorker.js.map +1 -1
  11. package/Meshes/abstractMesh.pure.js +5 -3
  12. package/Meshes/abstractMesh.pure.js.map +1 -1
  13. package/Misc/tools.pure.js +1 -1
  14. package/Misc/tools.pure.js.map +1 -1
  15. package/Physics/v2/Plugins/havokPlugin.d.ts +15 -0
  16. package/Physics/v2/Plugins/havokPlugin.js +16 -6
  17. package/Physics/v2/Plugins/havokPlugin.js.map +1 -1
  18. package/Physics/v2/characterController.js +2 -2
  19. package/Physics/v2/characterController.js.map +1 -1
  20. package/ShadersWGSL/ShadersInclude/clusteredLightingCompute.d.ts +5 -0
  21. package/ShadersWGSL/ShadersInclude/clusteredLightingCompute.js +29 -0
  22. package/ShadersWGSL/ShadersInclude/clusteredLightingCompute.js.map +1 -0
  23. package/ShadersWGSL/ShadersInclude/lightFragment.js +2 -3
  24. package/ShadersWGSL/ShadersInclude/lightFragment.js.map +1 -1
  25. package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.d.ts +1 -0
  26. package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.js +2 -17
  27. package/ShadersWGSL/ShadersInclude/lightsFragmentFunctions.js.map +1 -1
  28. package/ShadersWGSL/ShadersInclude/pbrClusteredLightingFunctions.d.ts +6 -0
  29. package/ShadersWGSL/ShadersInclude/pbrClusteredLightingFunctions.js +123 -0
  30. package/ShadersWGSL/ShadersInclude/pbrClusteredLightingFunctions.js.map +1 -0
  31. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.d.ts +1 -1
  32. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js +2 -111
  33. package/ShadersWGSL/ShadersInclude/pbrDirectLightingFunctions.js.map +1 -1
  34. package/ShadersWGSL/background.fragment.js +2 -1
  35. package/ShadersWGSL/background.fragment.js.map +1 -1
  36. package/ShadersWGSL/default.fragment.js +2 -1
  37. package/ShadersWGSL/default.fragment.js.map +1 -1
  38. package/ShadersWGSL/openpbr.fragment.js +2 -1
  39. package/ShadersWGSL/openpbr.fragment.js.map +1 -1
  40. package/ShadersWGSL/pbr.fragment.js +2 -1
  41. package/ShadersWGSL/pbr.fragment.js.map +1 -1
  42. package/package.json +1 -1
  43. package/scene.pure.d.ts +7 -0
  44. package/scene.pure.js +8 -0
  45. package/scene.pure.js.map +1 -1
package/scene.pure.js CHANGED
@@ -1321,6 +1321,13 @@ export class Scene {
1321
1321
  /** @internal */
1322
1322
  this._pendingData = [];
1323
1323
  this._isDisposed = false;
1324
+ /**
1325
+ * @internal
1326
+ * Set to true once scene disposal has begun (it stays true afterwards). Used so that resources released during
1327
+ * teardown (e.g. mesh effects) are freed immediately instead of being deferred to the next frame, which may never
1328
+ * happen once rendering stops.
1329
+ */
1330
+ this._isDisposing = false;
1324
1331
  this._isReadyChecks = [];
1325
1332
  /**
1326
1333
  * Gets or sets a boolean indicating that all submeshes of active meshes must be rendered
@@ -4635,6 +4642,7 @@ export class Scene {
4635
4642
  if (this.isDisposed) {
4636
4643
  return;
4637
4644
  }
4645
+ this._isDisposing = true;
4638
4646
  this.beforeRender = null;
4639
4647
  this.afterRender = null;
4640
4648
  this.metadata = null;