@galacean/engine-core 1.2.0-beta.5 → 1.2.0-beta.6

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.
@@ -3985,6 +3985,7 @@ var ShaderFactory = /*#__PURE__*/ function() {
3985
3985
  var program = this._glProgram;
3986
3986
  var uniformInfos = this._getUniformInfos();
3987
3987
  var attributeInfos = this._getAttributeInfos();
3988
+ var basicResources = this._engine._basicResources;
3988
3989
  uniformInfos.forEach(function(param) {
3989
3990
  var name = param.name, size = param.size, type = param.type;
3990
3991
  var shaderUniform = new ShaderUniform(_this._engine);
@@ -4078,16 +4079,16 @@ var ShaderFactory = /*#__PURE__*/ function() {
4078
4079
  var defaultTexture;
4079
4080
  switch(type){
4080
4081
  case gl.SAMPLER_2D:
4081
- defaultTexture = _this._engine._magentaTexture2D;
4082
+ defaultTexture = basicResources.whiteTexture2D;
4082
4083
  break;
4083
4084
  case gl.SAMPLER_CUBE:
4084
- defaultTexture = _this._engine._magentaTextureCube;
4085
+ defaultTexture = basicResources.whiteTextureCube;
4085
4086
  break;
4086
4087
  case gl.UNSIGNED_INT_SAMPLER_2D:
4087
- defaultTexture = _this._engine._uintMagentaTexture2D;
4088
+ defaultTexture = basicResources.uintWhiteTexture2D;
4088
4089
  break;
4089
4090
  case gl.SAMPLER_2D_ARRAY:
4090
- defaultTexture = _this._engine._magentaTexture2DArray;
4091
+ defaultTexture = basicResources.whiteTexture2DArray;
4091
4092
  break;
4092
4093
  case gl.SAMPLER_2D_SHADOW:
4093
4094
  defaultTexture = _this._engine._depthTexture2D;
@@ -6417,14 +6418,15 @@ SlicedSpriteAssembler = __decorate([
6417
6418
  }
6418
6419
  this._endLoop(swapFn);
6419
6420
  };
6420
- _proto.forEachAndClean = function forEachAndClean(callbackFn) {
6421
+ _proto.forEachAndClean = function forEachAndClean(callbackFn, swapFn) {
6421
6422
  this._startLoop();
6423
+ var preEnd = this.length;
6422
6424
  var elements = this._elements;
6423
- for(var i = 0, n = this.length; i < n; i++){
6425
+ for(var i = 0, n = preEnd; i < n; i++){
6424
6426
  var element = elements[i];
6425
6427
  element && callbackFn(element);
6426
6428
  }
6427
- this._endLoopAndClear();
6429
+ this._endLoopAndClean(preEnd, elements, swapFn);
6428
6430
  };
6429
6431
  _proto.sort = function sort(compareFn) {
6430
6432
  Utils._quickSort(this._elements, 0, this.length, compareFn);
@@ -6457,9 +6459,17 @@ SlicedSpriteAssembler = __decorate([
6457
6459
  this._blankCount = 0;
6458
6460
  }
6459
6461
  };
6460
- _proto._endLoopAndClear = function _endLoopAndClear() {
6462
+ _proto._endLoopAndClean = function _endLoopAndClean(preEnd, elements, swapFn) {
6463
+ var index = 0;
6464
+ for(var i = preEnd, n = this.length; i < n; i++){
6465
+ var element = elements[i];
6466
+ if (!element) continue;
6467
+ elements[index] = element;
6468
+ swapFn(element, index);
6469
+ index++;
6470
+ }
6461
6471
  this._isLooping = false;
6462
- this.length = 0;
6472
+ this.length = index;
6463
6473
  this._blankCount = 0;
6464
6474
  };
6465
6475
  return DisorderedArray;
@@ -15861,6 +15871,26 @@ var BaseMaterial = /*#__PURE__*/ function(Material1) {
15861
15871
  this.blitMesh = this._createBlitMesh(engine, vertices);
15862
15872
  this.flipYBlitMesh = this._createBlitMesh(engine, flipYVertices);
15863
15873
  this.blitMaterial = blitMaterial;
15874
+ // Create white and magenta textures
15875
+ var whitePixel = new Uint8Array([
15876
+ 255,
15877
+ 255,
15878
+ 255,
15879
+ 255
15880
+ ]);
15881
+ this.whiteTexture2D = this._create1x1Texture(engine, 0, exports.TextureFormat.R8G8B8A8, whitePixel);
15882
+ this.whiteTextureCube = this._create1x1Texture(engine, 1, exports.TextureFormat.R8G8B8A8, whitePixel);
15883
+ var isWebGL2 = engine._hardwareRenderer.isWebGL2;
15884
+ if (isWebGL2) {
15885
+ this.whiteTexture2DArray = this._create1x1Texture(engine, 2, exports.TextureFormat.R8G8B8A8, whitePixel);
15886
+ var whitePixel32 = new Uint32Array([
15887
+ 255,
15888
+ 255,
15889
+ 255,
15890
+ 255
15891
+ ]);
15892
+ this.uintWhiteTexture2D = this._create1x1Texture(engine, 0, exports.TextureFormat.R32G32B32A32_UInt, whitePixel32);
15893
+ }
15864
15894
  }
15865
15895
  var _proto = BasicResources.prototype;
15866
15896
  _proto._createBlitMesh = function _createBlitMesh(engine, vertices) {
@@ -15873,8 +15903,63 @@ var BaseMaterial = /*#__PURE__*/ function(Material1) {
15873
15903
  mesh.addSubMesh(0, 4, exports.MeshTopology.TriangleStrip);
15874
15904
  return mesh;
15875
15905
  };
15906
+ _proto._create1x1Texture = function _create1x1Texture(engine, type, format, pixel) {
15907
+ var texture;
15908
+ switch(type){
15909
+ case 0:
15910
+ var texture2D = new Texture2D(engine, 1, 1, format, false);
15911
+ texture2D.setPixelBuffer(pixel);
15912
+ texture = texture2D;
15913
+ break;
15914
+ case 2:
15915
+ var texture2DArray = new Texture2DArray(engine, 1, 1, 1, format, false);
15916
+ texture2DArray.setPixelBuffer(0, pixel);
15917
+ texture = texture2DArray;
15918
+ break;
15919
+ case 1:
15920
+ var textureCube = new TextureCube(engine, 1, format, false);
15921
+ for(var i = 0; i < 6; i++){
15922
+ textureCube.setPixelBuffer(exports.TextureCubeFace.PositiveX + i, pixel);
15923
+ }
15924
+ texture = textureCube;
15925
+ break;
15926
+ default:
15927
+ throw "Invalid texture type";
15928
+ }
15929
+ texture.isGCIgnored = true;
15930
+ engine.resourceManager.addContentRestorer(new /*#__PURE__*/ (function(ContentRestorer) {
15931
+ _inherits(_class, ContentRestorer);
15932
+ function _class() {
15933
+ return ContentRestorer.call(this, texture);
15934
+ }
15935
+ var _proto = _class.prototype;
15936
+ _proto.restoreContent = function restoreContent() {
15937
+ switch(type){
15938
+ case 0:
15939
+ this.resource.setPixelBuffer(pixel);
15940
+ break;
15941
+ case 2:
15942
+ this.resource.setPixelBuffer(0, pixel);
15943
+ break;
15944
+ case 1:
15945
+ for(var i = 0; i < 6; i++){
15946
+ this.resource.setPixelBuffer(exports.TextureCubeFace.PositiveX + i, pixel);
15947
+ }
15948
+ break;
15949
+ }
15950
+ };
15951
+ return _class;
15952
+ }(ContentRestorer))());
15953
+ return texture;
15954
+ };
15876
15955
  return BasicResources;
15877
15956
  }();
15957
+ var TextureType;
15958
+ (function(TextureType) {
15959
+ TextureType[TextureType["Texture2D"] = 0] = "Texture2D";
15960
+ TextureType[TextureType["TextureCube"] = 1] = "TextureCube";
15961
+ TextureType[TextureType["Texture2DArray"] = 2] = "Texture2DArray";
15962
+ })(TextureType || (TextureType = {}));
15878
15963
 
15879
15964
  /**
15880
15965
  * @internal
@@ -20407,7 +20492,6 @@ ShaderPool.init();
20407
20492
  _this.xrManager = new XRManager();
20408
20493
  _this.xrManager._initialize(_assert_this_initialized(_this), xrDevice);
20409
20494
  }
20410
- _this._initMagentaTextures(hardwareRenderer);
20411
20495
  if (!hardwareRenderer.canIUse(exports.GLCapabilityType.depthTexture)) {
20412
20496
  _this._macroCollection.enable(Engine._noDepthTextureMacro);
20413
20497
  } else {
@@ -20643,99 +20727,6 @@ ShaderPool.init();
20643
20727
  };
20644
20728
  /**
20645
20729
  * @internal
20646
- * Standalone for CanvasRenderer plugin.
20647
- */ _proto._initMagentaTextures = function _initMagentaTextures(hardwareRenderer) {
20648
- var whitePixel = new Uint8Array([
20649
- 255,
20650
- 255,
20651
- 255,
20652
- 255
20653
- ]);
20654
- var whiteTexture2D = new Texture2D(this, 1, 1, exports.TextureFormat.R8G8B8A8, false);
20655
- whiteTexture2D.setPixelBuffer(whitePixel);
20656
- whiteTexture2D.isGCIgnored = true;
20657
- var magentaPixel = new Uint8Array([
20658
- 255,
20659
- 0,
20660
- 255,
20661
- 255
20662
- ]);
20663
- var magentaTexture2D = new Texture2D(this, 1, 1, exports.TextureFormat.R8G8B8A8, false);
20664
- magentaTexture2D.setPixelBuffer(magentaPixel);
20665
- magentaTexture2D.isGCIgnored = true;
20666
- this.resourceManager.addContentRestorer(new /*#__PURE__*/ (function(ContentRestorer) {
20667
- _inherits(_class, ContentRestorer);
20668
- function _class() {
20669
- return ContentRestorer.call(this, magentaTexture2D);
20670
- }
20671
- var _proto = _class.prototype;
20672
- _proto.restoreContent = function restoreContent() {
20673
- this.resource.setPixelBuffer(magentaPixel);
20674
- };
20675
- return _class;
20676
- }(ContentRestorer))());
20677
- var magentaTextureCube = new TextureCube(this, 1, exports.TextureFormat.R8G8B8A8, false);
20678
- for(var i = 0; i < 6; i++){
20679
- magentaTextureCube.setPixelBuffer(exports.TextureCubeFace.PositiveX + i, magentaPixel);
20680
- }
20681
- magentaTextureCube.isGCIgnored = true;
20682
- this.resourceManager.addContentRestorer(new /*#__PURE__*/ (function(ContentRestorer) {
20683
- _inherits(_class, ContentRestorer);
20684
- function _class() {
20685
- return ContentRestorer.call(this, magentaTextureCube);
20686
- }
20687
- var _proto = _class.prototype;
20688
- _proto.restoreContent = function restoreContent() {
20689
- for(var i = 0; i < 6; i++){
20690
- this.resource.setPixelBuffer(exports.TextureCubeFace.PositiveX + i, magentaPixel);
20691
- }
20692
- };
20693
- return _class;
20694
- }(ContentRestorer))());
20695
- this._whiteTexture2D = whiteTexture2D;
20696
- this._magentaTexture2D = magentaTexture2D;
20697
- this._magentaTextureCube = magentaTextureCube;
20698
- if (hardwareRenderer.isWebGL2) {
20699
- var magentaPixel32 = new Uint32Array([
20700
- 255,
20701
- 0,
20702
- 255,
20703
- 255
20704
- ]);
20705
- var uintMagentaTexture2D = new Texture2D(this, 1, 1, exports.TextureFormat.R32G32B32A32_UInt, false);
20706
- uintMagentaTexture2D.setPixelBuffer(magentaPixel32);
20707
- uintMagentaTexture2D.isGCIgnored = true;
20708
- this.resourceManager.addContentRestorer(new /*#__PURE__*/ (function(ContentRestorer) {
20709
- _inherits(_class, ContentRestorer);
20710
- function _class() {
20711
- return ContentRestorer.call(this, uintMagentaTexture2D);
20712
- }
20713
- var _proto = _class.prototype;
20714
- _proto.restoreContent = function restoreContent() {
20715
- this.resource.setPixelBuffer(magentaPixel32);
20716
- };
20717
- return _class;
20718
- }(ContentRestorer))());
20719
- var magentaTexture2DArray = new Texture2DArray(this, 1, 1, 1, exports.TextureFormat.R8G8B8A8, false);
20720
- magentaTexture2DArray.setPixelBuffer(0, magentaPixel);
20721
- magentaTexture2DArray.isGCIgnored = true;
20722
- this.resourceManager.addContentRestorer(new /*#__PURE__*/ (function(ContentRestorer) {
20723
- _inherits(_class, ContentRestorer);
20724
- function _class() {
20725
- return ContentRestorer.call(this, magentaTexture2DArray);
20726
- }
20727
- var _proto = _class.prototype;
20728
- _proto.restoreContent = function restoreContent() {
20729
- this.resource.setPixelBuffer(0, magentaPixel);
20730
- };
20731
- return _class;
20732
- }(ContentRestorer))());
20733
- this._uintMagentaTexture2D = uintMagentaTexture2D;
20734
- this._magentaTexture2DArray = magentaTexture2DArray;
20735
- }
20736
- };
20737
- /**
20738
- * @internal
20739
20730
  */ _proto._pendingGC = function _pendingGC() {
20740
20731
  if (this._frameInProcess) {
20741
20732
  this._waitingGC = true;
@@ -21375,6 +21366,8 @@ ShaderPool.init();
21375
21366
  script._started = true;
21376
21367
  _this.removeOnStartScript(script);
21377
21368
  script.onStart();
21369
+ }, function(element, index) {
21370
+ element._onStartIndex = index;
21378
21371
  });
21379
21372
  }
21380
21373
  };
@@ -24315,7 +24308,7 @@ var /**
24315
24308
  depthOnlyPass.onConfig(camera);
24316
24309
  depthOnlyPass.onRender(context, cullingResults);
24317
24310
  } else {
24318
- camera.shaderData.setTexture(exports.Camera._cameraDepthTextureProperty, engine._whiteTexture2D);
24311
+ camera.shaderData.setTexture(exports.Camera._cameraDepthTextureProperty, engine._basicResources.whiteTexture2D);
24319
24312
  }
24320
24313
  // Check if need to create internal color texture
24321
24314
  var independentCanvasEnabled = camera.independentCanvasEnabled;
package/dist/module.js CHANGED
@@ -3980,6 +3980,7 @@ var ShaderFactory = /*#__PURE__*/ function() {
3980
3980
  var program = this._glProgram;
3981
3981
  var uniformInfos = this._getUniformInfos();
3982
3982
  var attributeInfos = this._getAttributeInfos();
3983
+ var basicResources = this._engine._basicResources;
3983
3984
  uniformInfos.forEach(function(param) {
3984
3985
  var name = param.name, size = param.size, type = param.type;
3985
3986
  var shaderUniform = new ShaderUniform(_this._engine);
@@ -4073,16 +4074,16 @@ var ShaderFactory = /*#__PURE__*/ function() {
4073
4074
  var defaultTexture;
4074
4075
  switch(type){
4075
4076
  case gl.SAMPLER_2D:
4076
- defaultTexture = _this._engine._magentaTexture2D;
4077
+ defaultTexture = basicResources.whiteTexture2D;
4077
4078
  break;
4078
4079
  case gl.SAMPLER_CUBE:
4079
- defaultTexture = _this._engine._magentaTextureCube;
4080
+ defaultTexture = basicResources.whiteTextureCube;
4080
4081
  break;
4081
4082
  case gl.UNSIGNED_INT_SAMPLER_2D:
4082
- defaultTexture = _this._engine._uintMagentaTexture2D;
4083
+ defaultTexture = basicResources.uintWhiteTexture2D;
4083
4084
  break;
4084
4085
  case gl.SAMPLER_2D_ARRAY:
4085
- defaultTexture = _this._engine._magentaTexture2DArray;
4086
+ defaultTexture = basicResources.whiteTexture2DArray;
4086
4087
  break;
4087
4088
  case gl.SAMPLER_2D_SHADOW:
4088
4089
  defaultTexture = _this._engine._depthTexture2D;
@@ -6412,14 +6413,15 @@ SlicedSpriteAssembler = __decorate([
6412
6413
  }
6413
6414
  this._endLoop(swapFn);
6414
6415
  };
6415
- _proto.forEachAndClean = function forEachAndClean(callbackFn) {
6416
+ _proto.forEachAndClean = function forEachAndClean(callbackFn, swapFn) {
6416
6417
  this._startLoop();
6418
+ var preEnd = this.length;
6417
6419
  var elements = this._elements;
6418
- for(var i = 0, n = this.length; i < n; i++){
6420
+ for(var i = 0, n = preEnd; i < n; i++){
6419
6421
  var element = elements[i];
6420
6422
  element && callbackFn(element);
6421
6423
  }
6422
- this._endLoopAndClear();
6424
+ this._endLoopAndClean(preEnd, elements, swapFn);
6423
6425
  };
6424
6426
  _proto.sort = function sort(compareFn) {
6425
6427
  Utils._quickSort(this._elements, 0, this.length, compareFn);
@@ -6452,9 +6454,17 @@ SlicedSpriteAssembler = __decorate([
6452
6454
  this._blankCount = 0;
6453
6455
  }
6454
6456
  };
6455
- _proto._endLoopAndClear = function _endLoopAndClear() {
6457
+ _proto._endLoopAndClean = function _endLoopAndClean(preEnd, elements, swapFn) {
6458
+ var index = 0;
6459
+ for(var i = preEnd, n = this.length; i < n; i++){
6460
+ var element = elements[i];
6461
+ if (!element) continue;
6462
+ elements[index] = element;
6463
+ swapFn(element, index);
6464
+ index++;
6465
+ }
6456
6466
  this._isLooping = false;
6457
- this.length = 0;
6467
+ this.length = index;
6458
6468
  this._blankCount = 0;
6459
6469
  };
6460
6470
  return DisorderedArray;
@@ -15856,6 +15866,26 @@ var BaseMaterial = /*#__PURE__*/ function(Material1) {
15856
15866
  this.blitMesh = this._createBlitMesh(engine, vertices);
15857
15867
  this.flipYBlitMesh = this._createBlitMesh(engine, flipYVertices);
15858
15868
  this.blitMaterial = blitMaterial;
15869
+ // Create white and magenta textures
15870
+ var whitePixel = new Uint8Array([
15871
+ 255,
15872
+ 255,
15873
+ 255,
15874
+ 255
15875
+ ]);
15876
+ this.whiteTexture2D = this._create1x1Texture(engine, 0, TextureFormat.R8G8B8A8, whitePixel);
15877
+ this.whiteTextureCube = this._create1x1Texture(engine, 1, TextureFormat.R8G8B8A8, whitePixel);
15878
+ var isWebGL2 = engine._hardwareRenderer.isWebGL2;
15879
+ if (isWebGL2) {
15880
+ this.whiteTexture2DArray = this._create1x1Texture(engine, 2, TextureFormat.R8G8B8A8, whitePixel);
15881
+ var whitePixel32 = new Uint32Array([
15882
+ 255,
15883
+ 255,
15884
+ 255,
15885
+ 255
15886
+ ]);
15887
+ this.uintWhiteTexture2D = this._create1x1Texture(engine, 0, TextureFormat.R32G32B32A32_UInt, whitePixel32);
15888
+ }
15859
15889
  }
15860
15890
  var _proto = BasicResources.prototype;
15861
15891
  _proto._createBlitMesh = function _createBlitMesh(engine, vertices) {
@@ -15868,8 +15898,63 @@ var BaseMaterial = /*#__PURE__*/ function(Material1) {
15868
15898
  mesh.addSubMesh(0, 4, MeshTopology.TriangleStrip);
15869
15899
  return mesh;
15870
15900
  };
15901
+ _proto._create1x1Texture = function _create1x1Texture(engine, type, format, pixel) {
15902
+ var texture;
15903
+ switch(type){
15904
+ case 0:
15905
+ var texture2D = new Texture2D(engine, 1, 1, format, false);
15906
+ texture2D.setPixelBuffer(pixel);
15907
+ texture = texture2D;
15908
+ break;
15909
+ case 2:
15910
+ var texture2DArray = new Texture2DArray(engine, 1, 1, 1, format, false);
15911
+ texture2DArray.setPixelBuffer(0, pixel);
15912
+ texture = texture2DArray;
15913
+ break;
15914
+ case 1:
15915
+ var textureCube = new TextureCube(engine, 1, format, false);
15916
+ for(var i = 0; i < 6; i++){
15917
+ textureCube.setPixelBuffer(TextureCubeFace.PositiveX + i, pixel);
15918
+ }
15919
+ texture = textureCube;
15920
+ break;
15921
+ default:
15922
+ throw "Invalid texture type";
15923
+ }
15924
+ texture.isGCIgnored = true;
15925
+ engine.resourceManager.addContentRestorer(new /*#__PURE__*/ (function(ContentRestorer) {
15926
+ _inherits(_class, ContentRestorer);
15927
+ function _class() {
15928
+ return ContentRestorer.call(this, texture);
15929
+ }
15930
+ var _proto = _class.prototype;
15931
+ _proto.restoreContent = function restoreContent() {
15932
+ switch(type){
15933
+ case 0:
15934
+ this.resource.setPixelBuffer(pixel);
15935
+ break;
15936
+ case 2:
15937
+ this.resource.setPixelBuffer(0, pixel);
15938
+ break;
15939
+ case 1:
15940
+ for(var i = 0; i < 6; i++){
15941
+ this.resource.setPixelBuffer(TextureCubeFace.PositiveX + i, pixel);
15942
+ }
15943
+ break;
15944
+ }
15945
+ };
15946
+ return _class;
15947
+ }(ContentRestorer))());
15948
+ return texture;
15949
+ };
15871
15950
  return BasicResources;
15872
15951
  }();
15952
+ var TextureType;
15953
+ (function(TextureType) {
15954
+ TextureType[TextureType["Texture2D"] = 0] = "Texture2D";
15955
+ TextureType[TextureType["TextureCube"] = 1] = "TextureCube";
15956
+ TextureType[TextureType["Texture2DArray"] = 2] = "Texture2DArray";
15957
+ })(TextureType || (TextureType = {}));
15873
15958
 
15874
15959
  /**
15875
15960
  * @internal
@@ -20402,7 +20487,6 @@ ShaderPool.init();
20402
20487
  _this.xrManager = new XRManager();
20403
20488
  _this.xrManager._initialize(_assert_this_initialized(_this), xrDevice);
20404
20489
  }
20405
- _this._initMagentaTextures(hardwareRenderer);
20406
20490
  if (!hardwareRenderer.canIUse(GLCapabilityType.depthTexture)) {
20407
20491
  _this._macroCollection.enable(Engine._noDepthTextureMacro);
20408
20492
  } else {
@@ -20638,99 +20722,6 @@ ShaderPool.init();
20638
20722
  };
20639
20723
  /**
20640
20724
  * @internal
20641
- * Standalone for CanvasRenderer plugin.
20642
- */ _proto._initMagentaTextures = function _initMagentaTextures(hardwareRenderer) {
20643
- var whitePixel = new Uint8Array([
20644
- 255,
20645
- 255,
20646
- 255,
20647
- 255
20648
- ]);
20649
- var whiteTexture2D = new Texture2D(this, 1, 1, TextureFormat.R8G8B8A8, false);
20650
- whiteTexture2D.setPixelBuffer(whitePixel);
20651
- whiteTexture2D.isGCIgnored = true;
20652
- var magentaPixel = new Uint8Array([
20653
- 255,
20654
- 0,
20655
- 255,
20656
- 255
20657
- ]);
20658
- var magentaTexture2D = new Texture2D(this, 1, 1, TextureFormat.R8G8B8A8, false);
20659
- magentaTexture2D.setPixelBuffer(magentaPixel);
20660
- magentaTexture2D.isGCIgnored = true;
20661
- this.resourceManager.addContentRestorer(new /*#__PURE__*/ (function(ContentRestorer) {
20662
- _inherits(_class, ContentRestorer);
20663
- function _class() {
20664
- return ContentRestorer.call(this, magentaTexture2D);
20665
- }
20666
- var _proto = _class.prototype;
20667
- _proto.restoreContent = function restoreContent() {
20668
- this.resource.setPixelBuffer(magentaPixel);
20669
- };
20670
- return _class;
20671
- }(ContentRestorer))());
20672
- var magentaTextureCube = new TextureCube(this, 1, TextureFormat.R8G8B8A8, false);
20673
- for(var i = 0; i < 6; i++){
20674
- magentaTextureCube.setPixelBuffer(TextureCubeFace.PositiveX + i, magentaPixel);
20675
- }
20676
- magentaTextureCube.isGCIgnored = true;
20677
- this.resourceManager.addContentRestorer(new /*#__PURE__*/ (function(ContentRestorer) {
20678
- _inherits(_class, ContentRestorer);
20679
- function _class() {
20680
- return ContentRestorer.call(this, magentaTextureCube);
20681
- }
20682
- var _proto = _class.prototype;
20683
- _proto.restoreContent = function restoreContent() {
20684
- for(var i = 0; i < 6; i++){
20685
- this.resource.setPixelBuffer(TextureCubeFace.PositiveX + i, magentaPixel);
20686
- }
20687
- };
20688
- return _class;
20689
- }(ContentRestorer))());
20690
- this._whiteTexture2D = whiteTexture2D;
20691
- this._magentaTexture2D = magentaTexture2D;
20692
- this._magentaTextureCube = magentaTextureCube;
20693
- if (hardwareRenderer.isWebGL2) {
20694
- var magentaPixel32 = new Uint32Array([
20695
- 255,
20696
- 0,
20697
- 255,
20698
- 255
20699
- ]);
20700
- var uintMagentaTexture2D = new Texture2D(this, 1, 1, TextureFormat.R32G32B32A32_UInt, false);
20701
- uintMagentaTexture2D.setPixelBuffer(magentaPixel32);
20702
- uintMagentaTexture2D.isGCIgnored = true;
20703
- this.resourceManager.addContentRestorer(new /*#__PURE__*/ (function(ContentRestorer) {
20704
- _inherits(_class, ContentRestorer);
20705
- function _class() {
20706
- return ContentRestorer.call(this, uintMagentaTexture2D);
20707
- }
20708
- var _proto = _class.prototype;
20709
- _proto.restoreContent = function restoreContent() {
20710
- this.resource.setPixelBuffer(magentaPixel32);
20711
- };
20712
- return _class;
20713
- }(ContentRestorer))());
20714
- var magentaTexture2DArray = new Texture2DArray(this, 1, 1, 1, TextureFormat.R8G8B8A8, false);
20715
- magentaTexture2DArray.setPixelBuffer(0, magentaPixel);
20716
- magentaTexture2DArray.isGCIgnored = true;
20717
- this.resourceManager.addContentRestorer(new /*#__PURE__*/ (function(ContentRestorer) {
20718
- _inherits(_class, ContentRestorer);
20719
- function _class() {
20720
- return ContentRestorer.call(this, magentaTexture2DArray);
20721
- }
20722
- var _proto = _class.prototype;
20723
- _proto.restoreContent = function restoreContent() {
20724
- this.resource.setPixelBuffer(0, magentaPixel);
20725
- };
20726
- return _class;
20727
- }(ContentRestorer))());
20728
- this._uintMagentaTexture2D = uintMagentaTexture2D;
20729
- this._magentaTexture2DArray = magentaTexture2DArray;
20730
- }
20731
- };
20732
- /**
20733
- * @internal
20734
20725
  */ _proto._pendingGC = function _pendingGC() {
20735
20726
  if (this._frameInProcess) {
20736
20727
  this._waitingGC = true;
@@ -21370,6 +21361,8 @@ ShaderPool.init();
21370
21361
  script._started = true;
21371
21362
  _this.removeOnStartScript(script);
21372
21363
  script.onStart();
21364
+ }, function(element, index) {
21365
+ element._onStartIndex = index;
21373
21366
  });
21374
21367
  }
21375
21368
  };
@@ -24310,7 +24303,7 @@ var /**
24310
24303
  depthOnlyPass.onConfig(camera);
24311
24304
  depthOnlyPass.onRender(context, cullingResults);
24312
24305
  } else {
24313
- camera.shaderData.setTexture(Camera._cameraDepthTextureProperty, engine._whiteTexture2D);
24306
+ camera.shaderData.setTexture(Camera._cameraDepthTextureProperty, engine._basicResources.whiteTexture2D);
24314
24307
  }
24315
24308
  // Check if need to create internal color texture
24316
24309
  var independentCanvasEnabled = camera.independentCanvasEnabled;