@babylonjs-toolkit/next 9.34.100 → 9.35.0

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 (109) hide show
  1. package/lib/index.d.ts +80 -14
  2. package/lib/index.d.ts.map +1 -1
  3. package/lib/index.js +80 -14
  4. package/lib/leaderboardaroundpage.d.ts +5 -0
  5. package/lib/leaderboardaroundpage.d.ts.map +1 -0
  6. package/lib/leaderboardaroundpage.js +1 -0
  7. package/lib/leaderboardcallresult.d.ts +13 -0
  8. package/lib/leaderboardcallresult.d.ts.map +1 -0
  9. package/lib/leaderboardcallresult.js +1 -0
  10. package/lib/leaderboardclient.d.ts +95 -0
  11. package/lib/leaderboardclient.d.ts.map +1 -0
  12. package/lib/leaderboardclient.js +448 -0
  13. package/lib/leaderboardclientoptions.d.ts +12 -0
  14. package/lib/leaderboardclientoptions.d.ts.map +1 -0
  15. package/lib/leaderboardclientoptions.js +1 -0
  16. package/lib/leaderboardentriespage.d.ts +10 -0
  17. package/lib/leaderboardentriespage.d.ts.map +1 -0
  18. package/lib/leaderboardentriespage.js +1 -0
  19. package/lib/leaderboardentryview.d.ts +14 -0
  20. package/lib/leaderboardentryview.d.ts.map +1 -0
  21. package/lib/leaderboardentryview.js +1 -0
  22. package/lib/leaderboarderrorbody.d.ts +6 -0
  23. package/lib/leaderboarderrorbody.d.ts.map +1 -0
  24. package/lib/leaderboarderrorbody.js +1 -0
  25. package/lib/leaderboardfetch.d.ts +2 -0
  26. package/lib/leaderboardfetch.d.ts.map +1 -0
  27. package/lib/leaderboardfetch.js +1 -0
  28. package/lib/leaderboardkeeppolicy.d.ts +2 -0
  29. package/lib/leaderboardkeeppolicy.d.ts.map +1 -0
  30. package/lib/leaderboardkeeppolicy.js +1 -0
  31. package/lib/leaderboardmetadata.d.ts +5 -0
  32. package/lib/leaderboardmetadata.d.ts.map +1 -0
  33. package/lib/leaderboardmetadata.js +1 -0
  34. package/lib/leaderboardmetadatavalue.d.ts +4 -0
  35. package/lib/leaderboardmetadatavalue.d.ts.map +1 -0
  36. package/lib/leaderboardmetadatavalue.js +1 -0
  37. package/lib/leaderboardplayersession.d.ts +6 -0
  38. package/lib/leaderboardplayersession.d.ts.map +1 -0
  39. package/lib/leaderboardplayersession.js +1 -0
  40. package/lib/leaderboardplayerview.d.ts +7 -0
  41. package/lib/leaderboardplayerview.d.ts.map +1 -0
  42. package/lib/leaderboardplayerview.js +1 -0
  43. package/lib/leaderboardpostattempt.d.ts +6 -0
  44. package/lib/leaderboardpostattempt.d.ts.map +1 -0
  45. package/lib/leaderboardpostattempt.js +1 -0
  46. package/lib/leaderboardpublicboardview.d.ts +17 -0
  47. package/lib/leaderboardpublicboardview.d.ts.map +1 -0
  48. package/lib/leaderboardpublicboardview.js +1 -0
  49. package/lib/leaderboardrangequery.d.ts +7 -0
  50. package/lib/leaderboardrangequery.d.ts.map +1 -0
  51. package/lib/leaderboardrangequery.js +1 -0
  52. package/lib/leaderboardrefusalreason.d.ts +2 -0
  53. package/lib/leaderboardrefusalreason.d.ts.map +1 -0
  54. package/lib/leaderboardrefusalreason.js +1 -0
  55. package/lib/leaderboardscoreformat.d.ts +2 -0
  56. package/lib/leaderboardscoreformat.d.ts.map +1 -0
  57. package/lib/leaderboardscoreformat.js +1 -0
  58. package/lib/leaderboardscoreresult.d.ts +18 -0
  59. package/lib/leaderboardscoreresult.d.ts.map +1 -0
  60. package/lib/leaderboardscoreresult.js +1 -0
  61. package/lib/leaderboardscoresubmission.d.ts +8 -0
  62. package/lib/leaderboardscoresubmission.d.ts.map +1 -0
  63. package/lib/leaderboardscoresubmission.js +1 -0
  64. package/lib/leaderboardseasonview.d.ts +7 -0
  65. package/lib/leaderboardseasonview.d.ts.map +1 -0
  66. package/lib/leaderboardseasonview.js +1 -0
  67. package/lib/leaderboardsortorder.d.ts +2 -0
  68. package/lib/leaderboardsortorder.d.ts.map +1 -0
  69. package/lib/leaderboardsortorder.js +1 -0
  70. package/lib/leaderboardstorage.d.ts +6 -0
  71. package/lib/leaderboardstorage.d.ts.map +1 -0
  72. package/lib/leaderboardstorage.js +1 -0
  73. package/lib/leaderboardstoredplayer.d.ts +5 -0
  74. package/lib/leaderboardstoredplayer.d.ts.map +1 -0
  75. package/lib/leaderboardstoredplayer.js +1 -0
  76. package/lib/leaderboardsubmission.d.ts +8 -0
  77. package/lib/leaderboardsubmission.d.ts.map +1 -0
  78. package/lib/leaderboardsubmission.js +1 -0
  79. package/lib/leaderboardsubmissionrequest.d.ts +12 -0
  80. package/lib/leaderboardsubmissionrequest.d.ts.map +1 -0
  81. package/lib/leaderboardsubmissionrequest.js +1 -0
  82. package/lib/leaderboardsubmissionresponse.d.ts +7 -0
  83. package/lib/leaderboardsubmissionresponse.d.ts.map +1 -0
  84. package/lib/leaderboardsubmissionresponse.js +1 -0
  85. package/lib/leaderboardsubmitresult.d.ts +15 -0
  86. package/lib/leaderboardsubmitresult.d.ts.map +1 -0
  87. package/lib/leaderboardsubmitresult.js +1 -0
  88. package/lib/leaderboardtarget.d.ts +6 -0
  89. package/lib/leaderboardtarget.d.ts.map +1 -0
  90. package/lib/leaderboardtarget.js +1 -0
  91. package/lib/leaderboardtargetentry.d.ts +9 -0
  92. package/lib/leaderboardtargetentry.d.ts.map +1 -0
  93. package/lib/leaderboardtargetentry.js +1 -0
  94. package/lib/leaderboardtrustlevel.d.ts +2 -0
  95. package/lib/leaderboardtrustlevel.d.ts.map +1 -0
  96. package/lib/leaderboardtrustlevel.js +1 -0
  97. package/lib/leaderboardvariantdimension.d.ts +6 -0
  98. package/lib/leaderboardvariantdimension.d.ts.map +1 -0
  99. package/lib/leaderboardvariantdimension.js +1 -0
  100. package/lib/leaderboardwriteoutcome.d.ts +2 -0
  101. package/lib/leaderboardwriteoutcome.d.ts.map +1 -0
  102. package/lib/leaderboardwriteoutcome.js +1 -0
  103. package/lib/project.d.ts +15 -0
  104. package/lib/project.d.ts.map +1 -1
  105. package/lib/project.js +74 -14
  106. package/lib/scenemanager.d.ts +5 -0
  107. package/lib/scenemanager.d.ts.map +1 -1
  108. package/lib/scenemanager.js +46 -23
  109. package/package.json +17 -13
@@ -143,7 +143,7 @@ import { UnityScrollBar } from './unityscrollbar';
143
143
  import { UnityDropdownMenu } from './unitydropdownmenu';
144
144
  import { RectAreaLight } from '@babylonjs/core/Lights/rectAreaLight';
145
145
  export class SceneManager {
146
- static get Version() { return "9.34.100 - R1"; }
146
+ static get Version() { return "9.35.0 - R1"; }
147
147
  static get Copyright() { return "All rights reserved (c) 2024 Mackey Kinard"; }
148
148
  static IsPrecompilingShaders() {
149
149
  return SceneManager.PrecompileShaders !== false;
@@ -91739,6 +91739,7 @@ export class LightProbeNetwork extends ScriptComponent {
91739
91739
  }
91740
91740
  if (this._dynCount === 0)
91741
91741
  return;
91742
+ this.dropDisposedEntries();
91742
91743
  this._walker.maxWalkSteps = LightProbeNetwork.MaxWalkSteps;
91743
91744
  for (let i = 0; i < this._dynCount; i++)
91744
91745
  this.sampleDynamic(i);
@@ -91901,10 +91902,10 @@ export class LightProbeNetwork extends ScriptComponent {
91901
91902
  const meshState = LightProbeNetwork.MeshState(mesh);
91902
91903
  meshState._tkLightProbeOwner = this;
91903
91904
  if (mesh.onDisposeObservable != null && meshState._tkLightProbeDisposeObserver == null) {
91904
- meshState._tkLightProbeDisposeObserver = mesh.onDisposeObservable.addOnce(() => {
91905
+ meshState._tkLightProbeDisposeObserver = mesh.onDisposeObservable.add(() => {
91905
91906
  meshState._tkLightProbeDisposeObserver = null;
91906
- this.detach(mesh);
91907
- });
91907
+ this.detachDisposed(mesh);
91908
+ }, undefined, true, undefined, true);
91908
91909
  }
91909
91910
  return true;
91910
91911
  }
@@ -91960,6 +91961,16 @@ export class LightProbeNetwork extends ScriptComponent {
91960
91961
  return;
91961
91962
  LightProbeNetwork.SetRider(mesh, toolkitMetadata, null);
91962
91963
  toolkitMetadata.lightProbeOcclusion = null;
91964
+ toolkitMetadata.lightProbeSlot = -1;
91965
+ this.releaseMesh(mesh, registryIndex);
91966
+ }
91967
+ detachDisposed(mesh) {
91968
+ this.detach(mesh);
91969
+ if (LightProbeNetwork.MeshState(mesh)._tkLightProbeOwner !== this)
91970
+ return;
91971
+ this.releaseMesh(mesh, this._dynMeshes.indexOf(mesh));
91972
+ }
91973
+ releaseMesh(mesh, registryIndex) {
91963
91974
  if (this._noEnvironment === true)
91964
91975
  LightProbeAmbient.ExcludeFromAmbient(this.scene, mesh, false);
91965
91976
  for (let lightIndex = 0; lightIndex < this._bakedLights.length; lightIndex++) {
@@ -91968,26 +91979,11 @@ export class LightProbeNetwork extends ScriptComponent {
91968
91979
  if (excludedIndex >= 0)
91969
91980
  excluded.splice(excludedIndex, 1);
91970
91981
  }
91971
- if (registryIndex >= 0) {
91972
- const lastIndex = this._dynCount - 1;
91973
- if (registryIndex !== lastIndex) {
91974
- const moved = this._dynMeshes[lastIndex];
91975
- this._dynMeshes[registryIndex] = moved;
91976
- this._dynTet[registryIndex] = this._dynTet[lastIndex];
91977
- this._dynHasAnchor[registryIndex] = this._dynHasAnchor[lastIndex];
91978
- for (let axis = 0; axis < 3; axis++) {
91979
- this._dynLast[registryIndex * 3 + axis] = this._dynLast[lastIndex * 3 + axis];
91980
- this._dynAnchor[registryIndex * 3 + axis] = this._dynAnchor[lastIndex * 3 + axis];
91981
- }
91982
- moved.metadata.toolkit.lightProbeSlot = registryIndex;
91983
- }
91984
- this._dynMeshes[lastIndex] = null;
91985
- this._dynCount--;
91986
- }
91987
- else {
91982
+ if (registryIndex >= 0)
91983
+ this.removeDynamicEntry(registryIndex);
91984
+ else
91988
91985
  this._staticCount--;
91989
- }
91990
- toolkitMetadata.lightProbeSlot = -1;
91986
+ const meshState = LightProbeNetwork.MeshState(mesh);
91991
91987
  meshState._tkLightProbeOwner = null;
91992
91988
  if (meshState._tkLightProbeDisposeObserver != null) {
91993
91989
  if (mesh.onDisposeObservable != null)
@@ -91995,6 +91991,33 @@ export class LightProbeNetwork extends ScriptComponent {
91995
91991
  meshState._tkLightProbeDisposeObserver = null;
91996
91992
  }
91997
91993
  }
91994
+ removeDynamicEntry(registryIndex) {
91995
+ const lastIndex = this._dynCount - 1;
91996
+ if (registryIndex !== lastIndex) {
91997
+ const moved = this._dynMeshes[lastIndex];
91998
+ this._dynMeshes[registryIndex] = moved;
91999
+ this._dynTet[registryIndex] = this._dynTet[lastIndex];
92000
+ this._dynHasAnchor[registryIndex] = this._dynHasAnchor[lastIndex];
92001
+ for (let axis = 0; axis < 3; axis++) {
92002
+ this._dynLast[registryIndex * 3 + axis] = this._dynLast[lastIndex * 3 + axis];
92003
+ this._dynAnchor[registryIndex * 3 + axis] = this._dynAnchor[lastIndex * 3 + axis];
92004
+ }
92005
+ const movedToolkit = (moved.metadata != null) ? moved.metadata.toolkit : null;
92006
+ if (movedToolkit != null)
92007
+ movedToolkit.lightProbeSlot = registryIndex;
92008
+ }
92009
+ this._dynMeshes[lastIndex] = null;
92010
+ this._dynCount--;
92011
+ }
92012
+ dropDisposedEntries() {
92013
+ for (let i = this._dynCount - 1; i >= 0; i--) {
92014
+ const mesh = this._dynMeshes[i];
92015
+ const hasToolkitMetadata = (mesh.metadata != null && mesh.metadata.toolkit != null);
92016
+ if (hasToolkitMetadata && !mesh.isDisposed())
92017
+ continue;
92018
+ this.releaseMesh(mesh, i);
92019
+ }
92020
+ }
91998
92021
  sampleMeshNow(mesh) {
91999
92022
  const tk = (mesh != null && mesh.metadata != null) ? mesh.metadata.toolkit : null;
92000
92023
  if (tk == null || tk.lightProbeSH == null)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@babylonjs-toolkit/next",
3
- "version": "9.34.100",
3
+ "version": "9.35.0",
4
4
  "description": "Babylon Toolkit Runtime Library (ES6)",
5
5
  "author": "MackeyK24 <mackeyk24@gmail.com>",
6
6
  "main": "lib/index.js",
@@ -141,6 +141,10 @@
141
141
  "import": "./lib/contentinstaller.js",
142
142
  "types": "./lib/contentinstaller.d.ts"
143
143
  },
144
+ "./leaderboardclient": {
145
+ "import": "./lib/leaderboardclient.js",
146
+ "types": "./lib/leaderboardclient.d.ts"
147
+ },
144
148
  "./workers/bt-content-worker.js": "./lib/workers/bt-content-worker.js",
145
149
  "./package.json": "./package.json"
146
150
  },
@@ -165,23 +169,23 @@
165
169
  "lib/**/*"
166
170
  ],
167
171
  "devDependencies": {
168
- "@babylonjs/core": "9.34.0",
169
- "@babylonjs/gui": "9.34.0",
172
+ "@babylonjs/core": "9.35.0",
173
+ "@babylonjs/gui": "9.35.0",
170
174
  "@babylonjs/havok": "^1.3.14",
171
- "@babylonjs/addons": "9.34.0",
172
- "@babylonjs/loaders": "9.34.0",
173
- "@babylonjs/materials": "9.34.0",
174
- "@babylonjs/inspector": "9.34.0",
175
+ "@babylonjs/addons": "9.35.0",
176
+ "@babylonjs/loaders": "9.35.0",
177
+ "@babylonjs/materials": "9.35.0",
178
+ "@babylonjs/inspector": "9.35.0",
175
179
  "rimraf": "^6.0.1",
176
180
  "typescript": "^6.0.3"
177
181
  },
178
182
  "peerDependencies": {
179
- "@babylonjs/core": "9.34.0",
180
- "@babylonjs/gui": "9.34.0",
183
+ "@babylonjs/core": "9.35.0",
184
+ "@babylonjs/gui": "9.35.0",
181
185
  "@babylonjs/havok": "^1.3.14",
182
- "@babylonjs/addons": "9.34.0",
183
- "@babylonjs/loaders": "9.34.0",
184
- "@babylonjs/materials": "9.34.0",
185
- "@babylonjs/inspector": "9.34.0"
186
+ "@babylonjs/addons": "9.35.0",
187
+ "@babylonjs/loaders": "9.35.0",
188
+ "@babylonjs/materials": "9.35.0",
189
+ "@babylonjs/inspector": "9.35.0"
186
190
  }
187
191
  }