diff --git a/src/client/menu/videomenu.c b/src/client/menu/videomenu.c index 67076273..588f27f0 100644 --- a/src/client/menu/videomenu.c +++ b/src/client/menu/videomenu.c @@ -42,7 +42,7 @@ extern cvar_t *vid_gamma; extern cvar_t *vid_fullscreen; extern cvar_t *vid_renderer; static cvar_t *r_vsync; -static cvar_t *r_anisotropic; +static cvar_t *gl_anisotropic; static cvar_t *gl_msaa_samples; static menuframework_s s_opengl_menu; @@ -126,11 +126,11 @@ AnisotropicCallback(void *s) if (list->curvalue == 0) { - Cvar_SetValue("r_anisotropic", 0); + Cvar_SetValue("gl_anisotropic", 0); } else { - Cvar_SetValue("r_anisotropic", pow(2, list->curvalue)); + Cvar_SetValue("gl_anisotropic", pow(2, list->curvalue)); } } @@ -362,9 +362,9 @@ VID_MenuInit(void) r_vsync = Cvar_Get("r_vsync", "1", CVAR_ARCHIVE); } - if (!r_anisotropic) + if (!gl_anisotropic) { - r_anisotropic = Cvar_Get("r_anisotropic", "0", CVAR_ARCHIVE); + gl_anisotropic = Cvar_Get("gl_anisotropic", "0", CVAR_ARCHIVE); } if (!gl_msaa_samples) @@ -462,13 +462,13 @@ VID_MenuInit(void) s_af_list.generic.callback = AnisotropicCallback; s_af_list.itemnames = pow2_names; s_af_list.curvalue = 0; - if (r_anisotropic->value) + if (gl_anisotropic->value) { do { s_af_list.curvalue++; } while (pow2_names[s_af_list.curvalue] && - pow(2, s_af_list.curvalue) <= r_anisotropic->value); + pow(2, s_af_list.curvalue) <= gl_anisotropic->value); s_af_list.curvalue--; } diff --git a/src/client/refresh/gl1/gl1_image.c b/src/client/refresh/gl1/gl1_image.c index be9ac5b0..2734be84 100644 --- a/src/client/refresh/gl1/gl1_image.c +++ b/src/client/refresh/gl1/gl1_image.c @@ -202,18 +202,18 @@ R_TextureMode(char *string) /* clamp selected anisotropy */ if (gl_config.anisotropic) { - if (r_anisotropic->value > gl_config.max_anisotropy) + if (gl_anisotropic->value > gl_config.max_anisotropy) { - ri.Cvar_SetValue("r_anisotropic", gl_config.max_anisotropy); + ri.Cvar_SetValue("gl_anisotropic", gl_config.max_anisotropy); } - else if (r_anisotropic->value < 1.0) + else if (gl_anisotropic->value < 1.0) { - ri.Cvar_SetValue("r_anisotropic", 1.0); + ri.Cvar_SetValue("gl_anisotropic", 1.0); } } else { - ri.Cvar_SetValue("r_anisotropic", 0.0); + ri.Cvar_SetValue("gl_anisotropic", 0.0); } /* change all the existing mipmap texture objects */ @@ -228,10 +228,10 @@ R_TextureMode(char *string) gl_filter_max); /* Set anisotropic filter if supported and enabled */ - if (gl_config.anisotropic && r_anisotropic->value) + if (gl_config.anisotropic && gl_anisotropic->value) { glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_ANISOTROPY_EXT, - r_anisotropic->value); + gl_anisotropic->value); } } } @@ -788,10 +788,10 @@ R_Upload32(unsigned *data, int width, int height, qboolean mipmap) glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, gl_filter_max); } - if (mipmap && gl_config.anisotropic && r_anisotropic->value) + if (mipmap && gl_config.anisotropic && gl_anisotropic->value) { glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_ANISOTROPY_EXT, - r_anisotropic->value); + gl_anisotropic->value); } return res; } diff --git a/src/client/refresh/gl1/gl1_main.c b/src/client/refresh/gl1/gl1_main.c index c3c90dbe..ccef914d 100644 --- a/src/client/refresh/gl1/gl1_main.c +++ b/src/client/refresh/gl1/gl1_main.c @@ -124,7 +124,7 @@ cvar_t *r_vsync; cvar_t *gl_texturemode; cvar_t *gl1_texturealphamode; cvar_t *gl1_texturesolidmode; -cvar_t *r_anisotropic; +cvar_t *gl_anisotropic; cvar_t *r_lockpvs; cvar_t *gl_msaa_samples; @@ -425,7 +425,7 @@ R_DrawParticles2(int num_particles, const particle_t particles[], vec3_t up, right; float scale; byte color[4]; - + GLfloat vtx[3*num_particles*3]; GLfloat tex[2*num_particles*3]; GLfloat clr[4*num_particles*3]; @@ -433,7 +433,7 @@ R_DrawParticles2(int num_particles, const particle_t particles[], unsigned int index_tex = 0; unsigned int index_clr = 0; unsigned int j; - + R_Bind(r_particletexture->texnum); glDepthMask(GL_FALSE); /* no z buffering */ glEnable(GL_BLEND); @@ -505,7 +505,7 @@ R_DrawParticles2(int num_particles, const particle_t particles[], glDisableClientState( GL_VERTEX_ARRAY ); glDisableClientState( GL_TEXTURE_COORD_ARRAY ); glDisableClientState( GL_COLOR_ARRAY ); - + glDisable(GL_BLEND); glColor4f(1, 1, 1, 1); glDepthMask(1); /* back to normal Z buffering */ @@ -523,12 +523,12 @@ R_DrawParticles(void) int i; unsigned char color[4]; const particle_t *p; - + GLfloat vtx[3*r_newrefdef.num_particles]; GLfloat clr[4*r_newrefdef.num_particles]; unsigned int index_vtx = 0; unsigned int index_clr = 0; - + glDepthMask(GL_FALSE); glEnable(GL_BLEND); glDisable(GL_TEXTURE_2D); @@ -1241,7 +1241,7 @@ R_Register(void) gl_texturemode = ri.Cvar_Get("gl_texturemode", "GL_LINEAR_MIPMAP_NEAREST", CVAR_ARCHIVE); gl1_texturealphamode = ri.Cvar_Get("gl1_texturealphamode", "default", CVAR_ARCHIVE); gl1_texturesolidmode = ri.Cvar_Get("gl1_texturesolidmode", "default", CVAR_ARCHIVE); - r_anisotropic = ri.Cvar_Get("r_anisotropic", "0", CVAR_ARCHIVE); + gl_anisotropic = ri.Cvar_Get("gl_anisotropic", "0", CVAR_ARCHIVE); r_lockpvs = ri.Cvar_Get("r_lockpvs", "0", 0); gl1_palettedtexture = ri.Cvar_Get("gl1_palettedtexture", "0", CVAR_ARCHIVE); @@ -1676,11 +1676,11 @@ RI_BeginFrame(float camera_separation) } /* texturemode stuff */ - if (gl_texturemode->modified || (gl_config.anisotropic && r_anisotropic->modified)) + if (gl_texturemode->modified || (gl_config.anisotropic && gl_anisotropic->modified)) { R_TextureMode(gl_texturemode->string); gl_texturemode->modified = false; - r_anisotropic->modified = false; + gl_anisotropic->modified = false; } if (gl1_texturealphamode->modified) @@ -1751,11 +1751,11 @@ R_DrawBeam(entity_t *e) vec3_t direction, normalized_direction; vec3_t start_points[NUM_BEAM_SEGS], end_points[NUM_BEAM_SEGS]; vec3_t oldorigin, origin; - + GLfloat vtx[3*NUM_BEAM_SEGS*4]; unsigned int index_vtx = 0; unsigned int pointb; - + oldorigin[0] = e->oldorigin[0]; oldorigin[1] = e->oldorigin[1]; oldorigin[2] = e->oldorigin[2]; diff --git a/src/client/refresh/gl1/header/local.h b/src/client/refresh/gl1/header/local.h index 6fd7e3b9..5d4a368f 100644 --- a/src/client/refresh/gl1/header/local.h +++ b/src/client/refresh/gl1/header/local.h @@ -215,7 +215,7 @@ extern cvar_t *gl1_flashblend; extern cvar_t *r_modulate; extern cvar_t *gl_drawbuffer; extern cvar_t *r_vsync; -extern cvar_t *r_anisotropic; +extern cvar_t *gl_anisotropic; extern cvar_t *gl_texturemode; extern cvar_t *gl1_texturealphamode; extern cvar_t *gl1_texturesolidmode; diff --git a/src/client/refresh/gl3/gl3_image.c b/src/client/refresh/gl3/gl3_image.c index 8ba587e4..12d047ee 100644 --- a/src/client/refresh/gl3/gl3_image.c +++ b/src/client/refresh/gl3/gl3_image.c @@ -74,18 +74,18 @@ GL3_TextureMode(char *string) /* clamp selected anisotropy */ if (gl3config.anisotropic) { - if (r_anisotropic->value > gl3config.max_anisotropy) + if (gl_anisotropic->value > gl3config.max_anisotropy) { - ri.Cvar_SetValue("r_anisotropic", gl3config.max_anisotropy); + ri.Cvar_SetValue("gl_anisotropic", gl3config.max_anisotropy); } - else if (r_anisotropic->value < 1.0) + else if (gl_anisotropic->value < 1.0) { - ri.Cvar_SetValue("r_anisotropic", 1.0); + ri.Cvar_SetValue("gl_anisotropic", 1.0); } } else { - ri.Cvar_SetValue("r_anisotropic", 0.0); + ri.Cvar_SetValue("gl_anisotropic", 0.0); } gl3image_t *glt; @@ -101,9 +101,9 @@ GL3_TextureMode(char *string) glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, gl_filter_max); /* Set anisotropic filter if supported and enabled */ - if (gl3config.anisotropic && r_anisotropic->value) + if (gl3config.anisotropic && gl_anisotropic->value) { - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_ANISOTROPY_EXT, r_anisotropic->value); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_ANISOTROPY_EXT, gl_anisotropic->value); } } } @@ -200,9 +200,9 @@ GL3_Upload32(unsigned *data, int width, int height, qboolean mipmap) glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, gl_filter_max); } - if (mipmap && gl3config.anisotropic && r_anisotropic->value) + if (mipmap && gl3config.anisotropic && gl_anisotropic->value) { - glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_ANISOTROPY_EXT, r_anisotropic->value); + glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_ANISOTROPY_EXT, gl_anisotropic->value); } return res; diff --git a/src/client/refresh/gl3/gl3_main.c b/src/client/refresh/gl3/gl3_main.c index 78ab8029..1990f071 100644 --- a/src/client/refresh/gl3/gl3_main.c +++ b/src/client/refresh/gl3/gl3_main.c @@ -87,7 +87,7 @@ cvar_t *r_mode; cvar_t *r_customwidth; cvar_t *r_customheight; cvar_t *vid_gamma; -cvar_t *r_anisotropic; +cvar_t *gl_anisotropic; cvar_t *gl_texturemode; cvar_t *gl_drawbuffer; cvar_t *r_clear; @@ -216,7 +216,7 @@ GL3_Register(void) gl_nobind = ri.Cvar_Get("gl_nobind", "0", 0); gl_texturemode = ri.Cvar_Get("gl_texturemode", "GL_LINEAR_MIPMAP_NEAREST", CVAR_ARCHIVE); - r_anisotropic = ri.Cvar_Get("r_anisotropic", "0", CVAR_ARCHIVE); + gl_anisotropic = ri.Cvar_Get("gl_anisotropic", "0", CVAR_ARCHIVE); vid_fullscreen = ri.Cvar_Get("vid_fullscreen", "0", CVAR_ARCHIVE); vid_gamma = ri.Cvar_Get("vid_gamma", "1.2", CVAR_ARCHIVE); @@ -276,7 +276,7 @@ GL3_Register(void) //gl_texturemode = ri.Cvar_Get("gl_texturemode", "GL_LINEAR_MIPMAP_NEAREST", CVAR_ARCHIVE); gl1_texturealphamode = ri.Cvar_Get("gl1_texturealphamode", "default", CVAR_ARCHIVE); gl1_texturesolidmode = ri.Cvar_Get("gl1_texturesolidmode", "default", CVAR_ARCHIVE); - //r_anisotropic = ri.Cvar_Get("r_anisotropic", "0", CVAR_ARCHIVE); + //gl_anisotropic = ri.Cvar_Get("gl_anisotropic", "0", CVAR_ARCHIVE); //r_lockpvs = ri.Cvar_Get("r_lockpvs", "0", 0); //gl1_palettedtexture = ri.Cvar_Get("gl1_palettedtexture", "0", CVAR_ARCHIVE); NOPE. @@ -1657,11 +1657,11 @@ GL3_BeginFrame(float camera_separation) } /* texturemode stuff */ - if (gl_texturemode->modified || (gl3config.anisotropic && r_anisotropic->modified)) + if (gl_texturemode->modified || (gl3config.anisotropic && gl_anisotropic->modified)) { GL3_TextureMode(gl_texturemode->string); gl_texturemode->modified = false; - r_anisotropic->modified = false; + gl_anisotropic->modified = false; } if (r_vsync->modified) diff --git a/src/client/refresh/gl3/header/local.h b/src/client/refresh/gl3/header/local.h index c632a5c2..a94e8a3d 100644 --- a/src/client/refresh/gl3/header/local.h +++ b/src/client/refresh/gl3/header/local.h @@ -498,7 +498,7 @@ extern cvar_t *r_drawworld; extern cvar_t *vid_gamma; extern cvar_t *gl3_intensity; extern cvar_t *gl3_intensity_2D; -extern cvar_t *r_anisotropic; +extern cvar_t *gl_anisotropic; extern cvar_t *r_lightlevel; extern cvar_t *gl3_overbrightbits; diff --git a/src/client/refresh/soft/sw_main.c b/src/client/refresh/soft/sw_main.c index 5a50691d..d7255745 100644 --- a/src/client/refresh/soft/sw_main.c +++ b/src/client/refresh/soft/sw_main.c @@ -133,7 +133,7 @@ cvar_t *sw_surfcacheoverride; cvar_t *sw_waterwarp; static cvar_t *sw_overbrightbits; cvar_t *sw_custom_particles; -cvar_t *r_anisotropic; +cvar_t *sw_texture_filtering; cvar_t *r_drawworld; static cvar_t *r_drawentities; @@ -283,7 +283,7 @@ R_Register (void) sw_waterwarp = ri.Cvar_Get ("sw_waterwarp", "1", 0); sw_overbrightbits = ri.Cvar_Get("sw_overbrightbits", "1.0", CVAR_ARCHIVE); sw_custom_particles = ri.Cvar_Get("sw_custom_particles", "0", CVAR_ARCHIVE); - r_anisotropic = ri.Cvar_Get("r_anisotropic", "0", CVAR_ARCHIVE); + sw_texture_filtering = ri.Cvar_Get("sw_texture_filtering", "0", CVAR_ARCHIVE); r_mode = ri.Cvar_Get( "r_mode", "0", CVAR_ARCHIVE ); r_lefthand = ri.Cvar_Get( "hand", "0", CVAR_USERINFO | CVAR_ARCHIVE ); diff --git a/src/client/refresh/soft/sw_scan.c b/src/client/refresh/soft/sw_scan.c index 062d2944..30e82347 100644 --- a/src/client/refresh/soft/sw_scan.c +++ b/src/client/refresh/soft/sw_scan.c @@ -486,7 +486,7 @@ NonTurbulentPow2 (espan_t *pspan) //==================== // Enable custom filtering -extern cvar_t *r_anisotropic; +extern cvar_t *sw_texture_filtering; static const int filtering_kernel[2][2][2] = { { {0x1 << (SHIFT16XYZ-2), 0x0}, @@ -604,7 +604,7 @@ D_DrawSpansPow2 (espan_t *pspan) pbase = (unsigned char *)cacheblock; - texture_filtering = (int)r_anisotropic->value; + texture_filtering = (int)sw_texture_filtering->value; sdivzpow2stepu = d_sdivzstepu * spanstep_value; tdivzpow2stepu = d_tdivzstepu * spanstep_value; zipow2stepu = d_zistepu * spanstep_value; diff --git a/src/common/cvar.c b/src/common/cvar.c index 719ec6ed..3237d091 100644 --- a/src/common/cvar.c +++ b/src/common/cvar.c @@ -39,7 +39,6 @@ typedef struct replacement_t replacements[] = { {"cd_shuffle", "ogg_shuffle"}, {"cl_drawfps", "cl_showfps"}, - {"gl_anisotropic", "r_anisotropic"}, {"gl_drawentities", "r_drawentities"}, {"gl_drawworld", "r_drawworld"}, {"gl_fullbright", "r_fullbright"}, diff --git a/stuff/cvarlist.md b/stuff/cvarlist.md index 4bb70ae7..b24cf66f 100644 --- a/stuff/cvarlist.md +++ b/stuff/cvarlist.md @@ -22,7 +22,7 @@ Command line arguments These are not console variables, they cannot be entered into the console only be given at the command line at startup. While cvars -are prefixed with a `+` arguments are starting with a `-`. For +are prefixed with a `+` arguments are starting with a `-`. For example it's `+set busywait 0` (setting the `busywait` cvar) and `-portable` (setting the `portable` argument). @@ -44,7 +44,7 @@ General: relatively high CPU usage. If set to `0` Quake II lays itself to sleep and tells the operating system to send a wakeup signal when it's time for the next frame. The later is more CPU friendly but rather inaccurate, - especially on Windows. Use with care. + especially on Windows. Use with care. * **cl_async**: If set to `1` (the default) the client is asynchronous. The client framerate is fixed, the renderer framerate is variable. @@ -81,7 +81,7 @@ Audio: * **ogg_enable**: Enable Ogg/Vorbis music playback. * **ogg_ignoretrack0**: Normally Quake II disabled the background music - if a major objective has been archived by setting the music track to 0. + if a major objective has been archived by setting the music track to 0. Setting this cvar to `1` disables this behavior, the music keeps playing. * **s_doppler**: If set to `1` (the default) doppler effects are enabled. @@ -99,14 +99,14 @@ Graphics (all renderers): * Most old `r_*` cvars, but renamed to `gl_*` -* **vid_displayrefreshrate**: Sets the displays refresh rate. The +* **vid_displayrefreshrate**: Sets the displays refresh rate. The default `-1` let the game determine the refresh rate automatically. There's little need to change that. If you do make sure that the refresh rate is rounded up, e.g. with a display of 59.95hz you should set `60`. Otherwise the game will render too few frames. * **vid_renderer**: Selects the renderer library. Possible options are - `gl1` (the default) for the old OpenGL 1.4 renderer and `gl3` for + `gl1` (the default) for the old OpenGL 1.4 renderer and `gl3` for the new OpenGL 3.2 renderer. * **cin_force43**: If set to `1` (the default) cinematics are displayed @@ -128,7 +128,7 @@ Graphics (all renderers): * **horplus**: If set to 1 (the default) the horplus algorithm is used to calculate an optimal horizontal and vertical field of view, independent - of the window or screen aspect ratio or resolution. + of the window or screen aspect ratio or resolution. If enabled *fov* is forced to `90`. * **vid_gamma**: The value used for gamma correction. Higher value looks @@ -136,7 +136,7 @@ Graphics (all renderers): your whole screen to this value in realtime (except on OSX where it's applied to textures on load and thus needs a `vid_restart` after changing). The GL3 renderer applies this to the window in realtime via shaders - (on all platforms). + (on all platforms). This is also set by the brightness slider in the video menu. * **r_consolescale** / **r_hudscale** / **r_menuscale**, **crosshair_scale**: @@ -155,7 +155,7 @@ Graphics (all renderers): * **vid_maxfps**: The maximum framerate, if `cl_async` is `1`. Otherwise `cl_maxfps` is used as maximum framerate. See `cl_async` description - above for more information. + above for more information. *Note* that vsync (`r_vsync`) also restricts the framerate to the monitor refresh rate, so if vsync is enabled, you won't get more than 60fps on most displays (or 120 on a 120hz display etc). @@ -163,15 +163,15 @@ Graphics (all renderers): * **r_vsync**: Enables the vsync: frames are synchronized with display refresh rate, should (but doesn't always) prevent tearing. -* **r_anisotropic**: Anisotropic filtering. Possible values are - dependent on the GPU driver, most of them support `1`, `2`, `4`, `8` - and `16`. Anisotropic filtering gives a huge improvement to texture - quality by a negligible performance impact. - Graphics (GL renderers only): ----------------------------- +* **gl_anisotropic**: Anisotropic filtering. Possible values are + dependent on the GPU driver, most of them support `1`, `2`, `4`, `8` + and `16`. Anisotropic filtering gives a huge improvement to texture + quality by a negligible performance impact. + * **gl_msaa_samples**: Full scene anti aliasing samples. The number of samples depends on the GPU driver, most drivers support at least `2`, `4` and `8` samples. If an invalid value is set, the value is @@ -199,13 +199,13 @@ Graphics (GL1 only): -------------------- * **gl1_intensity**: Sets the color intensity used for 3D rendering. - Must be a floating point value, at least `1.0` - default is `2.0`. + Must be a floating point value, at least `1.0` - default is `2.0`. Applied when textures are loaded, so it needs a `vid_restart`! * **gl1_overbrightbits**: Enables overbright bits, brightness scaling of - lightmaps and models. Higher values make shadows less dark. + lightmaps and models. Higher values make shadows less dark. Possible values are `0` (no overbright bits), `1` (correct lighting - for water), `2` (scale by factor 2) and `3` (scale by factor 3). + for water), `2` (scale by factor 2) and `3` (scale by factor 3). Applied in realtime, does not need `vid_restart`. * **gl1_stencilshadow**: If `gl_shadows` is set to `1`, this makes them @@ -217,7 +217,7 @@ Graphics (GL3 only): -------------------- * **gl3_debugcontext**: Enables the OpenGL 3.2 renderers debug context, - e.g. prints warnings and errors emmitted by the GPU driver. + e.g. prints warnings and errors emmitted by the GPU driver. Not supported on OSX. This is a pure debug cvar and slows down rendering. * **gl3_intensity**: Sets the color intensity used for 3D rendering. @@ -229,15 +229,15 @@ Graphics (GL3 only): * **gl3_intensity_2D**: The same for 2D rendering (HUD, menu, console, videos) * **gl3_overbrightbits**: Enables overbright bits, brightness scaling of - lightmaps and models. Higher values make shadows less dark. - Similar to GL1's `gl1_overbrightbits`, but allows any floating point number. + lightmaps and models. Higher values make shadows less dark. + Similar to GL1's `gl1_overbrightbits`, but allows any floating point number. Default is `1.3`. In the OpenGL3.2 renderer, no lighting fixes for water are needed, so `1.0` has no special meaning. * **gl3_particle_size**: The size of particles - Default is `40`. * **gl3_particle_fade_factor**: "softness" of particles: higher values - look less soft. Defaults to `1.2`. + look less soft. Defaults to `1.2`. A value of `10` looks similar to the GL1 particles. * **gl3_particle_square**: If set to `1`, particles are rendered as squares,