mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2025-05-30 16:30:43 +00:00
[renderer] Continue the job of merging SCR_UpdateScreen
I think this is probably as merged as it will get (though the update callbacks can probably do with some merging).
This commit is contained in:
parent
88d48944cb
commit
6e636a27d0
20 changed files with 63 additions and 121 deletions
|
@ -130,9 +130,6 @@ typedef struct vid_render_funcs_s {
|
||||||
void (*Draw_SubPic) (int x, int y, qpic_t *pic, int srcx, int srcy, int width, int height);
|
void (*Draw_SubPic) (int x, int y, qpic_t *pic, int srcx, int srcy, int width, int height);
|
||||||
|
|
||||||
|
|
||||||
// scr_funcs is a null terminated array
|
|
||||||
void (*SCR_UpdateScreen) (double realtime, SCR_Func scr_3dfunc,
|
|
||||||
SCR_Func *scr_funcs);
|
|
||||||
void (*SCR_DrawRam) (void);
|
void (*SCR_DrawRam) (void);
|
||||||
void (*SCR_DrawTurtle) (void);
|
void (*SCR_DrawTurtle) (void);
|
||||||
void (*SCR_DrawPause) (void);
|
void (*SCR_DrawPause) (void);
|
||||||
|
@ -146,6 +143,7 @@ typedef struct vid_render_funcs_s {
|
||||||
void (*Fog_ParseWorldspawn) (struct plitem_s *worldspawn);
|
void (*Fog_ParseWorldspawn) (struct plitem_s *worldspawn);
|
||||||
|
|
||||||
void (*R_Init) (void);
|
void (*R_Init) (void);
|
||||||
|
void (*R_RenderFrame) (SCR_Func scr_3dfunc, SCR_Func *scr_funcs);
|
||||||
void (*R_ClearState) (void);
|
void (*R_ClearState) (void);
|
||||||
void (*R_LoadSkys) (const char *);
|
void (*R_LoadSkys) (const char *);
|
||||||
void (*R_NewMap) (model_t *worldmodel, model_t **models, int num_models);
|
void (*R_NewMap) (model_t *worldmodel, model_t **models, int num_models);
|
||||||
|
|
|
@ -35,6 +35,9 @@ void SCR_Init_Cvars (void);
|
||||||
void SCR_Init (void);
|
void SCR_Init (void);
|
||||||
|
|
||||||
typedef void (*SCR_Func)(void);
|
typedef void (*SCR_Func)(void);
|
||||||
|
// scr_funcs is a null terminated array
|
||||||
|
void SCR_UpdateScreen (double realtime, SCR_Func scr_3dfunc,
|
||||||
|
SCR_Func *scr_funcs);
|
||||||
|
|
||||||
void SCR_SizeUp (void);
|
void SCR_SizeUp (void);
|
||||||
void SCR_SizeDown (void);
|
void SCR_SizeDown (void);
|
||||||
|
|
|
@ -44,7 +44,7 @@ void gl_R_Init (void);
|
||||||
void glsl_R_Init (void);
|
void glsl_R_Init (void);
|
||||||
void sw_R_Init (void);
|
void sw_R_Init (void);
|
||||||
void sw32_R_Init (void);
|
void sw32_R_Init (void);
|
||||||
|
void R_RenderFrame (SCR_Func scr_3dfunc, SCR_Func *scr_funcs);
|
||||||
void R_Init_Cvars (void);
|
void R_Init_Cvars (void);
|
||||||
void R_InitEfrags (void);
|
void R_InitEfrags (void);
|
||||||
void R_ClearState (void);
|
void R_ClearState (void);
|
||||||
|
|
|
@ -188,37 +188,23 @@ SCR_TileClear (void)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
SCR_UpdateScreen
|
|
||||||
|
|
||||||
This is called every frame, and can also be called explicitly to flush
|
|
||||||
text to the screen.
|
|
||||||
|
|
||||||
WARNING: be very careful calling this from elsewhere, because the refresh
|
|
||||||
needs almost the entire 256k of stack space!
|
|
||||||
*/
|
|
||||||
void
|
void
|
||||||
gl_SCR_UpdateScreen (double realtime, SCR_Func scr_3dfunc, SCR_Func *scr_funcs)
|
gl_R_RenderFrame (SCR_Func scr_3dfunc, SCR_Func *scr_funcs)
|
||||||
{
|
{
|
||||||
double time1 = 0, time2;
|
double time1 = 0, time2;
|
||||||
static int begun = 0;
|
static int begun = 0;
|
||||||
|
|
||||||
if (scr_skipupdate)
|
if (begun) {
|
||||||
return;
|
|
||||||
|
|
||||||
if (begun)
|
|
||||||
gl_ctx->end_rendering ();
|
gl_ctx->end_rendering ();
|
||||||
|
begun = 0;
|
||||||
vr_data.realtime = realtime;
|
}
|
||||||
|
|
||||||
vid.numpages = 2 + gl_triplebuffer->int_val;
|
vid.numpages = 2 + gl_triplebuffer->int_val;
|
||||||
|
|
||||||
scr_copytop = 0;
|
//FIXME forces the status bar to redraw. needed because it does not fully
|
||||||
|
//update in sw modes but must in gl mode
|
||||||
vr_data.scr_copyeverything = 1;
|
vr_data.scr_copyeverything = 1;
|
||||||
|
|
||||||
if (!scr_initialized)
|
|
||||||
return; // not initialized yet
|
|
||||||
|
|
||||||
begun = 1;
|
begun = 1;
|
||||||
|
|
||||||
if (r_speeds->int_val) {
|
if (r_speeds->int_val) {
|
||||||
|
@ -227,14 +213,6 @@ gl_SCR_UpdateScreen (double realtime, SCR_Func scr_3dfunc, SCR_Func *scr_funcs)
|
||||||
gl_c_alias_polys = 0;
|
gl_c_alias_polys = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (oldfov != scr_fov->value) { // determine size of refresh window
|
|
||||||
oldfov = scr_fov->value;
|
|
||||||
vid.recalc_refdef = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (vid.recalc_refdef)
|
|
||||||
SCR_CalcRefdef ();
|
|
||||||
|
|
||||||
// do 3D refresh drawing, and then update the screen
|
// do 3D refresh drawing, and then update the screen
|
||||||
scr_3dfunc ();
|
scr_3dfunc ();
|
||||||
|
|
||||||
|
|
|
@ -69,7 +69,7 @@
|
||||||
#define SCR_CaptureBGR gl_SCR_CaptureBGR
|
#define SCR_CaptureBGR gl_SCR_CaptureBGR
|
||||||
#define SCR_ScreenShot gl_SCR_ScreenShot
|
#define SCR_ScreenShot gl_SCR_ScreenShot
|
||||||
#define SCR_ScreenShot_f gl_SCR_ScreenShot_f
|
#define SCR_ScreenShot_f gl_SCR_ScreenShot_f
|
||||||
#define SCR_UpdateScreen gl_SCR_UpdateScreen
|
#define R_RenderFrame gl_R_RenderFrame
|
||||||
#define c_alias_polys gl_c_alias_polys
|
#define c_alias_polys gl_c_alias_polys
|
||||||
#define c_brush_polys gl_c_brush_polys
|
#define c_brush_polys gl_c_brush_polys
|
||||||
#define r_easter_eggs_f gl_r_easter_eggs_f
|
#define r_easter_eggs_f gl_r_easter_eggs_f
|
||||||
|
@ -125,7 +125,7 @@
|
||||||
#undef SCR_CaptureBGR
|
#undef SCR_CaptureBGR
|
||||||
#undef SCR_ScreenShot
|
#undef SCR_ScreenShot
|
||||||
#undef SCR_ScreenShot_f
|
#undef SCR_ScreenShot_f
|
||||||
#undef SCR_UpdateScreen
|
#undef R_RenderFrame
|
||||||
#undef c_alias_polys
|
#undef c_alias_polys
|
||||||
#undef c_brush_polys
|
#undef c_brush_polys
|
||||||
#undef r_easter_eggs_f
|
#undef r_easter_eggs_f
|
||||||
|
|
|
@ -155,8 +155,7 @@ SCR_TileClear (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
glsl_SCR_UpdateScreen (double realtime, SCR_Func scr_3dfunc,
|
glsl_R_RenderFrame (SCR_Func scr_3dfunc, SCR_Func *scr_funcs)
|
||||||
SCR_Func *scr_funcs)
|
|
||||||
{
|
{
|
||||||
static int begun = 0;
|
static int begun = 0;
|
||||||
|
|
||||||
|
@ -169,23 +168,14 @@ glsl_SCR_UpdateScreen (double realtime, SCR_Func scr_3dfunc,
|
||||||
glsl_ctx->end_rendering ();
|
glsl_ctx->end_rendering ();
|
||||||
}
|
}
|
||||||
|
|
||||||
vr_data.realtime = realtime;
|
|
||||||
vr_data.scr_copyeverything = 1;
|
|
||||||
//FIXME useless cvar? vid.numpages = 2 + gl_triplebuffer->int_val;
|
//FIXME useless cvar? vid.numpages = 2 + gl_triplebuffer->int_val;
|
||||||
|
|
||||||
if (!scr_initialized)
|
|
||||||
return;
|
|
||||||
|
|
||||||
qfeglClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
qfeglClear (GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
|
||||||
|
|
||||||
begun = 1;
|
begun = 1;
|
||||||
|
//FIXME forces the status bar to redraw. needed because it does not fully
|
||||||
if (oldfov != scr_fov->value) {
|
//update in sw modes but must in glsl mode
|
||||||
oldfov = scr_fov->value;
|
vr_data.scr_copyeverything = 1;
|
||||||
vid.recalc_refdef = true;
|
|
||||||
}
|
|
||||||
if (vid.recalc_refdef)
|
|
||||||
SCR_CalcRefdef ();
|
|
||||||
|
|
||||||
scr_3dfunc ();
|
scr_3dfunc ();
|
||||||
|
|
||||||
|
|
|
@ -72,7 +72,7 @@
|
||||||
#define SCR_CaptureBGR glsl_SCR_CaptureBGR
|
#define SCR_CaptureBGR glsl_SCR_CaptureBGR
|
||||||
#define SCR_ScreenShot glsl_SCR_ScreenShot
|
#define SCR_ScreenShot glsl_SCR_ScreenShot
|
||||||
#define SCR_ScreenShot_f glsl_SCR_ScreenShot_f
|
#define SCR_ScreenShot_f glsl_SCR_ScreenShot_f
|
||||||
#define SCR_UpdateScreen glsl_SCR_UpdateScreen
|
#define R_RenderFrame glsl_R_RenderFrame
|
||||||
#define c_alias_polys glsl_c_alias_polys
|
#define c_alias_polys glsl_c_alias_polys
|
||||||
#define c_brush_polys glsl_c_brush_polys
|
#define c_brush_polys glsl_c_brush_polys
|
||||||
#define r_easter_eggs_f glsl_r_easter_eggs_f
|
#define r_easter_eggs_f glsl_r_easter_eggs_f
|
||||||
|
@ -128,7 +128,7 @@
|
||||||
#undef SCR_CaptureBGR
|
#undef SCR_CaptureBGR
|
||||||
#undef SCR_ScreenShot
|
#undef SCR_ScreenShot
|
||||||
#undef SCR_ScreenShot_f
|
#undef SCR_ScreenShot_f
|
||||||
#undef SCR_UpdateScreen
|
#undef R_RenderFrame
|
||||||
#undef c_alias_polys
|
#undef c_alias_polys
|
||||||
#undef c_brush_polys
|
#undef c_brush_polys
|
||||||
#undef r_easter_eggs_f
|
#undef r_easter_eggs_f
|
||||||
|
|
|
@ -170,6 +170,37 @@ SCR_CalcRefdef (void)
|
||||||
vr_funcs->R_ViewChanged (vid.aspect);
|
vr_funcs->R_ViewChanged (vid.aspect);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
SCR_UpdateScreen
|
||||||
|
|
||||||
|
This is called every frame, and can also be called explicitly to flush
|
||||||
|
text to the screen.
|
||||||
|
|
||||||
|
WARNING: be very careful calling this from elsewhere, because the refresh
|
||||||
|
needs almost the entire 256k of stack space!
|
||||||
|
*/
|
||||||
|
void
|
||||||
|
SCR_UpdateScreen (double realtime, SCR_Func scr_3dfunc, SCR_Func *scr_funcs)
|
||||||
|
{
|
||||||
|
if (scr_skipupdate || !scr_initialized) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
vr_data.realtime = realtime;
|
||||||
|
scr_copytop = vr_data.scr_copyeverything = 0;
|
||||||
|
|
||||||
|
if (oldfov != scr_fov->value) {
|
||||||
|
oldfov = scr_fov->value;
|
||||||
|
vid.recalc_refdef = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (vid.recalc_refdef) {
|
||||||
|
SCR_CalcRefdef ();
|
||||||
|
}
|
||||||
|
|
||||||
|
vr_funcs->R_RenderFrame (scr_3dfunc, scr_funcs);
|
||||||
|
}
|
||||||
|
|
||||||
float
|
float
|
||||||
CalcFov (float fov_x, float width, float height)
|
CalcFov (float fov_x, float width, float height)
|
||||||
{
|
{
|
||||||
|
|
|
@ -178,39 +178,11 @@ SCR_ScreenShot_f (void)
|
||||||
dstring_delete (pcxname);
|
dstring_delete (pcxname);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
SCR_UpdateScreen
|
|
||||||
|
|
||||||
This is called every frame, and can also be called explicitly to flush
|
|
||||||
text to the screen.
|
|
||||||
|
|
||||||
WARNING: be very careful calling this from elsewhere, because the refresh
|
|
||||||
needs almost the entire 256k of stack space!
|
|
||||||
*/
|
|
||||||
void
|
void
|
||||||
SCR_UpdateScreen (double realtime, SCR_Func scr_3dfunc, SCR_Func *scr_funcs)
|
R_RenderFrame (SCR_Func scr_3dfunc, SCR_Func *scr_funcs)
|
||||||
{
|
{
|
||||||
vrect_t vrect;
|
vrect_t vrect;
|
||||||
|
|
||||||
if (scr_skipupdate)
|
|
||||||
return;
|
|
||||||
|
|
||||||
vr_data.realtime = realtime;
|
|
||||||
|
|
||||||
scr_copytop = 0;
|
|
||||||
vr_data.scr_copyeverything = 0;
|
|
||||||
|
|
||||||
if (!scr_initialized)
|
|
||||||
return; // not initialized yet
|
|
||||||
|
|
||||||
if (oldfov != scr_fov->value) { // determine size of refresh window
|
|
||||||
oldfov = scr_fov->value;
|
|
||||||
vid.recalc_refdef = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (vid.recalc_refdef)
|
|
||||||
SCR_CalcRefdef ();
|
|
||||||
|
|
||||||
// do 3D refresh drawing, and then update the screen
|
// do 3D refresh drawing, and then update the screen
|
||||||
D_EnableBackBufferAccess (); // of all overlay stuff if drawing
|
D_EnableBackBufferAccess (); // of all overlay stuff if drawing
|
||||||
// directly
|
// directly
|
||||||
|
|
|
@ -110,7 +110,7 @@
|
||||||
#define SCR_CaptureBGR sw32_SCR_CaptureBGR
|
#define SCR_CaptureBGR sw32_SCR_CaptureBGR
|
||||||
#define SCR_ScreenShot sw32_SCR_ScreenShot
|
#define SCR_ScreenShot sw32_SCR_ScreenShot
|
||||||
#define SCR_ScreenShot_f sw32_SCR_ScreenShot_f
|
#define SCR_ScreenShot_f sw32_SCR_ScreenShot_f
|
||||||
#define SCR_UpdateScreen sw32_SCR_UpdateScreen
|
#define R_RenderFrame sw32_R_RenderFrame
|
||||||
#define TransformVector sw32_TransformVector
|
#define TransformVector sw32_TransformVector
|
||||||
#define Turbulent sw32_Turbulent
|
#define Turbulent sw32_Turbulent
|
||||||
#define acolormap sw32_acolormap
|
#define acolormap sw32_acolormap
|
||||||
|
@ -351,7 +351,7 @@ extern struct surf_s *sw32_surfaces;
|
||||||
#undef SCR_CaptureBGR
|
#undef SCR_CaptureBGR
|
||||||
#undef SCR_ScreenShot
|
#undef SCR_ScreenShot
|
||||||
#undef SCR_ScreenShot_f
|
#undef SCR_ScreenShot_f
|
||||||
#undef SCR_UpdateScreen
|
#undef R_RenderFrame
|
||||||
#undef TransformVector
|
#undef TransformVector
|
||||||
#undef Turbulent
|
#undef Turbulent
|
||||||
#undef VID_InitBuffers
|
#undef VID_InitBuffers
|
||||||
|
|
|
@ -136,39 +136,11 @@ sw32_SCR_ScreenShot_f (void)
|
||||||
dstring_delete (pcxname);
|
dstring_delete (pcxname);
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
|
||||||
SCR_UpdateScreen
|
|
||||||
|
|
||||||
This is called every frame, and can also be called explicitly to flush
|
|
||||||
text to the screen.
|
|
||||||
|
|
||||||
WARNING: be very careful calling this from elsewhere, because the refresh
|
|
||||||
needs almost the entire 256k of stack space!
|
|
||||||
*/
|
|
||||||
void
|
void
|
||||||
sw32_SCR_UpdateScreen (double realtime, SCR_Func scr_3dfunc, SCR_Func *scr_funcs)
|
sw32_R_RenderFrame (SCR_Func scr_3dfunc, SCR_Func *scr_funcs)
|
||||||
{
|
{
|
||||||
vrect_t vrect;
|
vrect_t vrect;
|
||||||
|
|
||||||
if (scr_skipupdate)
|
|
||||||
return;
|
|
||||||
|
|
||||||
vr_data.realtime = realtime;
|
|
||||||
|
|
||||||
scr_copytop = 0;
|
|
||||||
vr_data.scr_copyeverything = 0;
|
|
||||||
|
|
||||||
if (!scr_initialized)
|
|
||||||
return; // not initialized yet
|
|
||||||
|
|
||||||
if (oldfov != scr_fov->value) { // determine size of refresh window
|
|
||||||
oldfov = scr_fov->value;
|
|
||||||
vid.recalc_refdef = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (vid.recalc_refdef)
|
|
||||||
SCR_CalcRefdef ();
|
|
||||||
|
|
||||||
// do 3D refresh drawing, and then update the screen
|
// do 3D refresh drawing, and then update the screen
|
||||||
sw32_D_EnableBackBufferAccess (); // of all overlay stuff if drawing
|
sw32_D_EnableBackBufferAccess (); // of all overlay stuff if drawing
|
||||||
// directly
|
// directly
|
||||||
|
|
|
@ -93,7 +93,6 @@ vid_render_funcs_t gl_vid_render_funcs = {
|
||||||
gl_Draw_Picf,
|
gl_Draw_Picf,
|
||||||
gl_Draw_SubPic,
|
gl_Draw_SubPic,
|
||||||
|
|
||||||
gl_SCR_UpdateScreen,
|
|
||||||
SCR_DrawRam,
|
SCR_DrawRam,
|
||||||
SCR_DrawTurtle,
|
SCR_DrawTurtle,
|
||||||
SCR_DrawPause,
|
SCR_DrawPause,
|
||||||
|
@ -105,6 +104,7 @@ vid_render_funcs_t gl_vid_render_funcs = {
|
||||||
gl_Fog_ParseWorldspawn,
|
gl_Fog_ParseWorldspawn,
|
||||||
|
|
||||||
gl_R_Init,
|
gl_R_Init,
|
||||||
|
gl_R_RenderFrame,
|
||||||
gl_R_ClearState,
|
gl_R_ClearState,
|
||||||
gl_R_LoadSkys,
|
gl_R_LoadSkys,
|
||||||
gl_R_NewMap,
|
gl_R_NewMap,
|
||||||
|
|
|
@ -93,7 +93,6 @@ vid_render_funcs_t glsl_vid_render_funcs = {
|
||||||
glsl_Draw_Picf,
|
glsl_Draw_Picf,
|
||||||
glsl_Draw_SubPic,
|
glsl_Draw_SubPic,
|
||||||
|
|
||||||
glsl_SCR_UpdateScreen,
|
|
||||||
SCR_DrawRam,
|
SCR_DrawRam,
|
||||||
SCR_DrawTurtle,
|
SCR_DrawTurtle,
|
||||||
SCR_DrawPause,
|
SCR_DrawPause,
|
||||||
|
@ -105,6 +104,7 @@ vid_render_funcs_t glsl_vid_render_funcs = {
|
||||||
glsl_Fog_ParseWorldspawn,
|
glsl_Fog_ParseWorldspawn,
|
||||||
|
|
||||||
glsl_R_Init,
|
glsl_R_Init,
|
||||||
|
glsl_R_RenderFrame,
|
||||||
glsl_R_ClearState,
|
glsl_R_ClearState,
|
||||||
glsl_R_LoadSkys,
|
glsl_R_LoadSkys,
|
||||||
glsl_R_NewMap,
|
glsl_R_NewMap,
|
||||||
|
|
|
@ -86,7 +86,6 @@ vid_render_funcs_t sw_vid_render_funcs = {
|
||||||
Draw_Picf,
|
Draw_Picf,
|
||||||
Draw_SubPic,
|
Draw_SubPic,
|
||||||
|
|
||||||
SCR_UpdateScreen,
|
|
||||||
SCR_DrawRam,
|
SCR_DrawRam,
|
||||||
SCR_DrawTurtle,
|
SCR_DrawTurtle,
|
||||||
SCR_DrawPause,
|
SCR_DrawPause,
|
||||||
|
@ -98,6 +97,7 @@ vid_render_funcs_t sw_vid_render_funcs = {
|
||||||
0,
|
0,
|
||||||
|
|
||||||
sw_R_Init,
|
sw_R_Init,
|
||||||
|
R_RenderFrame,
|
||||||
R_ClearState,
|
R_ClearState,
|
||||||
R_LoadSkys,
|
R_LoadSkys,
|
||||||
R_NewMap,
|
R_NewMap,
|
||||||
|
|
|
@ -91,7 +91,6 @@ vid_render_funcs_t sw32_vid_render_funcs = {
|
||||||
sw32_Draw_Picf,
|
sw32_Draw_Picf,
|
||||||
sw32_Draw_SubPic,
|
sw32_Draw_SubPic,
|
||||||
|
|
||||||
sw32_SCR_UpdateScreen,
|
|
||||||
SCR_DrawRam,
|
SCR_DrawRam,
|
||||||
SCR_DrawTurtle,
|
SCR_DrawTurtle,
|
||||||
SCR_DrawPause,
|
SCR_DrawPause,
|
||||||
|
@ -103,6 +102,7 @@ vid_render_funcs_t sw32_vid_render_funcs = {
|
||||||
0,
|
0,
|
||||||
|
|
||||||
sw32_R_Init,
|
sw32_R_Init,
|
||||||
|
sw32_R_RenderFrame,
|
||||||
sw32_R_ClearState,
|
sw32_R_ClearState,
|
||||||
sw32_R_LoadSkys,
|
sw32_R_LoadSkys,
|
||||||
sw32_R_NewMap,
|
sw32_R_NewMap,
|
||||||
|
|
|
@ -105,7 +105,7 @@ vulkan_R_Init (void)
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
vulkan_SCR_UpdateScreen (double time, void (*f)(void), void (**g)(void))
|
vulkan_R_RenderFrame (void (*f)(void), void (**g)(void))
|
||||||
{
|
{
|
||||||
static int count = 0;
|
static int count = 0;
|
||||||
static double startTime;
|
static double startTime;
|
||||||
|
@ -324,7 +324,6 @@ vid_render_funcs_t vulkan_vid_render_funcs = {
|
||||||
vulkan_Draw_Picf,
|
vulkan_Draw_Picf,
|
||||||
vulkan_Draw_SubPic,
|
vulkan_Draw_SubPic,
|
||||||
|
|
||||||
vulkan_SCR_UpdateScreen,
|
|
||||||
SCR_DrawRam,
|
SCR_DrawRam,
|
||||||
SCR_DrawTurtle,
|
SCR_DrawTurtle,
|
||||||
SCR_DrawPause,
|
SCR_DrawPause,
|
||||||
|
@ -336,6 +335,7 @@ vid_render_funcs_t vulkan_vid_render_funcs = {
|
||||||
0,//vulkan_Fog_ParseWorldspawn,
|
0,//vulkan_Fog_ParseWorldspawn,
|
||||||
|
|
||||||
vulkan_R_Init,
|
vulkan_R_Init,
|
||||||
|
vulkan_R_RenderFrame,
|
||||||
0,//vulkan_R_ClearState,
|
0,//vulkan_R_ClearState,
|
||||||
0,//vulkan_R_LoadSkys,
|
0,//vulkan_R_LoadSkys,
|
||||||
0,//vulkan_R_NewMap,
|
0,//vulkan_R_NewMap,
|
||||||
|
|
|
@ -72,7 +72,6 @@
|
||||||
#define SCR_CaptureBGR vulkan_SCR_CaptureBGR
|
#define SCR_CaptureBGR vulkan_SCR_CaptureBGR
|
||||||
#define SCR_ScreenShot vulkan_SCR_ScreenShot
|
#define SCR_ScreenShot vulkan_SCR_ScreenShot
|
||||||
#define SCR_ScreenShot_f vulkan_SCR_ScreenShot_f
|
#define SCR_ScreenShot_f vulkan_SCR_ScreenShot_f
|
||||||
#define SCR_UpdateScreen vulkan_SCR_UpdateScreen
|
|
||||||
#define c_alias_polys vulkan_c_alias_polys
|
#define c_alias_polys vulkan_c_alias_polys
|
||||||
#define c_brush_polys vulkan_c_brush_polys
|
#define c_brush_polys vulkan_c_brush_polys
|
||||||
#define r_easter_eggs_f vulkan_r_easter_eggs_f
|
#define r_easter_eggs_f vulkan_r_easter_eggs_f
|
||||||
|
@ -128,7 +127,6 @@
|
||||||
#undef SCR_CaptureBGR
|
#undef SCR_CaptureBGR
|
||||||
#undef SCR_ScreenShot
|
#undef SCR_ScreenShot
|
||||||
#undef SCR_ScreenShot_f
|
#undef SCR_ScreenShot_f
|
||||||
#undef SCR_UpdateScreen
|
|
||||||
#undef c_alias_polys
|
#undef c_alias_polys
|
||||||
#undef c_brush_polys
|
#undef c_brush_polys
|
||||||
#undef r_easter_eggs_f
|
#undef r_easter_eggs_f
|
||||||
|
|
|
@ -146,5 +146,5 @@ CL_UpdateScreen (double realtime)
|
||||||
scr_funcs_normal[3] = r_funcs->SCR_DrawPause;
|
scr_funcs_normal[3] = r_funcs->SCR_DrawPause;
|
||||||
|
|
||||||
V_PrepBlend ();
|
V_PrepBlend ();
|
||||||
r_funcs->SCR_UpdateScreen (realtime, V_RenderView, scr_funcs[index]);
|
SCR_UpdateScreen (realtime, V_RenderView, scr_funcs[index]);
|
||||||
}
|
}
|
||||||
|
|
|
@ -147,5 +147,5 @@ CL_UpdateScreen (double realtime)
|
||||||
scr_funcs_normal[3] = r_funcs->SCR_DrawPause;
|
scr_funcs_normal[3] = r_funcs->SCR_DrawPause;
|
||||||
|
|
||||||
V_PrepBlend ();
|
V_PrepBlend ();
|
||||||
r_funcs->SCR_UpdateScreen (realtime, V_RenderView, scr_funcs[index]);
|
SCR_UpdateScreen (realtime, V_RenderView, scr_funcs[index]);
|
||||||
}
|
}
|
||||||
|
|
|
@ -127,7 +127,7 @@ bi_refresh (progs_t *pr)
|
||||||
IN_ProcessEvents ();
|
IN_ProcessEvents ();
|
||||||
//GIB_Thread_Execute ();
|
//GIB_Thread_Execute ();
|
||||||
Cbuf_Execute_Stack (qwaq_cbuf);
|
Cbuf_Execute_Stack (qwaq_cbuf);
|
||||||
r_funcs->SCR_UpdateScreen (con_realtime, bi_3d, bi_2dfuncs);
|
SCR_UpdateScreen (con_realtime, bi_3d, bi_2dfuncs);
|
||||||
R_FLOAT (pr) = con_frametime;
|
R_FLOAT (pr) = con_frametime;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue