From a9326e3ea17080b0cd162cfc706cca29a94ca3d4 Mon Sep 17 00:00:00 2001 From: Lance Date: Sat, 16 Jan 2010 06:16:42 +0000 Subject: [PATCH] Fix for MinGL, and minor menu fixup git-svn-id: https://svn.code.sf.net/p/fteqw/code/trunk@3498 fc73d0e0-1445-4013-8a0c-d673dee63da5 --- engine/client/m_options.c | 16 ++++++++--- engine/client/renderer.c | 60 +++++++++++++++++++++++++++------------ 2 files changed, 54 insertions(+), 22 deletions(-) diff --git a/engine/client/m_options.c b/engine/client/m_options.c index b1ecc94a..c58eb9ea 100644 --- a/engine/client/m_options.c +++ b/engine/client/m_options.c @@ -612,9 +612,10 @@ void M_Menu_3D_f (void) int mgt; int cursorpositionY; //int currentmsaalevel; -#ifdef RGLQUAKE +#ifndef MINIMAL + extern cvar_t gl_shadeq1, gl_shadeq3, r_xflip; #endif - extern cvar_t r_novis, gl_dither, cl_item_bobbing, r_waterwarp, r_nolerp, r_fastsky, gl_shadeq1, gl_shadeq3, gl_nocolors, gl_lerpimages, gl_keeptjunctions, gl_lateswap, r_mirroralpha, r_wateralpha, r_drawviewmodel, r_xflip, gl_maxdist, gl_motionblur, gl_motionblurscale, gl_blend2d, gl_blendsprites, r_flashblend, gl_cshiftenabled; + extern cvar_t r_novis, gl_dither, cl_item_bobbing, r_waterwarp, r_nolerp, r_fastsky, gl_nocolors, gl_lerpimages, gl_keeptjunctions, gl_lateswap, r_mirroralpha, r_wateralpha, r_drawviewmodel, gl_maxdist, gl_motionblur, gl_motionblurscale, gl_blend2d, gl_blendsprites, r_flashblend, gl_cshiftenabled; //static extern cvar_t vid_multisample; key_dest = key_menu; @@ -668,13 +669,17 @@ void M_Menu_3D_f (void) MC_AddCheckBox(menu, 16, y, " Water Warp", &r_waterwarp,0); y+=8; MC_AddCheckBox(menu, 16, y, " Model Interpollation", &r_nolerp,0); y+=8; MC_AddCheckBox(menu, 16, y, " Toggle Sky", &r_fastsky,0); y+=8; + #ifndef MINIMAL MC_AddCheckBox(menu, 16, y, " Q1 Shaders", &gl_shadeq1,0); y+=8; MC_AddCheckBox(menu, 16, y, " Q3 Shaders", &gl_shadeq3,0); y+=8; + #endif MC_AddCheckBox(menu, 16, y, " Lerp Images", &gl_lerpimages,0); y+=8; MC_AddSlider(menu, 16, y, " Maximum Distance", &gl_maxdist,1,8192,128); y+=8; MC_AddCheckBox(menu, 16, y, " GL Swapbuffer Delay", &gl_lateswap,0); y+=8; MC_AddCheckBox(menu, 16, y, " Mirror Reflections", &r_mirroralpha,0); y+=8; + #ifndef MINIMAL MC_AddCheckBox(menu, 16, y, " Flip Horizontal View", &r_xflip,0); y+=8; + #endif MC_AddCheckBox(menu, 16, y, " Water Transparency", &r_wateralpha,0); y+=8; MC_AddSlider(menu, 16, y, " View Model Transparency", &r_drawviewmodel,0,1,0.1); y+=8; MC_AddCheckBox(menu, 16, y, "Ignore Player Model Colors", &gl_nocolors,0); y+=8; @@ -999,9 +1004,10 @@ void M_Menu_Shadow_Lighting_f (void) int mgt; int cursorpositionY; int currentloadlit; -#ifdef RGLQUAKE +#ifndef MINIMAL + extern cvar_t r_vertexlight; #endif - extern cvar_t r_noaliasshadows, r_shadows, r_shadow_realtime_world, r_loadlits, gl_maxshadowlights, r_lightmap_saturation, r_dynamic, r_vertexlight, r_vertexdlights, r_lightstylesmooth, r_lightstylespeed, r_nolightdir, r_shadow_realtime_world_lightmaps, r_shadow_glsl_offsetmapping, r_shadow_glsl_offsetmapping_bias, r_shadow_glsl_offsetmapping_scale, r_shadow_bumpscale_basetexture, r_shadow_bumpscale_bumpmap, r_fb_bmodels, r_fb_models, gl_overbright, r_rocketlight, r_powerupglow, v_powerupshell, r_lightflicker, r_explosionlight; + extern cvar_t r_noaliasshadows, r_shadows, r_shadow_realtime_world, r_loadlits, gl_maxshadowlights, r_lightmap_saturation, r_dynamic, r_vertexdlights, r_lightstylesmooth, r_lightstylespeed, r_nolightdir, r_shadow_realtime_world_lightmaps, r_shadow_glsl_offsetmapping, r_shadow_glsl_offsetmapping_bias, r_shadow_glsl_offsetmapping_scale, r_shadow_bumpscale_basetexture, r_shadow_bumpscale_bumpmap, r_fb_bmodels, r_fb_models, gl_overbright, r_rocketlight, r_powerupglow, v_powerupshell, r_lightflicker, r_explosionlight; static const char *loadlitoptions[] = { @@ -1049,7 +1055,9 @@ void M_Menu_Shadow_Lighting_f (void) //MC_AddSlider(menu, 16, y, " Light Map Mode", &gl_lightmapmode,0,2,1); y+=8; MC_AddSlider(menu, 16, y, " Light Map Saturation", &r_lightmap_saturation,0,1,0.1); y+=8; MC_AddCheckBox(menu, 16, y, " Dynamic Lighting", &r_dynamic,0); y+=8; + #ifndef MINIMAL MC_AddCheckBox(menu, 16, y, " Vertex Lighting", &r_vertexlight,0); y+=8; + #endif MC_AddCheckBox(menu, 16, y, " Dynamic Vertex Lights", &r_vertexdlights,0); y+=8; MC_AddCheckBox(menu, 16, y, " Lightstyle Smoothing", &r_lightstylesmooth,0); y+=8; MC_AddSlider(menu, 16, y, " Lightstyle Animation Speed", &r_lightstylespeed,0,50,1); y+=8; diff --git a/engine/client/renderer.c b/engine/client/renderer.c index b5801feb..719d69b0 100644 --- a/engine/client/renderer.c +++ b/engine/client/renderer.c @@ -1247,6 +1247,8 @@ void M_Menu_Video_f (void) extern cvar_t _vid_wait_override; int i, y; + int mgt; + int cursorpositionY; prefabmode = -1; prefab2dmode = -1; for (i = 0; i < sizeof(vid_modes)/sizeof(vidmode_t); i++) @@ -1345,25 +1347,46 @@ void M_Menu_Video_f (void) sprintf(colordepth,"%sbit", vid_bpp.string); - MC_AddCenterPicture(menu, 4, "vidmodes"); + mgt = M_GameType(); - y = 32; + if (mgt == MGT_QUAKE2) + { + MC_AddCenterPicture(menu, 4, "pics/m_banner_options"); + y = 0; + cursorpositionY = 120; + } + else if (mgt == MGT_HEXEN2) + { + MC_AddPicture(menu, 16, 0, "gfx/menu/hplaque.lmp"); + MC_AddCenterPicture(menu, 0, "gfx/menu/title7.lmp"); + y = 25; + cursorpositionY = 145; + } + else + { + MC_AddPicture(menu, 16, 4, "gfx/qplaque.lmp"); + MC_AddCenterPicture(menu, 4, "gfx/p_option.lmp"); + y = 0; + cursorpositionY = 120; + } - MC_AddRedText(menu, 0, y, " Current Renderer", false); - MC_AddRedText(menu, 180, y, rendererstring, false); y+=8; - MC_AddRedText(menu, 0, y, " Current Color Depth", false); - MC_AddRedText(menu, 180, y, colordepth, false); y+=8; - MC_AddRedText(menu, 0, y, " Current 3D Res", false); - MC_AddRedText(menu, 180, y, current3dres, false); y+=8; - MC_AddRedText(menu, 0, y, " Current 3D A/R", false); - MC_AddRedText(menu, 180, y, aspectratio23d, false); y+=8; - MC_AddRedText(menu, 0, y, " Current 2D Res", false); - MC_AddRedText(menu, 180, y, current2dres, false); y+=8; - MC_AddRedText(menu, 0, y, " Current 2D A/R", false); - MC_AddRedText(menu, 180, y, aspectratio22d, false); y+=8; - MC_AddRedText(menu, 0, y, "Current Refresh Rate", false); - MC_AddRedText(menu, 180, y, currenthz, false); y+=8; - MC_AddRedText(menu, 0, y, "---------------------------------------------", false); y+=8; + y += 40; + MC_AddRedText(menu, 0, y, " Current Renderer", false); + MC_AddRedText(menu, 225, y, rendererstring, false); y+=8; + MC_AddRedText(menu, 0, y, " Current Color Depth", false); + MC_AddRedText(menu, 225, y, colordepth, false); y+=8; + MC_AddRedText(menu, 0, y, " Current 3D Res", false); + MC_AddRedText(menu, 225, y, current3dres, false); y+=8; + MC_AddRedText(menu, 0, y, " Current 3D A/R", false); + MC_AddRedText(menu, 225, y, aspectratio23d, false); y+=8; + MC_AddRedText(menu, 0, y, " Current 2D Res", false); + MC_AddRedText(menu, 225, y, current2dres, false); y+=8; + MC_AddRedText(menu, 0, y, " Current 2D A/R", false); + MC_AddRedText(menu, 225, y, aspectratio22d, false); y+=8; + MC_AddRedText(menu, 0, y, " Current Refresh Rate", false); + MC_AddRedText(menu, 225, y, currenthz, false); y+=8; + y+=8; + MC_AddRedText(menu, 0, y, " €‚ ", false); y+=8; y+=8; info->renderer = MC_AddCombo(menu, 16, y, " Renderer", rendererops, i); y+=8; info->bppcombo = MC_AddCombo(menu, 16, y, " Color Depth", bppnames, currentbpp); y+=8; @@ -1377,6 +1400,7 @@ void M_Menu_Video_f (void) y+=4;info->customheight = MC_AddEdit(menu, 16, y, " Custom height", vid_height.string); y+=12; info->vsynccombo = MC_AddCombo(menu, 16, y, " VSync", vsyncoptions, currentvsync); y+=8; //MC_AddCheckBox(menu, 16, y, " Override VSync", &_vid_wait_override,0); y+=8; + MC_AddCheckBox(menu, 16, y, " Desktop Settings", &vid_desktopsettings,0); y+=8; y+=8; MC_AddCommand(menu, 16, y, "= Apply Changes =", M_VideoApply); y+=8; y+=8; @@ -1392,7 +1416,7 @@ void M_Menu_Video_f (void) MC_AddCheckBox(menu, 16, y, " Allow ModeX", &vid_allow_modex,0); y+=8; MC_AddCheckBox(menu, 16, y, " Windowed Mouse", &_windowed_mouse,0); y+=8; - menu->cursoritem = (menuoption_t*)MC_AddWhiteText(menu, 152, 32, NULL, false); + menu->cursoritem = (menuoption_t*)MC_AddWhiteText(menu, 152, cursorpositionY, NULL, false); menu->selecteditem = (union menuoption_s *)info->renderer; menu->event = CheckCustomMode; }