Update the projective texture shader to solve the texture interpolation artifact.

This commit is contained in:
YunfeiBai
2018-04-09 17:15:42 -07:00
parent 6b97e1e604
commit b032a1fd60
5 changed files with 9 additions and 18 deletions

View File

@@ -6,13 +6,9 @@ in Fragment
vec4 color;
} fragment;
in Vert
{
vec2 texcoord;
} vert;
uniform sampler2D Diffuse;
uniform mat4 ViewMatrixInverse;
uniform mat4 TextureMVP;
in vec3 lightPos,cameraPosition, normal,ambient;
in vec4 vertexPos;
@@ -23,10 +19,11 @@ in vec3 materialSpecularColor;
out vec4 color;
void main(void)
{
vec4 texel = fragment.color*texture(Diffuse,vert.texcoord.xy);
vec4 projcoords = TextureMVP * vertexPos;
vec2 texturecoords = projcoords.xy/max(projcoords.z,0.1);
vec4 texel = fragment.color*texture(Diffuse,texturecoords);
vec3 ct,cf;
float intensity,at,af;
if (fragment.color.w==0)