From 1e09ac31c54c2f9cfcec578462da0eac628a6647 Mon Sep 17 00:00:00 2001 From: Joe Groff Date: Mon, 11 May 2009 12:36:04 -0500 Subject: [PATCH] fix terrain sky to match projection FOV --- extra/terrain/shaders/shaders.factor | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/extra/terrain/shaders/shaders.factor b/extra/terrain/shaders/shaders.factor index bfb46b8ba1..e5b517ad59 100644 --- a/extra/terrain/shaders/shaders.factor +++ b/extra/terrain/shaders/shaders.factor @@ -8,11 +8,14 @@ varying vec3 direction; void main() { - vec4 v = vec4(gl_Vertex.xy, -1.0, 1.0); + vec4 v = vec4(gl_Vertex.xy, 1.0, 1.0); gl_Position = v; + + vec4 p = (gl_ProjectionMatrixInverse * v) * vec4(1,1,-1,1); + float s = sin(sky_theta), c = cos(sky_theta); direction = mat3(1, 0, 0, 0, c, s, 0, -s, c) - * (gl_ModelViewMatrixInverse * vec4(v.xyz, 0.0)).xyz; + * (gl_ModelViewMatrixInverse * vec4(p.xyz, 0.0)).xyz; } ;