fteqw/engine/shaders/glsl/postproc_equirectangular.glsl
Spoike 5b4756f3d9 Lazy GLSL loading, for faster load times.
Fixed some xim issues, for proper keyboard input under x11.
Cmake project can now work for cross compiling win32 targets.
Some other fun-but-pointless stuff.



git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5344 fc73d0e0-1445-4013-8a0c-d673dee63da5
2018-11-27 16:48:19 +00:00

31 lines
661 B
GLSL

!!cvarf ffov
!!samps screen:samplerCube=0
//equirectangular view rendering, commonly used for sphere->2d map projections.
#ifdef VERTEX_SHADER
attribute vec2 v_texcoord;
varying vec2 texcoord;
void main()
{
texcoord = v_texcoord.xy;
gl_Position = ftetransform();
}
#endif
#ifdef FRAGMENT_SHADER
varying vec2 texcoord;
uniform float cvar_ffov;
#define PI 3.1415926535897932384626433832795
void main()
{
vec3 tc;
float lng = (texcoord.x - 0.5) * PI * 2.0;
float lat = (texcoord.y) * PI * 1.0;
tc.z = cos(lng) * sin(lat);
tc.x = sin(lng) * sin(lat);
tc.y = cos(lat);
gl_FragColor = textureCube(s_screen, tc);
}
#endif