@galacean/engine-core 1.1.0-beta.10 → 1.1.0-beta.12

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 (97) hide show
  1. package/dist/main.js +45 -47
  2. package/dist/main.js.map +1 -1
  3. package/dist/miniprogram.js +45 -47
  4. package/dist/module.js +45 -47
  5. package/dist/module.js.map +1 -1
  6. package/package.json +3 -3
  7. package/types/RenderPipeline/RenderElementX.d.ts +12 -0
  8. package/types/SafeLoopArray.d.ts +37 -0
  9. package/types/Ticker.d.ts +30 -0
  10. package/types/animation/internal/AnimationCurveOwnerLayerData.d.ts +1 -0
  11. package/types/graphic/PrimitiveVertexBinding.d.ts +1 -0
  12. package/types/particle/ParticleData.d.ts +1 -0
  13. package/types/particle/ParticleMesh.d.ts +289 -0
  14. package/types/particle/ParticleShaderDeclaration.d.ts +1 -0
  15. package/types/particle/ParticleShaderMacro.d.ts +1 -0
  16. package/types/particle/ParticleShaderProperty.d.ts +1 -0
  17. package/types/particle/ParticleSystem.d.ts +41 -0
  18. package/types/particle/ParticleVertexElements.d.ts +1 -0
  19. package/types/particle/ParticleVertexUtils.d.ts +1 -0
  20. package/types/particle/enum/ParticleAnimationRowMode.d.ts +9 -0
  21. package/types/particle/enum/ParticleAnimationType.d.ts +9 -0
  22. package/types/particle/enum/ParticleCurveMode.d.ts +13 -0
  23. package/types/particle/enum/ParticleGradientMode.d.ts +13 -0
  24. package/types/particle/enum/ParticleRenderMode.d.ts +17 -0
  25. package/types/particle/enum/ParticleScaleMode.d.ts +11 -0
  26. package/types/particle/enum/ParticleShapeMultiModeValue.d.ts +9 -0
  27. package/types/particle/enum/ParticleShapeType.d.ts +15 -0
  28. package/types/particle/enum/ParticleSimulationSpace.d.ts +9 -0
  29. package/types/particle/enum/index.d.ts +9 -0
  30. package/types/particle/module/Burst.d.ts +38 -0
  31. package/types/particle/module/ColorGradient.d.ts +75 -0
  32. package/types/particle/module/ColorOverLifetimeModule.d.ts +20 -0
  33. package/types/particle/module/EmissionModule.d.ts +63 -0
  34. package/types/particle/module/FrameOverTime.d.ts +73 -0
  35. package/types/particle/module/ParticleCurve.d.ts +37 -0
  36. package/types/particle/module/RotationOverLifetimeModule.d.ts +21 -0
  37. package/types/particle/module/RotationVelocityGradient.d.ts +184 -0
  38. package/types/particle/module/SizeGradient.d.ts +151 -0
  39. package/types/particle/module/SizeOverLifetimeModule.d.ts +21 -0
  40. package/types/particle/module/StartFrame.d.ts +46 -0
  41. package/types/particle/module/TextureSheetAnimationModule.d.ts +37 -0
  42. package/types/particle/module/VelocityGradient.d.ts +110 -0
  43. package/types/particle/module/VelocityOverLifetimeModule.d.ts +22 -0
  44. package/types/particle/module/index.d.ts +15 -0
  45. package/types/particle/module/shape/BaseShape.d.ts +26 -0
  46. package/types/particle/module/shape/BoxShape.d.ts +20 -0
  47. package/types/particle/module/shape/CircleShape.d.ts +27 -0
  48. package/types/particle/module/shape/ConeShape.d.ts +35 -0
  49. package/types/particle/module/shape/HemisphereShape.d.ts +23 -0
  50. package/types/particle/module/shape/ShapeUtils.d.ts +1 -0
  51. package/types/particle/module/shape/SphereShape.d.ts +23 -0
  52. package/types/particle/module/shape/index.d.ts +5 -0
  53. package/types/particle/modules/ShapeModule.d.ts +9 -0
  54. package/types/particle/modules/shape/enums/ParticleShapeMultiModeValue.d.ts +9 -0
  55. package/types/particle/moudules/Burst.d.ts +25 -0
  56. package/types/particle/moudules/Emission.d.ts +47 -0
  57. package/types/particle/moudules/EmissionModule.d.ts +49 -0
  58. package/types/particle/moudules/MainModule.d.ts +59 -0
  59. package/types/particle/moudules/ParticleCurve.d.ts +27 -0
  60. package/types/particle/moudules/ParticleGradient.d.ts +28 -0
  61. package/types/particle/moudules/ShapeModule.d.ts +7 -0
  62. package/types/particle/moudules/shape/BaseShape.d.ts +28 -0
  63. package/types/particle/moudules/shape/BoxShape.d.ts +20 -0
  64. package/types/particle/moudules/shape/CircleShape.d.ts +27 -0
  65. package/types/particle/moudules/shape/ConeShape.d.ts +35 -0
  66. package/types/particle/moudules/shape/HemisphereShape.d.ts +23 -0
  67. package/types/particle/moudules/shape/ShapeUtils.d.ts +1 -0
  68. package/types/particle/moudules/shape/SphereShape.d.ts +23 -0
  69. package/types/particle/moudules/shape/enums/ParticleShapeMultiModeValue.d.ts +9 -0
  70. package/types/particle/moudules/shape/enums/ParticleShapeType.d.ts +15 -0
  71. package/types/particle/moudules/shape/index.d.ts +5 -0
  72. package/types/shadow/PipelinePass.d.ts +16 -0
  73. package/types/utils/BoolUpdateFlag.d.ts +12 -0
  74. package/types/utils/DisorderedArray.d.ts +18 -0
  75. package/types/utils/UpdateFlag.d.ts +20 -0
  76. package/types/utils/UpdateFlagManager.d.ts +1 -0
  77. package/types/utils/Utils.d.ts +31 -0
  78. package/types/xr/XRManager.d.ts +31 -0
  79. package/types/xr/component/XRPoseDriver.d.ts +10 -0
  80. package/types/xr/data/XRCamera.d.ts +6 -0
  81. package/types/xr/data/XRDevice.d.ts +9 -0
  82. package/types/xr/data/XRHandle.d.ts +10 -0
  83. package/types/xr/enum/EnumXRButton.d.ts +5 -0
  84. package/types/xr/enum/EnumXRDevicePhase.d.ts +4 -0
  85. package/types/xr/enum/EnumXRFeature.d.ts +9 -0
  86. package/types/xr/enum/EnumXRInputSource.d.ts +8 -0
  87. package/types/xr/enum/EnumXRMode.d.ts +7 -0
  88. package/types/xr/enum/EnumXRSubsystem.d.ts +4 -0
  89. package/types/xr/enum/EnumXRTrackingMode.d.ts +7 -0
  90. package/types/xr/feature/XRCameraManager.d.ts +21 -0
  91. package/types/xr/feature/XRFeature.d.ts +29 -0
  92. package/types/xr/feature/XRImageTrackManager.d.ts +10 -0
  93. package/types/xr/feature/XRInputManager.d.ts +16 -0
  94. package/types/xr/index.d.ts +18 -0
  95. package/types/xr/provider/XRProvider.d.ts +19 -0
  96. package/types/xr/subsystem/XRInputSubsystem.d.ts +5 -0
  97. package/types/xr/subsystem/XRSubsystem.d.ts +30 -0
@@ -15877,6 +15877,7 @@ __decorate([
15877
15877
  case "pointercancel":
15878
15878
  pointer.phase = exports.PointerPhase.Leave;
15879
15879
  pointer._firePointerExitAndEnter(null);
15880
+ break;
15880
15881
  }
15881
15882
  }
15882
15883
  events.length = 0;
@@ -16004,7 +16005,7 @@ __decorate([
16004
16005
  var point = PointerManager._tempPoint, ray = PointerManager._tempRay, hitResult = PointerManager._tempHitResult;
16005
16006
  for(var i = scenes.length - 1; i >= 0; i--){
16006
16007
  var scene = scenes[i];
16007
- if (scene.destroyed) {
16008
+ if (!scene.isActive || scene.destroyed) {
16008
16009
  continue;
16009
16010
  }
16010
16011
  var cameras = scene._activeCameras;
@@ -16566,7 +16567,7 @@ var unlitVs = "#define GLSLIFY 1\n#include <common>\n#include <common_vert>\n#in
16566
16567
  * @internal
16567
16568
  */ var ShaderProgramPool = /*#__PURE__*/ function() {
16568
16569
  function ShaderProgramPool() {
16569
- this._cacheHierarchy = 1;
16570
+ this._cacheHierarchyDepth = 1;
16570
16571
  this._cacheMap = Object.create(null);
16571
16572
  }
16572
16573
  var _proto = ShaderProgramPool.prototype;
@@ -16577,12 +16578,14 @@ var unlitVs = "#define GLSLIFY 1\n#include <common>\n#include <common_vert>\n#in
16577
16578
  */ _proto.get = function get(macros) {
16578
16579
  var cacheMap = this._cacheMap;
16579
16580
  var maskLength = macros._length;
16580
- if (maskLength > this._cacheHierarchy) {
16581
- this._resizeCacheMapHierarchy(cacheMap, 0, maskLength);
16581
+ var cacheHierarchyDepth = this._cacheHierarchyDepth;
16582
+ if (maskLength > cacheHierarchyDepth) {
16583
+ this._resizeCacheMapHierarchy(cacheMap, 0, cacheHierarchyDepth, maskLength - cacheHierarchyDepth);
16584
+ this._cacheHierarchyDepth = maskLength;
16582
16585
  }
16583
16586
  var mask = macros._mask;
16584
16587
  var endIndex = macros._length - 1;
16585
- var maxEndIndex = this._cacheHierarchy - 1;
16588
+ var maxEndIndex = this._cacheHierarchyDepth - 1;
16586
16589
  for(var i = 0; i < maxEndIndex; i++){
16587
16590
  var subMask = endIndex < i ? 0 : mask[i];
16588
16591
  var subCacheShaders = cacheMap[subMask];
@@ -16607,25 +16610,21 @@ var unlitVs = "#define GLSLIFY 1\n#include <common>\n#include <common_vert>\n#in
16607
16610
  */ _proto.cache = function cache(shaderProgram) {
16608
16611
  this._lastQueryMap[this._lastQueryKey] = shaderProgram;
16609
16612
  };
16610
- _proto._resizeCacheMapHierarchy = function _resizeCacheMapHierarchy(cacheMap, hierarchy, resizeLength) {
16611
- // only expand but not shrink.
16612
- var end = this._cacheHierarchy - 1;
16613
- if (hierarchy == end) {
16613
+ _proto._resizeCacheMapHierarchy = function _resizeCacheMapHierarchy(cacheMap, hierarchy, currentHierarchy, increaseHierarchy) {
16614
+ // Only expand but not shrink
16615
+ if (hierarchy == currentHierarchy - 1) {
16614
16616
  for(var k in cacheMap){
16615
16617
  var shader = cacheMap[k];
16616
16618
  var subCacheMap = cacheMap;
16617
- for(var i = 0, n = resizeLength - end; i < n; i++){
16618
- if (i == n - 1) {
16619
- subCacheMap[0] = shader;
16620
- } else {
16621
- subCacheMap = subCacheMap[i == 0 ? k : 0] = Object.create(null);
16622
- }
16619
+ for(var i = 0; i < increaseHierarchy; i++){
16620
+ subCacheMap[i == 0 ? k : 0] = subCacheMap = Object.create(null);
16623
16621
  }
16622
+ subCacheMap[0] = shader;
16624
16623
  }
16625
- this._cacheHierarchy = resizeLength;
16626
16624
  } else {
16625
+ hierarchy++;
16627
16626
  for(var k1 in cacheMap){
16628
- this._resizeCacheMapHierarchy(cacheMap[k1], ++hierarchy, resizeLength);
16627
+ this._resizeCacheMapHierarchy(cacheMap[k1], hierarchy, currentHierarchy, increaseHierarchy);
16629
16628
  }
16630
16629
  }
16631
16630
  };
@@ -16745,57 +16744,56 @@ ShaderPool.init();
16745
16744
  this._textRenderDataPool.resetPool();
16746
16745
  var _this = this, inputManager = _this.inputManager, physicsInitialized = _this._physicsInitialized;
16747
16746
  inputManager._update();
16748
- var loopScenes = this._sceneManager._scenes.getLoopArray();
16749
- var sceneCount = loopScenes.length;
16747
+ var scenes = this._sceneManager._scenes.getLoopArray();
16748
+ var sceneCount = scenes.length;
16750
16749
  // Sort cameras and fire script `onStart`
16751
16750
  for(var i = 0; i < sceneCount; i++){
16752
- var scene = loopScenes[i];
16753
- if (scene.destroyed) continue;
16751
+ var scene = scenes[i];
16752
+ if (!scene.isActive || scene.destroyed) continue;
16754
16753
  scene._cameraNeedSorting && scene._sortCameras();
16755
16754
  scene._componentsManager.callScriptOnStart();
16756
16755
  }
16757
16756
  // Update physics and fire `onPhysicsUpdate`
16758
16757
  if (physicsInitialized) {
16759
16758
  for(var i1 = 0; i1 < sceneCount; i1++){
16760
- var scene1 = loopScenes[i1];
16761
- if (scene1.destroyed) continue;
16759
+ var scene1 = scenes[i1];
16760
+ if (!scene1.isActive || scene1.destroyed) continue;
16762
16761
  scene1.physics._update(deltaTime);
16763
16762
  }
16764
16763
  }
16765
16764
  // Fire `onPointerXX`
16766
- physicsInitialized && inputManager._firePointerScript(loopScenes);
16765
+ physicsInitialized && inputManager._firePointerScript(scenes);
16767
16766
  // Fire `onUpdate`
16768
16767
  for(var i2 = 0; i2 < sceneCount; i2++){
16769
- var scene2 = loopScenes[i2];
16770
- if (scene2.destroyed) continue;
16768
+ var scene2 = scenes[i2];
16769
+ if (!scene2.isActive || scene2.destroyed) continue;
16771
16770
  scene2._componentsManager.callScriptOnUpdate(deltaTime);
16772
16771
  }
16773
16772
  // Update `Animator` logic
16774
16773
  for(var i3 = 0; i3 < sceneCount; i3++){
16775
- var scene3 = loopScenes[i3];
16776
- if (scene3.destroyed) continue;
16774
+ var scene3 = scenes[i3];
16775
+ if (!scene3.isActive || scene3.destroyed) continue;
16777
16776
  scene3._componentsManager.callAnimationUpdate(deltaTime);
16778
16777
  }
16779
16778
  // Fire `onLateUpdate`
16780
16779
  for(var i4 = 0; i4 < sceneCount; i4++){
16781
- var scene4 = loopScenes[i4];
16782
- if (scene4.destroyed) continue;
16780
+ var scene4 = scenes[i4];
16781
+ if (!scene4.isActive || scene4.destroyed) continue;
16783
16782
  scene4._componentsManager.callScriptOnLateUpdate(deltaTime);
16784
16783
  }
16785
16784
  // Render scene and fire `onBeginRender` and `onEndRender`
16786
16785
  if (!this._isDeviceLost) {
16787
- this._render(loopScenes);
16788
- }
16789
- // Handling invalid scripts and fire `onDestroy`
16790
- for(var i5 = 0; i5 < sceneCount; i5++){
16791
- var scene5 = loopScenes[i5];
16792
- if (scene5.destroyed) continue;
16793
- if (!this._waitingDestroy) {
16794
- scene5._componentsManager.handlingInvalidScripts();
16795
- }
16786
+ this._render(scenes);
16796
16787
  }
16797
16788
  if (this._waitingDestroy) {
16798
16789
  this._destroy();
16790
+ } else {
16791
+ // Handling invalid scripts and fire `onDestroy`
16792
+ for(var i5 = 0; i5 < sceneCount; i5++){
16793
+ var scene5 = scenes[i5];
16794
+ if (!scene5.isActive || scene5.destroyed) continue;
16795
+ scene5._componentsManager.handlingInvalidScripts();
16796
+ }
16799
16797
  }
16800
16798
  if (this._waitingGC) {
16801
16799
  this._gc();
@@ -16874,19 +16872,19 @@ ShaderPool.init();
16874
16872
  };
16875
16873
  /**
16876
16874
  * @internal
16877
- */ _proto._render = function _render(loopScenes) {
16875
+ */ _proto._render = function _render(scenes) {
16878
16876
  // Update `Renderer` logic and shader data
16879
- for(var i = 0, n = loopScenes.length; i < n; i++){
16880
- var scene = loopScenes[i];
16881
- if (scene.destroyed) continue;
16882
- var deltaTime = this.time.deltaTime;
16877
+ var deltaTime = this.time.deltaTime;
16878
+ for(var i = 0, n = scenes.length; i < n; i++){
16879
+ var scene = scenes[i];
16880
+ if (!scene.isActive || scene.destroyed) continue;
16883
16881
  scene._componentsManager.callRendererOnUpdate(deltaTime);
16884
16882
  scene._updateShaderData();
16885
16883
  }
16886
16884
  // Fire script `onBeginRender` and `onEndRender`
16887
- for(var i1 = 0, n1 = loopScenes.length; i1 < n1; i1++){
16888
- var scene1 = loopScenes[i1];
16889
- if (scene1.destroyed) continue;
16885
+ for(var i1 = 0, n1 = scenes.length; i1 < n1; i1++){
16886
+ var scene1 = scenes[i1];
16887
+ if (!scene1.isActive || scene1.destroyed) continue;
16890
16888
  var cameras = scene1._activeCameras;
16891
16889
  var cameraCount = cameras.length;
16892
16890
  if (cameraCount > 0) {
package/dist/module.js CHANGED
@@ -15872,6 +15872,7 @@ __decorate([
15872
15872
  case "pointercancel":
15873
15873
  pointer.phase = PointerPhase.Leave;
15874
15874
  pointer._firePointerExitAndEnter(null);
15875
+ break;
15875
15876
  }
15876
15877
  }
15877
15878
  events.length = 0;
@@ -15999,7 +16000,7 @@ __decorate([
15999
16000
  var point = PointerManager._tempPoint, ray = PointerManager._tempRay, hitResult = PointerManager._tempHitResult;
16000
16001
  for(var i = scenes.length - 1; i >= 0; i--){
16001
16002
  var scene = scenes[i];
16002
- if (scene.destroyed) {
16003
+ if (!scene.isActive || scene.destroyed) {
16003
16004
  continue;
16004
16005
  }
16005
16006
  var cameras = scene._activeCameras;
@@ -16561,7 +16562,7 @@ var unlitVs = "#define GLSLIFY 1\n#include <common>\n#include <common_vert>\n#in
16561
16562
  * @internal
16562
16563
  */ var ShaderProgramPool = /*#__PURE__*/ function() {
16563
16564
  function ShaderProgramPool() {
16564
- this._cacheHierarchy = 1;
16565
+ this._cacheHierarchyDepth = 1;
16565
16566
  this._cacheMap = Object.create(null);
16566
16567
  }
16567
16568
  var _proto = ShaderProgramPool.prototype;
@@ -16572,12 +16573,14 @@ var unlitVs = "#define GLSLIFY 1\n#include <common>\n#include <common_vert>\n#in
16572
16573
  */ _proto.get = function get(macros) {
16573
16574
  var cacheMap = this._cacheMap;
16574
16575
  var maskLength = macros._length;
16575
- if (maskLength > this._cacheHierarchy) {
16576
- this._resizeCacheMapHierarchy(cacheMap, 0, maskLength);
16576
+ var cacheHierarchyDepth = this._cacheHierarchyDepth;
16577
+ if (maskLength > cacheHierarchyDepth) {
16578
+ this._resizeCacheMapHierarchy(cacheMap, 0, cacheHierarchyDepth, maskLength - cacheHierarchyDepth);
16579
+ this._cacheHierarchyDepth = maskLength;
16577
16580
  }
16578
16581
  var mask = macros._mask;
16579
16582
  var endIndex = macros._length - 1;
16580
- var maxEndIndex = this._cacheHierarchy - 1;
16583
+ var maxEndIndex = this._cacheHierarchyDepth - 1;
16581
16584
  for(var i = 0; i < maxEndIndex; i++){
16582
16585
  var subMask = endIndex < i ? 0 : mask[i];
16583
16586
  var subCacheShaders = cacheMap[subMask];
@@ -16602,25 +16605,21 @@ var unlitVs = "#define GLSLIFY 1\n#include <common>\n#include <common_vert>\n#in
16602
16605
  */ _proto.cache = function cache(shaderProgram) {
16603
16606
  this._lastQueryMap[this._lastQueryKey] = shaderProgram;
16604
16607
  };
16605
- _proto._resizeCacheMapHierarchy = function _resizeCacheMapHierarchy(cacheMap, hierarchy, resizeLength) {
16606
- // only expand but not shrink.
16607
- var end = this._cacheHierarchy - 1;
16608
- if (hierarchy == end) {
16608
+ _proto._resizeCacheMapHierarchy = function _resizeCacheMapHierarchy(cacheMap, hierarchy, currentHierarchy, increaseHierarchy) {
16609
+ // Only expand but not shrink
16610
+ if (hierarchy == currentHierarchy - 1) {
16609
16611
  for(var k in cacheMap){
16610
16612
  var shader = cacheMap[k];
16611
16613
  var subCacheMap = cacheMap;
16612
- for(var i = 0, n = resizeLength - end; i < n; i++){
16613
- if (i == n - 1) {
16614
- subCacheMap[0] = shader;
16615
- } else {
16616
- subCacheMap = subCacheMap[i == 0 ? k : 0] = Object.create(null);
16617
- }
16614
+ for(var i = 0; i < increaseHierarchy; i++){
16615
+ subCacheMap[i == 0 ? k : 0] = subCacheMap = Object.create(null);
16618
16616
  }
16617
+ subCacheMap[0] = shader;
16619
16618
  }
16620
- this._cacheHierarchy = resizeLength;
16621
16619
  } else {
16620
+ hierarchy++;
16622
16621
  for(var k1 in cacheMap){
16623
- this._resizeCacheMapHierarchy(cacheMap[k1], ++hierarchy, resizeLength);
16622
+ this._resizeCacheMapHierarchy(cacheMap[k1], hierarchy, currentHierarchy, increaseHierarchy);
16624
16623
  }
16625
16624
  }
16626
16625
  };
@@ -16740,57 +16739,56 @@ ShaderPool.init();
16740
16739
  this._textRenderDataPool.resetPool();
16741
16740
  var _this = this, inputManager = _this.inputManager, physicsInitialized = _this._physicsInitialized;
16742
16741
  inputManager._update();
16743
- var loopScenes = this._sceneManager._scenes.getLoopArray();
16744
- var sceneCount = loopScenes.length;
16742
+ var scenes = this._sceneManager._scenes.getLoopArray();
16743
+ var sceneCount = scenes.length;
16745
16744
  // Sort cameras and fire script `onStart`
16746
16745
  for(var i = 0; i < sceneCount; i++){
16747
- var scene = loopScenes[i];
16748
- if (scene.destroyed) continue;
16746
+ var scene = scenes[i];
16747
+ if (!scene.isActive || scene.destroyed) continue;
16749
16748
  scene._cameraNeedSorting && scene._sortCameras();
16750
16749
  scene._componentsManager.callScriptOnStart();
16751
16750
  }
16752
16751
  // Update physics and fire `onPhysicsUpdate`
16753
16752
  if (physicsInitialized) {
16754
16753
  for(var i1 = 0; i1 < sceneCount; i1++){
16755
- var scene1 = loopScenes[i1];
16756
- if (scene1.destroyed) continue;
16754
+ var scene1 = scenes[i1];
16755
+ if (!scene1.isActive || scene1.destroyed) continue;
16757
16756
  scene1.physics._update(deltaTime);
16758
16757
  }
16759
16758
  }
16760
16759
  // Fire `onPointerXX`
16761
- physicsInitialized && inputManager._firePointerScript(loopScenes);
16760
+ physicsInitialized && inputManager._firePointerScript(scenes);
16762
16761
  // Fire `onUpdate`
16763
16762
  for(var i2 = 0; i2 < sceneCount; i2++){
16764
- var scene2 = loopScenes[i2];
16765
- if (scene2.destroyed) continue;
16763
+ var scene2 = scenes[i2];
16764
+ if (!scene2.isActive || scene2.destroyed) continue;
16766
16765
  scene2._componentsManager.callScriptOnUpdate(deltaTime);
16767
16766
  }
16768
16767
  // Update `Animator` logic
16769
16768
  for(var i3 = 0; i3 < sceneCount; i3++){
16770
- var scene3 = loopScenes[i3];
16771
- if (scene3.destroyed) continue;
16769
+ var scene3 = scenes[i3];
16770
+ if (!scene3.isActive || scene3.destroyed) continue;
16772
16771
  scene3._componentsManager.callAnimationUpdate(deltaTime);
16773
16772
  }
16774
16773
  // Fire `onLateUpdate`
16775
16774
  for(var i4 = 0; i4 < sceneCount; i4++){
16776
- var scene4 = loopScenes[i4];
16777
- if (scene4.destroyed) continue;
16775
+ var scene4 = scenes[i4];
16776
+ if (!scene4.isActive || scene4.destroyed) continue;
16778
16777
  scene4._componentsManager.callScriptOnLateUpdate(deltaTime);
16779
16778
  }
16780
16779
  // Render scene and fire `onBeginRender` and `onEndRender`
16781
16780
  if (!this._isDeviceLost) {
16782
- this._render(loopScenes);
16783
- }
16784
- // Handling invalid scripts and fire `onDestroy`
16785
- for(var i5 = 0; i5 < sceneCount; i5++){
16786
- var scene5 = loopScenes[i5];
16787
- if (scene5.destroyed) continue;
16788
- if (!this._waitingDestroy) {
16789
- scene5._componentsManager.handlingInvalidScripts();
16790
- }
16781
+ this._render(scenes);
16791
16782
  }
16792
16783
  if (this._waitingDestroy) {
16793
16784
  this._destroy();
16785
+ } else {
16786
+ // Handling invalid scripts and fire `onDestroy`
16787
+ for(var i5 = 0; i5 < sceneCount; i5++){
16788
+ var scene5 = scenes[i5];
16789
+ if (!scene5.isActive || scene5.destroyed) continue;
16790
+ scene5._componentsManager.handlingInvalidScripts();
16791
+ }
16794
16792
  }
16795
16793
  if (this._waitingGC) {
16796
16794
  this._gc();
@@ -16869,19 +16867,19 @@ ShaderPool.init();
16869
16867
  };
16870
16868
  /**
16871
16869
  * @internal
16872
- */ _proto._render = function _render(loopScenes) {
16870
+ */ _proto._render = function _render(scenes) {
16873
16871
  // Update `Renderer` logic and shader data
16874
- for(var i = 0, n = loopScenes.length; i < n; i++){
16875
- var scene = loopScenes[i];
16876
- if (scene.destroyed) continue;
16877
- var deltaTime = this.time.deltaTime;
16872
+ var deltaTime = this.time.deltaTime;
16873
+ for(var i = 0, n = scenes.length; i < n; i++){
16874
+ var scene = scenes[i];
16875
+ if (!scene.isActive || scene.destroyed) continue;
16878
16876
  scene._componentsManager.callRendererOnUpdate(deltaTime);
16879
16877
  scene._updateShaderData();
16880
16878
  }
16881
16879
  // Fire script `onBeginRender` and `onEndRender`
16882
- for(var i1 = 0, n1 = loopScenes.length; i1 < n1; i1++){
16883
- var scene1 = loopScenes[i1];
16884
- if (scene1.destroyed) continue;
16880
+ for(var i1 = 0, n1 = scenes.length; i1 < n1; i1++){
16881
+ var scene1 = scenes[i1];
16882
+ if (!scene1.isActive || scene1.destroyed) continue;
16885
16883
  var cameras = scene1._activeCameras;
16886
16884
  var cameraCount = cameras.length;
16887
16885
  if (cameraCount > 0) {