@galacean/engine 0.0.0-experimental-double11.9 → 0.0.0-experimental-double11.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.
package/dist/browser.js CHANGED
@@ -12424,13 +12424,12 @@
12424
12424
  var SimpleSpriteAssembler1 = function SimpleSpriteAssembler1() {};
12425
12425
  SimpleSpriteAssembler1.resetData = function resetData(renderer) {
12426
12426
  var verticesData = renderer._verticesData;
12427
- var vertexCount = verticesData.vertexCount = 4;
12428
12427
  var positions = verticesData.positions, uvs = verticesData.uvs;
12429
- if (positions.length < vertexCount) {
12430
- for(var i = positions.length; i < vertexCount; i++){
12431
- positions.push(new Vector3());
12432
- uvs.push(new Vector2());
12433
- }
12428
+ verticesData.vertexCount = positions.length = uvs.length = 4;
12429
+ for(var i = 0; i < 4; i++){
12430
+ var _positions, _i, _uvs, _i1;
12431
+ (_positions = positions)[_i = i] || (_positions[_i] = new Vector3());
12432
+ (_uvs = uvs)[_i1 = i] || (_uvs[_i1] = new Vector2());
12434
12433
  }
12435
12434
  verticesData.triangles = SimpleSpriteAssembler._rectangleTriangles;
12436
12435
  };
@@ -20627,6 +20626,7 @@
20627
20626
  case "pointercancel":
20628
20627
  pointer.phase = exports.PointerPhase.Leave;
20629
20628
  pointer._firePointerExitAndEnter(null);
20629
+ break;
20630
20630
  }
20631
20631
  }
20632
20632
  events.length = 0;
@@ -20754,7 +20754,7 @@
20754
20754
  var point = PointerManager._tempPoint, ray = PointerManager._tempRay, hitResult = PointerManager._tempHitResult;
20755
20755
  for(var i = scenes.length - 1; i >= 0; i--){
20756
20756
  var scene = scenes[i];
20757
- if (scene.destroyed) {
20757
+ if (!scene.isActive || scene.destroyed) {
20758
20758
  continue;
20759
20759
  }
20760
20760
  var cameras = scene._activeCameras;
@@ -21285,7 +21285,7 @@
21285
21285
  * @internal
21286
21286
  */ var ShaderProgramPool = /*#__PURE__*/ function() {
21287
21287
  var ShaderProgramPool = function ShaderProgramPool() {
21288
- this._cacheHierarchy = 1;
21288
+ this._cacheHierarchyDepth = 1;
21289
21289
  this._cacheMap = Object.create(null);
21290
21290
  };
21291
21291
  var _proto = ShaderProgramPool.prototype;
@@ -21296,12 +21296,14 @@
21296
21296
  */ _proto.get = function get(macros) {
21297
21297
  var cacheMap = this._cacheMap;
21298
21298
  var maskLength = macros._length;
21299
- if (maskLength > this._cacheHierarchy) {
21300
- this._resizeCacheMapHierarchy(cacheMap, 0, maskLength);
21299
+ var cacheHierarchyDepth = this._cacheHierarchyDepth;
21300
+ if (maskLength > cacheHierarchyDepth) {
21301
+ this._resizeCacheMapHierarchy(cacheMap, 0, cacheHierarchyDepth, maskLength - cacheHierarchyDepth);
21302
+ this._cacheHierarchyDepth = maskLength;
21301
21303
  }
21302
21304
  var mask = macros._mask;
21303
21305
  var endIndex = macros._length - 1;
21304
- var maxEndIndex = this._cacheHierarchy - 1;
21306
+ var maxEndIndex = this._cacheHierarchyDepth - 1;
21305
21307
  for(var i = 0; i < maxEndIndex; i++){
21306
21308
  var subMask = endIndex < i ? 0 : mask[i];
21307
21309
  var subCacheShaders = cacheMap[subMask];
@@ -21326,25 +21328,21 @@
21326
21328
  */ _proto.cache = function cache(shaderProgram) {
21327
21329
  this._lastQueryMap[this._lastQueryKey] = shaderProgram;
21328
21330
  };
21329
- _proto._resizeCacheMapHierarchy = function _resizeCacheMapHierarchy(cacheMap, hierarchy, resizeLength) {
21330
- // only expand but not shrink.
21331
- var end = this._cacheHierarchy - 1;
21332
- if (hierarchy == end) {
21331
+ _proto._resizeCacheMapHierarchy = function _resizeCacheMapHierarchy(cacheMap, hierarchy, currentHierarchy, increaseHierarchy) {
21332
+ // Only expand but not shrink
21333
+ if (hierarchy == currentHierarchy - 1) {
21333
21334
  for(var k in cacheMap){
21334
21335
  var shader = cacheMap[k];
21335
21336
  var subCacheMap = cacheMap;
21336
- for(var i = 0, n = resizeLength - end; i < n; i++){
21337
- if (i == n - 1) {
21338
- subCacheMap[0] = shader;
21339
- } else {
21340
- subCacheMap = subCacheMap[i == 0 ? k : 0] = Object.create(null);
21341
- }
21337
+ for(var i = 0; i < increaseHierarchy; i++){
21338
+ subCacheMap[i == 0 ? k : 0] = subCacheMap = Object.create(null);
21342
21339
  }
21340
+ subCacheMap[0] = shader;
21343
21341
  }
21344
- this._cacheHierarchy = resizeLength;
21345
21342
  } else {
21343
+ hierarchy++;
21346
21344
  for(var k1 in cacheMap){
21347
- this._resizeCacheMapHierarchy(cacheMap[k1], ++hierarchy, resizeLength);
21345
+ this._resizeCacheMapHierarchy(cacheMap[k1], hierarchy, currentHierarchy, increaseHierarchy);
21348
21346
  }
21349
21347
  }
21350
21348
  };
@@ -21463,57 +21461,56 @@
21463
21461
  this._textRenderDataPool.resetPool();
21464
21462
  var _this = this, inputManager = _this.inputManager, physicsInitialized = _this._physicsInitialized;
21465
21463
  inputManager._update();
21466
- var loopScenes = this._sceneManager._scenes.getLoopArray();
21467
- var sceneCount = loopScenes.length;
21464
+ var scenes = this._sceneManager._scenes.getLoopArray();
21465
+ var sceneCount = scenes.length;
21468
21466
  // Sort cameras and fire script `onStart`
21469
21467
  for(var i = 0; i < sceneCount; i++){
21470
- var scene = loopScenes[i];
21471
- if (scene.destroyed) continue;
21468
+ var scene = scenes[i];
21469
+ if (!scene.isActive || scene.destroyed) continue;
21472
21470
  scene._cameraNeedSorting && scene._sortCameras();
21473
21471
  scene._componentsManager.callScriptOnStart();
21474
21472
  }
21475
21473
  // Update physics and fire `onPhysicsUpdate`
21476
21474
  if (physicsInitialized) {
21477
21475
  for(var i1 = 0; i1 < sceneCount; i1++){
21478
- var scene1 = loopScenes[i1];
21479
- if (scene1.destroyed) continue;
21476
+ var scene1 = scenes[i1];
21477
+ if (!scene1.isActive || scene1.destroyed) continue;
21480
21478
  scene1.physics._update(deltaTime);
21481
21479
  }
21482
21480
  }
21483
21481
  // Fire `onPointerXX`
21484
- physicsInitialized && inputManager._firePointerScript(loopScenes);
21482
+ physicsInitialized && inputManager._firePointerScript(scenes);
21485
21483
  // Fire `onUpdate`
21486
21484
  for(var i2 = 0; i2 < sceneCount; i2++){
21487
- var scene2 = loopScenes[i2];
21488
- if (scene2.destroyed) continue;
21485
+ var scene2 = scenes[i2];
21486
+ if (!scene2.isActive || scene2.destroyed) continue;
21489
21487
  scene2._componentsManager.callScriptOnUpdate(deltaTime);
21490
21488
  }
21491
21489
  // Update `Animator` logic
21492
21490
  for(var i3 = 0; i3 < sceneCount; i3++){
21493
- var scene3 = loopScenes[i3];
21494
- if (scene3.destroyed) continue;
21491
+ var scene3 = scenes[i3];
21492
+ if (!scene3.isActive || scene3.destroyed) continue;
21495
21493
  scene3._componentsManager.callAnimationUpdate(deltaTime);
21496
21494
  }
21497
21495
  // Fire `onLateUpdate`
21498
21496
  for(var i4 = 0; i4 < sceneCount; i4++){
21499
- var scene4 = loopScenes[i4];
21500
- if (scene4.destroyed) continue;
21497
+ var scene4 = scenes[i4];
21498
+ if (!scene4.isActive || scene4.destroyed) continue;
21501
21499
  scene4._componentsManager.callScriptOnLateUpdate(deltaTime);
21502
21500
  }
21503
21501
  // Render scene and fire `onBeginRender` and `onEndRender`
21504
21502
  if (!this._isDeviceLost) {
21505
- this._render(loopScenes);
21506
- }
21507
- // Handling invalid scripts and fire `onDestroy`
21508
- for(var i5 = 0; i5 < sceneCount; i5++){
21509
- var scene5 = loopScenes[i5];
21510
- if (scene5.destroyed) continue;
21511
- if (!this._waitingDestroy) {
21512
- scene5._componentsManager.handlingInvalidScripts();
21513
- }
21503
+ this._render(scenes);
21514
21504
  }
21515
21505
  if (this._waitingDestroy) {
21516
21506
  this._destroy();
21507
+ } else {
21508
+ // Handling invalid scripts and fire `onDestroy`
21509
+ for(var i5 = 0; i5 < sceneCount; i5++){
21510
+ var scene5 = scenes[i5];
21511
+ if (!scene5.isActive || scene5.destroyed) continue;
21512
+ scene5._componentsManager.handlingInvalidScripts();
21513
+ }
21517
21514
  }
21518
21515
  if (this._waitingGC) {
21519
21516
  this._gc();
@@ -21592,19 +21589,19 @@
21592
21589
  };
21593
21590
  /**
21594
21591
  * @internal
21595
- */ _proto._render = function _render(loopScenes) {
21592
+ */ _proto._render = function _render(scenes) {
21596
21593
  // Update `Renderer` logic and shader data
21597
- for(var i = 0, n = loopScenes.length; i < n; i++){
21598
- var scene = loopScenes[i];
21599
- if (scene.destroyed) continue;
21600
- var deltaTime = this.time.deltaTime;
21594
+ var deltaTime = this.time.deltaTime;
21595
+ for(var i = 0, n = scenes.length; i < n; i++){
21596
+ var scene = scenes[i];
21597
+ if (!scene.isActive || scene.destroyed) continue;
21601
21598
  scene._componentsManager.callRendererOnUpdate(deltaTime);
21602
21599
  scene._updateShaderData();
21603
21600
  }
21604
21601
  // Fire script `onBeginRender` and `onEndRender`
21605
- for(var i1 = 0, n1 = loopScenes.length; i1 < n1; i1++){
21606
- var scene1 = loopScenes[i1];
21607
- if (scene1.destroyed) continue;
21602
+ for(var i1 = 0, n1 = scenes.length; i1 < n1; i1++){
21603
+ var scene1 = scenes[i1];
21604
+ if (!scene1.isActive || scene1.destroyed) continue;
21608
21605
  var cameras = scene1._activeCameras;
21609
21606
  var cameraCount = cameras.length;
21610
21607
  if (cameraCount > 0) {
@@ -27567,17 +27564,17 @@
27567
27564
  SlicedSpriteAssembler1.resetData = function resetData(renderer) {
27568
27565
  var verticesData = renderer._verticesData;
27569
27566
  var positions = verticesData.positions, uvs = verticesData.uvs;
27570
- if (positions.length < 16) {
27571
- for(var i = positions.length; i < 16; i++){
27572
- positions.push(new Vector3());
27573
- uvs.push(new Vector2());
27574
- }
27567
+ verticesData.vertexCount = positions.length = uvs.length = 16;
27568
+ for(var i = 0; i < 16; i++){
27569
+ var _positions, _i, _uvs, _i1;
27570
+ (_positions = positions)[_i = i] || (_positions[_i] = new Vector3());
27571
+ (_uvs = uvs)[_i1 = i] || (_uvs[_i1] = new Vector2());
27575
27572
  }
27576
- verticesData.triangles = [];
27573
+ verticesData.triangles = SlicedSpriteAssembler._rectangleTriangles;
27577
27574
  };
27578
27575
  SlicedSpriteAssembler1.updatePositions = function updatePositions(renderer) {
27579
27576
  var width = renderer.width, height = renderer.height, sprite = renderer.sprite;
27580
- var _renderer__verticesData = renderer._verticesData, positions = _renderer__verticesData.positions, uvs = _renderer__verticesData.uvs, triangles = _renderer__verticesData.triangles;
27577
+ var _renderer__verticesData = renderer._verticesData, positions = _renderer__verticesData.positions, uvs = _renderer__verticesData.uvs;
27581
27578
  var border = sprite.border;
27582
27579
  var spriteUVs = sprite._getUVs();
27583
27580
  // Update local positions.
@@ -27660,34 +27657,16 @@
27660
27657
  // 0 - 4 - 8 - 12
27661
27658
  // ------------------------
27662
27659
  // Assemble position and uv.
27663
- var vertexCount = 0;
27664
- var realICount = 0;
27665
27660
  for(var i = 0; i < 4; i++){
27666
27661
  var rowValue = row[i];
27667
27662
  var rowU = spriteUVs[i].x;
27668
27663
  for(var j = 0; j < 4; j++){
27669
27664
  var columnValue = column[j];
27670
- positions[vertexCount].set(wE[0] * rowValue + wE[4] * columnValue + wE[12], wE[1] * rowValue + wE[5] * columnValue + wE[13], wE[2] * rowValue + wE[6] * columnValue + wE[14]);
27671
- uvs[vertexCount].set(rowU, spriteUVs[j].y);
27672
- ++vertexCount;
27673
- }
27674
- ++realICount;
27675
- }
27676
- var realJCount = vertexCount / realICount;
27677
- var indexOffset = 0;
27678
- for(var i1 = 0; i1 < realICount - 1; ++i1){
27679
- for(var j1 = 0; j1 < realJCount - 1; ++j1){
27680
- var start = i1 * realJCount + j1;
27681
- triangles[indexOffset++] = start;
27682
- triangles[indexOffset++] = start + 1;
27683
- triangles[indexOffset++] = start + realJCount;
27684
- triangles[indexOffset++] = start + 1;
27685
- triangles[indexOffset++] = start + realJCount + 1;
27686
- triangles[indexOffset++] = start + realJCount;
27687
- }
27688
- }
27689
- renderer._verticesData.vertexCount = realICount * realJCount;
27690
- triangles.length = (realICount - 1) * (realJCount - 1) * 6;
27665
+ var idx = i * 4 + j;
27666
+ positions[idx].set(wE[0] * rowValue + wE[4] * columnValue + wE[12], wE[1] * rowValue + wE[5] * columnValue + wE[13], wE[2] * rowValue + wE[6] * columnValue + wE[14]);
27667
+ uvs[idx].set(rowU, spriteUVs[j].y);
27668
+ }
27669
+ }
27691
27670
  var _renderer__bounds = renderer._bounds, min = _renderer__bounds.min, max = _renderer__bounds.max;
27692
27671
  min.set(row[0], column[0], 0);
27693
27672
  max.set(row[3], column[3], 0);
@@ -27695,6 +27674,63 @@
27695
27674
  };
27696
27675
  SlicedSpriteAssembler1.updateUVs = function updateUVs(renderer) {};
27697
27676
  return SlicedSpriteAssembler1;
27677
+ }(), function() {
27678
+ _SlicedSpriteAssembler._rectangleTriangles = [
27679
+ 0,
27680
+ 1,
27681
+ 4,
27682
+ 1,
27683
+ 5,
27684
+ 4,
27685
+ 1,
27686
+ 2,
27687
+ 5,
27688
+ 2,
27689
+ 6,
27690
+ 5,
27691
+ 2,
27692
+ 3,
27693
+ 6,
27694
+ 3,
27695
+ 7,
27696
+ 6,
27697
+ 4,
27698
+ 5,
27699
+ 8,
27700
+ 5,
27701
+ 9,
27702
+ 8,
27703
+ 5,
27704
+ 6,
27705
+ 9,
27706
+ 6,
27707
+ 10,
27708
+ 9,
27709
+ 6,
27710
+ 7,
27711
+ 10,
27712
+ 7,
27713
+ 11,
27714
+ 10,
27715
+ 8,
27716
+ 9,
27717
+ 12,
27718
+ 9,
27719
+ 13,
27720
+ 12,
27721
+ 9,
27722
+ 10,
27723
+ 13,
27724
+ 10,
27725
+ 14,
27726
+ 13,
27727
+ 10,
27728
+ 11,
27729
+ 14,
27730
+ 11,
27731
+ 15,
27732
+ 14
27733
+ ];
27698
27734
  }(), function() {
27699
27735
  _SlicedSpriteAssembler._worldMatrix = new Matrix();
27700
27736
  }(), _SlicedSpriteAssembler);
@@ -27705,8 +27741,7 @@
27705
27741
  var TiledSpriteAssembler = (_TiledSpriteAssembler = /*#__PURE__*/ function() {
27706
27742
  var TiledSpriteAssembler1 = function TiledSpriteAssembler1() {};
27707
27743
  TiledSpriteAssembler1.resetData = function resetData(renderer) {
27708
- var _renderer__verticesData;
27709
- (_renderer__verticesData = renderer._verticesData).triangles || (_renderer__verticesData.triangles = []);
27744
+ renderer._verticesData.triangles = [];
27710
27745
  };
27711
27746
  TiledSpriteAssembler1.updatePositions = function updatePositions(renderer) {
27712
27747
  var width = renderer.width, height = renderer.height, sprite = renderer.sprite, tileMode = renderer.tileMode, threshold = renderer.tiledAdaptiveThreshold;
@@ -37572,7 +37607,7 @@
37572
37607
  var encodedMeshData = JSON.parse(jsonDataString);
37573
37608
  // @ts-ignore Vector3 is not compatible with {x: number, y: number, z: number}.
37574
37609
  encodedMeshData.bounds && modelMesh.bounds.copyFrom(encodedMeshData.bounds);
37575
- var offset = Math.ceil(bufferReader.offset / 4) * 4;
37610
+ var offset = Math.ceil(bufferReader.position / 4) * 4;
37576
37611
  var buffer = bufferReader.data.buffer;
37577
37612
  var byteOffset = bufferReader.data.byteOffset;
37578
37613
  var float32Array = new Float32Array(buffer, encodedMeshData.positions.start + offset + byteOffset, (encodedMeshData.positions.end - encodedMeshData.positions.start) / 4);
@@ -38789,10 +38824,10 @@
38789
38824
  /**
38790
38825
  * @internal
38791
38826
  */ var GLTFParserContext = /*#__PURE__*/ function() {
38792
- var GLTFParserContext = function GLTFParserContext(glTFResource, resourceManager, keepMeshData) {
38827
+ var GLTFParserContext = function GLTFParserContext(glTFResource, resourceManager, params) {
38793
38828
  this.glTFResource = glTFResource;
38794
38829
  this.resourceManager = resourceManager;
38795
- this.keepMeshData = keepMeshData;
38830
+ this.params = params;
38796
38831
  this.accessorBufferCache = {};
38797
38832
  this._resourceCache = new Map();
38798
38833
  this.contentRestorer = new GLTFContentRestorer(glTFResource);
@@ -39488,7 +39523,7 @@
39488
39523
  alphaSliceByteLength: sgdReader.nextUint32()
39489
39524
  };
39490
39525
  }
39491
- var endpointsByteOffset = sgdByteOffset + sgdReader.offset;
39526
+ var endpointsByteOffset = sgdByteOffset + sgdReader.position;
39492
39527
  var selectorsByteOffset = endpointsByteOffset + endpointsByteLength;
39493
39528
  var tablesByteOffset = selectorsByteOffset + selectorsByteLength;
39494
39529
  var extendedByteOffset = tablesByteOffset + tablesByteLength;
@@ -40267,6 +40302,7 @@
40267
40302
  ];
40268
40303
  for(var i = 0; i < priorityFormats.length; i++){
40269
40304
  var capabilities = this._supportedMap[priorityFormats[i]];
40305
+ if (!capabilities) return null;
40270
40306
  for(var j = 0; j < capabilities.length; j++){
40271
40307
  if (renderer.canIUse(capabilities[j])) {
40272
40308
  return priorityFormats[i];
@@ -41106,7 +41142,7 @@
41106
41142
  return context.get(exports.GLTFParserType.Buffer).then(function(buffers) {
41107
41143
  return GLTFUtils.getAccessorData(glTF, indexAccessor, buffers);
41108
41144
  });
41109
- }, context.keepMeshData).then(resolve);
41145
+ }, context.params.keepMeshData).then(resolve);
41110
41146
  }
41111
41147
  });
41112
41148
  };
@@ -41286,6 +41322,7 @@
41286
41322
  var _this = this;
41287
41323
  var _context_glTF = context.glTF, scenes = _context_glTF.scenes, _context_glTF_scene = _context_glTF.scene, scene = _context_glTF_scene === void 0 ? 0 : _context_glTF_scene, glTFResource = context.glTFResource;
41288
41324
  var sceneInfo = scenes[index];
41325
+ var sceneExtensions = sceneInfo.extensions;
41289
41326
  var engine = glTFResource.engine;
41290
41327
  var isDefaultScene = scene === index;
41291
41328
  var sceneNodes = sceneInfo.nodes;
@@ -41311,6 +41348,7 @@
41311
41348
  promises.push(this._parseEntityComponent(context, sceneNodes[i1]));
41312
41349
  }
41313
41350
  return Promise.all(promises).then(function() {
41351
+ GLTFParser.executeExtensionsAdditiveAndParse(sceneExtensions, context, sceneRoot, sceneInfo);
41314
41352
  if (isDefaultScene) {
41315
41353
  return Promise.all([
41316
41354
  context.get(exports.GLTFParserType.Skin),
@@ -41683,11 +41721,12 @@
41683
41721
  _inherits(GLTFLoader, Loader1);
41684
41722
  var _proto = GLTFLoader.prototype;
41685
41723
  _proto.load = function load(item, resourceManager) {
41686
- var _params;
41687
41724
  var url = item.url;
41688
41725
  var params = item.params;
41689
41726
  var glTFResource = new GLTFResource(resourceManager.engine, url);
41690
- var context = new GLTFParserContext(glTFResource, resourceManager, !!((_params = params) == null ? void 0 : _params.keepMeshData));
41727
+ var context = new GLTFParserContext(glTFResource, resourceManager, _extends({
41728
+ keepMeshData: false
41729
+ }, params));
41691
41730
  return context.parse();
41692
41731
  };
41693
41732
  return GLTFLoader;
@@ -42878,7 +42917,7 @@
42878
42917
  throw "BlendShape animation is not supported when using draco.";
42879
42918
  }, function() {
42880
42919
  return decodedGeometry.index.array;
42881
- }, context.keepMeshData);
42920
+ }, context.params.keepMeshData);
42882
42921
  });
42883
42922
  });
42884
42923
  };
@@ -43313,7 +43352,7 @@
43313
43352
  ], GALACEAN_animation_event);
43314
43353
 
43315
43354
  //@ts-ignore
43316
- var version = "0.0.0-experimental-double11.9";
43355
+ var version = "0.0.0-experimental-double11.12";
43317
43356
  console.log("Galacean engine version: " + version);
43318
43357
  for(var key in CoreObjects){
43319
43358
  Loader.registerClass(key, CoreObjects[key]);