将法线计算恢复到标准模式

This commit is contained in:
hyzboy 2019-07-11 01:15:32 +08:00
parent ee30e6acce
commit 13e9bd19e7
2 changed files with 6 additions and 13 deletions

View File

@ -16,15 +16,12 @@ void main()
{
outPosition=vec4(normalize(FragmentPosition*2.0-vec3(1.0)),1.0);
/* vec3 N = normalize(FragmentNormal);
N.y=-N.y;
vec3 N = normalize(FragmentNormal);
vec3 T = normalize(FragmentTangent);
vec3 B = cross(N,T);
mat3 TBN = mat3(T,B,N);
vec3 tnorm = normalize(texture(TextureNormal,FragmentTexCoord).xyz*2.0-vec3(1.0))*TBN;*/
vec3 tnorm = normalize(texture(TextureNormal,FragmentTexCoord).xyz*2.0-vec3(1.0))*TBN;
//outNormal=vec4(tnorm,1.0);
outNormal=vec4(normalize(FragmentNormal*2.0-vec3(1.0)),1.0);
outNormal=vec4(tnorm,1.0);
outColor=texture(TextureColor,FragmentTexCoord);
}

View File

@ -32,12 +32,8 @@ void main()
FragmentPosition=(pos*world.modelview).xyz;
FragmentTexCoord=TexCoord;
// mat3 n=inverse(mat3(pc.local_to_world));
mat3 n=mat3(pc.local_to_world*world.modelview);
// Normal.y=-Normal.y;
// FragmentNormal=normalize(Normal)*n;
// FragmentTangent=normalize(Tangent)*n;
FragmentNormal=Normal;
FragmentTangent=Tangent;
FragmentNormal=normalize(Normal)*n;
FragmentTangent=normalize(Tangent)*n;
}