@galacean/engine-core 1.0.0-beta.7 → 1.0.0-beta.8
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 +206 -84
- package/dist/main.js.map +1 -1
- package/dist/miniprogram.js +206 -84
- package/dist/module.js +206 -84
- package/dist/module.js.map +1 -1
- package/package.json +3 -3
- package/types/2d/sprite/Sprite.d.ts +12 -2
- package/types/2d/sprite/SpriteMask.d.ts +15 -4
- package/types/2d/sprite/SpriteRenderer.d.ts +15 -4
- package/types/mesh/MeshRenderer.d.ts +7 -1
package/dist/main.js
CHANGED
|
@@ -9517,11 +9517,11 @@ var camera_declare = "#define GLSLIFY 1\nuniform vec3 camera_Position;"; // esli
|
|
|
9517
9517
|
|
|
9518
9518
|
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);}\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
|
|
9519
9519
|
|
|
9520
|
-
var common_vert = "#define GLSLIFY 1\nattribute vec3 POSITION;\n#ifdef RENDERER_HAS_UV\nattribute vec2 TEXCOORD_0;\n#endif\n#ifdef RENDERER_HAS_UV1\nattribute vec2 TEXCOORD_1;\n#endif\n#ifdef RENDERER_HAS_SKIN\nattribute vec4 JOINTS_0;attribute vec4 WEIGHTS_0;\n#ifdef RENDERER_USE_JOINT_TEXTURE\nuniform sampler2D renderer_JointSampler;uniform float renderer_JointCount;mat4 getJointMatrix(sampler2D smp,float index){float base=index/renderer_JointCount;float hf=0.5/renderer_JointCount;float v=base+hf;vec4 m0=texture2D(smp,vec2(0.125,v));vec4 m1=texture2D(smp,vec2(0.375,v));vec4 m2=texture2D(smp,vec2(0.625,v));vec4 m3=texture2D(smp,vec2(0.875,v));return mat4(m0,m1,m2,m3);}\n#else\nuniform mat4 renderer_JointMatrix[RENDERER_JOINTS_NUM];\n#endif\n#endif\n#ifdef
|
|
9520
|
+
var common_vert = "#define GLSLIFY 1\nattribute vec3 POSITION;\n#ifdef RENDERER_HAS_UV\nattribute vec2 TEXCOORD_0;\n#endif\n#ifdef RENDERER_HAS_UV1\nattribute vec2 TEXCOORD_1;\n#endif\n#ifdef RENDERER_HAS_SKIN\nattribute vec4 JOINTS_0;attribute vec4 WEIGHTS_0;\n#ifdef RENDERER_USE_JOINT_TEXTURE\nuniform sampler2D renderer_JointSampler;uniform float renderer_JointCount;mat4 getJointMatrix(sampler2D smp,float index){float base=index/renderer_JointCount;float hf=0.5/renderer_JointCount;float v=base+hf;vec4 m0=texture2D(smp,vec2(0.125,v));vec4 m1=texture2D(smp,vec2(0.375,v));vec4 m2=texture2D(smp,vec2(0.625,v));vec4 m3=texture2D(smp,vec2(0.875,v));return mat4(m0,m1,m2,m3);}\n#else\nuniform mat4 renderer_JointMatrix[RENDERER_JOINTS_NUM];\n#endif\n#endif\n#ifdef RENDERER_ENABLE_VERTEXCOLOR\nattribute vec4 COLOR_0;\n#endif\n#include <transform_declare>\n#include <camera_declare>\nuniform vec4 material_TilingOffset;\n#ifndef MATERIAL_OMIT_NORMAL\n#ifdef RENDERER_HAS_NORMAL\nattribute vec3 NORMAL;\n#endif\n#ifdef RENDERER_HAS_TANGENT\nattribute vec4 TANGENT;\n#endif\n#endif\n"; // eslint-disable-line
|
|
9521
9521
|
|
|
9522
9522
|
var transform_declare = "#define GLSLIFY 1\nuniform mat4 renderer_LocalMat;uniform mat4 renderer_ModelMat;uniform mat4 camera_ViewMat;uniform mat4 camera_ProjMat;uniform mat4 renderer_MVMat;uniform mat4 renderer_MVPMat;uniform mat4 renderer_NormalMat;"; // eslint-disable-line
|
|
9523
9523
|
|
|
9524
|
-
var color_share = "#define GLSLIFY 1\n#ifdef
|
|
9524
|
+
var color_share = "#define GLSLIFY 1\n#ifdef RENDERER_ENABLE_VERTEXCOLOR\nvarying vec4 v_color;\n#endif\n"; // eslint-disable-line
|
|
9525
9525
|
|
|
9526
9526
|
var FogFragmentDeclaration = "#define GLSLIFY 1\n#if SCENE_FOG_MODE != 0\nvarying vec3 v_positionVS;uniform vec4 scene_FogColor;uniform vec4 scene_FogParams;float ComputeFogIntensity(float fogDepth){\n#if SCENE_FOG_MODE == 1\nreturn clamp(fogDepth*scene_FogParams.x+scene_FogParams.y,0.0,1.0);\n#elif SCENE_FOG_MODE == 2\nreturn clamp(exp2(-fogDepth*scene_FogParams.z),0.0,1.0);\n#elif SCENE_FOG_MODE == 3\nfloat factor=fogDepth*scene_FogParams.w;return clamp(exp2(-factor*factor),0.0,1.0);\n#endif\n}\n#endif\n"; // eslint-disable-line
|
|
9527
9527
|
|
|
@@ -9541,7 +9541,7 @@ var blendShape_input = "#define GLSLIFY 1\n#ifdef RENDERER_HAS_BLENDSHAPE\n#ifde
|
|
|
9541
9541
|
|
|
9542
9542
|
var blendShape_vert = "#define GLSLIFY 1\n#ifdef RENDERER_HAS_BLENDSHAPE\n#ifdef RENDERER_BLENDSHAPE_USE_TEXTURE\nint vertexOffset=gl_VertexID*renderer_BlendShapeTextureInfo.x;for(int i=0;i<RENDERER_BLENDSHAPE_COUNT;i++){int vertexElementOffset=vertexOffset;float weight=renderer_BlendShapeWeights[i];position.xyz+=getBlendShapeVertexElement(i,vertexElementOffset)*weight;\n#ifndef MATERIAL_OMIT_NORMAL\n#if defined( RENDERER_HAS_NORMAL ) && defined( RENDERER_BLENDSHAPE_HAS_NORMAL )\nvertexElementOffset+=1;normal+=getBlendShapeVertexElement(i,vertexElementOffset)*weight;\n#endif\n#if defined( RENDERER_HAS_TANGENT ) && defined(RENDERER_BLENDSHAPE_HAS_TANGENT) && ( defined(MATERIAL_HAS_NORMALTEXTURE) || defined(MATERIAL_HAS_CLEAR_COAT_NORMAL_TEXTURE) )\nvertexElementOffset+=1;tangent.xyz+=getBlendShapeVertexElement(i,vertexElementOffset)*weight;\n#endif\n#endif\n}\n#else\nposition.xyz+=POSITION_BS0*renderer_BlendShapeWeights[0];position.xyz+=POSITION_BS1*renderer_BlendShapeWeights[1];\n#if defined( RENDERER_BLENDSHAPE_HAS_NORMAL ) && defined( RENDERER_BLENDSHAPE_HAS_TANGENT )\n#ifndef MATERIAL_OMIT_NORMAL\n#ifdef RENDERER_HAS_NORMAL\nnormal+=NORMAL_BS0*renderer_BlendShapeWeights[0];normal+=NORMAL_BS1*renderer_BlendShapeWeights[1];\n#endif\n#if defined( RENDERER_HAS_TANGENT ) && ( defined(MATERIAL_HAS_NORMALTEXTURE) || defined(MATERIAL_HAS_CLEAR_COAT_NORMAL_TEXTURE) )\ntangent.xyz+=TANGENT_BS0*renderer_BlendShapeWeights[0];tangent.xyz+=TANGENT_BS1*renderer_BlendShapeWeights[1];\n#endif\n#endif\n#else\n#if defined( RENDERER_BLENDSHAPE_HAS_NORMAL ) || defined( RENDERER_BLENDSHAPE_HAS_TANGENT )\n#ifndef MATERIAL_OMIT_NORMAL\nposition.xyz+=POSITION_BS2*renderer_BlendShapeWeights[2];position.xyz+=POSITION_BS3*renderer_BlendShapeWeights[3];\n#if defined( RENDERER_BLENDSHAPE_HAS_NORMAL ) && defined( RENDERER_HAS_NORMAL )\nnormal+=NORMAL_BS0*renderer_BlendShapeWeights[0];normal+=NORMAL_BS1*renderer_BlendShapeWeights[1];normal+=NORMAL_BS2*renderer_BlendShapeWeights[2];normal+=NORMAL_BS3*renderer_BlendShapeWeights[3];\n#endif\n#if defined(RENDERER_BLENDSHAPE_HAS_TANGENT) && defined( RENDERER_HAS_TANGENT ) && ( defined(MATERIAL_HAS_NORMALTEXTURE) || defined(MATERIAL_HAS_CLEAR_COAT_NORMAL_TEXTURE) )\ntangent.xyz+=TANGENT_BS0*renderer_BlendShapeWeights[0];tangent.xyz+=TANGENT_BS1*renderer_BlendShapeWeights[1];tangent.xyz+=TANGENT_BS2*renderer_BlendShapeWeights[2];tangent.xyz+=TANGENT_BS3*renderer_BlendShapeWeights[3];\n#endif\n#endif\n#else\nposition.xyz+=POSITION_BS2*renderer_BlendShapeWeights[2];position.xyz+=POSITION_BS3*renderer_BlendShapeWeights[3];position.xyz+=POSITION_BS4*renderer_BlendShapeWeights[4];position.xyz+=POSITION_BS5*renderer_BlendShapeWeights[5];position.xyz+=POSITION_BS6*renderer_BlendShapeWeights[6];position.xyz+=POSITION_BS7*renderer_BlendShapeWeights[7];\n#endif\n#endif\n#endif\n#endif\n"; // eslint-disable-line
|
|
9543
9543
|
|
|
9544
|
-
var color_vert = "#define GLSLIFY 1\n#ifdef
|
|
9544
|
+
var color_vert = "#define GLSLIFY 1\n#ifdef RENDERER_ENABLE_VERTEXCOLOR\nv_color=COLOR_0;\n#endif\n"; // eslint-disable-line
|
|
9545
9545
|
|
|
9546
9546
|
var FogVertex = "#define GLSLIFY 1\n#if SCENE_FOG_MODE != 0\nvec4 positionVS=renderer_MVMat*position;v_positionVS=positionVS.xyz/positionVS.w;\n#endif\n"; // eslint-disable-line
|
|
9547
9547
|
|
|
@@ -9561,7 +9561,7 @@ var light_frag_define = "#define GLSLIFY 1\n#ifdef SCENE_DIRECT_LIGHT_COUNT\nstr
|
|
|
9561
9561
|
|
|
9562
9562
|
var mobile_material_frag = "#define GLSLIFY 1\nuniform vec4 material_EmissiveColor;uniform vec4 material_BaseColor;uniform vec4 material_SpecularColor;uniform float material_Shininess;uniform float material_NormalIntensity;uniform float material_AlphaCutoff;\n#ifdef MATERIAL_HAS_EMISSIVETEXTURE\nuniform sampler2D material_EmissiveTexture;\n#endif\n#ifdef MATERIAL_HAS_BASETEXTURE\nuniform sampler2D material_BaseTexture;\n#endif\n#ifdef MATERIAL_HAS_SPECULAR_TEXTURE\nuniform sampler2D material_SpecularTexture;\n#endif\n#ifdef MATERIAL_HAS_NORMALTEXTURE\nuniform sampler2D material_NormalTexture;\n#endif\n"; // eslint-disable-line
|
|
9563
9563
|
|
|
9564
|
-
var begin_mobile_frag = "#define GLSLIFY 1\nvec4 ambient=vec4(0.0);vec4 emission=material_EmissiveColor;vec4 diffuse=material_BaseColor;vec4 specular=material_SpecularColor;\n#ifdef MATERIAL_HAS_EMISSIVETEXTURE\nvec4 emissiveTextureColor=texture2D(material_EmissiveTexture,v_uv);\n#ifndef ENGINE_IS_COLORSPACE_GAMMA\nemissiveTextureColor=gammaToLinear(emissiveTextureColor);\n#endif\nemission*=emissiveTextureColor;\n#endif\n#ifdef MATERIAL_HAS_BASETEXTURE\nvec4 diffuseTextureColor=texture2D(material_BaseTexture,v_uv);\n#ifndef ENGINE_IS_COLORSPACE_GAMMA\ndiffuseTextureColor=gammaToLinear(diffuseTextureColor);\n#endif\ndiffuse*=diffuseTextureColor;\n#endif\n#ifdef
|
|
9564
|
+
var begin_mobile_frag = "#define GLSLIFY 1\nvec4 ambient=vec4(0.0);vec4 emission=material_EmissiveColor;vec4 diffuse=material_BaseColor;vec4 specular=material_SpecularColor;\n#ifdef MATERIAL_HAS_EMISSIVETEXTURE\nvec4 emissiveTextureColor=texture2D(material_EmissiveTexture,v_uv);\n#ifndef ENGINE_IS_COLORSPACE_GAMMA\nemissiveTextureColor=gammaToLinear(emissiveTextureColor);\n#endif\nemission*=emissiveTextureColor;\n#endif\n#ifdef MATERIAL_HAS_BASETEXTURE\nvec4 diffuseTextureColor=texture2D(material_BaseTexture,v_uv);\n#ifndef ENGINE_IS_COLORSPACE_GAMMA\ndiffuseTextureColor=gammaToLinear(diffuseTextureColor);\n#endif\ndiffuse*=diffuseTextureColor;\n#endif\n#ifdef RENDERER_ENABLE_VERTEXCOLOR\ndiffuse*=v_color;\n#endif\n#ifdef MATERIAL_HAS_SPECULAR_TEXTURE\nvec4 specularTextureColor=texture2D(material_SpecularTexture,v_uv);\n#ifndef ENGINE_IS_COLORSPACE_GAMMA\nspecularTextureColor=gammaToLinear(specularTextureColor);\n#endif\nspecular*=specularTextureColor;\n#endif\nambient=vec4(scene_EnvMapLight.diffuse*scene_EnvMapLight.diffuseIntensity,1.0)*diffuse;"; // eslint-disable-line
|
|
9565
9565
|
|
|
9566
9566
|
var begin_viewdir_frag = "#define GLSLIFY 1\n#ifdef MATERIAL_NEED_WORLD_POS\nvec3 V=normalize(camera_Position-v_pos);\n#endif\n"; // eslint-disable-line
|
|
9567
9567
|
|
|
@@ -9601,7 +9601,7 @@ var noise_simplex_4D = "#define GLSLIFY 1\nvec4 grad4(float j,vec4 ip){const vec
|
|
|
9601
9601
|
|
|
9602
9602
|
var pbr_frag_define = "#define GLSLIFY 1\nuniform float material_AlphaCutoff;uniform vec4 material_BaseColor;uniform float material_Metal;uniform float material_Roughness;uniform float material_IOR;uniform vec3 material_PBRSpecularColor;uniform float material_Glossiness;uniform vec3 material_EmissiveColor;\n#ifdef MATERIAL_ENABLE_CLEAR_COAT\nuniform float material_ClearCoat;uniform float material_ClearCoatRoughness;\n#endif\nuniform float material_NormalIntensity;uniform float material_OcclusionIntensity;uniform float material_OcclusionTextureCoord;\n#ifdef MATERIAL_HAS_BASETEXTURE\nuniform sampler2D material_BaseTexture;\n#endif\n#ifdef MATERIAL_HAS_NORMALTEXTURE\nuniform sampler2D material_NormalTexture;\n#endif\n#ifdef MATERIAL_HAS_EMISSIVETEXTURE\nuniform sampler2D material_EmissiveTexture;\n#endif\n#ifdef MATERIAL_HAS_ROUGHNESS_METALLIC_TEXTURE\nuniform sampler2D material_RoughnessMetallicTexture;\n#endif\n#ifdef MATERIAL_HAS_SPECULAR_GLOSSINESS_TEXTURE\nuniform sampler2D material_SpecularGlossinessTexture;\n#endif\n#ifdef MATERIAL_HAS_OCCLUSION_TEXTURE\nuniform sampler2D material_OcclusionTexture;\n#endif\n#ifdef MATERIAL_HAS_CLEAR_COAT_TEXTURE\nuniform sampler2D material_ClearCoatTexture;\n#endif\n#ifdef MATERIAL_HAS_CLEAR_COAT_ROUGHNESS_TEXTURE\nuniform sampler2D material_ClearCoatRoughnessTexture;\n#endif\n#ifdef MATERIAL_HAS_CLEAR_COAT_NORMAL_TEXTURE\nuniform sampler2D material_ClearCoatNormalTexture;\n#endif\nstruct ReflectedLight{vec3 directDiffuse;vec3 directSpecular;vec3 indirectDiffuse;vec3 indirectSpecular;};struct Geometry{vec3 position;vec3 normal;vec3 viewDir;float dotNV;\n#ifdef MATERIAL_ENABLE_CLEAR_COAT\nvec3 clearCoatNormal;float clearCoatDotNV;\n#endif\n};struct Material{vec3 diffuseColor;float roughness;vec3 specularColor;float opacity;\n#ifdef MATERIAL_ENABLE_CLEAR_COAT\nfloat clearCoat;float clearCoatRoughness;\n#endif\n};"; // eslint-disable-line
|
|
9603
9603
|
|
|
9604
|
-
var pbr_helper = "#define GLSLIFY 1\n#include <normal_get>\nfloat computeSpecularOcclusion(float ambientOcclusion,float roughness,float dotNV){return saturate(pow(dotNV+ambientOcclusion,exp2(-16.0*roughness-1.0))-1.0+ambientOcclusion);}float getAARoughnessFactor(vec3 normal){\n#ifdef HAS_DERIVATIVES\nvec3 dxy=max(abs(dFdx(normal)),abs(dFdy(normal)));return 0.04+max(max(dxy.x,dxy.y),dxy.z);\n#else\nreturn 0.04;\n#endif\n}void initGeometry(out Geometry geometry){geometry.position=v_pos;geometry.viewDir=normalize(camera_Position-v_pos);\n#if defined(MATERIAL_HAS_NORMALTEXTURE) || defined(MATERIAL_HAS_CLEAR_COAT_NORMAL_TEXTURE)\nmat3 tbn=getTBN();\n#endif\n#ifdef MATERIAL_HAS_NORMALTEXTURE\ngeometry.normal=getNormalByNormalTexture(tbn,material_NormalTexture,material_NormalIntensity,v_uv);\n#else\ngeometry.normal=getNormal();\n#endif\ngeometry.dotNV=saturate(dot(geometry.normal,geometry.viewDir));\n#ifdef MATERIAL_ENABLE_CLEAR_COAT\n#ifdef MATERIAL_HAS_CLEAR_COAT_NORMAL_TEXTURE\ngeometry.clearCoatNormal=getNormalByNormalTexture(tbn,material_ClearCoatNormalTexture,material_NormalIntensity,v_uv);\n#else\ngeometry.clearCoatNormal=getNormal();\n#endif\ngeometry.clearCoatDotNV=saturate(dot(geometry.clearCoatNormal,geometry.viewDir));\n#endif\n}void initMaterial(out Material material,const in Geometry geometry){vec4 baseColor=material_BaseColor;float metal=material_Metal;float roughness=material_Roughness;vec3 specularColor=material_PBRSpecularColor;float glossiness=material_Glossiness;float alphaCutoff=material_AlphaCutoff;float F0=pow2((material_IOR-1.0)/(material_IOR+1.0));\n#ifdef MATERIAL_HAS_BASETEXTURE\nvec4 baseTextureColor=texture2D(material_BaseTexture,v_uv);\n#ifndef ENGINE_IS_COLORSPACE_GAMMA\nbaseTextureColor=gammaToLinear(baseTextureColor);\n#endif\nbaseColor*=baseTextureColor;\n#endif\n#ifdef
|
|
9604
|
+
var pbr_helper = "#define GLSLIFY 1\n#include <normal_get>\nfloat computeSpecularOcclusion(float ambientOcclusion,float roughness,float dotNV){return saturate(pow(dotNV+ambientOcclusion,exp2(-16.0*roughness-1.0))-1.0+ambientOcclusion);}float getAARoughnessFactor(vec3 normal){\n#ifdef HAS_DERIVATIVES\nvec3 dxy=max(abs(dFdx(normal)),abs(dFdy(normal)));return 0.04+max(max(dxy.x,dxy.y),dxy.z);\n#else\nreturn 0.04;\n#endif\n}void initGeometry(out Geometry geometry){geometry.position=v_pos;geometry.viewDir=normalize(camera_Position-v_pos);\n#if defined(MATERIAL_HAS_NORMALTEXTURE) || defined(MATERIAL_HAS_CLEAR_COAT_NORMAL_TEXTURE)\nmat3 tbn=getTBN();\n#endif\n#ifdef MATERIAL_HAS_NORMALTEXTURE\ngeometry.normal=getNormalByNormalTexture(tbn,material_NormalTexture,material_NormalIntensity,v_uv);\n#else\ngeometry.normal=getNormal();\n#endif\ngeometry.dotNV=saturate(dot(geometry.normal,geometry.viewDir));\n#ifdef MATERIAL_ENABLE_CLEAR_COAT\n#ifdef MATERIAL_HAS_CLEAR_COAT_NORMAL_TEXTURE\ngeometry.clearCoatNormal=getNormalByNormalTexture(tbn,material_ClearCoatNormalTexture,material_NormalIntensity,v_uv);\n#else\ngeometry.clearCoatNormal=getNormal();\n#endif\ngeometry.clearCoatDotNV=saturate(dot(geometry.clearCoatNormal,geometry.viewDir));\n#endif\n}void initMaterial(out Material material,const in Geometry geometry){vec4 baseColor=material_BaseColor;float metal=material_Metal;float roughness=material_Roughness;vec3 specularColor=material_PBRSpecularColor;float glossiness=material_Glossiness;float alphaCutoff=material_AlphaCutoff;float F0=pow2((material_IOR-1.0)/(material_IOR+1.0));\n#ifdef MATERIAL_HAS_BASETEXTURE\nvec4 baseTextureColor=texture2D(material_BaseTexture,v_uv);\n#ifndef ENGINE_IS_COLORSPACE_GAMMA\nbaseTextureColor=gammaToLinear(baseTextureColor);\n#endif\nbaseColor*=baseTextureColor;\n#endif\n#ifdef RENDERER_ENABLE_VERTEXCOLOR\nbaseColor*=v_color;\n#endif\n#ifdef MATERIAL_IS_ALPHA_CUTOFF\nif(baseColor.a<alphaCutoff){discard;}\n#endif\n#ifdef MATERIAL_HAS_ROUGHNESS_METALLIC_TEXTURE\nvec4 metalRoughMapColor=texture2D(material_RoughnessMetallicTexture,v_uv);roughness*=metalRoughMapColor.g;metal*=metalRoughMapColor.b;\n#endif\n#ifdef MATERIAL_HAS_SPECULAR_GLOSSINESS_TEXTURE\nvec4 specularGlossinessColor=texture2D(material_SpecularGlossinessTexture,v_uv);\n#ifndef ENGINE_IS_COLORSPACE_GAMMA\nspecularGlossinessColor=gammaToLinear(specularGlossinessColor);\n#endif\nspecularColor*=specularGlossinessColor.rgb;glossiness*=specularGlossinessColor.a;\n#endif\n#ifdef IS_METALLIC_WORKFLOW\nmaterial.diffuseColor=baseColor.rgb*(1.0-metal);material.specularColor=mix(vec3(F0),baseColor.rgb,metal);material.roughness=roughness;\n#else\nfloat specularStrength=max(max(specularColor.r,specularColor.g),specularColor.b);material.diffuseColor=baseColor.rgb*(1.0-specularStrength);material.specularColor=specularColor;material.roughness=1.0-glossiness;\n#endif\nmaterial.roughness=max(material.roughness,getAARoughnessFactor(geometry.normal));\n#ifdef MATERIAL_ENABLE_CLEAR_COAT\nmaterial.clearCoat=material_ClearCoat;material.clearCoatRoughness=material_ClearCoatRoughness;\n#ifdef MATERIAL_HAS_CLEAR_COAT_TEXTURE\nmaterial.clearCoat*=texture2D(material_ClearCoatTexture,v_uv).r;\n#endif\n#ifdef MATERIAL_HAS_CLEAR_COAT_ROUGHNESS_TEXTURE\nmaterial.clearCoatRoughness*=texture2D(material_ClearCoatRoughnessTexture,v_uv).g;\n#endif\nmaterial.clearCoat=saturate(material.clearCoat);material.clearCoatRoughness=max(material.clearCoatRoughness,getAARoughnessFactor(geometry.clearCoatNormal));\n#endif\n#ifdef MATERIAL_IS_TRANSPARENT\nmaterial.opacity=baseColor.a;\n#else\nmaterial.opacity=1.0;\n#endif\n}\n#include <brdf>\n#include <direct_irradiance_frag_define>\n#include <ibl_frag_define>\n"; // eslint-disable-line
|
|
9605
9605
|
|
|
9606
9606
|
var brdf = "#define GLSLIFY 1\nfloat F_Schlick(float dotLH){return 0.04+0.96*(pow(1.0-dotLH,5.0));}vec3 F_Schlick(vec3 specularColor,float dotLH){float fresnel=exp2((-5.55473*dotLH-6.98316)*dotLH);return(1.0-specularColor)*fresnel+specularColor;}float G_GGX_SmithCorrelated(float alpha,float dotNL,float dotNV){float a2=pow2(alpha);float gv=dotNL*sqrt(a2+(1.0-a2)*pow2(dotNV));float gl=dotNV*sqrt(a2+(1.0-a2)*pow2(dotNL));return 0.5/max(gv+gl,EPSILON);}float D_GGX(float alpha,float dotNH){float a2=pow2(alpha);float denom=pow2(dotNH)*(a2-1.0)+1.0;return RECIPROCAL_PI*a2/pow2(denom);}vec3 BRDF_Specular_GGX(vec3 incidentDirection,vec3 viewDir,vec3 normal,vec3 specularColor,float roughness){float alpha=pow2(roughness);vec3 halfDir=normalize(incidentDirection+viewDir);float dotNL=saturate(dot(normal,incidentDirection));float dotNV=saturate(dot(normal,viewDir));float dotNH=saturate(dot(normal,halfDir));float dotLH=saturate(dot(incidentDirection,halfDir));vec3 F=F_Schlick(specularColor,dotLH);float G=G_GGX_SmithCorrelated(alpha,dotNL,dotNV);float D=D_GGX(alpha,dotNH);return F*(G*D);}vec3 BRDF_Diffuse_Lambert(vec3 diffuseColor){return RECIPROCAL_PI*diffuseColor;}"; // eslint-disable-line
|
|
9607
9607
|
|
|
@@ -11176,8 +11176,10 @@ SimpleSpriteAssembler = __decorate([
|
|
|
11176
11176
|
_this = Renderer.call(this, entity) || this;
|
|
11177
11177
|
/** The mask layers the sprite mask influence to. */ _this.influenceLayers = exports.SpriteMaskLayer.Everything;
|
|
11178
11178
|
_this._sprite = null;
|
|
11179
|
-
_this.
|
|
11180
|
-
_this.
|
|
11179
|
+
_this._automaticWidth = 0;
|
|
11180
|
+
_this._automaticHeight = 0;
|
|
11181
|
+
_this._customWidth = undefined;
|
|
11182
|
+
_this._customHeight = undefined;
|
|
11181
11183
|
_this._flipX = false;
|
|
11182
11184
|
_this._flipY = false;
|
|
11183
11185
|
_this._alphaCutoff = 0.5;
|
|
@@ -11197,12 +11199,11 @@ SimpleSpriteAssembler = __decorate([
|
|
|
11197
11199
|
/**
|
|
11198
11200
|
* @internal
|
|
11199
11201
|
*/ _proto._updateBounds = function _updateBounds(worldBounds) {
|
|
11200
|
-
|
|
11201
|
-
|
|
11202
|
+
if (this.sprite) {
|
|
11203
|
+
SimpleSpriteAssembler.updatePositions(this);
|
|
11204
|
+
} else {
|
|
11202
11205
|
worldBounds.min.set(0, 0, 0);
|
|
11203
11206
|
worldBounds.max.set(0, 0, 0);
|
|
11204
|
-
} else {
|
|
11205
|
-
SimpleSpriteAssembler.updatePositions(this);
|
|
11206
11207
|
}
|
|
11207
11208
|
};
|
|
11208
11209
|
/**
|
|
@@ -11213,12 +11214,12 @@ SimpleSpriteAssembler = __decorate([
|
|
|
11213
11214
|
if (!((_this_sprite = this.sprite) == null ? void 0 : _this_sprite.texture) || !this.width || !this.height) {
|
|
11214
11215
|
return;
|
|
11215
11216
|
}
|
|
11216
|
-
// Update position
|
|
11217
|
+
// Update position
|
|
11217
11218
|
if (this._dirtyUpdateFlag & RendererUpdateFlags.WorldVolume) {
|
|
11218
11219
|
SimpleSpriteAssembler.updatePositions(this);
|
|
11219
11220
|
this._dirtyUpdateFlag &= ~RendererUpdateFlags.WorldVolume;
|
|
11220
11221
|
}
|
|
11221
|
-
// Update uv
|
|
11222
|
+
// Update uv
|
|
11222
11223
|
if (this._dirtyUpdateFlag & 0x2) {
|
|
11223
11224
|
SimpleSpriteAssembler.updateUVs(this);
|
|
11224
11225
|
this._dirtyUpdateFlag &= ~0x2;
|
|
@@ -11241,11 +11242,27 @@ SimpleSpriteAssembler = __decorate([
|
|
|
11241
11242
|
this._sprite = null;
|
|
11242
11243
|
this._verticesData = null;
|
|
11243
11244
|
};
|
|
11245
|
+
_proto._calDefaultSize = function _calDefaultSize() {
|
|
11246
|
+
var sprite = this._sprite;
|
|
11247
|
+
if (sprite) {
|
|
11248
|
+
this._automaticWidth = sprite.width;
|
|
11249
|
+
this._automaticHeight = sprite.height;
|
|
11250
|
+
} else {
|
|
11251
|
+
this._automaticWidth = this._automaticHeight = 0;
|
|
11252
|
+
}
|
|
11253
|
+
this._dirtyUpdateFlag &= ~0x4;
|
|
11254
|
+
};
|
|
11244
11255
|
_proto._onSpriteChange = function _onSpriteChange(type) {
|
|
11245
11256
|
switch(type){
|
|
11246
11257
|
case SpriteModifyFlags.texture:
|
|
11247
11258
|
this.shaderData.setTexture(SpriteMask._textureProperty, this.sprite.texture);
|
|
11248
11259
|
break;
|
|
11260
|
+
case SpriteModifyFlags.size:
|
|
11261
|
+
this._dirtyUpdateFlag |= 0x4;
|
|
11262
|
+
if (this._customWidth === undefined || this._customHeight === undefined) {
|
|
11263
|
+
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
11264
|
+
}
|
|
11265
|
+
break;
|
|
11249
11266
|
case SpriteModifyFlags.region:
|
|
11250
11267
|
case SpriteModifyFlags.atlasRegionOffset:
|
|
11251
11268
|
this._dirtyUpdateFlag |= 0x3;
|
|
@@ -11253,22 +11270,31 @@ SimpleSpriteAssembler = __decorate([
|
|
|
11253
11270
|
case SpriteModifyFlags.atlasRegion:
|
|
11254
11271
|
this._dirtyUpdateFlag |= 0x2;
|
|
11255
11272
|
break;
|
|
11273
|
+
case SpriteModifyFlags.pivot:
|
|
11274
|
+
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
11275
|
+
break;
|
|
11256
11276
|
}
|
|
11257
11277
|
};
|
|
11258
11278
|
_create_class(SpriteMask, [
|
|
11259
11279
|
{
|
|
11260
11280
|
key: "width",
|
|
11261
11281
|
get: /**
|
|
11262
|
-
* Render width.
|
|
11282
|
+
* Render width (in world coordinates).
|
|
11283
|
+
*
|
|
11284
|
+
* @remarks
|
|
11285
|
+
* If width is set, return the set value,
|
|
11286
|
+
* otherwise return `SpriteMask.sprite.width`.
|
|
11263
11287
|
*/ function get() {
|
|
11264
|
-
if (this.
|
|
11265
|
-
|
|
11288
|
+
if (this._customWidth !== undefined) {
|
|
11289
|
+
return this._customWidth;
|
|
11290
|
+
} else {
|
|
11291
|
+
this._dirtyUpdateFlag & 0x4 && this._calDefaultSize();
|
|
11292
|
+
return this._automaticWidth;
|
|
11266
11293
|
}
|
|
11267
|
-
return this._width;
|
|
11268
11294
|
},
|
|
11269
11295
|
set: function set(value) {
|
|
11270
|
-
if (this.
|
|
11271
|
-
this.
|
|
11296
|
+
if (this._customWidth !== value) {
|
|
11297
|
+
this._customWidth = value;
|
|
11272
11298
|
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
11273
11299
|
}
|
|
11274
11300
|
}
|
|
@@ -11276,16 +11302,22 @@ SimpleSpriteAssembler = __decorate([
|
|
|
11276
11302
|
{
|
|
11277
11303
|
key: "height",
|
|
11278
11304
|
get: /**
|
|
11279
|
-
* Render height.
|
|
11305
|
+
* Render height (in world coordinates).
|
|
11306
|
+
*
|
|
11307
|
+
* @remarks
|
|
11308
|
+
* If height is set, return the set value,
|
|
11309
|
+
* otherwise return `SpriteMask.sprite.height`.
|
|
11280
11310
|
*/ function get() {
|
|
11281
|
-
if (this.
|
|
11282
|
-
|
|
11311
|
+
if (this._customHeight !== undefined) {
|
|
11312
|
+
return this._customHeight;
|
|
11313
|
+
} else {
|
|
11314
|
+
this._dirtyUpdateFlag & 0x4 && this._calDefaultSize();
|
|
11315
|
+
return this._automaticHeight;
|
|
11283
11316
|
}
|
|
11284
|
-
return this._height;
|
|
11285
11317
|
},
|
|
11286
11318
|
set: function set(value) {
|
|
11287
|
-
if (this.
|
|
11288
|
-
this.
|
|
11319
|
+
if (this._customHeight !== value) {
|
|
11320
|
+
this._customHeight = value;
|
|
11289
11321
|
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
11290
11322
|
}
|
|
11291
11323
|
}
|
|
@@ -11329,9 +11361,9 @@ SimpleSpriteAssembler = __decorate([
|
|
|
11329
11361
|
var lastSprite = this._sprite;
|
|
11330
11362
|
if (lastSprite !== value) {
|
|
11331
11363
|
lastSprite && lastSprite._updateFlagManager.removeListener(this._onSpriteChange);
|
|
11364
|
+
this._dirtyUpdateFlag |= 0x7;
|
|
11332
11365
|
if (value) {
|
|
11333
11366
|
value._updateFlagManager.addListener(this._onSpriteChange);
|
|
11334
|
-
this._dirtyUpdateFlag |= 0x3;
|
|
11335
11367
|
this.shaderData.setTexture(SpriteMask._textureProperty, value.texture);
|
|
11336
11368
|
} else {
|
|
11337
11369
|
this.shaderData.setTexture(SpriteMask._textureProperty, null);
|
|
@@ -11371,10 +11403,16 @@ __decorate([
|
|
|
11371
11403
|
], SpriteMask.prototype, "_sprite", void 0);
|
|
11372
11404
|
__decorate([
|
|
11373
11405
|
ignoreClone
|
|
11374
|
-
], SpriteMask.prototype, "
|
|
11406
|
+
], SpriteMask.prototype, "_automaticWidth", void 0);
|
|
11375
11407
|
__decorate([
|
|
11376
11408
|
ignoreClone
|
|
11377
|
-
], SpriteMask.prototype, "
|
|
11409
|
+
], SpriteMask.prototype, "_automaticHeight", void 0);
|
|
11410
|
+
__decorate([
|
|
11411
|
+
assignmentClone
|
|
11412
|
+
], SpriteMask.prototype, "_customWidth", void 0);
|
|
11413
|
+
__decorate([
|
|
11414
|
+
assignmentClone
|
|
11415
|
+
], SpriteMask.prototype, "_customHeight", void 0);
|
|
11378
11416
|
__decorate([
|
|
11379
11417
|
assignmentClone
|
|
11380
11418
|
], SpriteMask.prototype, "_flipX", void 0);
|
|
@@ -11392,7 +11430,9 @@ var /**
|
|
|
11392
11430
|
*/ SpriteMaskUpdateFlags;
|
|
11393
11431
|
(function(SpriteMaskUpdateFlags) {
|
|
11394
11432
|
SpriteMaskUpdateFlags[SpriteMaskUpdateFlags[/** UV. */ "UV"] = 0x2] = "UV";
|
|
11395
|
-
SpriteMaskUpdateFlags[SpriteMaskUpdateFlags[/**
|
|
11433
|
+
SpriteMaskUpdateFlags[SpriteMaskUpdateFlags[/** WorldVolume and UV . */ "RenderData"] = 0x3] = "RenderData";
|
|
11434
|
+
SpriteMaskUpdateFlags[SpriteMaskUpdateFlags[/** Automatic Size. */ "AutomaticSize"] = 0x4] = "AutomaticSize";
|
|
11435
|
+
SpriteMaskUpdateFlags[SpriteMaskUpdateFlags[/** All. */ "All"] = 0x7] = "All";
|
|
11396
11436
|
})(SpriteMaskUpdateFlags || (SpriteMaskUpdateFlags = {}));
|
|
11397
11437
|
|
|
11398
11438
|
/**
|
|
@@ -12199,6 +12239,7 @@ var MeshModifyFlags;
|
|
|
12199
12239
|
var subDataDirtyFlags = this._subDataDirtyFlags;
|
|
12200
12240
|
var blendShapeFloatStride = this._vertexElementCount * 3;
|
|
12201
12241
|
var blendShapeByteStride = blendShapeFloatStride * 4;
|
|
12242
|
+
var bufferOffset = this._bufferBindingOffset;
|
|
12202
12243
|
// @todo: should fix bug when dataChangedFlag is true
|
|
12203
12244
|
for(var i = 0, n = blendShapes.length; i < n; i++){
|
|
12204
12245
|
var dataChangedFlag = subDataDirtyFlags[i];
|
|
@@ -12216,7 +12257,7 @@ var MeshModifyFlags;
|
|
|
12216
12257
|
var offset = indexInBuffer * blendShapeFloatStride;
|
|
12217
12258
|
var storeInfo = storeInfos[i];
|
|
12218
12259
|
storeInfo || (storeInfos[i] = storeInfo = new engineMath.Vector2());
|
|
12219
|
-
storeInfo.set(
|
|
12260
|
+
storeInfo.set(bufferOffset + bufferIndex, indexInBuffer * blendShapeByteStride); // BufferOffset is mesh vertexBuffer offset
|
|
12220
12261
|
var deltaPositions = endFrame.deltaPositions;
|
|
12221
12262
|
for(var j = 0; j < vertexCount; j++){
|
|
12222
12263
|
var start = offset + bufferFloatStride * j;
|
|
@@ -13493,6 +13534,7 @@ var VertexChangedFlags;
|
|
|
13493
13534
|
function MeshRenderer(entity) {
|
|
13494
13535
|
var _this;
|
|
13495
13536
|
_this = Renderer.call(this, entity) || this;
|
|
13537
|
+
_this._enableVertexColor = false;
|
|
13496
13538
|
_this._onMeshChanged = _this._onMeshChanged.bind(_assert_this_initialized(_this));
|
|
13497
13539
|
return _this;
|
|
13498
13540
|
}
|
|
@@ -13537,7 +13579,7 @@ var VertexChangedFlags;
|
|
|
13537
13579
|
shaderData.disableMacro(MeshRenderer._uv1Macro);
|
|
13538
13580
|
shaderData.disableMacro(MeshRenderer._normalMacro);
|
|
13539
13581
|
shaderData.disableMacro(MeshRenderer._tangentMacro);
|
|
13540
|
-
shaderData.disableMacro(MeshRenderer.
|
|
13582
|
+
shaderData.disableMacro(MeshRenderer._enableVertexColorMacro);
|
|
13541
13583
|
for(var i = 0, n = vertexElements.length; i < n; i++){
|
|
13542
13584
|
switch(vertexElements[i].semantic){
|
|
13543
13585
|
case "TEXCOORD_0":
|
|
@@ -13553,7 +13595,7 @@ var VertexChangedFlags;
|
|
|
13553
13595
|
shaderData.enableMacro(MeshRenderer._tangentMacro);
|
|
13554
13596
|
break;
|
|
13555
13597
|
case "COLOR_0":
|
|
13556
|
-
shaderData.enableMacro(MeshRenderer.
|
|
13598
|
+
this._enableVertexColor && shaderData.enableMacro(MeshRenderer._enableVertexColorMacro);
|
|
13557
13599
|
break;
|
|
13558
13600
|
}
|
|
13559
13601
|
}
|
|
@@ -13604,6 +13646,20 @@ var VertexChangedFlags;
|
|
|
13604
13646
|
this._setMesh(value);
|
|
13605
13647
|
}
|
|
13606
13648
|
}
|
|
13649
|
+
},
|
|
13650
|
+
{
|
|
13651
|
+
key: "enableVertexColor",
|
|
13652
|
+
get: /**
|
|
13653
|
+
* Whether enable vertex color.
|
|
13654
|
+
*/ function get() {
|
|
13655
|
+
return this._enableVertexColor;
|
|
13656
|
+
},
|
|
13657
|
+
set: function set(value) {
|
|
13658
|
+
if (value !== this._enableVertexColor) {
|
|
13659
|
+
this._dirtyUpdateFlag |= 0x2;
|
|
13660
|
+
this._enableVertexColor = value;
|
|
13661
|
+
}
|
|
13662
|
+
}
|
|
13607
13663
|
}
|
|
13608
13664
|
]);
|
|
13609
13665
|
return MeshRenderer;
|
|
@@ -13621,7 +13677,7 @@ var VertexChangedFlags;
|
|
|
13621
13677
|
MeshRenderer._tangentMacro = ShaderMacro.getByName("RENDERER_HAS_TANGENT");
|
|
13622
13678
|
})();
|
|
13623
13679
|
(function() {
|
|
13624
|
-
MeshRenderer.
|
|
13680
|
+
MeshRenderer._enableVertexColorMacro = ShaderMacro.getByName("RENDERER_ENABLE_VERTEXCOLOR");
|
|
13625
13681
|
})();
|
|
13626
13682
|
__decorate([
|
|
13627
13683
|
ignoreClone
|
|
@@ -20397,8 +20453,10 @@ exports.TextVerticalAlignment = void 0;
|
|
|
20397
20453
|
if (name === void 0) name = null;
|
|
20398
20454
|
var _this;
|
|
20399
20455
|
_this = ReferResource.call(this, engine) || this;
|
|
20400
|
-
_this.
|
|
20401
|
-
_this.
|
|
20456
|
+
_this._automaticWidth = 0;
|
|
20457
|
+
_this._automaticHeight = 0;
|
|
20458
|
+
_this._customWidth = undefined;
|
|
20459
|
+
_this._customHeight = undefined;
|
|
20402
20460
|
_this._positions = [
|
|
20403
20461
|
new engineMath.Vector2(),
|
|
20404
20462
|
new engineMath.Vector2(),
|
|
@@ -20419,7 +20477,7 @@ exports.TextVerticalAlignment = void 0;
|
|
|
20419
20477
|
_this._region = new engineMath.Rect(0, 0, 1, 1);
|
|
20420
20478
|
_this._pivot = new engineMath.Vector2(0.5, 0.5);
|
|
20421
20479
|
_this._border = new engineMath.Vector4(0, 0, 0, 0);
|
|
20422
|
-
_this._dirtyUpdateFlag =
|
|
20480
|
+
_this._dirtyUpdateFlag = 0x7;
|
|
20423
20481
|
/** @internal */ _this._updateFlagManager = new UpdateFlagManager();
|
|
20424
20482
|
_this._texture = texture;
|
|
20425
20483
|
region && _this._region.copyFrom(region);
|
|
@@ -20467,9 +20525,12 @@ exports.TextVerticalAlignment = void 0;
|
|
|
20467
20525
|
if (this._texture) {
|
|
20468
20526
|
var _this = this, _texture = _this._texture, _atlasRegion = _this._atlasRegion, _atlasRegionOffset = _this._atlasRegionOffset, _region = _this._region;
|
|
20469
20527
|
var pixelsPerUnitReciprocal = 1.0 / Engine._pixelsPerUnit;
|
|
20470
|
-
this.
|
|
20471
|
-
this.
|
|
20528
|
+
this._automaticWidth = _texture.width * _atlasRegion.width / (1 - _atlasRegionOffset.x - _atlasRegionOffset.z) * _region.width * pixelsPerUnitReciprocal;
|
|
20529
|
+
this._automaticHeight = _texture.height * _atlasRegion.height / (1 - _atlasRegionOffset.y - _atlasRegionOffset.w) * _region.height * pixelsPerUnitReciprocal;
|
|
20530
|
+
} else {
|
|
20531
|
+
this._automaticWidth = this._automaticHeight = 0;
|
|
20472
20532
|
}
|
|
20533
|
+
this._dirtyUpdateFlag &= ~0x4;
|
|
20473
20534
|
};
|
|
20474
20535
|
_proto._updatePositions = function _updatePositions() {
|
|
20475
20536
|
var blank = this._atlasRegionOffset;
|
|
@@ -20523,11 +20584,16 @@ exports.TextVerticalAlignment = void 0;
|
|
|
20523
20584
|
};
|
|
20524
20585
|
_proto._dispatchSpriteChange = function _dispatchSpriteChange(type) {
|
|
20525
20586
|
switch(type){
|
|
20587
|
+
case SpriteModifyFlags.texture:
|
|
20588
|
+
this._dirtyUpdateFlag |= 0x4;
|
|
20589
|
+
break;
|
|
20526
20590
|
case SpriteModifyFlags.atlasRegionOffset:
|
|
20527
20591
|
case SpriteModifyFlags.region:
|
|
20528
|
-
this._dirtyUpdateFlag |=
|
|
20592
|
+
this._dirtyUpdateFlag |= 0x7;
|
|
20529
20593
|
break;
|
|
20530
20594
|
case SpriteModifyFlags.atlasRegion:
|
|
20595
|
+
this._dirtyUpdateFlag |= 0x4 | 0x2;
|
|
20596
|
+
break;
|
|
20531
20597
|
case SpriteModifyFlags.border:
|
|
20532
20598
|
this._dirtyUpdateFlag |= 0x2;
|
|
20533
20599
|
break;
|
|
@@ -20546,7 +20612,9 @@ exports.TextVerticalAlignment = void 0;
|
|
|
20546
20612
|
if (this._texture !== value) {
|
|
20547
20613
|
this._texture = value;
|
|
20548
20614
|
this._dispatchSpriteChange(SpriteModifyFlags.texture);
|
|
20549
|
-
(this.
|
|
20615
|
+
if (this._customWidth === undefined || this._customHeight === undefined) {
|
|
20616
|
+
this._dispatchSpriteChange(SpriteModifyFlags.size);
|
|
20617
|
+
}
|
|
20550
20618
|
}
|
|
20551
20619
|
}
|
|
20552
20620
|
},
|
|
@@ -20554,13 +20622,21 @@ exports.TextVerticalAlignment = void 0;
|
|
|
20554
20622
|
key: "width",
|
|
20555
20623
|
get: /**
|
|
20556
20624
|
* The width of the sprite (in world coordinates).
|
|
20625
|
+
*
|
|
20626
|
+
* @remarks
|
|
20627
|
+
* If width is set, return the set value,
|
|
20628
|
+
* otherwise return the width calculated according to `Texture.width`, `Sprite.region`, `Sprite.atlasRegion`, `Sprite.atlasRegionOffset` and `Engine._pixelsPerUnit`.
|
|
20557
20629
|
*/ function get() {
|
|
20558
|
-
this.
|
|
20559
|
-
|
|
20630
|
+
if (this._customWidth !== undefined) {
|
|
20631
|
+
return this._customWidth;
|
|
20632
|
+
} else {
|
|
20633
|
+
this._dirtyUpdateFlag & 0x4 && this._calDefaultSize();
|
|
20634
|
+
return this._automaticWidth;
|
|
20635
|
+
}
|
|
20560
20636
|
},
|
|
20561
20637
|
set: function set(value) {
|
|
20562
|
-
if (this.
|
|
20563
|
-
this.
|
|
20638
|
+
if (this._customWidth !== value) {
|
|
20639
|
+
this._customWidth = value;
|
|
20564
20640
|
this._dispatchSpriteChange(SpriteModifyFlags.size);
|
|
20565
20641
|
}
|
|
20566
20642
|
}
|
|
@@ -20569,13 +20645,21 @@ exports.TextVerticalAlignment = void 0;
|
|
|
20569
20645
|
key: "height",
|
|
20570
20646
|
get: /**
|
|
20571
20647
|
* The height of the sprite (in world coordinates).
|
|
20648
|
+
*
|
|
20649
|
+
* @remarks
|
|
20650
|
+
* If height is set, return the set value,
|
|
20651
|
+
* otherwise return the height calculated according to `Texture.height`, `Sprite.region`, `Sprite.atlasRegion`, `Sprite.atlasRegionOffset` and `Engine._pixelsPerUnit`.
|
|
20572
20652
|
*/ function get() {
|
|
20573
|
-
this.
|
|
20574
|
-
|
|
20653
|
+
if (this._customHeight !== undefined) {
|
|
20654
|
+
return this._customHeight;
|
|
20655
|
+
} else {
|
|
20656
|
+
this._dirtyUpdateFlag & 0x4 && this._calDefaultSize();
|
|
20657
|
+
return this._automaticHeight;
|
|
20658
|
+
}
|
|
20575
20659
|
},
|
|
20576
20660
|
set: function set(value) {
|
|
20577
|
-
if (this.
|
|
20578
|
-
this.
|
|
20661
|
+
if (this._customHeight !== value) {
|
|
20662
|
+
this._customHeight = value;
|
|
20579
20663
|
this._dispatchSpriteChange(SpriteModifyFlags.size);
|
|
20580
20664
|
}
|
|
20581
20665
|
}
|
|
@@ -20605,7 +20689,9 @@ exports.TextVerticalAlignment = void 0;
|
|
|
20605
20689
|
var y = engineMath.MathUtil.clamp(value.y, 0, 1);
|
|
20606
20690
|
this._atlasRegion.set(x, y, engineMath.MathUtil.clamp(value.width, 0, 1 - x), engineMath.MathUtil.clamp(value.height, 0, 1 - y));
|
|
20607
20691
|
this._dispatchSpriteChange(SpriteModifyFlags.atlasRegion);
|
|
20608
|
-
(this.
|
|
20692
|
+
if (this._customWidth === undefined || this._customHeight === undefined) {
|
|
20693
|
+
this._dispatchSpriteChange(SpriteModifyFlags.size);
|
|
20694
|
+
}
|
|
20609
20695
|
}
|
|
20610
20696
|
},
|
|
20611
20697
|
{
|
|
@@ -20620,7 +20706,9 @@ exports.TextVerticalAlignment = void 0;
|
|
|
20620
20706
|
var y = engineMath.MathUtil.clamp(value.y, 0, 1);
|
|
20621
20707
|
this._atlasRegionOffset.set(x, y, engineMath.MathUtil.clamp(value.z, 0, 1 - x), engineMath.MathUtil.clamp(value.w, 0, 1 - y));
|
|
20622
20708
|
this._dispatchSpriteChange(SpriteModifyFlags.atlasRegionOffset);
|
|
20623
|
-
(this.
|
|
20709
|
+
if (this._customWidth === undefined || this._customHeight === undefined) {
|
|
20710
|
+
this._dispatchSpriteChange(SpriteModifyFlags.size);
|
|
20711
|
+
}
|
|
20624
20712
|
}
|
|
20625
20713
|
},
|
|
20626
20714
|
{
|
|
@@ -20636,7 +20724,9 @@ exports.TextVerticalAlignment = void 0;
|
|
|
20636
20724
|
var y = engineMath.MathUtil.clamp(value.y, 0, 1);
|
|
20637
20725
|
region.set(x, y, engineMath.MathUtil.clamp(value.width, 0, 1 - x), engineMath.MathUtil.clamp(value.height, 0, 1 - y));
|
|
20638
20726
|
this._dispatchSpriteChange(SpriteModifyFlags.region);
|
|
20639
|
-
(this.
|
|
20727
|
+
if (this._customWidth === undefined || this._customHeight === undefined) {
|
|
20728
|
+
this._dispatchSpriteChange(SpriteModifyFlags.size);
|
|
20729
|
+
}
|
|
20640
20730
|
}
|
|
20641
20731
|
},
|
|
20642
20732
|
{
|
|
@@ -20686,7 +20776,8 @@ var SpriteUpdateFlags;
|
|
|
20686
20776
|
(function(SpriteUpdateFlags) {
|
|
20687
20777
|
SpriteUpdateFlags[SpriteUpdateFlags["positions"] = 0x1] = "positions";
|
|
20688
20778
|
SpriteUpdateFlags[SpriteUpdateFlags["uvs"] = 0x2] = "uvs";
|
|
20689
|
-
SpriteUpdateFlags[SpriteUpdateFlags["
|
|
20779
|
+
SpriteUpdateFlags[SpriteUpdateFlags["automaticSize"] = 0x4] = "automaticSize";
|
|
20780
|
+
SpriteUpdateFlags[SpriteUpdateFlags["all"] = 0x7] = "all";
|
|
20690
20781
|
})(SpriteUpdateFlags || (SpriteUpdateFlags = {}));
|
|
20691
20782
|
|
|
20692
20783
|
var _SlicedSpriteAssembler;
|
|
@@ -21178,8 +21269,10 @@ var TiledType;
|
|
|
21178
21269
|
_this._tiledAdaptiveThreshold = 0.5;
|
|
21179
21270
|
_this._color = new engineMath.Color(1, 1, 1, 1);
|
|
21180
21271
|
_this._sprite = null;
|
|
21181
|
-
_this.
|
|
21182
|
-
_this.
|
|
21272
|
+
_this._automaticWidth = 0;
|
|
21273
|
+
_this._automaticHeight = 0;
|
|
21274
|
+
_this._customWidth = undefined;
|
|
21275
|
+
_this._customHeight = undefined;
|
|
21183
21276
|
_this._flipX = false;
|
|
21184
21277
|
_this._flipY = false;
|
|
21185
21278
|
_this._maskLayer = exports.SpriteMaskLayer.Layer0;
|
|
@@ -21196,6 +21289,7 @@ var TiledType;
|
|
|
21196
21289
|
*/ _proto._cloneTo = function _cloneTo(target) {
|
|
21197
21290
|
target._assembler.resetData(target);
|
|
21198
21291
|
target.sprite = this._sprite;
|
|
21292
|
+
target.drawMode = this._drawMode;
|
|
21199
21293
|
};
|
|
21200
21294
|
/**
|
|
21201
21295
|
* @internal
|
|
@@ -21206,12 +21300,11 @@ var TiledType;
|
|
|
21206
21300
|
/**
|
|
21207
21301
|
* @internal
|
|
21208
21302
|
*/ _proto._updateBounds = function _updateBounds(worldBounds) {
|
|
21209
|
-
|
|
21210
|
-
|
|
21303
|
+
if (this.sprite) {
|
|
21304
|
+
this._assembler.updatePositions(this);
|
|
21305
|
+
} else {
|
|
21211
21306
|
worldBounds.min.set(0, 0, 0);
|
|
21212
21307
|
worldBounds.max.set(0, 0, 0);
|
|
21213
|
-
} else {
|
|
21214
|
-
this._assembler.updatePositions(this);
|
|
21215
21308
|
}
|
|
21216
21309
|
};
|
|
21217
21310
|
/**
|
|
@@ -21221,17 +21314,17 @@ var TiledType;
|
|
|
21221
21314
|
if (!((_this_sprite = this.sprite) == null ? void 0 : _this_sprite.texture) || !this.width || !this.height) {
|
|
21222
21315
|
return;
|
|
21223
21316
|
}
|
|
21224
|
-
// Update position
|
|
21317
|
+
// Update position
|
|
21225
21318
|
if (this._dirtyUpdateFlag & RendererUpdateFlags.WorldVolume) {
|
|
21226
21319
|
this._assembler.updatePositions(this);
|
|
21227
21320
|
this._dirtyUpdateFlag &= ~RendererUpdateFlags.WorldVolume;
|
|
21228
21321
|
}
|
|
21229
|
-
// Update uv
|
|
21322
|
+
// Update uv
|
|
21230
21323
|
if (this._dirtyUpdateFlag & 0x2) {
|
|
21231
21324
|
this._assembler.updateUVs(this);
|
|
21232
21325
|
this._dirtyUpdateFlag &= ~0x2;
|
|
21233
21326
|
}
|
|
21234
|
-
// Push
|
|
21327
|
+
// Push primitive
|
|
21235
21328
|
var material = this.getMaterial();
|
|
21236
21329
|
var texture = this.sprite.texture;
|
|
21237
21330
|
var renderData = this._engine._spriteRenderDataPool.getFromPool();
|
|
@@ -21249,6 +21342,16 @@ var TiledType;
|
|
|
21249
21342
|
this._assembler = null;
|
|
21250
21343
|
this._verticesData = null;
|
|
21251
21344
|
};
|
|
21345
|
+
_proto._calDefaultSize = function _calDefaultSize() {
|
|
21346
|
+
var sprite = this._sprite;
|
|
21347
|
+
if (sprite) {
|
|
21348
|
+
this._automaticWidth = sprite.width;
|
|
21349
|
+
this._automaticHeight = sprite.height;
|
|
21350
|
+
} else {
|
|
21351
|
+
this._automaticWidth = this._automaticHeight = 0;
|
|
21352
|
+
}
|
|
21353
|
+
this._dirtyUpdateFlag &= ~0x4;
|
|
21354
|
+
};
|
|
21252
21355
|
_proto._updateStencilState = function _updateStencilState() {
|
|
21253
21356
|
// Update stencil.
|
|
21254
21357
|
var material = this.getInstanceMaterial();
|
|
@@ -21275,22 +21378,21 @@ var TiledType;
|
|
|
21275
21378
|
break;
|
|
21276
21379
|
case SpriteModifyFlags.size:
|
|
21277
21380
|
var _this = this, drawMode = _this._drawMode;
|
|
21278
|
-
|
|
21381
|
+
this._dirtyUpdateFlag |= 0x4;
|
|
21382
|
+
if (this._drawMode === exports.SpriteDrawMode.Sliced) {
|
|
21279
21383
|
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
21280
21384
|
} else if (drawMode === exports.SpriteDrawMode.Tiled) {
|
|
21281
21385
|
this._dirtyUpdateFlag |= 0x3;
|
|
21282
21386
|
} else {
|
|
21283
21387
|
// When the width and height of `SpriteRenderer` are `undefined`,
|
|
21284
21388
|
// the `size` of `Sprite` will affect the position of `SpriteRenderer`.
|
|
21285
|
-
if (this.
|
|
21389
|
+
if (this._customWidth === undefined || this._customHeight === undefined) {
|
|
21286
21390
|
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
21287
21391
|
}
|
|
21288
21392
|
}
|
|
21289
21393
|
break;
|
|
21290
21394
|
case SpriteModifyFlags.border:
|
|
21291
|
-
|
|
21292
|
-
this._dirtyUpdateFlag |= 0x3;
|
|
21293
|
-
}
|
|
21395
|
+
this._drawMode === exports.SpriteDrawMode.Sliced && (this._dirtyUpdateFlag |= 0x3);
|
|
21294
21396
|
break;
|
|
21295
21397
|
case SpriteModifyFlags.region:
|
|
21296
21398
|
case SpriteModifyFlags.atlasRegionOffset:
|
|
@@ -21375,9 +21477,9 @@ var TiledType;
|
|
|
21375
21477
|
var lastSprite = this._sprite;
|
|
21376
21478
|
if (lastSprite !== value) {
|
|
21377
21479
|
lastSprite && lastSprite._updateFlagManager.removeListener(this._onSpriteChange);
|
|
21480
|
+
this._dirtyUpdateFlag |= 0x7;
|
|
21378
21481
|
if (value) {
|
|
21379
21482
|
value._updateFlagManager.addListener(this._onSpriteChange);
|
|
21380
|
-
this._dirtyUpdateFlag |= 0x3;
|
|
21381
21483
|
this.shaderData.setTexture(SpriteRenderer._textureProperty, value.texture);
|
|
21382
21484
|
} else {
|
|
21383
21485
|
this.shaderData.setTexture(SpriteRenderer._textureProperty, null);
|
|
@@ -21402,16 +21504,22 @@ var TiledType;
|
|
|
21402
21504
|
{
|
|
21403
21505
|
key: "width",
|
|
21404
21506
|
get: /**
|
|
21405
|
-
* Render width.
|
|
21507
|
+
* Render width (in world coordinates).
|
|
21508
|
+
*
|
|
21509
|
+
* @remarks
|
|
21510
|
+
* If width is set, return the set value,
|
|
21511
|
+
* otherwise return `SpriteRenderer.sprite.width`.
|
|
21406
21512
|
*/ function get() {
|
|
21407
|
-
|
|
21408
|
-
|
|
21513
|
+
if (this._customWidth !== undefined) {
|
|
21514
|
+
return this._customWidth;
|
|
21515
|
+
} else {
|
|
21516
|
+
this._dirtyUpdateFlag & 0x4 && this._calDefaultSize();
|
|
21517
|
+
return this._automaticWidth;
|
|
21518
|
+
}
|
|
21409
21519
|
},
|
|
21410
21520
|
set: function set(value) {
|
|
21411
|
-
|
|
21412
|
-
|
|
21413
|
-
if (this._width !== value) {
|
|
21414
|
-
this._width = value;
|
|
21521
|
+
if (this._customWidth !== value) {
|
|
21522
|
+
this._customWidth = value;
|
|
21415
21523
|
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
21416
21524
|
}
|
|
21417
21525
|
}
|
|
@@ -21419,16 +21527,22 @@ var TiledType;
|
|
|
21419
21527
|
{
|
|
21420
21528
|
key: "height",
|
|
21421
21529
|
get: /**
|
|
21422
|
-
* Render height.
|
|
21530
|
+
* Render height (in world coordinates).
|
|
21531
|
+
*
|
|
21532
|
+
* @remarks
|
|
21533
|
+
* If height is set, return the set value,
|
|
21534
|
+
* otherwise return `SpriteRenderer.sprite.height`.
|
|
21423
21535
|
*/ function get() {
|
|
21424
|
-
|
|
21425
|
-
|
|
21536
|
+
if (this._customHeight !== undefined) {
|
|
21537
|
+
return this._customHeight;
|
|
21538
|
+
} else {
|
|
21539
|
+
this._dirtyUpdateFlag & 0x4 && this._calDefaultSize();
|
|
21540
|
+
return this._automaticHeight;
|
|
21541
|
+
}
|
|
21426
21542
|
},
|
|
21427
21543
|
set: function set(value) {
|
|
21428
|
-
|
|
21429
|
-
|
|
21430
|
-
if (this._height !== value) {
|
|
21431
|
-
this._height = value;
|
|
21544
|
+
if (this._customHeight !== value) {
|
|
21545
|
+
this._customHeight = value;
|
|
21432
21546
|
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
21433
21547
|
}
|
|
21434
21548
|
}
|
|
@@ -21515,10 +21629,16 @@ __decorate([
|
|
|
21515
21629
|
], SpriteRenderer.prototype, "_sprite", void 0);
|
|
21516
21630
|
__decorate([
|
|
21517
21631
|
ignoreClone
|
|
21518
|
-
], SpriteRenderer.prototype, "
|
|
21632
|
+
], SpriteRenderer.prototype, "_automaticWidth", void 0);
|
|
21519
21633
|
__decorate([
|
|
21520
21634
|
ignoreClone
|
|
21521
|
-
], SpriteRenderer.prototype, "
|
|
21635
|
+
], SpriteRenderer.prototype, "_automaticHeight", void 0);
|
|
21636
|
+
__decorate([
|
|
21637
|
+
assignmentClone
|
|
21638
|
+
], SpriteRenderer.prototype, "_customWidth", void 0);
|
|
21639
|
+
__decorate([
|
|
21640
|
+
assignmentClone
|
|
21641
|
+
], SpriteRenderer.prototype, "_customHeight", void 0);
|
|
21522
21642
|
__decorate([
|
|
21523
21643
|
assignmentClone
|
|
21524
21644
|
], SpriteRenderer.prototype, "_flipX", void 0);
|
|
@@ -21539,7 +21659,9 @@ var /**
|
|
|
21539
21659
|
*/ SpriteRendererUpdateFlags;
|
|
21540
21660
|
(function(SpriteRendererUpdateFlags) {
|
|
21541
21661
|
SpriteRendererUpdateFlags[SpriteRendererUpdateFlags[/** UV. */ "UV"] = 0x2] = "UV";
|
|
21542
|
-
SpriteRendererUpdateFlags[SpriteRendererUpdateFlags[/**
|
|
21662
|
+
SpriteRendererUpdateFlags[SpriteRendererUpdateFlags[/** WorldVolume and UV . */ "RenderData"] = 0x3] = "RenderData";
|
|
21663
|
+
SpriteRendererUpdateFlags[SpriteRendererUpdateFlags[/** Automatic Size. */ "AutomaticSize"] = 0x4] = "AutomaticSize";
|
|
21664
|
+
SpriteRendererUpdateFlags[SpriteRendererUpdateFlags[/** All. */ "All"] = 0x7] = "All";
|
|
21543
21665
|
})(SpriteRendererUpdateFlags || (SpriteRendererUpdateFlags = {}));
|
|
21544
21666
|
|
|
21545
21667
|
/**
|