mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2024-11-06 05:01:26 +00:00
3715430479
The major change is that we no longer require libGL to even exist on the system at compile time for the GL targets, we dynamicly link to the libGL of choice at run time. (This probably breaks most non-linux systems, and all GL targets except -glx, some fixup will be needed.) (This also kills glquake, dead dead DEAD! GONE FOREVER! WHEE!) Some gl_draw cleanup. Commented out equake alias model occlusion test stuff, very experimental. Added the .lo and .la patterns to the .gitignore files. Some minor sbar cleanup. (We don't use the disc in use symbol for anything.)
296 lines
12 KiB
C
296 lines
12 KiB
C
/*
|
|
r_cvar.c
|
|
|
|
renderer cvar definitions
|
|
|
|
Copyright (C) 2000 Bill Currie
|
|
Ragnvald Maartmann-Moe IV
|
|
|
|
Author: Bill Currie
|
|
Ragnvald Maartmann-Moe IV
|
|
Date: 2001/5/17
|
|
|
|
This program is free software; you can redistribute it and/or
|
|
modify it under the terms of the GNU General Public License
|
|
as published by the Free Software Foundation; either version 2
|
|
of the License, or (at your option) any later version.
|
|
|
|
This program is distributed in the hope that it will be useful,
|
|
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
|
|
|
See the GNU General Public License for more details.
|
|
|
|
You should have received a copy of the GNU General Public License
|
|
along with this program; if not, write to:
|
|
|
|
Free Software Foundation, Inc.
|
|
59 Temple Place - Suite 330
|
|
Boston, MA 02111-1307, USA
|
|
|
|
$Id$
|
|
*/
|
|
|
|
#ifdef HAVE_CONFIG_H
|
|
# include "config.h"
|
|
#endif
|
|
#include "QF/cvar.h"
|
|
|
|
extern cvar_t *gl_sky_divide; // FIXME
|
|
extern void R_ForceLightUpdate (void);
|
|
|
|
cvar_t *cl_crossx;
|
|
cvar_t *cl_crossy;
|
|
cvar_t *cl_verstring;
|
|
cvar_t *crosshair;
|
|
cvar_t *crosshaircolor;
|
|
|
|
cvar_t *d_mipcap;
|
|
cvar_t *d_mipscale;
|
|
cvar_t *d_subdiv16;
|
|
|
|
cvar_t *gl_affinemodels;
|
|
cvar_t *gl_clear;
|
|
cvar_t *gl_conalpha;
|
|
cvar_t *gl_conspin;
|
|
cvar_t *gl_constretch;
|
|
cvar_t *gl_dlight_lightmap;
|
|
cvar_t *gl_dlight_polyblend;
|
|
cvar_t *gl_dlight_smooth;
|
|
cvar_t *gl_fb_bmodels;
|
|
cvar_t *gl_fb_models;
|
|
cvar_t *gl_fires;
|
|
cvar_t *gl_keeptjunctions;
|
|
cvar_t *gl_lerp_anim;
|
|
cvar_t *gl_libgl;
|
|
cvar_t *gl_lightmap_components;
|
|
cvar_t *gl_max_size;
|
|
cvar_t *gl_nocolors;
|
|
cvar_t *gl_picmip;
|
|
cvar_t *gl_playermip;
|
|
cvar_t *gl_reporttjunctions;
|
|
cvar_t *gl_sky_clip;
|
|
cvar_t *gl_skymultipass;
|
|
cvar_t *gl_texsort;
|
|
cvar_t *gl_triplebuffer;
|
|
cvar_t *gl_occlusion;
|
|
|
|
cvar_t *r_aliasstats;
|
|
cvar_t *r_aliastransadj;
|
|
cvar_t *r_aliastransbase;
|
|
cvar_t *r_ambient;
|
|
cvar_t *r_clearcolor;
|
|
cvar_t *r_drawentities;
|
|
cvar_t *r_drawflat;
|
|
cvar_t *r_drawviewmodel;
|
|
cvar_t *r_dspeeds;
|
|
cvar_t *r_dynamic;
|
|
cvar_t *r_graphheight;
|
|
cvar_t *r_maxedges;
|
|
cvar_t *r_maxsurfs;
|
|
cvar_t *r_mirroralpha;
|
|
cvar_t *r_netgraph;
|
|
cvar_t *r_netgraph_alpha;
|
|
cvar_t *r_netgraph_box;
|
|
cvar_t *r_norefresh;
|
|
cvar_t *r_novis;
|
|
cvar_t *r_numedges;
|
|
cvar_t *r_numsurfs;
|
|
cvar_t *r_particles;
|
|
cvar_t *r_reportedgeout;
|
|
cvar_t *r_reportsurfout;
|
|
cvar_t *r_shadows;
|
|
cvar_t *r_skyname;
|
|
cvar_t *r_speeds;
|
|
cvar_t *r_timegraph;
|
|
cvar_t *r_wateralpha;
|
|
cvar_t *r_waterripple;
|
|
cvar_t *r_waterwarp;
|
|
cvar_t *r_zgraph;
|
|
|
|
cvar_t *scr_centertime;
|
|
cvar_t *scr_consize;
|
|
cvar_t *scr_conspeed;
|
|
cvar_t *scr_fov;
|
|
cvar_t *scr_printspeed;
|
|
cvar_t *scr_showpause;
|
|
cvar_t *scr_showram;
|
|
cvar_t *scr_showturtle;
|
|
cvar_t *scr_viewsize;
|
|
|
|
unsigned char lighthalf_v[3] = {255, 255, 255};
|
|
|
|
void
|
|
R_Init_Cvars (void)
|
|
{
|
|
cl_crossx = Cvar_Get ("cl_crossx", "0", CVAR_ARCHIVE, NULL,
|
|
"Sets the position of the crosshair on the X-axis.");
|
|
cl_crossy = Cvar_Get ("cl_crossy", "0", CVAR_ARCHIVE, NULL,
|
|
"Sets the position of the crosshair on the Y-axis.");
|
|
cl_verstring = Cvar_Get ("cl_verstring", PROGRAM " " VERSION, CVAR_NONE,
|
|
NULL, "Client version string");
|
|
crosshair = Cvar_Get ("crosshair", "0", CVAR_ARCHIVE, NULL, "Crosshair "
|
|
"type. 0 off, 1 old white, 2 new with colors");
|
|
crosshaircolor = Cvar_Get ("crosshaircolor", "79", CVAR_ARCHIVE, NULL,
|
|
"Color of the new crosshair");
|
|
d_mipcap = Cvar_Get ("d_mipcap", "0", CVAR_NONE, NULL,
|
|
"Detail level. 0 is highest, 3 is lowest.");
|
|
d_mipscale = Cvar_Get ("d_mipscale", "1", CVAR_NONE, NULL, "Detail level "
|
|
"of objects. 0 is highest, 3 is lowest.");
|
|
d_subdiv16 = Cvar_Get ("d_subdiv16", "1", CVAR_NONE, NULL,
|
|
"Set to enable extreme perspective correction");
|
|
gl_affinemodels = Cvar_Get ("gl_affinemodels", "0", CVAR_ARCHIVE, NULL,
|
|
"Makes texture rendering quality better if "
|
|
"set to 1");
|
|
gl_clear = Cvar_Get ("gl_clear", "0", CVAR_NONE, NULL, "Set to 1 to make "
|
|
"background black. Useful for removing HOM effect");
|
|
gl_conalpha = Cvar_Get ("gl_conalpha", "0.6", CVAR_ARCHIVE, NULL,
|
|
"alpha value for the console background");
|
|
gl_conspin = Cvar_Get ("gl_conspin", "0", CVAR_ARCHIVE, NULL,
|
|
"speed at which the console spins");
|
|
gl_constretch = Cvar_Get ("gl_constretch", "0", CVAR_ARCHIVE, NULL,
|
|
"toggle console between slide and stretch");
|
|
gl_dlight_lightmap = Cvar_Get ("gl_dlight_lightmap", "1", CVAR_ARCHIVE,
|
|
NULL, "Set to 1 for high quality dynamic "
|
|
"lighting.");
|
|
gl_dlight_polyblend = Cvar_Get ("gl_dlight_polyblend", "0", CVAR_ARCHIVE,
|
|
NULL, "Set to 1 to use a dynamic light "
|
|
"effect faster on GL");
|
|
gl_dlight_smooth = Cvar_Get ("gl_dlight_smooth", "1", CVAR_ARCHIVE, NULL,
|
|
"Smooth dynamic vertex lighting");
|
|
gl_fb_bmodels = Cvar_Get ("gl_fb_bmodels", "1", CVAR_ARCHIVE, NULL,
|
|
"Toggles fullbright color support for bmodels");
|
|
gl_fb_models = Cvar_Get ("gl_fb_models", "1", CVAR_ARCHIVE, NULL,
|
|
"Toggles fullbright color support for models");
|
|
gl_fires = Cvar_Get ("gl_fires", "0", CVAR_ARCHIVE, NULL,
|
|
"Toggles lavaball and rocket fireballs");
|
|
gl_keeptjunctions = Cvar_Get ("gl_keeptjunctions", "1", CVAR_ARCHIVE, NULL,
|
|
"Set to 0 to turn off colinear vertexes "
|
|
"upon level load");
|
|
gl_lerp_anim = Cvar_Get ("gl_lerp_anim", "1", CVAR_ARCHIVE, NULL,
|
|
"Toggles model animation interpolation");
|
|
gl_libgl = Cvar_Get ("gl_libgl", "libGL.so.1", CVAR_ROM, NULL,
|
|
"The GL library to use. (path optional)");
|
|
gl_lightmap_components = Cvar_Get ("gl_lightmap_components", "4", CVAR_ROM,
|
|
NULL, "Lightmap texture components. 1 "
|
|
"is greyscale, 3 is RGB, 4 is RGBA.");
|
|
gl_max_size = Cvar_Get ("gl_max_size", "1024", CVAR_NONE, NULL,
|
|
"Texture dimension");
|
|
gl_nocolors = Cvar_Get ("gl_nocolors", "0", CVAR_NONE, NULL,
|
|
"Set to 1, turns off all player colors");
|
|
gl_picmip = Cvar_Get ("gl_picmip", "0", CVAR_NONE, NULL, "Dimensions of "
|
|
"textures. 0 is normal, 1 is half, 2 is 1/4");
|
|
gl_playermip = Cvar_Get ("gl_playermip", "0", CVAR_NONE, NULL,
|
|
"Detail of player skins. 0 best, 4 worst.");
|
|
gl_reporttjunctions = Cvar_Get ("gl_reporttjunctions", "0", CVAR_NONE,
|
|
NULL, "None");
|
|
gl_sky_clip = Cvar_Get ("gl_sky_clip", "0", CVAR_ARCHIVE, NULL,
|
|
"controls amount of sky overdraw");
|
|
gl_sky_divide = Cvar_Get ("gl_sky_divide", "1", CVAR_ARCHIVE, NULL,
|
|
"subdivide sky polys");
|
|
gl_skymultipass = Cvar_Get ("gl_skymultipass", "1", CVAR_ARCHIVE, NULL,
|
|
"controls whether the skydome is single or "
|
|
"double pass");
|
|
gl_occlusion = Cvar_Get ("gl_occlusion", "0", CVAR_NONE, NULL,
|
|
"Toggles experimental alias model occlusion tests.");
|
|
gl_texsort = Cvar_Get ("gl_texsort", "1", CVAR_NONE, NULL, "None");
|
|
gl_triplebuffer = Cvar_Get ("gl_triplebuffer", "1", CVAR_ARCHIVE, NULL,
|
|
"Set to 1 by default. Fixes status bar "
|
|
"flicker on some hardware");
|
|
r_aliasstats = Cvar_Get ("r_polymodelstats", "0", CVAR_NONE, NULL,
|
|
"Toggles the displays of number of polygon "
|
|
"models current being viewed");
|
|
r_aliastransadj = Cvar_Get ("r_aliastransadj", "100", CVAR_NONE, NULL,
|
|
"Determines how much of an alias model is "
|
|
"clipped away and how much is viewable.");
|
|
r_aliastransbase = Cvar_Get ("r_aliastransbase", "200", CVAR_NONE, NULL,
|
|
"Determines how much of an alias model is "
|
|
"clipped away and how much is viewable");
|
|
r_ambient = Cvar_Get ("r_ambient", "0", CVAR_NONE, NULL,
|
|
"Determines the ambient lighting for a level");
|
|
r_clearcolor = Cvar_Get ("r_clearcolor", "2", CVAR_NONE, NULL,
|
|
"This sets the color for areas outside of the "
|
|
"current map");
|
|
r_drawentities = Cvar_Get ("r_drawentities", "1", CVAR_NONE, NULL,
|
|
"Toggles drawing of entities (almost "
|
|
"everything but the world)");
|
|
r_drawflat = Cvar_Get ("r_drawflat", "0", CVAR_NONE, NULL,
|
|
"Toggles the drawing of textures");
|
|
r_drawviewmodel = Cvar_Get ("r_drawviewmodel", "1", CVAR_ARCHIVE, NULL,
|
|
"Toggles view model drawing (your weapons)");
|
|
r_dspeeds = Cvar_Get ("r_dspeeds", "0", CVAR_NONE, NULL,
|
|
"Toggles the display of drawing speed information");
|
|
r_dynamic = Cvar_Get ("r_dynamic", "1", CVAR_NONE, NULL,
|
|
"Set to 0 to disable lightmap changes");
|
|
r_graphheight = Cvar_Get ("r_graphheight", "32", CVAR_NONE, NULL,
|
|
"Set the number of lines displayed in the "
|
|
"various graphs");
|
|
r_maxedges = Cvar_Get ("r_maxedges", "0", CVAR_NONE, NULL,
|
|
"Sets the maximum number of edges");
|
|
r_maxsurfs = Cvar_Get ("r_maxsurfs", "0", CVAR_NONE, NULL,
|
|
"Sets the maximum number of surfaces");
|
|
r_mirroralpha = Cvar_Get ("r_mirroralpha", "1", CVAR_NONE, NULL, "None");
|
|
r_netgraph = Cvar_Get ("r_netgraph", "0", CVAR_NONE, NULL,
|
|
"Toggle the display of a graph showing network "
|
|
"performance");
|
|
r_netgraph_alpha = Cvar_Get ("r_netgraph_alpha", "0.5", CVAR_ARCHIVE, NULL,
|
|
"Net graph translucency");
|
|
r_netgraph_box = Cvar_Get ("r_netgraph_box", "1", CVAR_ARCHIVE, NULL,
|
|
"Draw box around net graph");
|
|
r_norefresh = Cvar_Get ("r_norefresh", "0", CVAR_NONE, NULL,
|
|
"Set to 1 to disable display refresh");
|
|
r_novis = Cvar_Get ("r_novis", "0", CVAR_NONE, NULL, "Set to 1 to enable "
|
|
"runtime visibility checking (SLOW)");
|
|
r_numedges = Cvar_Get ("r_numedges", "0", CVAR_NONE, NULL,
|
|
"Toggles the displaying of number of edges "
|
|
"currently being viewed");
|
|
r_numsurfs = Cvar_Get ("r_numsurfs", "0", CVAR_NONE, NULL,
|
|
"Toggles the displaying of number of surfaces "
|
|
"currently being viewed");
|
|
r_particles = Cvar_Get ("r_particles", "1", CVAR_ARCHIVE, NULL,
|
|
"Toggles drawing of particles.");
|
|
r_reportedgeout = Cvar_Get ("r_reportedgeout", "0", CVAR_NONE, NULL,
|
|
"Toggle the display of how many edges were "
|
|
"not displayed");
|
|
r_reportsurfout = Cvar_Get ("r_reportsurfout", "0", CVAR_NONE, NULL,
|
|
"Toggle the display of how many surfaces "
|
|
"were not displayed");
|
|
r_shadows = Cvar_Get ("r_shadows", "0", CVAR_ARCHIVE, NULL,
|
|
"Set to 1 to enable shadows for entities");
|
|
r_skyname = Cvar_Get ("r_skyname", "none", CVAR_NONE, NULL,
|
|
"name of the current skybox");
|
|
r_speeds = Cvar_Get ("r_speeds", "0", CVAR_NONE, NULL, "Display drawing "
|
|
"time and statistics of what is being viewed");
|
|
r_timegraph = Cvar_Get ("r_timegraph", "0", CVAR_NONE, NULL,
|
|
"Toggle the display of a performance graph");
|
|
r_wateralpha = Cvar_Get ("r_wateralpha", "1", CVAR_NONE, NULL,
|
|
"Determine the opacity of liquids. 1 = solid, "
|
|
"0 = transparent, otherwise translucent.");
|
|
r_waterripple = Cvar_Get ("r_waterripple", "0", CVAR_NONE, NULL,
|
|
"Set to make liquids ripple, try setting to 5");
|
|
r_waterwarp = Cvar_Get ("r_waterwarp", "1", CVAR_NONE, NULL,
|
|
"Toggles whether surfaces are warped in liquid.");
|
|
r_zgraph = Cvar_Get ("r_zgraph", "0", CVAR_NONE, NULL,
|
|
"Toggle the graph that reports the changes of "
|
|
"z-axis position");
|
|
scr_centertime = Cvar_Get ("scr_centertime", "2", CVAR_NONE, NULL, "How "
|
|
"long in seconds screen hints are displayed");
|
|
scr_consize = Cvar_Get ("scr_consize", "0.5", CVAR_ARCHIVE, NULL,
|
|
"Fraction of the screen the console covers when "
|
|
"down");
|
|
scr_conspeed = Cvar_Get ("scr_conspeed", "300", CVAR_NONE, NULL,
|
|
"How quickly the console scrolls up or down");
|
|
scr_fov = Cvar_Get ("fov", "90", CVAR_NONE, NULL, "Your field of view in "
|
|
"degrees. Smaller than 90 zooms in.");
|
|
scr_printspeed = Cvar_Get ("scr_printspeed", "8", CVAR_NONE, NULL,
|
|
"How fast the text is displayed at the end of "
|
|
"the single player episodes");
|
|
scr_showpause = Cvar_Get ("showpause", "1", CVAR_NONE, NULL,
|
|
"Toggles display of pause graphic");
|
|
scr_showram = Cvar_Get ("showram", "1", CVAR_NONE, NULL,
|
|
"Show RAM icon if game is running low on memory");
|
|
scr_showturtle = Cvar_Get ("showturtle", "0", CVAR_NONE, NULL,
|
|
"Show a turtle icon if your fps is below 10");
|
|
scr_viewsize = Cvar_Get ("viewsize", "100", CVAR_ARCHIVE, NULL,
|
|
"Set the screen size 30 minimum, 120 maximum");
|
|
}
|