From 3cdddf0817811d3f5902bb42526d46d8e9a45dbb Mon Sep 17 00:00:00 2001 From: Woohyung Choi <201421062@sce212.ajou.ac.kr> Date: Thu, 12 Dec 2019 06:06:24 +0900 Subject: [PATCH] =?UTF-8?q?shader=20=EC=88=98=EC=A0=95=EC=A4=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Shaders/Projector/Projector.frag | 18 +++++++++++------- Shaders/Projector/Projector.vert | 19 ++++++++++--------- 2 files changed, 21 insertions(+), 16 deletions(-) diff --git a/Shaders/Projector/Projector.frag b/Shaders/Projector/Projector.frag index 22a6025..cafa84e 100644 --- a/Shaders/Projector/Projector.frag +++ b/Shaders/Projector/Projector.frag @@ -1,15 +1,19 @@ #version 330 core -uniform sampler2D projMap_forCam1; +uniform sampler2D image; + +out vec4 FragColor; + +in vec4 TexCoords; void main (void) { - vec4 final_color = vec4(0.0, 0.0, 0.0, 1.0); - if( gl_TexCoord[0].q > 0.0 ) - { - vec4 ProjMapColor_forCam1 = texture2DProj(projMap_forCam1, gl_TexCoord[0]); + vec4 final_color; + if( TexCoords.q > 0.0 ) + { + vec2 finalCoords = TexCoords.st / TexCoords.q; + vec4 ProjMapColor_forCam1 = texture(image, finalCoords); final_color = ProjMapColor_forCam1; } - - gl_FragColor = final_color; + FragColor = final_color; } \ No newline at end of file diff --git a/Shaders/Projector/Projector.vert b/Shaders/Projector/Projector.vert index 256d22f..0082afb 100644 --- a/Shaders/Projector/Projector.vert +++ b/Shaders/Projector/Projector.vert @@ -1,19 +1,20 @@ #version 330 core -uniform mat4 TexGenMatCam0; -uniform mat4 ViewMat; +layout (location = 0) in vec3 aPos; + +out vec4 TexCoords; +uniform mat4 TexGenMatCam0; uniform mat4 model; uniform mat4 view; uniform mat4 projection; void main() -{ - mat4 InvViewMat = inverse(ViewMat); - - vec4 posEye = gl_ModelViewMatrix * gl_Vertex; - vec4 posWorld = InvViewMat * posEye; +{ + vec3 FragPos = vec3(model * vec4(aPos, 1.0)); + vec4 VertexPos_eye = model * view * vec4(aPos, 1.0); + vec4 VertexPos_world = inverse(view) * VertexPos_eye; - gl_TexCoord[0] = TexGenMatCam0 * posWorld; + TexCoords = TexGenMatCam0 * VertexPos_world; - gl_Position = ftransform(); + gl_Position = projection * view * vec4(FragPos, 1.0); } \ No newline at end of file -- GitLab