quakeforge/libs/video/renderer/glsl/quakeskb.frag
Bill Currie 6e2d625d36 Load the skybox faces into the correct cubemap slots.
Quake and GL are rotated relative to each other, so care must be taken
when loading and rendering.
2012-01-12 15:13:19 +09:00

17 lines
445 B
GLSL

uniform samplerCube sky;
varying vec3 direction;
void
main (void)
{
vec3 dir = direction;
dir *= inversesqrt (dot (dir, dir));
// NOTE: quake's world and GL's world are rotated relative to each other
// quake has x right, y in, z up. gl has x right, y up, z out
// The textures are loaded with GL's z (quake's y) already negated, so
// all that's needed here is to swizzle y and z.
gl_FragColor = textureCube(sky, dir.xzy);
}