mirror of
https://github.com/nzp-team/fteqw.git
synced 2024-11-30 07:31:13 +00:00
151bd6d0b1
gl: fix r_projection when using vid_restart. hdr: fixed iris stuff to work in more renderers. ircclient: don't disconnect instantly. that's just stupid. git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@5010 fc73d0e0-1445-4013-8a0c-d673dee63da5
32 lines
642 B
GLSL
32 lines
642 B
GLSL
!!cvarf ffov
|
|
!!samps reflectcube
|
|
#include "sys/defs.h"
|
|
|
|
|
|
//fisheye view rendering, for silly fovs that are still playable.
|
|
|
|
#ifdef VERTEX_SHADER
|
|
varying vec2 texcoord;
|
|
void main()
|
|
{
|
|
texcoord = v_texcoord.xy;
|
|
gl_Position = ftetransform();
|
|
}
|
|
#endif
|
|
#ifdef FRAGMENT_SHADER
|
|
varying vec2 texcoord;
|
|
//uniform float cvar_ffov;
|
|
void main()
|
|
{
|
|
vec3 tc;
|
|
vec2 d;
|
|
vec2 ang;
|
|
d = texcoord;
|
|
ang.x = sqrt(d.x*d.x+d.y*d.y)*radians(cvar_ffov);
|
|
ang.y = -atan(d.y, d.x);
|
|
tc.x = sin(ang.x) * cos(ang.y);
|
|
tc.y = sin(ang.x) * sin(ang.y);
|
|
tc.z = cos(ang.x);
|
|
gl_FragColor = textureCube(s_reflectcube, tc);
|
|
}
|
|
#endif
|