From e08d5ccb41b0bf3558bc291fd1d4ce89d40fba58 Mon Sep 17 00:00:00 2001 From: Bill Currie Date: Thu, 23 Feb 2012 09:15:50 +0900 Subject: [PATCH] Move the gl util functions into viddef_t. Static plugins almost link now, just two more symbols to sort out. --- include/QF/GL/funcs.h | 3 --- include/QF/GL/qf_vid.h | 1 - include/QF/GLSL/funcs.h | 3 --- include/QF/GLSL/qf_vid.h | 1 - include/QF/vid.h | 4 ++++ libs/video/renderer/gl/gl_rmisc.c | 6 +++--- libs/video/renderer/gl/gl_screen.c | 4 ++-- libs/video/renderer/gl/qfgl_ext.c | 6 +++--- libs/video/renderer/glsl/glsl_screen.c | 2 +- libs/video/renderer/glsl/qfglsl.c | 6 +++--- 10 files changed, 16 insertions(+), 20 deletions(-) diff --git a/include/QF/GL/funcs.h b/include/QF/GL/funcs.h index 28a1b058c..601acf3be 100644 --- a/include/QF/GL/funcs.h +++ b/include/QF/GL/funcs.h @@ -47,7 +47,4 @@ qboolean GLF_Init (void); qboolean GLF_FindFunctions (void); void *QFGL_ProcAddress (void *handle, const char *name, qboolean); -void *QFGL_LoadLibrary (void); -void *QFGL_GetProcAddress (void *handle, const char *name); - #endif // __QF_GL_funcs_h_ diff --git a/include/QF/GL/qf_vid.h b/include/QF/GL/qf_vid.h index 4f08e3223..863f3eacd 100644 --- a/include/QF/GL/qf_vid.h +++ b/include/QF/GL/qf_vid.h @@ -54,7 +54,6 @@ extern int gl_tess; extern int gl_max_lights; -void GL_EndRendering (void); void GL_Init_Common (void); #endif // __QF_GL_vid_h diff --git a/include/QF/GLSL/funcs.h b/include/QF/GLSL/funcs.h index bec664f16..4f20a61ac 100644 --- a/include/QF/GLSL/funcs.h +++ b/include/QF/GLSL/funcs.h @@ -48,7 +48,4 @@ qboolean EGLF_Init (void); qboolean EGLF_FindFunctions (void); void *QFEGL_ProcAddress (void *handle, const char *name, qboolean); -void *QFEGL_LoadLibrary (void); -void *QFEGL_GetProcAddress (void *handle, const char *name); - #endif // __QF_GLSL_funcs_h_ diff --git a/include/QF/GLSL/qf_vid.h b/include/QF/GLSL/qf_vid.h index a5519d9d5..1be7e9c18 100644 --- a/include/QF/GLSL/qf_vid.h +++ b/include/QF/GLSL/qf_vid.h @@ -40,7 +40,6 @@ typedef struct shaderparam_s { extern int glsl_palette; extern int glsl_colormap; -void GLSL_EndRendering (void); void GLSL_Init_Common (void); int GLSL_CompileShader (const char *name, const char *shader_src, int type); int GLSL_LinkProgram (const char *name, int vert, int frag); diff --git a/include/QF/vid.h b/include/QF/vid.h index 73908c8ad..87770d863 100644 --- a/include/QF/vid.h +++ b/include/QF/vid.h @@ -68,6 +68,10 @@ typedef struct { void (*flush_caches)(void); void (*init_caches)(void *cache, int size); void (*do_screen_buffer)(void); + + void (*end_rendering)(void); + void *(*load_library)(void); + void *(*get_proc_address)(void *handle, const char *name); } viddef_t; extern viddef_t viddef; diff --git a/libs/video/renderer/gl/gl_rmisc.c b/libs/video/renderer/gl/gl_rmisc.c index 32fccfa86..c1f00b647 100644 --- a/libs/video/renderer/gl/gl_rmisc.c +++ b/libs/video/renderer/gl/gl_rmisc.c @@ -123,7 +123,7 @@ R_Envmap_f (void) gl_envmap = false; qfglDrawBuffer (GL_BACK); qfglReadBuffer (GL_BACK); - GL_EndRendering (); + vid.end_rendering (); } void @@ -247,13 +247,13 @@ gl_R_TimeRefresh_f (void) double start, stop, time; int i; - GL_EndRendering (); + vid.end_rendering (); start = Sys_DoubleTime (); for (i = 0; i < 128; i++) { r_refdef.viewangles[1] = i * (360.0 / 128.0); gl_R_RenderView (); - GL_EndRendering (); + vid.end_rendering (); } stop = Sys_DoubleTime (); diff --git a/libs/video/renderer/gl/gl_screen.c b/libs/video/renderer/gl/gl_screen.c index b01ccffbd..521c14289 100644 --- a/libs/video/renderer/gl/gl_screen.c +++ b/libs/video/renderer/gl/gl_screen.c @@ -210,7 +210,7 @@ gl_SCR_UpdateScreen (double realtime, SCR_Func scr_3dfunc, SCR_Func *scr_funcs) return; if (begun) - GL_EndRendering (); + vid.end_rendering (); vr_data.realtime = realtime; @@ -267,7 +267,7 @@ gl_SCR_UpdateScreen (double realtime, SCR_Func scr_3dfunc, SCR_Func *scr_funcs) qfglFlush (); if (gl_finish->int_val) { - GL_EndRendering (); + vid.end_rendering (); begun = 0; } } diff --git a/libs/video/renderer/gl/qfgl_ext.c b/libs/video/renderer/gl/qfgl_ext.c index 34159dd3c..fdb08ce22 100644 --- a/libs/video/renderer/gl/qfgl_ext.c +++ b/libs/video/renderer/gl/qfgl_ext.c @@ -62,7 +62,7 @@ static __attribute__ ((used)) const char rcsid[] = "$Id$"; #include "QF/GL/extensions.h" #include "QF/GL/funcs.h" -#include "r_cvar.h" +#include "r_internal.h" void * @@ -72,7 +72,7 @@ QFGL_ProcAddress (void *handle, const char *name, qboolean crit) Sys_MaskPrintf (SYS_VID, "DEBUG: Finding symbol %s ... ", name); - glfunc = QFGL_GetProcAddress (handle, name); + glfunc = vid.get_proc_address (handle, name); if (glfunc) { Sys_MaskPrintf (SYS_VID, "found [%p]\n", glfunc); return glfunc; @@ -105,7 +105,7 @@ static void *libgl_handle; qboolean GLF_Init (void) { - libgl_handle = QFGL_LoadLibrary (); + libgl_handle = vid.load_library (); return true; } diff --git a/libs/video/renderer/glsl/glsl_screen.c b/libs/video/renderer/glsl/glsl_screen.c index 7c6f8b487..fee1045e8 100644 --- a/libs/video/renderer/glsl/glsl_screen.c +++ b/libs/video/renderer/glsl/glsl_screen.c @@ -167,7 +167,7 @@ glsl_SCR_UpdateScreen (double realtime, SCR_Func scr_3dfunc, if (begun) { begun = 0; - GLSL_EndRendering (); + vid.end_rendering (); } vr_data.realtime = realtime; diff --git a/libs/video/renderer/glsl/qfglsl.c b/libs/video/renderer/glsl/qfglsl.c index 86b9991f3..421d11b9e 100644 --- a/libs/video/renderer/glsl/qfglsl.c +++ b/libs/video/renderer/glsl/qfglsl.c @@ -62,7 +62,7 @@ static __attribute__ ((used)) const char rcsid[] = #include "QF/sys.h" #include "QF/GLSL/funcs.h" -#include "r_cvar.h" +#include "r_internal.h" void * @@ -72,7 +72,7 @@ QFEGL_ProcAddress (void *handle, const char *name, qboolean crit) Sys_MaskPrintf (SYS_VID, "DEBUG: Finding symbol %s ... ", name); - glfunc = QFEGL_GetProcAddress (handle, name); + glfunc = vid.get_proc_address (handle, name); if (glfunc) { Sys_MaskPrintf (SYS_VID, "found [%p]\n", glfunc); return glfunc; @@ -105,7 +105,7 @@ static void *libgl_handle; qboolean EGLF_Init (void) { - libgl_handle = QFEGL_LoadLibrary (); + libgl_handle = vid.load_library (); return true; }