mirror of
https://github.com/nzp-team/fteqw.git
synced 2024-11-10 22:51:57 +00:00
Added preset video options, which should make things easier for new users, hopefully. Perhaps tweek these at some point.
git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@1336 fc73d0e0-1445-4013-8a0c-d673dee63da5
This commit is contained in:
parent
c890800e0e
commit
ca11c54292
2 changed files with 79 additions and 4 deletions
|
@ -375,19 +375,85 @@ void M_Menu_Particles_f (void)
|
||||||
menu->cursoritem = (menuoption_t*)MC_AddWhiteText(menu, 200, 32, NULL, false);
|
menu->cursoritem = (menuoption_t*)MC_AddWhiteText(menu, 200, 32, NULL, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
enum {
|
||||||
|
PRESET_286,
|
||||||
|
PRESET_FAST,
|
||||||
|
PRESET_DEFAULT,
|
||||||
|
PRESET_NICE,
|
||||||
|
PRESET_REALTIME,
|
||||||
|
PRESET_MAX
|
||||||
|
};
|
||||||
|
typedef struct {
|
||||||
|
char *cvarname;
|
||||||
|
char *value[PRESET_MAX];
|
||||||
|
} presetinfo_t;
|
||||||
|
presetinfo_t preset[] =
|
||||||
|
{
|
||||||
|
{"r_presetname", {"286", "fast", "default", "nice", "realtime"}},
|
||||||
|
{"r_particlesdesc", {"none", "highfps", "spikeset", "spikeset", "spikeset"}},
|
||||||
|
{"r_stains", {"0", "0", "1", "1", "1"}},
|
||||||
|
{"r_drawflat", {"1", "0", "0", "0", "0"}},
|
||||||
|
{"r_nolerp", {"1", "1", "0", "0", "0"}},
|
||||||
|
{"r_nolightdir", {"1", "0", "0", "0", "0"}},
|
||||||
|
{"r_dynamic", {"0", "0", "1", "1", "1"}},
|
||||||
|
{"gl_flashblend", {"0", "1", "0", "1", "2"}},
|
||||||
|
{"gl_bump", {"0", "0", "0", "1", "1"}},
|
||||||
|
{"gl_specular", {"0", "0", "0", "1", "1"}},
|
||||||
|
{"r_loadlit", {"0", "1", "1", "2", "2"}},
|
||||||
|
{"r_fastsky", {"1", "1", "0", "0", "0"}},
|
||||||
|
{"r_waterlayers", {"0", "2", "3", "4", "4"}},
|
||||||
|
{"r_shadows", {"0", "0", "0", "1", "1"}},
|
||||||
|
{"r_shadow_realtime_world",{"0","0", "0", "0", "1"}},
|
||||||
|
{"gl_detail", {"0", "0", "0", "1", "1"}},
|
||||||
|
{"gl_load24bit", {"0", "0", "1", "1", "1"}},
|
||||||
|
{"r_waterwarp", {"0", "2", "1", "1", "1"}},
|
||||||
|
{NULL}
|
||||||
|
};
|
||||||
|
static void ApplyPreset (int presetnum)
|
||||||
|
{
|
||||||
|
int i;
|
||||||
|
for (i = 1; preset[i].cvarname; i++)
|
||||||
|
{
|
||||||
|
Cbuf_AddText(preset[i].cvarname, Cmd_ExecLevel);
|
||||||
|
Cbuf_AddText(" ", Cmd_ExecLevel);
|
||||||
|
Cbuf_AddText(preset[i].value[presetnum], Cmd_ExecLevel);
|
||||||
|
Cbuf_AddText("\n", Cmd_ExecLevel);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
void FPS_Preset_f (void)
|
||||||
|
{
|
||||||
|
char *arg = Cmd_Argv(1);
|
||||||
|
int i;
|
||||||
|
for (i = 0; i < PRESET_MAX; i++)
|
||||||
|
{
|
||||||
|
if (!strcmp(preset[0].value[i], arg))
|
||||||
|
{
|
||||||
|
ApplyPreset(i);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
Con_Printf("Preset %s not recognised\n", arg);
|
||||||
|
Con_Printf("Valid presests:\n");
|
||||||
|
for (i = 0; i < PRESET_MAX; i++)
|
||||||
|
Con_Printf("%s\n", preset[0].value[i]);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
void M_Menu_FPS_f (void)
|
void M_Menu_FPS_f (void)
|
||||||
{
|
{
|
||||||
int y = 32;
|
int y = 32;
|
||||||
menu_t *menu;
|
menu_t *menu;
|
||||||
int mgt;
|
int mgt;
|
||||||
|
int i, len;
|
||||||
#ifdef RGLQUAKE
|
#ifdef RGLQUAKE
|
||||||
extern cvar_t gl_compress, gl_detail, gl_bump, r_flashblend;
|
extern cvar_t gl_compress, gl_detail, gl_bump, r_flashblend;
|
||||||
#endif
|
#endif
|
||||||
#ifdef SWQUAKE
|
#ifdef SWQUAKE
|
||||||
extern cvar_t d_smooth, d_mipscale, d_mipcap;
|
extern cvar_t d_smooth, d_mipscale, d_mipcap;
|
||||||
#endif
|
#endif
|
||||||
extern cvar_t r_stains, r_bloodstains, r_loadlits, r_dynamic, v_contentblend, show_fps;
|
extern cvar_t r_stains, r_bloodstains, r_loadlits, r_dynamic, v_contentblend, show_fps, gl_skyboxname;
|
||||||
|
|
||||||
key_dest = key_menu;
|
key_dest = key_menu;
|
||||||
m_state = m_complex;
|
m_state = m_complex;
|
||||||
|
@ -415,12 +481,18 @@ void M_Menu_FPS_f (void)
|
||||||
|
|
||||||
MC_AddConsoleCommand(menu, 48, y, " Particle Options", "menu_particles\n"); y+=8;
|
MC_AddConsoleCommand(menu, 48, y, " Particle Options", "menu_particles\n"); y+=8;
|
||||||
|
|
||||||
|
for (i = 0; i < PRESET_MAX; i++)
|
||||||
|
{
|
||||||
|
len = strlen(preset[0].value[i]);
|
||||||
|
MC_AddConsoleCommand(menu, 48+8*(9-len), y, va("(preset) %s", preset[0].value[i]), va("fps_preset %s\n", preset[0].value[i])); y+=8;
|
||||||
|
}
|
||||||
MC_AddCheckBox(menu, 48, y, " Show FPS", &show_fps,0);y+=8;
|
MC_AddCheckBox(menu, 48, y, " Show FPS", &show_fps,0);y+=8;
|
||||||
|
|
||||||
MC_AddCheckBox(menu, 48, y, " Content blend", &v_contentblend,0);y+=8;
|
MC_AddCheckBox(menu, 48, y, " Content blend", &v_contentblend,0);y+=8;
|
||||||
MC_AddCheckBox(menu, 48, y, " Dynamic lights", &r_dynamic,0);y+=8;
|
MC_AddCheckBox(menu, 48, y, " Dynamic lights", &r_dynamic,0);y+=8;
|
||||||
MC_AddCheckBox(menu, 48, y, " Stainmaps", &r_stains,0);y+=8;
|
MC_AddCheckBox(menu, 48, y, " Stainmaps", &r_stains,0);y+=8;
|
||||||
|
|
||||||
|
y+=4;MC_AddEditCvar(menu, 48, y, " Skybox", &gl_skyboxname);y+=8;y+=4;
|
||||||
switch(qrenderer)
|
switch(qrenderer)
|
||||||
{
|
{
|
||||||
#ifdef RGLQUAKE
|
#ifdef RGLQUAKE
|
||||||
|
|
|
@ -898,12 +898,15 @@ void M_DeInit_Internal (void)
|
||||||
Cmd_RemoveCommand ("menu_download");
|
Cmd_RemoveCommand ("menu_download");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void FPS_Preset_f(void);
|
||||||
|
|
||||||
//menu.dat is loaded later... after the video and everything is up.
|
//menu.dat is loaded later... after the video and everything is up.
|
||||||
void M_Init (void)
|
void M_Init (void)
|
||||||
{
|
{
|
||||||
M_Init_Internal();
|
M_Init_Internal();
|
||||||
|
|
||||||
Cmd_AddCommand("togglemenu", M_ToggleMenu_f);
|
Cmd_AddCommand("togglemenu", M_ToggleMenu_f);
|
||||||
|
Cmd_AddCommand("fps_preset", FPS_Preset_f);
|
||||||
|
|
||||||
Cvar_Register(&m_helpismedia, "Menu thingumiebobs");
|
Cvar_Register(&m_helpismedia, "Menu thingumiebobs");
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue