]> de.git.xonotic.org Git - xonotic/darkplaces.git/blobdiff - r_modules.c
Revert "aaahh! let me use the menu, div0!"
[xonotic/darkplaces.git] / r_modules.c
index e3729796bad69bd58f1c884e5fa5292fed3a4d30..8021ade76fb46312c98e327eda819731a6ca02d7 100644 (file)
@@ -1,7 +1,7 @@
 
 #include "quakedef.h"
 
-#define MAXRENDERMODULES 64
+#define MAXRENDERMODULES 20
 
 typedef struct rendermodule_s
 {
@@ -17,7 +17,7 @@ rendermodule_t rendermodule[MAXRENDERMODULES];
 
 void R_Modules_Init(void)
 {
-       Cmd_AddCommand("r_restart", R_Modules_Restart);
+       Cmd_AddCommand("r_restart", R_Modules_Restart, "restarts renderer");
 }
 
 void R_RegisterModule(char *name, void(*start)(void), void(*shutdown)(void), void(*newmap)(void))
@@ -34,7 +34,7 @@ void R_RegisterModule(char *name, void(*start)(void), void(*shutdown)(void), voi
                }
        }
        if (i >= MAXRENDERMODULES)
-               Sys_Error("R_RegisterModule: ran out of renderer module slots (%i)\n", MAXRENDERMODULES);
+               Sys_Error("R_RegisterModule: ran out of renderer module slots (%i)", MAXRENDERMODULES);
        rendermodule[i].active = 0;
        rendermodule[i].name = name;
        rendermodule[i].start = start;
@@ -76,6 +76,7 @@ void R_Modules_Shutdown(void)
 
 void R_Modules_Restart(void)
 {
+       Host_StartVideo();
        Con_Print("restarting renderer\n");
        R_Modules_Shutdown();
        R_Modules_Start();
@@ -84,6 +85,7 @@ void R_Modules_Restart(void)
 void R_Modules_NewMap(void)
 {
        int i;
+       R_SkinFrame_PrepareForPurge();
        for (i = 0;i < MAXRENDERMODULES;i++)
        {
                if (rendermodule[i].name == NULL)
@@ -92,5 +94,6 @@ void R_Modules_NewMap(void)
                        continue;
                rendermodule[i].newmap();
        }
+       R_SkinFrame_Purge();
 }