Removed some debug checks, added some bug fixes, should be a mite bit more robust now.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@796 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
parent
7a1ee42b80
commit
2e8ecb5dbe
1 changed files with 11 additions and 17 deletions
|
@ -184,34 +184,22 @@ void GL_InitSceneProcessingShaders (void)
|
|||
vert = GLSlang_CreateShader(genericvert, 1);//GL_VERTEX_SHADER_ARB);
|
||||
frag = GLSlang_CreateShader(wwfrag, 0);//GL_FRAGMENT_SHADER_ARB);
|
||||
|
||||
if (qglGetError())
|
||||
Con_Printf("GL Error after initing shader object\n");
|
||||
|
||||
scenepp_ww_program = GLSlang_CreateProgram(vert, frag);
|
||||
if (qglGetError())
|
||||
Con_Printf("GL Error after initing shader object\n");
|
||||
|
||||
// scenepp_ww_parm_texturei = GLSlang_GetUniformLocation(scenepp_ww_program, "texture");
|
||||
scenepp_ww_parm_timef = GLSlang_GetUniformLocation(scenepp_ww_program, "time");
|
||||
scenepp_ww_parm_xscalef = GLSlang_GetUniformLocation(scenepp_ww_program, "xscale");
|
||||
if (qglGetError())
|
||||
Con_Printf("GL Error after initing shader object\n");
|
||||
scenepp_ww_parm_yscalef = GLSlang_GetUniformLocation(scenepp_ww_program, "yscale");
|
||||
scenepp_ww_parm_ampscalef = GLSlang_GetUniformLocation(scenepp_ww_program, "ampscale");
|
||||
if (qglGetError())
|
||||
Con_Printf("GL Error after initing shader object\n");
|
||||
|
||||
GLSlang_UseProgram(scenepp_ww_program);
|
||||
|
||||
// GLSlang_SetUniform1i(scenepp_ww_parm_texturei, 0);
|
||||
|
||||
if (qglGetError())
|
||||
Con_Printf("GL Error after initing shader object\n");
|
||||
|
||||
if (qglGetError())
|
||||
Con_Printf("GL Error after initing shader object\n");
|
||||
|
||||
GLSlang_UseProgram(0);
|
||||
|
||||
if (qglGetError())
|
||||
Con_Printf("GL Error initing shader object\n");
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -1770,12 +1758,18 @@ void GLR_RenderView (void)
|
|||
|
||||
// SCENE POST PROCESSING
|
||||
// we check if we need to use any shaders - currently it's just waterwarp
|
||||
if ((gl_config.arb_shader_objects) && (r_waterwarp.value && r_viewleaf->contents <= Q1CONTENTS_WATER))
|
||||
if ((gl_config.arb_shader_objects) && (r_waterwarp.value && r_viewleaf&&r_viewleaf->contents <= Q1CONTENTS_WATER))
|
||||
{
|
||||
extern int char_texture;
|
||||
float vwidth = 1, vheight = 1;
|
||||
float vs, vt;
|
||||
|
||||
if (!glwidth || !glheight)
|
||||
{
|
||||
Con_Printf("Window too small!!!\n");
|
||||
return;
|
||||
}
|
||||
|
||||
// get the powers of 2 for the size of the texture that will hold the scene
|
||||
while (vwidth < glwidth)
|
||||
{
|
||||
|
@ -1828,7 +1822,7 @@ void GLR_RenderView (void)
|
|||
GLSlang_SetUniform1f(scenepp_ww_parm_xscalef, 4 / vs);
|
||||
GLSlang_SetUniform1f(scenepp_ww_parm_yscalef, ((4 / glwidth)*glheight)/vt);
|
||||
//keep the amp proportional to the size of the scene in texture coords
|
||||
GLSlang_SetUniform1f(scenepp_ww_parm_ampscalef, (0.005 / 0.625) * vs);
|
||||
GLSlang_SetUniform1f(scenepp_ww_parm_ampscalef, (0.005 / 0.625) * vs*r_waterwarp.value);
|
||||
GLSlang_SetUniform1f(scenepp_ww_parm_timef, cl.time);
|
||||
|
||||
if (qglGetError())
|
||||
|
|
Loading…
Reference in a new issue