@galacean/engine-core 1.2.0-alpha.10 → 1.2.0-alpha.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/main.js +84 -30
- package/dist/main.js.map +1 -1
- package/dist/miniprogram.js +84 -30
- package/dist/module.js +84 -31
- package/dist/module.js.map +1 -1
- package/package.json +3 -3
- package/types/Camera.d.ts +0 -2
- package/types/Deprecated.d.ts +101 -0
- package/types/RenderPipeline/BasicRenderPipeline.d.ts +2 -1
- package/types/RenderPipeline/OpaqueTexturePass.d.ts +1 -0
- package/types/enums/Downsampling.d.ts +11 -0
- package/types/enums/MSAASamples.d.ts +13 -0
- package/types/texture/enums/PixelFormat.d.ts +73 -0
- package/types/RenderPipeline/MeshRenderData.d.ts +0 -17
- package/types/RenderPipeline/MeshRenderElement.d.ts +0 -19
- package/types/RenderPipeline/SpriteElement.d.ts +0 -15
- package/types/RenderPipeline/SpriteMaskElement.d.ts +0 -12
- package/types/RenderPipeline/TextRenderElement.d.ts +0 -8
- package/types/asset/IRefObject.d.ts +0 -2
- package/types/asset/RefObject.d.ts +0 -27
- package/types/base/Event.d.ts +0 -24
- package/types/base/Util.d.ts +0 -14
- package/types/physics/PhysicsManager.d.ts +0 -78
- /package/types/{2d/data/RenderData2D.d.ts → BasicResources.d.ts} +0 -0
package/dist/main.js
CHANGED
|
@@ -3183,7 +3183,7 @@ function _extends() {
|
|
|
3183
3183
|
return _extends.apply(this, arguments);
|
|
3184
3184
|
}
|
|
3185
3185
|
|
|
3186
|
-
var camera_declare = "#define GLSLIFY 1\nuniform vec3 camera_Position;uniform vec3 camera_Forward;"; // eslint-disable-line
|
|
3186
|
+
var camera_declare = "#define GLSLIFY 1\nuniform vec3 camera_Position;uniform vec3 camera_Forward;uniform vec4 camera_ProjectionParams;"; // eslint-disable-line
|
|
3187
3187
|
|
|
3188
3188
|
var common = "#define GLSLIFY 1\n#define PI 3.14159265359\n#define RECIPROCAL_PI 0.31830988618\n#define EPSILON 1e-6\n#define LOG2 1.442695\n#define saturate( a ) clamp( a, 0.0, 1.0 )\nfloat pow2(float x){return x*x;}vec4 RGBMToLinear(vec4 value,float maxRange){return vec4(value.rgb*value.a*maxRange,1.0);}vec4 gammaToLinear(vec4 srgbIn){return vec4(pow(srgbIn.rgb,vec3(2.2)),srgbIn.a);}vec4 linearToGamma(vec4 linearIn){return vec4(pow(linearIn.rgb,vec3(1.0/2.2)),linearIn.a);}uniform vec4 camera_DepthBufferParams;float remapDepthBufferLinear01(float z){return 1.0/(camera_DepthBufferParams.x*z+camera_DepthBufferParams.y);}\n#ifdef GRAPHICS_API_WEBGL2\n#define INVERSE_MAT(mat) inverse(mat)\n#else\nmat2 inverseMat(mat2 m){return mat2(m[1][1],-m[0][1],-m[1][0],m[0][0])/(m[0][0]*m[1][1]-m[0][1]*m[1][0]);}mat3 inverseMat(mat3 m){float a00=m[0][0],a01=m[0][1],a02=m[0][2];float a10=m[1][0],a11=m[1][1],a12=m[1][2];float a20=m[2][0],a21=m[2][1],a22=m[2][2];float b01=a22*a11-a12*a21;float b11=-a22*a10+a12*a20;float b21=a21*a10-a11*a20;float det=a00*b01+a01*b11+a02*b21;return mat3(b01,(-a22*a01+a02*a21),(a12*a01-a02*a11),b11,(a22*a00-a02*a20),(-a12*a00+a02*a10),b21,(-a21*a00+a01*a20),(a11*a00-a01*a10))/det;}mat4 inverseMat(mat4 m){float a00=m[0][0],a01=m[0][1],a02=m[0][2],a03=m[0][3],a10=m[1][0],a11=m[1][1],a12=m[1][2],a13=m[1][3],a20=m[2][0],a21=m[2][1],a22=m[2][2],a23=m[2][3],a30=m[3][0],a31=m[3][1],a32=m[3][2],a33=m[3][3],b00=a00*a11-a01*a10,b01=a00*a12-a02*a10,b02=a00*a13-a03*a10,b03=a01*a12-a02*a11,b04=a01*a13-a03*a11,b05=a02*a13-a03*a12,b06=a20*a31-a21*a30,b07=a20*a32-a22*a30,b08=a20*a33-a23*a30,b09=a21*a32-a22*a31,b10=a21*a33-a23*a31,b11=a22*a33-a23*a32,det=b00*b11-b01*b10+b02*b09+b03*b08-b04*b07+b05*b06;return mat4(a11*b11-a12*b10+a13*b09,a02*b10-a01*b11-a03*b09,a31*b05-a32*b04+a33*b03,a22*b04-a21*b05-a23*b03,a12*b08-a10*b11-a13*b07,a00*b11-a02*b08+a03*b07,a32*b02-a30*b05-a33*b01,a20*b05-a22*b02+a23*b01,a10*b10-a11*b08+a13*b06,a01*b08-a00*b10-a03*b06,a30*b04-a31*b02+a33*b00,a21*b02-a20*b04-a23*b00,a11*b07-a10*b09-a12*b06,a00*b09-a01*b07+a02*b06,a31*b01-a30*b03-a32*b00,a20*b03-a21*b01+a22*b00)/det;}\n#define INVERSE_MAT(mat) inverseMat(mat)\n#endif\n"; // eslint-disable-line
|
|
3189
3189
|
|
|
@@ -3344,7 +3344,7 @@ var ParticleShaderLib = {
|
|
|
3344
3344
|
particle_mesh: particle_mesh
|
|
3345
3345
|
};
|
|
3346
3346
|
|
|
3347
|
-
var normal_get = "#define GLSLIFY 1\nvec3 getNormal(bool isFrontFacing){\n#ifdef RENDERER_HAS_NORMAL\nvec3 normal=normalize(v_normal);\n#elif defined(HAS_DERIVATIVES)\nvec3 pos_dx=dFdx(v_pos);vec3 pos_dy=dFdy(v_pos);vec3 normal=normalize(cross(pos_dx,pos_dy));\n#else\nvec3 normal=vec3(0,0,1);\n#endif\nnormal*=float(isFrontFacing)*2.0-1.0;return normal;}vec3 getNormalByNormalTexture(mat3 tbn,sampler2D normalTexture,float normalIntensity,vec2 uv,bool isFrontFacing){vec3 normal=texture2D(normalTexture,uv).rgb;normal=normalize(tbn*((2.0*normal-1.0)*vec3(normalIntensity,normalIntensity,1.0)));normal*=float(isFrontFacing)*2.0-1.0;return normal;}mat3 getTBN(bool isFrontFacing){\n#if defined(RENDERER_HAS_NORMAL) && defined(RENDERER_HAS_TANGENT) && ( defined(MATERIAL_HAS_NORMALTEXTURE) || defined(MATERIAL_HAS_CLEAR_COAT_NORMAL_TEXTURE) || defined(MATERIAL_ENABLE_ANISOTROPY) )\nmat3 tbn=v_TBN;\n#else\nvec3 normal=getNormal(isFrontFacing);vec3 position=v_pos;vec2 uv=isFrontFacing? v_uv:-v_uv;\n#ifdef HAS_DERIVATIVES\nvec3 dp1=dFdx(position);vec3 dp2=dFdy(position);vec2 duv1=dFdx(uv);vec2 duv2=dFdy(uv);vec3 dp2perp=cross(dp2,normal);vec3 dp1perp=cross(normal,dp1);vec3 tangent=dp2perp*duv1.x+dp1perp*duv2.x;vec3 bitangent=dp2perp*duv1.y+dp1perp*duv2.y;float
|
|
3347
|
+
var normal_get = "#define GLSLIFY 1\nvec3 getNormal(bool isFrontFacing){\n#ifdef RENDERER_HAS_NORMAL\nvec3 normal=normalize(v_normal);\n#elif defined(HAS_DERIVATIVES)\nvec3 pos_dx=dFdx(v_pos);vec3 pos_dy=dFdy(v_pos);vec3 normal=normalize(cross(pos_dx,pos_dy));normal*=camera_ProjectionParams.x;\n#else\nvec3 normal=vec3(0,0,1);\n#endif\nnormal*=float(isFrontFacing)*2.0-1.0;return normal;}vec3 getNormalByNormalTexture(mat3 tbn,sampler2D normalTexture,float normalIntensity,vec2 uv,bool isFrontFacing){vec3 normal=texture2D(normalTexture,uv).rgb;normal=normalize(tbn*((2.0*normal-1.0)*vec3(normalIntensity,normalIntensity,1.0)));normal*=float(isFrontFacing)*2.0-1.0;return normal;}mat3 getTBN(bool isFrontFacing){\n#if defined(RENDERER_HAS_NORMAL) && defined(RENDERER_HAS_TANGENT) && ( defined(MATERIAL_HAS_NORMALTEXTURE) || defined(MATERIAL_HAS_CLEAR_COAT_NORMAL_TEXTURE) || defined(MATERIAL_ENABLE_ANISOTROPY) )\nmat3 tbn=v_TBN;\n#else\nvec3 normal=getNormal(isFrontFacing);vec3 position=v_pos;vec2 uv=isFrontFacing? v_uv:-v_uv;\n#ifdef HAS_DERIVATIVES\nvec3 dp1=dFdx(position);vec3 dp2=dFdy(position);vec2 duv1=dFdx(uv);vec2 duv2=dFdy(uv);vec3 dp2perp=cross(dp2,normal);vec3 dp1perp=cross(normal,dp1);vec3 tangent=dp2perp*duv1.x+dp1perp*duv2.x;vec3 bitangent=dp2perp*duv1.y+dp1perp*duv2.y;float denom=max(dot(tangent,tangent),dot(bitangent,bitangent));float invmax=(denom==0.0)? 0.0 : camera_ProjectionParams.x/sqrt(denom);mat3 tbn=mat3(tangent*invmax,bitangent*invmax,normal);\n#else\nmat3 tbn=mat3(vec3(0.0),vec3(0.0),normal);\n#endif\n#endif\nreturn tbn;}"; // eslint-disable-line
|
|
3348
3348
|
|
|
3349
3349
|
var ShaderLib = _extends({
|
|
3350
3350
|
common: common,
|
|
@@ -4830,10 +4830,11 @@ __decorate([
|
|
|
4830
4830
|
renderStateDataMap && this._applyShaderDataValue(renderStateDataMap, shaderData);
|
|
4831
4831
|
var hardwareRenderer = engine._hardwareRenderer;
|
|
4832
4832
|
var lastRenderState = engine._lastRenderState;
|
|
4833
|
+
var context = engine._renderContext;
|
|
4833
4834
|
this.blendState._apply(hardwareRenderer, lastRenderState);
|
|
4834
4835
|
this.depthState._apply(hardwareRenderer, lastRenderState);
|
|
4835
4836
|
this.stencilState._apply(hardwareRenderer, lastRenderState);
|
|
4836
|
-
this.rasterState._apply(hardwareRenderer, lastRenderState, frontFaceInvert);
|
|
4837
|
+
this.rasterState._apply(hardwareRenderer, lastRenderState, context.flipProjection ? !frontFaceInvert : frontFaceInvert);
|
|
4837
4838
|
};
|
|
4838
4839
|
return RenderState;
|
|
4839
4840
|
}();
|
|
@@ -5836,22 +5837,26 @@ exports.Renderer = (_Renderer = /*#__PURE__*/ function(Component1) {
|
|
|
5836
5837
|
* @internal
|
|
5837
5838
|
*/ _proto._updateTransformShaderData = function _updateTransformShaderData(context, worldMatrix) {
|
|
5838
5839
|
var shaderData = this.shaderData;
|
|
5839
|
-
var virtualCamera = context.virtualCamera;
|
|
5840
5840
|
var mvMatrix = this._mvMatrix;
|
|
5841
|
-
var mvpMatrix = this._mvpMatrix;
|
|
5842
5841
|
var mvInvMatrix = this._mvInvMatrix;
|
|
5843
5842
|
var normalMatrix = this._normalMatrix;
|
|
5844
|
-
engineMath.Matrix.multiply(
|
|
5845
|
-
engineMath.Matrix.multiply(virtualCamera.viewProjectionMatrix, worldMatrix, mvpMatrix);
|
|
5843
|
+
engineMath.Matrix.multiply(context.viewMatrix, worldMatrix, mvMatrix);
|
|
5846
5844
|
engineMath.Matrix.invert(mvMatrix, mvInvMatrix);
|
|
5847
5845
|
engineMath.Matrix.invert(worldMatrix, normalMatrix);
|
|
5848
5846
|
normalMatrix.transpose();
|
|
5849
5847
|
shaderData.setMatrix(exports.Renderer._localMatrixProperty, this.entity.transform.localMatrix);
|
|
5850
5848
|
shaderData.setMatrix(exports.Renderer._worldMatrixProperty, worldMatrix);
|
|
5851
5849
|
shaderData.setMatrix(exports.Renderer._mvMatrixProperty, mvMatrix);
|
|
5852
|
-
shaderData.setMatrix(exports.Renderer._mvpMatrixProperty, mvpMatrix);
|
|
5853
5850
|
shaderData.setMatrix(exports.Renderer._mvInvMatrixProperty, mvInvMatrix);
|
|
5854
5851
|
shaderData.setMatrix(exports.Renderer._normalMatrixProperty, normalMatrix);
|
|
5852
|
+
this._updateMVPShaderData(context, worldMatrix);
|
|
5853
|
+
};
|
|
5854
|
+
/**
|
|
5855
|
+
* @internal
|
|
5856
|
+
*/ _proto._updateMVPShaderData = function _updateMVPShaderData(context, worldMatrix) {
|
|
5857
|
+
var mvpMatrix = this._mvpMatrix;
|
|
5858
|
+
engineMath.Matrix.multiply(context.viewProjectionMatrix, worldMatrix, mvpMatrix);
|
|
5859
|
+
this.shaderData.setMatrix(exports.Renderer._mvpMatrixProperty, mvpMatrix);
|
|
5855
5860
|
};
|
|
5856
5861
|
/**
|
|
5857
5862
|
* @internal
|
|
@@ -14518,14 +14523,31 @@ var ComponentCloner = /*#__PURE__*/ function() {
|
|
|
14518
14523
|
* @internal
|
|
14519
14524
|
* Rendering context.
|
|
14520
14525
|
*/ var RenderContext = /*#__PURE__*/ function() {
|
|
14521
|
-
function RenderContext() {
|
|
14526
|
+
function RenderContext() {
|
|
14527
|
+
this._projectionParams = new engineMath.Vector4();
|
|
14528
|
+
this.flipProjection = false;
|
|
14529
|
+
}
|
|
14522
14530
|
var _proto = RenderContext.prototype;
|
|
14523
|
-
_proto.applyVirtualCamera = function applyVirtualCamera(virtualCamera) {
|
|
14531
|
+
_proto.applyVirtualCamera = function applyVirtualCamera(virtualCamera, flipProjection) {
|
|
14524
14532
|
this.virtualCamera = virtualCamera;
|
|
14533
|
+
this.flipProjection = flipProjection;
|
|
14525
14534
|
var shaderData = this.camera.shaderData;
|
|
14526
|
-
|
|
14527
|
-
|
|
14528
|
-
|
|
14535
|
+
var viewMatrix = virtualCamera.viewMatrix, projectionMatrix = virtualCamera.projectionMatrix, viewProjectionMatrix = virtualCamera.viewProjectionMatrix;
|
|
14536
|
+
if (flipProjection) {
|
|
14537
|
+
engineMath.Matrix.multiply(RenderContext._flipYMatrix, projectionMatrix, RenderContext._flipYProjectionMatrix);
|
|
14538
|
+
engineMath.Matrix.multiply(RenderContext._flipYProjectionMatrix, viewMatrix, RenderContext._flipYViewProjectionMatrix);
|
|
14539
|
+
projectionMatrix = RenderContext._flipYProjectionMatrix;
|
|
14540
|
+
viewProjectionMatrix = RenderContext._flipYViewProjectionMatrix;
|
|
14541
|
+
}
|
|
14542
|
+
this.viewMatrix = viewMatrix;
|
|
14543
|
+
this.projectionMatrix = projectionMatrix;
|
|
14544
|
+
this.viewProjectionMatrix = viewProjectionMatrix;
|
|
14545
|
+
shaderData.setMatrix(RenderContext._viewMatrixProperty, viewMatrix);
|
|
14546
|
+
shaderData.setMatrix(RenderContext._projectionMatrixProperty, projectionMatrix);
|
|
14547
|
+
shaderData.setMatrix(RenderContext.vpMatrixProperty, viewProjectionMatrix);
|
|
14548
|
+
var projectionParams = this._projectionParams;
|
|
14549
|
+
projectionParams.set(flipProjection ? -1 : 1, virtualCamera.nearClipPlane, virtualCamera.farClipPlane, 0);
|
|
14550
|
+
shaderData.setVector4(RenderContext._cameraProjectionProperty, projectionParams);
|
|
14529
14551
|
};
|
|
14530
14552
|
return RenderContext;
|
|
14531
14553
|
}();
|
|
@@ -14535,12 +14557,24 @@ var ComponentCloner = /*#__PURE__*/ function() {
|
|
|
14535
14557
|
(function() {
|
|
14536
14558
|
RenderContext.pipelineStageKey = ShaderTagKey.getByName("pipelineStage");
|
|
14537
14559
|
})();
|
|
14560
|
+
(function() {
|
|
14561
|
+
/** @internal */ RenderContext._flipYMatrix = new engineMath.Matrix(1, 0, 0, 0, 0, -1);
|
|
14562
|
+
})();
|
|
14563
|
+
(function() {
|
|
14564
|
+
RenderContext._cameraProjectionProperty = ShaderProperty.getByName("camera_ProjectionParams");
|
|
14565
|
+
})();
|
|
14538
14566
|
(function() {
|
|
14539
14567
|
RenderContext._viewMatrixProperty = ShaderProperty.getByName("camera_ViewMat");
|
|
14540
14568
|
})();
|
|
14541
14569
|
(function() {
|
|
14542
14570
|
RenderContext._projectionMatrixProperty = ShaderProperty.getByName("camera_ProjMat");
|
|
14543
14571
|
})();
|
|
14572
|
+
(function() {
|
|
14573
|
+
RenderContext._flipYProjectionMatrix = new engineMath.Matrix();
|
|
14574
|
+
})();
|
|
14575
|
+
(function() {
|
|
14576
|
+
RenderContext._flipYViewProjectionMatrix = new engineMath.Matrix();
|
|
14577
|
+
})();
|
|
14544
14578
|
|
|
14545
14579
|
var RenderData = /*#__PURE__*/ function() {
|
|
14546
14580
|
function RenderData() {}
|
|
@@ -19736,6 +19770,9 @@ ShaderPool.init();
|
|
|
19736
19770
|
// view-proj matrix
|
|
19737
19771
|
engineMath.Matrix.multiply(projectionMatrix, viewProjMatrix, viewProjMatrix);
|
|
19738
19772
|
var originViewProjMatrix = cameraShaderData.getMatrix(RenderContext.vpMatrixProperty);
|
|
19773
|
+
if (context.flipProjection) {
|
|
19774
|
+
engineMath.Matrix.multiply(RenderContext._flipYMatrix, viewProjMatrix, viewProjMatrix);
|
|
19775
|
+
}
|
|
19739
19776
|
cameraShaderData.setMatrix(RenderContext.vpMatrixProperty, viewProjMatrix);
|
|
19740
19777
|
var compileMacros = Shader._compileMacros;
|
|
19741
19778
|
ShaderMacroCollection.unionCollection(context.camera._globalShaderMacro, materialShaderData._macroCollection, compileMacros);
|
|
@@ -22063,6 +22100,8 @@ var passNum = 0;
|
|
|
22063
22100
|
this.viewMatrix = new engineMath.Matrix();
|
|
22064
22101
|
this.projectionMatrix = new engineMath.Matrix();
|
|
22065
22102
|
this.viewProjectionMatrix = new engineMath.Matrix();
|
|
22103
|
+
this.nearClipPlane = 0.1;
|
|
22104
|
+
this.farClipPlane = 100;
|
|
22066
22105
|
/** Only orth mode use. */ this.forward = new engineMath.Vector3();
|
|
22067
22106
|
};
|
|
22068
22107
|
|
|
@@ -22347,7 +22386,7 @@ var /**
|
|
|
22347
22386
|
})();
|
|
22348
22387
|
(function() {
|
|
22349
22388
|
// prettier-ignore
|
|
22350
|
-
/** @internal */ ShadowUtils._shadowMapCoordMatrix = new engineMath.Matrix(0.5, 0.0, 0.0, 0.0, 0.0, 0.5, 0.0, 0.0, 0.0, 0.0, 0.5, 0.0, 0.5, 0.5, 0.5, 1.0);
|
|
22389
|
+
/** @internal */ ShadowUtils._shadowMapCoordMatrix = new engineMath.Matrix(0.5, 0.0, 0.0, 0.0, 0.0, -0.5, 0.0, 0.0, 0.0, 0.0, 0.5, 0.0, 0.5, 0.5, 0.5, 1.0);
|
|
22351
22390
|
})();
|
|
22352
22391
|
(function() {
|
|
22353
22392
|
ShadowUtils._frustumCorners = [
|
|
@@ -22699,6 +22738,7 @@ var /**
|
|
|
22699
22738
|
rhi.viewport(x, y, shadowTileResolution, shadowTileResolution);
|
|
22700
22739
|
// for no cascade is for the edge,for cascade is for the beyond maxCascade pixel can use (0,0,0) trick sample the shadowMap
|
|
22701
22740
|
rhi.scissor(x + 1, y + 1, shadowTileResolution - 2, shadowTileResolution - 2);
|
|
22741
|
+
// @todo: It is more appropriate to prevent duplication based on `virtualCamera` at `RenderQueue#render`.
|
|
22702
22742
|
engine._renderCount++;
|
|
22703
22743
|
opaqueQueue.render(camera, exports.Layer.Everything, exports.PipelineStage.ShadowCaster);
|
|
22704
22744
|
alphaTestQueue.render(camera, exports.Layer.Everything, exports.PipelineStage.ShadowCaster);
|
|
@@ -22809,7 +22849,7 @@ var /**
|
|
|
22809
22849
|
var sceneShaderData = this._camera.scene.shaderData;
|
|
22810
22850
|
sceneShaderData.setVector2(CascadedShadowCasterPass._lightShadowBiasProperty, this._shadowBias);
|
|
22811
22851
|
sceneShaderData.setVector3(CascadedShadowCasterPass._lightDirectionProperty, light.direction);
|
|
22812
|
-
context.applyVirtualCamera(virtualCamera);
|
|
22852
|
+
context.applyVirtualCamera(virtualCamera, true);
|
|
22813
22853
|
};
|
|
22814
22854
|
return CascadedShadowCasterPass;
|
|
22815
22855
|
}(PipelinePass);
|
|
@@ -22998,19 +23038,25 @@ var /**
|
|
|
22998
23038
|
var scene = camera.scene;
|
|
22999
23039
|
var cullingResults = this._cullingResults;
|
|
23000
23040
|
var sunlight = scene._lightManager._sunlight;
|
|
23041
|
+
var depthOnlyPass = this._depthOnlyPass;
|
|
23042
|
+
var depthPassEnabled = camera.depthTextureMode === exports.DepthTextureMode.PrePass && depthOnlyPass._supportDepthTexture;
|
|
23043
|
+
var rt2DEnabled = camera.renderTarget && cubeFace == undefined;
|
|
23001
23044
|
camera.engine._spriteMaskManager.clear();
|
|
23002
23045
|
if (scene.castShadows && sunlight && sunlight.shadowType !== exports.ShadowType.None) {
|
|
23003
23046
|
this._cascadedShadowCaster.onRender(context);
|
|
23004
23047
|
}
|
|
23005
23048
|
cullingResults.reset();
|
|
23006
23049
|
this._allSpriteMasks.length = 0;
|
|
23007
|
-
context.applyVirtualCamera(camera._virtualCamera);
|
|
23008
|
-
this.
|
|
23050
|
+
context.applyVirtualCamera(camera._virtualCamera, depthPassEnabled || rt2DEnabled);
|
|
23051
|
+
this._prepareRender(context);
|
|
23009
23052
|
cullingResults.sort();
|
|
23010
|
-
|
|
23011
|
-
if (camera.depthTextureMode === exports.DepthTextureMode.PrePass && depthOnlyPass._supportDepthTexture) {
|
|
23053
|
+
if (depthPassEnabled) {
|
|
23012
23054
|
depthOnlyPass.onConfig(camera);
|
|
23013
23055
|
depthOnlyPass.onRender(context, cullingResults);
|
|
23056
|
+
if (!rt2DEnabled) {
|
|
23057
|
+
context.applyVirtualCamera(camera._virtualCamera, false);
|
|
23058
|
+
this._updateMVPShaderData(context);
|
|
23059
|
+
}
|
|
23014
23060
|
} else {
|
|
23015
23061
|
camera.shaderData.setTexture(exports.Camera._cameraDepthTextureProperty, camera.engine._whiteTexture2D);
|
|
23016
23062
|
}
|
|
@@ -23127,9 +23173,9 @@ var /**
|
|
|
23127
23173
|
(pass._renderState || material.renderState)._apply(engine, false, pass._renderStateDataMap, material.shaderData);
|
|
23128
23174
|
rhi.drawPrimitive(mesh._primitive, mesh.subMesh, program);
|
|
23129
23175
|
};
|
|
23130
|
-
_proto.
|
|
23131
|
-
var engine = context.camera.engine;
|
|
23176
|
+
_proto._prepareRender = function _prepareRender(context) {
|
|
23132
23177
|
var camera = context.camera;
|
|
23178
|
+
var engine = camera.engine;
|
|
23133
23179
|
var renderers = camera.scene._componentsManager._renderers;
|
|
23134
23180
|
var elements = renderers._elements;
|
|
23135
23181
|
for(var i = renderers.length - 1; i >= 0; --i){
|
|
@@ -23148,6 +23194,15 @@ var /**
|
|
|
23148
23194
|
renderer._prepareRender(context);
|
|
23149
23195
|
}
|
|
23150
23196
|
};
|
|
23197
|
+
_proto._updateMVPShaderData = function _updateMVPShaderData(context) {
|
|
23198
|
+
var camera = context.camera;
|
|
23199
|
+
var renderers = camera.scene._componentsManager._renderers;
|
|
23200
|
+
var elements = renderers._elements;
|
|
23201
|
+
for(var i = renderers.length - 1; i >= 0; --i){
|
|
23202
|
+
var renderer = elements[i];
|
|
23203
|
+
renderer._updateMVPShaderData(context, renderer.entity.transform.worldMatrix);
|
|
23204
|
+
}
|
|
23205
|
+
};
|
|
23151
23206
|
_create_class(BasicRenderPipeline, [
|
|
23152
23207
|
{
|
|
23153
23208
|
key: "defaultRenderPass",
|
|
@@ -23219,8 +23274,6 @@ exports.Camera = (_Camera = /*#__PURE__*/ function(Component1) {
|
|
|
23219
23274
|
_this._shaderData = new ShaderData(ShaderDataGroup.Camera);
|
|
23220
23275
|
_this._isCustomViewMatrix = false;
|
|
23221
23276
|
_this._isCustomProjectionMatrix = false;
|
|
23222
|
-
_this._nearClipPlane = 0.1;
|
|
23223
|
-
_this._farClipPlane = 100;
|
|
23224
23277
|
_this._fieldOfView = 45;
|
|
23225
23278
|
_this._orthographicSize = 10;
|
|
23226
23279
|
_this._isProjectionDirty = true;
|
|
@@ -23502,7 +23555,7 @@ exports.Camera = (_Camera = /*#__PURE__*/ function(Component1) {
|
|
|
23502
23555
|
shaderData.setVector3(exports.Camera._cameraForwardProperty, transform.worldForward);
|
|
23503
23556
|
shaderData.setVector3(exports.Camera._cameraUpProperty, transform.worldUp);
|
|
23504
23557
|
var depthBufferParams = this._depthBufferParams;
|
|
23505
|
-
var farDivideNear = this.
|
|
23558
|
+
var farDivideNear = this.farClipPlane / this.nearClipPlane;
|
|
23506
23559
|
depthBufferParams.set(1.0 - farDivideNear, farDivideNear, 0, 0);
|
|
23507
23560
|
shaderData.setVector4(exports.Camera._cameraDepthBufferParamsProperty, depthBufferParams);
|
|
23508
23561
|
};
|
|
@@ -23543,10 +23596,10 @@ exports.Camera = (_Camera = /*#__PURE__*/ function(Component1) {
|
|
|
23543
23596
|
get: /**
|
|
23544
23597
|
* Near clip plane - the closest point to the camera when rendering occurs.
|
|
23545
23598
|
*/ function get() {
|
|
23546
|
-
return this.
|
|
23599
|
+
return this._virtualCamera.nearClipPlane;
|
|
23547
23600
|
},
|
|
23548
23601
|
set: function set(value) {
|
|
23549
|
-
this.
|
|
23602
|
+
this._virtualCamera.nearClipPlane = value;
|
|
23550
23603
|
this._projectionMatrixChange();
|
|
23551
23604
|
}
|
|
23552
23605
|
},
|
|
@@ -23555,10 +23608,10 @@ exports.Camera = (_Camera = /*#__PURE__*/ function(Component1) {
|
|
|
23555
23608
|
get: /**
|
|
23556
23609
|
* Far clip plane - the furthest point to the camera when rendering occurs.
|
|
23557
23610
|
*/ function get() {
|
|
23558
|
-
return this.
|
|
23611
|
+
return this._virtualCamera.farClipPlane;
|
|
23559
23612
|
},
|
|
23560
23613
|
set: function set(value) {
|
|
23561
|
-
this.
|
|
23614
|
+
this._virtualCamera.farClipPlane = value;
|
|
23562
23615
|
this._projectionMatrixChange();
|
|
23563
23616
|
}
|
|
23564
23617
|
},
|
|
@@ -23694,11 +23747,11 @@ exports.Camera = (_Camera = /*#__PURE__*/ function(Component1) {
|
|
|
23694
23747
|
this._isProjectionDirty = false;
|
|
23695
23748
|
var aspectRatio = this.aspectRatio;
|
|
23696
23749
|
if (!virtualCamera.isOrthographic) {
|
|
23697
|
-
engineMath.Matrix.perspective(engineMath.MathUtil.degreeToRadian(this._fieldOfView), aspectRatio, this.
|
|
23750
|
+
engineMath.Matrix.perspective(engineMath.MathUtil.degreeToRadian(this._fieldOfView), aspectRatio, this.nearClipPlane, this.farClipPlane, projectionMatrix);
|
|
23698
23751
|
} else {
|
|
23699
23752
|
var width = this._orthographicSize * aspectRatio;
|
|
23700
23753
|
var height = this._orthographicSize;
|
|
23701
|
-
engineMath.Matrix.ortho(-width, width, -height, height, this.
|
|
23754
|
+
engineMath.Matrix.ortho(-width, width, -height, height, this.nearClipPlane, this.farClipPlane, projectionMatrix);
|
|
23702
23755
|
}
|
|
23703
23756
|
return projectionMatrix;
|
|
23704
23757
|
},
|
|
@@ -31326,6 +31379,7 @@ exports.Script = Script;
|
|
|
31326
31379
|
exports.Shader = Shader;
|
|
31327
31380
|
exports.ShaderData = ShaderData;
|
|
31328
31381
|
exports.ShaderFactory = ShaderFactory;
|
|
31382
|
+
exports.ShaderLib = ShaderLib;
|
|
31329
31383
|
exports.ShaderMacro = ShaderMacro;
|
|
31330
31384
|
exports.ShaderMacroCollection = ShaderMacroCollection;
|
|
31331
31385
|
exports.ShaderPass = ShaderPass;
|