@galacean/engine 1.6.2 → 1.6.3

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
@@ -11825,7 +11825,6 @@
11825
11825
  function RenderContext() {
11826
11826
  this._projectionParams = new Vector4();
11827
11827
  this.flipProjection = false;
11828
- this.rendererUpdateFlag = 0;
11829
11828
  }
11830
11829
  var _proto = RenderContext.prototype;
11831
11830
  _proto.applyVirtualCamera = function applyVirtualCamera(virtualCamera, flipProjection) {
@@ -19493,6 +19492,7 @@
19493
19492
  this.renderQueueType = renderQueueType;
19494
19493
  this.elements = new Array();
19495
19494
  this.batchedSubElements = new Array();
19495
+ this.rendererUpdateFlag = ContextRendererUpdateFlag.None;
19496
19496
  }
19497
19497
  var _proto = RenderQueue.prototype;
19498
19498
  _proto.pushRenderElement = function pushRenderElement(element) {
@@ -19512,8 +19512,7 @@
19512
19512
  if (length === 0) {
19513
19513
  return;
19514
19514
  }
19515
- var rendererUpdateFlag = context.rendererUpdateFlag, camera = context.camera;
19516
- var engine = camera.engine, scene = camera.scene, cameraId = camera.instanceId, cameraData = camera.shaderData;
19515
+ var _context_camera = context.camera, engine = _context_camera.engine, scene = _context_camera.scene, cameraId = _context_camera.instanceId, cameraData = _context_camera.shaderData;
19517
19516
  var sceneId = scene.instanceId, sceneData = scene.shaderData, maskManager = scene._maskManager;
19518
19517
  var renderCount = engine._renderCount;
19519
19518
  var rhi = engine._hardwareRenderer;
@@ -19523,11 +19522,11 @@
19523
19522
  var subElement = batchedSubElements[i];
19524
19523
  var renderer = subElement.component, batched = subElement.batched, material = subElement.material;
19525
19524
  // @todo: Can optimize update view projection matrix updated
19526
- if (rendererUpdateFlag & ContextRendererUpdateFlag.WorldViewMatrix || renderer._batchedTransformShaderData != batched) {
19525
+ if (this.rendererUpdateFlag & ContextRendererUpdateFlag.WorldViewMatrix || renderer._batchedTransformShaderData != batched) {
19527
19526
  // Update world matrix and view matrix and model matrix
19528
19527
  renderer._updateTransformShaderData(context, false, batched);
19529
19528
  renderer._batchedTransformShaderData = batched;
19530
- } else if (rendererUpdateFlag & ContextRendererUpdateFlag.ProjectionMatrix) {
19529
+ } else if (this.rendererUpdateFlag & ContextRendererUpdateFlag.ProjectionMatrix) {
19531
19530
  // Only projection matrix need updated
19532
19531
  renderer._updateTransformShaderData(context, true, batched);
19533
19532
  }
@@ -19631,6 +19630,7 @@
19631
19630
  rhi.drawPrimitive(primitive, subElement.subPrimitive, program);
19632
19631
  }
19633
19632
  }
19633
+ this.rendererUpdateFlag = ContextRendererUpdateFlag.None;
19634
19634
  };
19635
19635
  _proto.clear = function clear() {
19636
19636
  this.elements.length = 0;
@@ -20420,7 +20420,9 @@
20420
20420
  sceneShaderData.setVector2(CascadedShadowCasterPass._lightShadowBiasProperty, this._shadowBias);
20421
20421
  sceneShaderData.setVector3(CascadedShadowCasterPass._lightDirectionProperty, light.direction);
20422
20422
  // Every light use self virtual camera
20423
- context.rendererUpdateFlag |= ContextRendererUpdateFlag.viewProjectionMatrix;
20423
+ var _context_camera__renderPipeline__cullingResults = context.camera._renderPipeline._cullingResults, opaqueQueue = _context_camera__renderPipeline__cullingResults.opaqueQueue, alphaTestQueue = _context_camera__renderPipeline__cullingResults.alphaTestQueue;
20424
+ opaqueQueue.rendererUpdateFlag |= ContextRendererUpdateFlag.viewProjectionMatrix;
20425
+ alphaTestQueue.rendererUpdateFlag |= ContextRendererUpdateFlag.viewProjectionMatrix;
20424
20426
  context.applyVirtualCamera(virtualCamera, true);
20425
20427
  };
20426
20428
  return CascadedShadowCasterPass;
@@ -20458,6 +20460,11 @@
20458
20460
  this.alphaTestQueue.sortBatch(RenderQueue.compareForOpaque, batcherManager);
20459
20461
  this.transparentQueue.sortBatch(RenderQueue.compareForTransparent, batcherManager);
20460
20462
  };
20463
+ _proto.setRenderUpdateFlagTrue = function setRenderUpdateFlagTrue(rendererUpdateFlag) {
20464
+ this.opaqueQueue.rendererUpdateFlag |= rendererUpdateFlag;
20465
+ this.transparentQueue.rendererUpdateFlag |= rendererUpdateFlag;
20466
+ this.alphaTestQueue.rendererUpdateFlag |= rendererUpdateFlag;
20467
+ };
20461
20468
  _proto.destroy = function destroy() {
20462
20469
  this.opaqueQueue.destroy();
20463
20470
  this.transparentQueue.destroy();
@@ -20561,7 +20568,7 @@
20561
20568
  * @param mipLevel - Set mip level the data want to write
20562
20569
  * @param ignoreClear - Ignore clear flag
20563
20570
  */ _proto.render = function render(context, cubeFace, mipLevel, ignoreClear) {
20564
- context.rendererUpdateFlag = ContextRendererUpdateFlag.All;
20571
+ this._cullingResults.setRenderUpdateFlagTrue(ContextRendererUpdateFlag.All);
20565
20572
  var camera = this._camera;
20566
20573
  var scene = camera.scene, engine = camera.engine, renderTarget = camera.renderTarget;
20567
20574
  var independentCanvasEnabled = camera._isIndependentCanvasEnabled();
@@ -20586,12 +20593,11 @@
20586
20593
  this._shouldCopyBackgroundColor = independentCanvasEnabled && !(finalClearFlags & CameraClearFlags.Color) && (!this._canUseBlitFrameBuffer || isSRGBBackground);
20587
20594
  if (scene.castShadows && sunlight && sunlight.shadowType !== ShadowType.None) {
20588
20595
  this._cascadedShadowCasterPass.onRender(context);
20589
- context.rendererUpdateFlag = ContextRendererUpdateFlag.None;
20590
20596
  }
20591
20597
  var batcherManager = engine._batcherManager;
20592
20598
  cullingResults.reset();
20593
20599
  // Depth use camera's view and projection matrix
20594
- context.rendererUpdateFlag |= ContextRendererUpdateFlag.viewProjectionMatrix;
20600
+ this._cullingResults.setRenderUpdateFlagTrue(ContextRendererUpdateFlag.viewProjectionMatrix);
20595
20601
  context.applyVirtualCamera(camera._virtualCamera, depthPassEnabled);
20596
20602
  this._prepareRender(context);
20597
20603
  cullingResults.sortBatch(batcherManager);
@@ -20599,7 +20605,6 @@
20599
20605
  if (depthPassEnabled) {
20600
20606
  depthOnlyPass.onConfig(camera);
20601
20607
  depthOnlyPass.onRender(context, cullingResults);
20602
- context.rendererUpdateFlag = ContextRendererUpdateFlag.None;
20603
20608
  } else {
20604
20609
  depthOnlyPass.release();
20605
20610
  camera.shaderData.setTexture(exports.Camera._cameraDepthTextureProperty, engine._basicResources.whiteTexture2D);
@@ -20665,7 +20670,7 @@
20665
20670
  var needFlipProjection = !!internalColorTarget || camera.renderTarget && cubeFace == undefined;
20666
20671
  if (context.flipProjection !== needFlipProjection) {
20667
20672
  // Just add projection matrix update type is enough
20668
- context.rendererUpdateFlag |= ContextRendererUpdateFlag.ProjectionMatrix;
20673
+ cullingResults.setRenderUpdateFlagTrue(ContextRendererUpdateFlag.ProjectionMatrix);
20669
20674
  context.applyVirtualCamera(camera._virtualCamera, needFlipProjection);
20670
20675
  }
20671
20676
  context.setRenderTarget(colorTarget, colorViewport, mipLevel, cubeFace);
@@ -30719,7 +30724,7 @@
30719
30724
  viewE[12] = -position.x, viewE[13] = -position.y;
30720
30725
  Matrix.multiply(virtualCamera.projectionMatrix, virtualCamera.viewMatrix, virtualCamera.viewProjectionMatrix);
30721
30726
  renderContext.applyVirtualCamera(virtualCamera, false);
30722
- renderContext.rendererUpdateFlag |= ContextRendererUpdateFlag.ProjectionMatrix;
30727
+ uiRenderQueue.rendererUpdateFlag |= ContextRendererUpdateFlag.ProjectionMatrix;
30723
30728
  uiCanvas._prepareRender(renderContext);
30724
30729
  uiRenderQueue.pushRenderElement(uiCanvas._renderElement);
30725
30730
  uiRenderQueue.batch(batcherManager);
@@ -51602,7 +51607,7 @@
51602
51607
  ], EXT_texture_webp);
51603
51608
 
51604
51609
  //@ts-ignore
51605
- var version = "1.6.2";
51610
+ var version = "1.6.3";
51606
51611
  console.log("Galacean Engine Version: " + version);
51607
51612
  for(var key in CoreObjects){
51608
51613
  Loader.registerClass(key, CoreObjects[key]);