@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/module.js
CHANGED
|
@@ -9513,11 +9513,11 @@ var camera_declare = "#define GLSLIFY 1\nuniform vec3 camera_Position;"; // esli
|
|
|
9513
9513
|
|
|
9514
9514
|
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
|
|
9515
9515
|
|
|
9516
|
-
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
|
|
9516
|
+
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
|
|
9517
9517
|
|
|
9518
9518
|
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
|
|
9519
9519
|
|
|
9520
|
-
var color_share = "#define GLSLIFY 1\n#ifdef
|
|
9520
|
+
var color_share = "#define GLSLIFY 1\n#ifdef RENDERER_ENABLE_VERTEXCOLOR\nvarying vec4 v_color;\n#endif\n"; // eslint-disable-line
|
|
9521
9521
|
|
|
9522
9522
|
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
|
|
9523
9523
|
|
|
@@ -9537,7 +9537,7 @@ var blendShape_input = "#define GLSLIFY 1\n#ifdef RENDERER_HAS_BLENDSHAPE\n#ifde
|
|
|
9537
9537
|
|
|
9538
9538
|
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
|
|
9539
9539
|
|
|
9540
|
-
var color_vert = "#define GLSLIFY 1\n#ifdef
|
|
9540
|
+
var color_vert = "#define GLSLIFY 1\n#ifdef RENDERER_ENABLE_VERTEXCOLOR\nv_color=COLOR_0;\n#endif\n"; // eslint-disable-line
|
|
9541
9541
|
|
|
9542
9542
|
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
|
|
9543
9543
|
|
|
@@ -9557,7 +9557,7 @@ var light_frag_define = "#define GLSLIFY 1\n#ifdef SCENE_DIRECT_LIGHT_COUNT\nstr
|
|
|
9557
9557
|
|
|
9558
9558
|
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
|
|
9559
9559
|
|
|
9560
|
-
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
|
|
9560
|
+
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
|
|
9561
9561
|
|
|
9562
9562
|
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
|
|
9563
9563
|
|
|
@@ -9597,7 +9597,7 @@ var noise_simplex_4D = "#define GLSLIFY 1\nvec4 grad4(float j,vec4 ip){const vec
|
|
|
9597
9597
|
|
|
9598
9598
|
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
|
|
9599
9599
|
|
|
9600
|
-
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
|
|
9600
|
+
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
|
|
9601
9601
|
|
|
9602
9602
|
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
|
|
9603
9603
|
|
|
@@ -11172,8 +11172,10 @@ SimpleSpriteAssembler = __decorate([
|
|
|
11172
11172
|
_this = Renderer.call(this, entity) || this;
|
|
11173
11173
|
/** The mask layers the sprite mask influence to. */ _this.influenceLayers = SpriteMaskLayer.Everything;
|
|
11174
11174
|
_this._sprite = null;
|
|
11175
|
-
_this.
|
|
11176
|
-
_this.
|
|
11175
|
+
_this._automaticWidth = 0;
|
|
11176
|
+
_this._automaticHeight = 0;
|
|
11177
|
+
_this._customWidth = undefined;
|
|
11178
|
+
_this._customHeight = undefined;
|
|
11177
11179
|
_this._flipX = false;
|
|
11178
11180
|
_this._flipY = false;
|
|
11179
11181
|
_this._alphaCutoff = 0.5;
|
|
@@ -11193,12 +11195,11 @@ SimpleSpriteAssembler = __decorate([
|
|
|
11193
11195
|
/**
|
|
11194
11196
|
* @internal
|
|
11195
11197
|
*/ _proto._updateBounds = function _updateBounds(worldBounds) {
|
|
11196
|
-
|
|
11197
|
-
|
|
11198
|
+
if (this.sprite) {
|
|
11199
|
+
SimpleSpriteAssembler.updatePositions(this);
|
|
11200
|
+
} else {
|
|
11198
11201
|
worldBounds.min.set(0, 0, 0);
|
|
11199
11202
|
worldBounds.max.set(0, 0, 0);
|
|
11200
|
-
} else {
|
|
11201
|
-
SimpleSpriteAssembler.updatePositions(this);
|
|
11202
11203
|
}
|
|
11203
11204
|
};
|
|
11204
11205
|
/**
|
|
@@ -11209,12 +11210,12 @@ SimpleSpriteAssembler = __decorate([
|
|
|
11209
11210
|
if (!((_this_sprite = this.sprite) == null ? void 0 : _this_sprite.texture) || !this.width || !this.height) {
|
|
11210
11211
|
return;
|
|
11211
11212
|
}
|
|
11212
|
-
// Update position
|
|
11213
|
+
// Update position
|
|
11213
11214
|
if (this._dirtyUpdateFlag & RendererUpdateFlags.WorldVolume) {
|
|
11214
11215
|
SimpleSpriteAssembler.updatePositions(this);
|
|
11215
11216
|
this._dirtyUpdateFlag &= ~RendererUpdateFlags.WorldVolume;
|
|
11216
11217
|
}
|
|
11217
|
-
// Update uv
|
|
11218
|
+
// Update uv
|
|
11218
11219
|
if (this._dirtyUpdateFlag & 0x2) {
|
|
11219
11220
|
SimpleSpriteAssembler.updateUVs(this);
|
|
11220
11221
|
this._dirtyUpdateFlag &= ~0x2;
|
|
@@ -11237,11 +11238,27 @@ SimpleSpriteAssembler = __decorate([
|
|
|
11237
11238
|
this._sprite = null;
|
|
11238
11239
|
this._verticesData = null;
|
|
11239
11240
|
};
|
|
11241
|
+
_proto._calDefaultSize = function _calDefaultSize() {
|
|
11242
|
+
var sprite = this._sprite;
|
|
11243
|
+
if (sprite) {
|
|
11244
|
+
this._automaticWidth = sprite.width;
|
|
11245
|
+
this._automaticHeight = sprite.height;
|
|
11246
|
+
} else {
|
|
11247
|
+
this._automaticWidth = this._automaticHeight = 0;
|
|
11248
|
+
}
|
|
11249
|
+
this._dirtyUpdateFlag &= ~0x4;
|
|
11250
|
+
};
|
|
11240
11251
|
_proto._onSpriteChange = function _onSpriteChange(type) {
|
|
11241
11252
|
switch(type){
|
|
11242
11253
|
case SpriteModifyFlags.texture:
|
|
11243
11254
|
this.shaderData.setTexture(SpriteMask._textureProperty, this.sprite.texture);
|
|
11244
11255
|
break;
|
|
11256
|
+
case SpriteModifyFlags.size:
|
|
11257
|
+
this._dirtyUpdateFlag |= 0x4;
|
|
11258
|
+
if (this._customWidth === undefined || this._customHeight === undefined) {
|
|
11259
|
+
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
11260
|
+
}
|
|
11261
|
+
break;
|
|
11245
11262
|
case SpriteModifyFlags.region:
|
|
11246
11263
|
case SpriteModifyFlags.atlasRegionOffset:
|
|
11247
11264
|
this._dirtyUpdateFlag |= 0x3;
|
|
@@ -11249,22 +11266,31 @@ SimpleSpriteAssembler = __decorate([
|
|
|
11249
11266
|
case SpriteModifyFlags.atlasRegion:
|
|
11250
11267
|
this._dirtyUpdateFlag |= 0x2;
|
|
11251
11268
|
break;
|
|
11269
|
+
case SpriteModifyFlags.pivot:
|
|
11270
|
+
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
11271
|
+
break;
|
|
11252
11272
|
}
|
|
11253
11273
|
};
|
|
11254
11274
|
_create_class(SpriteMask, [
|
|
11255
11275
|
{
|
|
11256
11276
|
key: "width",
|
|
11257
11277
|
get: /**
|
|
11258
|
-
* Render width.
|
|
11278
|
+
* Render width (in world coordinates).
|
|
11279
|
+
*
|
|
11280
|
+
* @remarks
|
|
11281
|
+
* If width is set, return the set value,
|
|
11282
|
+
* otherwise return `SpriteMask.sprite.width`.
|
|
11259
11283
|
*/ function get() {
|
|
11260
|
-
if (this.
|
|
11261
|
-
|
|
11284
|
+
if (this._customWidth !== undefined) {
|
|
11285
|
+
return this._customWidth;
|
|
11286
|
+
} else {
|
|
11287
|
+
this._dirtyUpdateFlag & 0x4 && this._calDefaultSize();
|
|
11288
|
+
return this._automaticWidth;
|
|
11262
11289
|
}
|
|
11263
|
-
return this._width;
|
|
11264
11290
|
},
|
|
11265
11291
|
set: function set(value) {
|
|
11266
|
-
if (this.
|
|
11267
|
-
this.
|
|
11292
|
+
if (this._customWidth !== value) {
|
|
11293
|
+
this._customWidth = value;
|
|
11268
11294
|
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
11269
11295
|
}
|
|
11270
11296
|
}
|
|
@@ -11272,16 +11298,22 @@ SimpleSpriteAssembler = __decorate([
|
|
|
11272
11298
|
{
|
|
11273
11299
|
key: "height",
|
|
11274
11300
|
get: /**
|
|
11275
|
-
* Render height.
|
|
11301
|
+
* Render height (in world coordinates).
|
|
11302
|
+
*
|
|
11303
|
+
* @remarks
|
|
11304
|
+
* If height is set, return the set value,
|
|
11305
|
+
* otherwise return `SpriteMask.sprite.height`.
|
|
11276
11306
|
*/ function get() {
|
|
11277
|
-
if (this.
|
|
11278
|
-
|
|
11307
|
+
if (this._customHeight !== undefined) {
|
|
11308
|
+
return this._customHeight;
|
|
11309
|
+
} else {
|
|
11310
|
+
this._dirtyUpdateFlag & 0x4 && this._calDefaultSize();
|
|
11311
|
+
return this._automaticHeight;
|
|
11279
11312
|
}
|
|
11280
|
-
return this._height;
|
|
11281
11313
|
},
|
|
11282
11314
|
set: function set(value) {
|
|
11283
|
-
if (this.
|
|
11284
|
-
this.
|
|
11315
|
+
if (this._customHeight !== value) {
|
|
11316
|
+
this._customHeight = value;
|
|
11285
11317
|
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
11286
11318
|
}
|
|
11287
11319
|
}
|
|
@@ -11325,9 +11357,9 @@ SimpleSpriteAssembler = __decorate([
|
|
|
11325
11357
|
var lastSprite = this._sprite;
|
|
11326
11358
|
if (lastSprite !== value) {
|
|
11327
11359
|
lastSprite && lastSprite._updateFlagManager.removeListener(this._onSpriteChange);
|
|
11360
|
+
this._dirtyUpdateFlag |= 0x7;
|
|
11328
11361
|
if (value) {
|
|
11329
11362
|
value._updateFlagManager.addListener(this._onSpriteChange);
|
|
11330
|
-
this._dirtyUpdateFlag |= 0x3;
|
|
11331
11363
|
this.shaderData.setTexture(SpriteMask._textureProperty, value.texture);
|
|
11332
11364
|
} else {
|
|
11333
11365
|
this.shaderData.setTexture(SpriteMask._textureProperty, null);
|
|
@@ -11367,10 +11399,16 @@ __decorate([
|
|
|
11367
11399
|
], SpriteMask.prototype, "_sprite", void 0);
|
|
11368
11400
|
__decorate([
|
|
11369
11401
|
ignoreClone
|
|
11370
|
-
], SpriteMask.prototype, "
|
|
11402
|
+
], SpriteMask.prototype, "_automaticWidth", void 0);
|
|
11371
11403
|
__decorate([
|
|
11372
11404
|
ignoreClone
|
|
11373
|
-
], SpriteMask.prototype, "
|
|
11405
|
+
], SpriteMask.prototype, "_automaticHeight", void 0);
|
|
11406
|
+
__decorate([
|
|
11407
|
+
assignmentClone
|
|
11408
|
+
], SpriteMask.prototype, "_customWidth", void 0);
|
|
11409
|
+
__decorate([
|
|
11410
|
+
assignmentClone
|
|
11411
|
+
], SpriteMask.prototype, "_customHeight", void 0);
|
|
11374
11412
|
__decorate([
|
|
11375
11413
|
assignmentClone
|
|
11376
11414
|
], SpriteMask.prototype, "_flipX", void 0);
|
|
@@ -11388,7 +11426,9 @@ var /**
|
|
|
11388
11426
|
*/ SpriteMaskUpdateFlags;
|
|
11389
11427
|
(function(SpriteMaskUpdateFlags) {
|
|
11390
11428
|
SpriteMaskUpdateFlags[SpriteMaskUpdateFlags[/** UV. */ "UV"] = 0x2] = "UV";
|
|
11391
|
-
SpriteMaskUpdateFlags[SpriteMaskUpdateFlags[/**
|
|
11429
|
+
SpriteMaskUpdateFlags[SpriteMaskUpdateFlags[/** WorldVolume and UV . */ "RenderData"] = 0x3] = "RenderData";
|
|
11430
|
+
SpriteMaskUpdateFlags[SpriteMaskUpdateFlags[/** Automatic Size. */ "AutomaticSize"] = 0x4] = "AutomaticSize";
|
|
11431
|
+
SpriteMaskUpdateFlags[SpriteMaskUpdateFlags[/** All. */ "All"] = 0x7] = "All";
|
|
11392
11432
|
})(SpriteMaskUpdateFlags || (SpriteMaskUpdateFlags = {}));
|
|
11393
11433
|
|
|
11394
11434
|
/**
|
|
@@ -12195,6 +12235,7 @@ var MeshModifyFlags;
|
|
|
12195
12235
|
var subDataDirtyFlags = this._subDataDirtyFlags;
|
|
12196
12236
|
var blendShapeFloatStride = this._vertexElementCount * 3;
|
|
12197
12237
|
var blendShapeByteStride = blendShapeFloatStride * 4;
|
|
12238
|
+
var bufferOffset = this._bufferBindingOffset;
|
|
12198
12239
|
// @todo: should fix bug when dataChangedFlag is true
|
|
12199
12240
|
for(var i = 0, n = blendShapes.length; i < n; i++){
|
|
12200
12241
|
var dataChangedFlag = subDataDirtyFlags[i];
|
|
@@ -12212,7 +12253,7 @@ var MeshModifyFlags;
|
|
|
12212
12253
|
var offset = indexInBuffer * blendShapeFloatStride;
|
|
12213
12254
|
var storeInfo = storeInfos[i];
|
|
12214
12255
|
storeInfo || (storeInfos[i] = storeInfo = new Vector2());
|
|
12215
|
-
storeInfo.set(
|
|
12256
|
+
storeInfo.set(bufferOffset + bufferIndex, indexInBuffer * blendShapeByteStride); // BufferOffset is mesh vertexBuffer offset
|
|
12216
12257
|
var deltaPositions = endFrame.deltaPositions;
|
|
12217
12258
|
for(var j = 0; j < vertexCount; j++){
|
|
12218
12259
|
var start = offset + bufferFloatStride * j;
|
|
@@ -13489,6 +13530,7 @@ var VertexChangedFlags;
|
|
|
13489
13530
|
function MeshRenderer(entity) {
|
|
13490
13531
|
var _this;
|
|
13491
13532
|
_this = Renderer.call(this, entity) || this;
|
|
13533
|
+
_this._enableVertexColor = false;
|
|
13492
13534
|
_this._onMeshChanged = _this._onMeshChanged.bind(_assert_this_initialized(_this));
|
|
13493
13535
|
return _this;
|
|
13494
13536
|
}
|
|
@@ -13533,7 +13575,7 @@ var VertexChangedFlags;
|
|
|
13533
13575
|
shaderData.disableMacro(MeshRenderer._uv1Macro);
|
|
13534
13576
|
shaderData.disableMacro(MeshRenderer._normalMacro);
|
|
13535
13577
|
shaderData.disableMacro(MeshRenderer._tangentMacro);
|
|
13536
|
-
shaderData.disableMacro(MeshRenderer.
|
|
13578
|
+
shaderData.disableMacro(MeshRenderer._enableVertexColorMacro);
|
|
13537
13579
|
for(var i = 0, n = vertexElements.length; i < n; i++){
|
|
13538
13580
|
switch(vertexElements[i].semantic){
|
|
13539
13581
|
case "TEXCOORD_0":
|
|
@@ -13549,7 +13591,7 @@ var VertexChangedFlags;
|
|
|
13549
13591
|
shaderData.enableMacro(MeshRenderer._tangentMacro);
|
|
13550
13592
|
break;
|
|
13551
13593
|
case "COLOR_0":
|
|
13552
|
-
shaderData.enableMacro(MeshRenderer.
|
|
13594
|
+
this._enableVertexColor && shaderData.enableMacro(MeshRenderer._enableVertexColorMacro);
|
|
13553
13595
|
break;
|
|
13554
13596
|
}
|
|
13555
13597
|
}
|
|
@@ -13600,6 +13642,20 @@ var VertexChangedFlags;
|
|
|
13600
13642
|
this._setMesh(value);
|
|
13601
13643
|
}
|
|
13602
13644
|
}
|
|
13645
|
+
},
|
|
13646
|
+
{
|
|
13647
|
+
key: "enableVertexColor",
|
|
13648
|
+
get: /**
|
|
13649
|
+
* Whether enable vertex color.
|
|
13650
|
+
*/ function get() {
|
|
13651
|
+
return this._enableVertexColor;
|
|
13652
|
+
},
|
|
13653
|
+
set: function set(value) {
|
|
13654
|
+
if (value !== this._enableVertexColor) {
|
|
13655
|
+
this._dirtyUpdateFlag |= 0x2;
|
|
13656
|
+
this._enableVertexColor = value;
|
|
13657
|
+
}
|
|
13658
|
+
}
|
|
13603
13659
|
}
|
|
13604
13660
|
]);
|
|
13605
13661
|
return MeshRenderer;
|
|
@@ -13617,7 +13673,7 @@ var VertexChangedFlags;
|
|
|
13617
13673
|
MeshRenderer._tangentMacro = ShaderMacro.getByName("RENDERER_HAS_TANGENT");
|
|
13618
13674
|
})();
|
|
13619
13675
|
(function() {
|
|
13620
|
-
MeshRenderer.
|
|
13676
|
+
MeshRenderer._enableVertexColorMacro = ShaderMacro.getByName("RENDERER_ENABLE_VERTEXCOLOR");
|
|
13621
13677
|
})();
|
|
13622
13678
|
__decorate([
|
|
13623
13679
|
ignoreClone
|
|
@@ -20393,8 +20449,10 @@ var TextVerticalAlignment;
|
|
|
20393
20449
|
if (name === void 0) name = null;
|
|
20394
20450
|
var _this;
|
|
20395
20451
|
_this = ReferResource.call(this, engine) || this;
|
|
20396
|
-
_this.
|
|
20397
|
-
_this.
|
|
20452
|
+
_this._automaticWidth = 0;
|
|
20453
|
+
_this._automaticHeight = 0;
|
|
20454
|
+
_this._customWidth = undefined;
|
|
20455
|
+
_this._customHeight = undefined;
|
|
20398
20456
|
_this._positions = [
|
|
20399
20457
|
new Vector2(),
|
|
20400
20458
|
new Vector2(),
|
|
@@ -20415,7 +20473,7 @@ var TextVerticalAlignment;
|
|
|
20415
20473
|
_this._region = new Rect(0, 0, 1, 1);
|
|
20416
20474
|
_this._pivot = new Vector2(0.5, 0.5);
|
|
20417
20475
|
_this._border = new Vector4(0, 0, 0, 0);
|
|
20418
|
-
_this._dirtyUpdateFlag =
|
|
20476
|
+
_this._dirtyUpdateFlag = 0x7;
|
|
20419
20477
|
/** @internal */ _this._updateFlagManager = new UpdateFlagManager();
|
|
20420
20478
|
_this._texture = texture;
|
|
20421
20479
|
region && _this._region.copyFrom(region);
|
|
@@ -20463,9 +20521,12 @@ var TextVerticalAlignment;
|
|
|
20463
20521
|
if (this._texture) {
|
|
20464
20522
|
var _this = this, _texture = _this._texture, _atlasRegion = _this._atlasRegion, _atlasRegionOffset = _this._atlasRegionOffset, _region = _this._region;
|
|
20465
20523
|
var pixelsPerUnitReciprocal = 1.0 / Engine._pixelsPerUnit;
|
|
20466
|
-
this.
|
|
20467
|
-
this.
|
|
20524
|
+
this._automaticWidth = _texture.width * _atlasRegion.width / (1 - _atlasRegionOffset.x - _atlasRegionOffset.z) * _region.width * pixelsPerUnitReciprocal;
|
|
20525
|
+
this._automaticHeight = _texture.height * _atlasRegion.height / (1 - _atlasRegionOffset.y - _atlasRegionOffset.w) * _region.height * pixelsPerUnitReciprocal;
|
|
20526
|
+
} else {
|
|
20527
|
+
this._automaticWidth = this._automaticHeight = 0;
|
|
20468
20528
|
}
|
|
20529
|
+
this._dirtyUpdateFlag &= ~0x4;
|
|
20469
20530
|
};
|
|
20470
20531
|
_proto._updatePositions = function _updatePositions() {
|
|
20471
20532
|
var blank = this._atlasRegionOffset;
|
|
@@ -20519,11 +20580,16 @@ var TextVerticalAlignment;
|
|
|
20519
20580
|
};
|
|
20520
20581
|
_proto._dispatchSpriteChange = function _dispatchSpriteChange(type) {
|
|
20521
20582
|
switch(type){
|
|
20583
|
+
case SpriteModifyFlags.texture:
|
|
20584
|
+
this._dirtyUpdateFlag |= 0x4;
|
|
20585
|
+
break;
|
|
20522
20586
|
case SpriteModifyFlags.atlasRegionOffset:
|
|
20523
20587
|
case SpriteModifyFlags.region:
|
|
20524
|
-
this._dirtyUpdateFlag |=
|
|
20588
|
+
this._dirtyUpdateFlag |= 0x7;
|
|
20525
20589
|
break;
|
|
20526
20590
|
case SpriteModifyFlags.atlasRegion:
|
|
20591
|
+
this._dirtyUpdateFlag |= 0x4 | 0x2;
|
|
20592
|
+
break;
|
|
20527
20593
|
case SpriteModifyFlags.border:
|
|
20528
20594
|
this._dirtyUpdateFlag |= 0x2;
|
|
20529
20595
|
break;
|
|
@@ -20542,7 +20608,9 @@ var TextVerticalAlignment;
|
|
|
20542
20608
|
if (this._texture !== value) {
|
|
20543
20609
|
this._texture = value;
|
|
20544
20610
|
this._dispatchSpriteChange(SpriteModifyFlags.texture);
|
|
20545
|
-
(this.
|
|
20611
|
+
if (this._customWidth === undefined || this._customHeight === undefined) {
|
|
20612
|
+
this._dispatchSpriteChange(SpriteModifyFlags.size);
|
|
20613
|
+
}
|
|
20546
20614
|
}
|
|
20547
20615
|
}
|
|
20548
20616
|
},
|
|
@@ -20550,13 +20618,21 @@ var TextVerticalAlignment;
|
|
|
20550
20618
|
key: "width",
|
|
20551
20619
|
get: /**
|
|
20552
20620
|
* The width of the sprite (in world coordinates).
|
|
20621
|
+
*
|
|
20622
|
+
* @remarks
|
|
20623
|
+
* If width is set, return the set value,
|
|
20624
|
+
* otherwise return the width calculated according to `Texture.width`, `Sprite.region`, `Sprite.atlasRegion`, `Sprite.atlasRegionOffset` and `Engine._pixelsPerUnit`.
|
|
20553
20625
|
*/ function get() {
|
|
20554
|
-
this.
|
|
20555
|
-
|
|
20626
|
+
if (this._customWidth !== undefined) {
|
|
20627
|
+
return this._customWidth;
|
|
20628
|
+
} else {
|
|
20629
|
+
this._dirtyUpdateFlag & 0x4 && this._calDefaultSize();
|
|
20630
|
+
return this._automaticWidth;
|
|
20631
|
+
}
|
|
20556
20632
|
},
|
|
20557
20633
|
set: function set(value) {
|
|
20558
|
-
if (this.
|
|
20559
|
-
this.
|
|
20634
|
+
if (this._customWidth !== value) {
|
|
20635
|
+
this._customWidth = value;
|
|
20560
20636
|
this._dispatchSpriteChange(SpriteModifyFlags.size);
|
|
20561
20637
|
}
|
|
20562
20638
|
}
|
|
@@ -20565,13 +20641,21 @@ var TextVerticalAlignment;
|
|
|
20565
20641
|
key: "height",
|
|
20566
20642
|
get: /**
|
|
20567
20643
|
* The height of the sprite (in world coordinates).
|
|
20644
|
+
*
|
|
20645
|
+
* @remarks
|
|
20646
|
+
* If height is set, return the set value,
|
|
20647
|
+
* otherwise return the height calculated according to `Texture.height`, `Sprite.region`, `Sprite.atlasRegion`, `Sprite.atlasRegionOffset` and `Engine._pixelsPerUnit`.
|
|
20568
20648
|
*/ function get() {
|
|
20569
|
-
this.
|
|
20570
|
-
|
|
20649
|
+
if (this._customHeight !== undefined) {
|
|
20650
|
+
return this._customHeight;
|
|
20651
|
+
} else {
|
|
20652
|
+
this._dirtyUpdateFlag & 0x4 && this._calDefaultSize();
|
|
20653
|
+
return this._automaticHeight;
|
|
20654
|
+
}
|
|
20571
20655
|
},
|
|
20572
20656
|
set: function set(value) {
|
|
20573
|
-
if (this.
|
|
20574
|
-
this.
|
|
20657
|
+
if (this._customHeight !== value) {
|
|
20658
|
+
this._customHeight = value;
|
|
20575
20659
|
this._dispatchSpriteChange(SpriteModifyFlags.size);
|
|
20576
20660
|
}
|
|
20577
20661
|
}
|
|
@@ -20601,7 +20685,9 @@ var TextVerticalAlignment;
|
|
|
20601
20685
|
var y = MathUtil$1.clamp(value.y, 0, 1);
|
|
20602
20686
|
this._atlasRegion.set(x, y, MathUtil$1.clamp(value.width, 0, 1 - x), MathUtil$1.clamp(value.height, 0, 1 - y));
|
|
20603
20687
|
this._dispatchSpriteChange(SpriteModifyFlags.atlasRegion);
|
|
20604
|
-
(this.
|
|
20688
|
+
if (this._customWidth === undefined || this._customHeight === undefined) {
|
|
20689
|
+
this._dispatchSpriteChange(SpriteModifyFlags.size);
|
|
20690
|
+
}
|
|
20605
20691
|
}
|
|
20606
20692
|
},
|
|
20607
20693
|
{
|
|
@@ -20616,7 +20702,9 @@ var TextVerticalAlignment;
|
|
|
20616
20702
|
var y = MathUtil$1.clamp(value.y, 0, 1);
|
|
20617
20703
|
this._atlasRegionOffset.set(x, y, MathUtil$1.clamp(value.z, 0, 1 - x), MathUtil$1.clamp(value.w, 0, 1 - y));
|
|
20618
20704
|
this._dispatchSpriteChange(SpriteModifyFlags.atlasRegionOffset);
|
|
20619
|
-
(this.
|
|
20705
|
+
if (this._customWidth === undefined || this._customHeight === undefined) {
|
|
20706
|
+
this._dispatchSpriteChange(SpriteModifyFlags.size);
|
|
20707
|
+
}
|
|
20620
20708
|
}
|
|
20621
20709
|
},
|
|
20622
20710
|
{
|
|
@@ -20632,7 +20720,9 @@ var TextVerticalAlignment;
|
|
|
20632
20720
|
var y = MathUtil$1.clamp(value.y, 0, 1);
|
|
20633
20721
|
region.set(x, y, MathUtil$1.clamp(value.width, 0, 1 - x), MathUtil$1.clamp(value.height, 0, 1 - y));
|
|
20634
20722
|
this._dispatchSpriteChange(SpriteModifyFlags.region);
|
|
20635
|
-
(this.
|
|
20723
|
+
if (this._customWidth === undefined || this._customHeight === undefined) {
|
|
20724
|
+
this._dispatchSpriteChange(SpriteModifyFlags.size);
|
|
20725
|
+
}
|
|
20636
20726
|
}
|
|
20637
20727
|
},
|
|
20638
20728
|
{
|
|
@@ -20682,7 +20772,8 @@ var SpriteUpdateFlags;
|
|
|
20682
20772
|
(function(SpriteUpdateFlags) {
|
|
20683
20773
|
SpriteUpdateFlags[SpriteUpdateFlags["positions"] = 0x1] = "positions";
|
|
20684
20774
|
SpriteUpdateFlags[SpriteUpdateFlags["uvs"] = 0x2] = "uvs";
|
|
20685
|
-
SpriteUpdateFlags[SpriteUpdateFlags["
|
|
20775
|
+
SpriteUpdateFlags[SpriteUpdateFlags["automaticSize"] = 0x4] = "automaticSize";
|
|
20776
|
+
SpriteUpdateFlags[SpriteUpdateFlags["all"] = 0x7] = "all";
|
|
20686
20777
|
})(SpriteUpdateFlags || (SpriteUpdateFlags = {}));
|
|
20687
20778
|
|
|
20688
20779
|
var _SlicedSpriteAssembler;
|
|
@@ -21174,8 +21265,10 @@ var TiledType;
|
|
|
21174
21265
|
_this._tiledAdaptiveThreshold = 0.5;
|
|
21175
21266
|
_this._color = new Color$1(1, 1, 1, 1);
|
|
21176
21267
|
_this._sprite = null;
|
|
21177
|
-
_this.
|
|
21178
|
-
_this.
|
|
21268
|
+
_this._automaticWidth = 0;
|
|
21269
|
+
_this._automaticHeight = 0;
|
|
21270
|
+
_this._customWidth = undefined;
|
|
21271
|
+
_this._customHeight = undefined;
|
|
21179
21272
|
_this._flipX = false;
|
|
21180
21273
|
_this._flipY = false;
|
|
21181
21274
|
_this._maskLayer = SpriteMaskLayer.Layer0;
|
|
@@ -21192,6 +21285,7 @@ var TiledType;
|
|
|
21192
21285
|
*/ _proto._cloneTo = function _cloneTo(target) {
|
|
21193
21286
|
target._assembler.resetData(target);
|
|
21194
21287
|
target.sprite = this._sprite;
|
|
21288
|
+
target.drawMode = this._drawMode;
|
|
21195
21289
|
};
|
|
21196
21290
|
/**
|
|
21197
21291
|
* @internal
|
|
@@ -21202,12 +21296,11 @@ var TiledType;
|
|
|
21202
21296
|
/**
|
|
21203
21297
|
* @internal
|
|
21204
21298
|
*/ _proto._updateBounds = function _updateBounds(worldBounds) {
|
|
21205
|
-
|
|
21206
|
-
|
|
21299
|
+
if (this.sprite) {
|
|
21300
|
+
this._assembler.updatePositions(this);
|
|
21301
|
+
} else {
|
|
21207
21302
|
worldBounds.min.set(0, 0, 0);
|
|
21208
21303
|
worldBounds.max.set(0, 0, 0);
|
|
21209
|
-
} else {
|
|
21210
|
-
this._assembler.updatePositions(this);
|
|
21211
21304
|
}
|
|
21212
21305
|
};
|
|
21213
21306
|
/**
|
|
@@ -21217,17 +21310,17 @@ var TiledType;
|
|
|
21217
21310
|
if (!((_this_sprite = this.sprite) == null ? void 0 : _this_sprite.texture) || !this.width || !this.height) {
|
|
21218
21311
|
return;
|
|
21219
21312
|
}
|
|
21220
|
-
// Update position
|
|
21313
|
+
// Update position
|
|
21221
21314
|
if (this._dirtyUpdateFlag & RendererUpdateFlags.WorldVolume) {
|
|
21222
21315
|
this._assembler.updatePositions(this);
|
|
21223
21316
|
this._dirtyUpdateFlag &= ~RendererUpdateFlags.WorldVolume;
|
|
21224
21317
|
}
|
|
21225
|
-
// Update uv
|
|
21318
|
+
// Update uv
|
|
21226
21319
|
if (this._dirtyUpdateFlag & 0x2) {
|
|
21227
21320
|
this._assembler.updateUVs(this);
|
|
21228
21321
|
this._dirtyUpdateFlag &= ~0x2;
|
|
21229
21322
|
}
|
|
21230
|
-
// Push
|
|
21323
|
+
// Push primitive
|
|
21231
21324
|
var material = this.getMaterial();
|
|
21232
21325
|
var texture = this.sprite.texture;
|
|
21233
21326
|
var renderData = this._engine._spriteRenderDataPool.getFromPool();
|
|
@@ -21245,6 +21338,16 @@ var TiledType;
|
|
|
21245
21338
|
this._assembler = null;
|
|
21246
21339
|
this._verticesData = null;
|
|
21247
21340
|
};
|
|
21341
|
+
_proto._calDefaultSize = function _calDefaultSize() {
|
|
21342
|
+
var sprite = this._sprite;
|
|
21343
|
+
if (sprite) {
|
|
21344
|
+
this._automaticWidth = sprite.width;
|
|
21345
|
+
this._automaticHeight = sprite.height;
|
|
21346
|
+
} else {
|
|
21347
|
+
this._automaticWidth = this._automaticHeight = 0;
|
|
21348
|
+
}
|
|
21349
|
+
this._dirtyUpdateFlag &= ~0x4;
|
|
21350
|
+
};
|
|
21248
21351
|
_proto._updateStencilState = function _updateStencilState() {
|
|
21249
21352
|
// Update stencil.
|
|
21250
21353
|
var material = this.getInstanceMaterial();
|
|
@@ -21271,22 +21374,21 @@ var TiledType;
|
|
|
21271
21374
|
break;
|
|
21272
21375
|
case SpriteModifyFlags.size:
|
|
21273
21376
|
var _this = this, drawMode = _this._drawMode;
|
|
21274
|
-
|
|
21377
|
+
this._dirtyUpdateFlag |= 0x4;
|
|
21378
|
+
if (this._drawMode === SpriteDrawMode.Sliced) {
|
|
21275
21379
|
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
21276
21380
|
} else if (drawMode === SpriteDrawMode.Tiled) {
|
|
21277
21381
|
this._dirtyUpdateFlag |= 0x3;
|
|
21278
21382
|
} else {
|
|
21279
21383
|
// When the width and height of `SpriteRenderer` are `undefined`,
|
|
21280
21384
|
// the `size` of `Sprite` will affect the position of `SpriteRenderer`.
|
|
21281
|
-
if (this.
|
|
21385
|
+
if (this._customWidth === undefined || this._customHeight === undefined) {
|
|
21282
21386
|
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
21283
21387
|
}
|
|
21284
21388
|
}
|
|
21285
21389
|
break;
|
|
21286
21390
|
case SpriteModifyFlags.border:
|
|
21287
|
-
|
|
21288
|
-
this._dirtyUpdateFlag |= 0x3;
|
|
21289
|
-
}
|
|
21391
|
+
this._drawMode === SpriteDrawMode.Sliced && (this._dirtyUpdateFlag |= 0x3);
|
|
21290
21392
|
break;
|
|
21291
21393
|
case SpriteModifyFlags.region:
|
|
21292
21394
|
case SpriteModifyFlags.atlasRegionOffset:
|
|
@@ -21371,9 +21473,9 @@ var TiledType;
|
|
|
21371
21473
|
var lastSprite = this._sprite;
|
|
21372
21474
|
if (lastSprite !== value) {
|
|
21373
21475
|
lastSprite && lastSprite._updateFlagManager.removeListener(this._onSpriteChange);
|
|
21476
|
+
this._dirtyUpdateFlag |= 0x7;
|
|
21374
21477
|
if (value) {
|
|
21375
21478
|
value._updateFlagManager.addListener(this._onSpriteChange);
|
|
21376
|
-
this._dirtyUpdateFlag |= 0x3;
|
|
21377
21479
|
this.shaderData.setTexture(SpriteRenderer._textureProperty, value.texture);
|
|
21378
21480
|
} else {
|
|
21379
21481
|
this.shaderData.setTexture(SpriteRenderer._textureProperty, null);
|
|
@@ -21398,16 +21500,22 @@ var TiledType;
|
|
|
21398
21500
|
{
|
|
21399
21501
|
key: "width",
|
|
21400
21502
|
get: /**
|
|
21401
|
-
* Render width.
|
|
21503
|
+
* Render width (in world coordinates).
|
|
21504
|
+
*
|
|
21505
|
+
* @remarks
|
|
21506
|
+
* If width is set, return the set value,
|
|
21507
|
+
* otherwise return `SpriteRenderer.sprite.width`.
|
|
21402
21508
|
*/ function get() {
|
|
21403
|
-
|
|
21404
|
-
|
|
21509
|
+
if (this._customWidth !== undefined) {
|
|
21510
|
+
return this._customWidth;
|
|
21511
|
+
} else {
|
|
21512
|
+
this._dirtyUpdateFlag & 0x4 && this._calDefaultSize();
|
|
21513
|
+
return this._automaticWidth;
|
|
21514
|
+
}
|
|
21405
21515
|
},
|
|
21406
21516
|
set: function set(value) {
|
|
21407
|
-
|
|
21408
|
-
|
|
21409
|
-
if (this._width !== value) {
|
|
21410
|
-
this._width = value;
|
|
21517
|
+
if (this._customWidth !== value) {
|
|
21518
|
+
this._customWidth = value;
|
|
21411
21519
|
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
21412
21520
|
}
|
|
21413
21521
|
}
|
|
@@ -21415,16 +21523,22 @@ var TiledType;
|
|
|
21415
21523
|
{
|
|
21416
21524
|
key: "height",
|
|
21417
21525
|
get: /**
|
|
21418
|
-
* Render height.
|
|
21526
|
+
* Render height (in world coordinates).
|
|
21527
|
+
*
|
|
21528
|
+
* @remarks
|
|
21529
|
+
* If height is set, return the set value,
|
|
21530
|
+
* otherwise return `SpriteRenderer.sprite.height`.
|
|
21419
21531
|
*/ function get() {
|
|
21420
|
-
|
|
21421
|
-
|
|
21532
|
+
if (this._customHeight !== undefined) {
|
|
21533
|
+
return this._customHeight;
|
|
21534
|
+
} else {
|
|
21535
|
+
this._dirtyUpdateFlag & 0x4 && this._calDefaultSize();
|
|
21536
|
+
return this._automaticHeight;
|
|
21537
|
+
}
|
|
21422
21538
|
},
|
|
21423
21539
|
set: function set(value) {
|
|
21424
|
-
|
|
21425
|
-
|
|
21426
|
-
if (this._height !== value) {
|
|
21427
|
-
this._height = value;
|
|
21540
|
+
if (this._customHeight !== value) {
|
|
21541
|
+
this._customHeight = value;
|
|
21428
21542
|
this._dirtyUpdateFlag |= RendererUpdateFlags.WorldVolume;
|
|
21429
21543
|
}
|
|
21430
21544
|
}
|
|
@@ -21511,10 +21625,16 @@ __decorate([
|
|
|
21511
21625
|
], SpriteRenderer.prototype, "_sprite", void 0);
|
|
21512
21626
|
__decorate([
|
|
21513
21627
|
ignoreClone
|
|
21514
|
-
], SpriteRenderer.prototype, "
|
|
21628
|
+
], SpriteRenderer.prototype, "_automaticWidth", void 0);
|
|
21515
21629
|
__decorate([
|
|
21516
21630
|
ignoreClone
|
|
21517
|
-
], SpriteRenderer.prototype, "
|
|
21631
|
+
], SpriteRenderer.prototype, "_automaticHeight", void 0);
|
|
21632
|
+
__decorate([
|
|
21633
|
+
assignmentClone
|
|
21634
|
+
], SpriteRenderer.prototype, "_customWidth", void 0);
|
|
21635
|
+
__decorate([
|
|
21636
|
+
assignmentClone
|
|
21637
|
+
], SpriteRenderer.prototype, "_customHeight", void 0);
|
|
21518
21638
|
__decorate([
|
|
21519
21639
|
assignmentClone
|
|
21520
21640
|
], SpriteRenderer.prototype, "_flipX", void 0);
|
|
@@ -21535,7 +21655,9 @@ var /**
|
|
|
21535
21655
|
*/ SpriteRendererUpdateFlags;
|
|
21536
21656
|
(function(SpriteRendererUpdateFlags) {
|
|
21537
21657
|
SpriteRendererUpdateFlags[SpriteRendererUpdateFlags[/** UV. */ "UV"] = 0x2] = "UV";
|
|
21538
|
-
SpriteRendererUpdateFlags[SpriteRendererUpdateFlags[/**
|
|
21658
|
+
SpriteRendererUpdateFlags[SpriteRendererUpdateFlags[/** WorldVolume and UV . */ "RenderData"] = 0x3] = "RenderData";
|
|
21659
|
+
SpriteRendererUpdateFlags[SpriteRendererUpdateFlags[/** Automatic Size. */ "AutomaticSize"] = 0x4] = "AutomaticSize";
|
|
21660
|
+
SpriteRendererUpdateFlags[SpriteRendererUpdateFlags[/** All. */ "All"] = 0x7] = "All";
|
|
21539
21661
|
})(SpriteRendererUpdateFlags || (SpriteRendererUpdateFlags = {}));
|
|
21540
21662
|
|
|
21541
21663
|
/**
|