diff options
author | Antony Riakiotakis <kalast@gmail.com> | 2014-12-31 17:48:05 +0300 |
---|---|---|
committer | Antony Riakiotakis <kalast@gmail.com> | 2014-12-31 17:48:16 +0300 |
commit | 7f356c20dce083a2ddbb569543e3c93d74b60050 (patch) | |
tree | 7c1f829774edae69a910940f31a5c2d16732b950 /source/blender | |
parent | 59742167ce926c8898f80e00888e94c4766a9b32 (diff) |
Modify shader for texture coordinates of objects to also match the
rendered result more closely (all three parameters should match now)
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/gpu/shaders/gpu_shader_material.glsl | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/source/blender/gpu/shaders/gpu_shader_material.glsl b/source/blender/gpu/shaders/gpu_shader_material.glsl index 7a4dba5a26a..1e0927d90b3 100644 --- a/source/blender/gpu/shaders/gpu_shader_material.glsl +++ b/source/blender/gpu/shaders/gpu_shader_material.glsl @@ -2372,13 +2372,13 @@ void node_tex_coord(vec3 I, vec3 N, mat4 viewinvmat, mat4 obinvmat, out vec3 generated, out vec3 normal, out vec3 uv, out vec3 object, out vec3 camera, out vec3 window, out vec3 reflection) { - generated = mtex_2d_mapping(attr_orco); + generated = attr_orco * 0.5 + vec3(0.5); normal = normalize((obinvmat*(viewinvmat*vec4(N, 0.0))).xyz); uv = attr_uv; object = (obinvmat*(viewinvmat*vec4(I, 1.0))).xyz; - camera = I; + camera = vec3(I.xy, -I.z); vec4 projvec = gl_ProjectionMatrix * vec4(I, 1.0); - window = mtex_2d_mapping(projvec.xyz/projvec.w); + window = vec3(mtex_2d_mapping(projvec.xyz/projvec.w).xy, 0.0); vec3 shade_I; shade_view(I, shade_I); |