{
int i;
-// COMMANDLINEOPTION: -cddev <devicepath> chooses which CD drive to use (bsd and Linux only)
+// COMMANDLINEOPTION: BSD Sound: -cddev <devicepath> chooses which CD drive to use
if ((i = COM_CheckParm("-cddev")) != 0 && i < com_argc - 1)
strlcpy(cd_dev, com_argv[i + 1], sizeof(cd_dev));
}
{
int i;
-// COMMANDLINEOPTION: -cddev <devicepath> chooses which CD drive to use (bsd and Linux only)
+// COMMANDLINEOPTION: Linux Sound: -cddev <devicepath> chooses which CD drive to use
if ((i = COM_CheckParm("-cddev")) != 0 && i < com_argc - 1)
strlcpy(cd_dev, com_argv[i + 1], sizeof(cd_dev));
}
if (cls.state == ca_dedicated)
return -1;
-// COMMANDLINEOPTION: -nocdaudio disables CD audio support
+// COMMANDLINEOPTION: Sound: -nocdaudio disables CD audio support
if (COM_CheckParm("-nocdaudio") || COM_CheckParm("-safe"))
return -1;
{
int i;
-// COMMANDLINEOPTION: -particles <number> changes maximum number of particles at once, default 32768
+// COMMANDLINEOPTION: Client: -particles <number> changes maximum number of particles at once, default 32768
i = COM_CheckParm ("-particles");
if (i && i < com_argc - 1)
{// prog_name cmdline gamename gamedirname gamescreenshotname
// GAME_NORMAL
-// COMMANDLINEOPTION: -quake runs the game Quake (default)
+// COMMANDLINEOPTION: Game: -quake runs the game Quake (default)
{ "", "-quake", "DarkPlaces-Quake", "", "dp" },
// GAME_HIPNOTIC
-// COMMANDLINEOPTION: -hipnotic runs Quake mission pack 1: The Scourge of Armagon
+// COMMANDLINEOPTION: Game: -hipnotic runs Quake mission pack 1: The Scourge of Armagon
{ "hipnotic", "-hipnotic", "Darkplaces-Hipnotic", "hipnotic", "dp" },
// GAME_ROGUE
-// COMMANDLINEOPTION: -rogue runs Quake mission pack 2: The Dissolution of Eternity
+// COMMANDLINEOPTION: Game: -rogue runs Quake mission pack 2: The Dissolution of Eternity
{ "rogue", "-rogue", "Darkplaces-Rogue", "rogue", "dp" },
// GAME_NEHAHRA
-// COMMANDLINEOPTION: -nehahra runs The Seal of Nehahra movie and game
+// COMMANDLINEOPTION: Game: -nehahra runs The Seal of Nehahra movie and game
{ "nehahra", "-nehahra", "DarkPlaces-Nehahra", "nehahra", "dp" },
// GAME_NEXUIZ
-// COMMANDLINEOPTION: -nexuiz runs the multiplayer game Nexuiz
+// COMMANDLINEOPTION: Game: -nexuiz runs the multiplayer game Nexuiz
{ "nexuiz", "-nexuiz", "Nexuiz", "data", "nexuiz" },
// GAME_TRANSFUSION
-// COMMANDLINEOPTION: -transfusion runs Transfusion (the recreation of Blood in Quake)
+// COMMANDLINEOPTION: Game: -transfusion runs Transfusion (the recreation of Blood in Quake)
{ "transfusion", "-transfusion", "Transfusion", "basetf", "transfusion" },
// GAME_GOODVSBAD2
-// COMMANDLINEOPTION: -goodvsbad2 runs the psychadelic RTS FPS game Good Vs Bad 2
+// COMMANDLINEOPTION: Game: -goodvsbad2 runs the psychadelic RTS FPS game Good Vs Bad 2
{ "gvb2", "-goodvsbad2", "GoodVs.Bad2", "rts", "gvb2" },
// GAME_TEU
-// COMMANDLINEOPTION: -teu runs The Evil Unleashed (this option is obsolete as they are not using darkplaces)
+// COMMANDLINEOPTION: Game: -teu runs The Evil Unleashed (this option is obsolete as they are not using darkplaces)
{ "teu", "-teu", "TheEvilUnleashed", "baseteu", "teu" },
// GAME_BATTLEMECH
-// COMMANDLINEOPTION: -battlemech runs the multiplayer topdown deathmatch game BattleMech
+// COMMANDLINEOPTION: Game: -battlemech runs the multiplayer topdown deathmatch game BattleMech
{ "battlemech", "-battlemech", "Battlemech", "base", "battlemech" },
// GAME_ZYMOTIC
-// COMMANDLINEOPTION: -zymotic runs the singleplayer game Zymotic
+// COMMANDLINEOPTION: Game: -zymotic runs the singleplayer game Zymotic
{ "zymotic", "-zymotic", "Zymotic", "data", "zymotic" },
// GAME_FNIGGIUM
-// COMMANDLINEOPTION: -fniggium runs the post apocalyptic melee RPG Fniggium
+// COMMANDLINEOPTION: Game: -fniggium runs the post apocalyptic melee RPG Fniggium
{ "fniggium", "-fniggium", "Fniggium", "data", "fniggium" },
// GAME_SETHERAL
-// COMMANDLINEOPTION: -setheral runs the multiplayer game Setheral
+// COMMANDLINEOPTION: Game: -setheral runs the multiplayer game Setheral
{ "setheral", "-setheral", "Setheral", "data", "setheral" },
// GAME_SOM
-// COMMANDLINEOPTION: -som runs the multiplayer game Son Of Man
+// COMMANDLINEOPTION: Game: -som runs the multiplayer game Son Of Man
{ "som", "-som", "Son of Man", "sonofman", "som" },
// GAME_TENEBRAE
-// COMMANDLINEOPTION: -tenebrae runs the graphics test mod known as Tenebrae (some features not implemented)
+// COMMANDLINEOPTION: Game: -tenebrae runs the graphics test mod known as Tenebrae (some features not implemented)
{ "tenebrae", "-tenebrae", "DarkPlaces-Tenebrae", "tenebrae", "dp" },
// GAME_NEOTERIC
-// COMMANDLINEOPTION: -neoteric runs the game Neoteric
+// COMMANDLINEOPTION: Game: -neoteric runs the game Neoteric
{ "neoteric", "-neoteric", "Neoteric", "neobase", "neo" },
// GAME_OPENQUARTZ
-// COMMANDLINEOPTION: -openquartz runs the game OpenQuartz, a standalone GPL replacement of the quake content
+// COMMANDLINEOPTION: Game: -openquartz runs the game OpenQuartz, a standalone GPL replacement of the quake content
{ "openquartz", "-openquartz", "OpenQuartz", "id1", "openquartz"},
// GAME_PRYDON
-// COMMANDLINEOPTION: -prydon runs the topdown point and click action-RPG Prydon Gate
+// COMMANDLINEOPTION: Game: -prydon runs the topdown point and click action-RPG Prydon Gate
{ "prydon", "-prydon", "PrydonGate", "prydon", "prydon"},
// GAME_NETHERWORLD
-// COMMANDLINEOPTION: -netherworld runs the game Netherworld: Dark Masters
+// COMMANDLINEOPTION: Game: -netherworld runs the game Netherworld: Dark Masters
{ "netherworld", "-netherworld", "Dark Masters", "netherworld", "nw"},
};
Cvar_RegisterVariable (&log_sync);
// support for the classic Quake option
-// COMMANDLINEOPTION: -condebug logs console messages to qconsole.log with sync on (so it keeps every message up to a crash), see also log_file and log_sync
+// COMMANDLINEOPTION: Console: -condebug logs console messages to qconsole.log with sync on (so it keeps every message up to a crash), see also log_file and log_sync
if (COM_CheckParm ("-condebug") != 0)
{
Cvar_SetQuick (&log_file, "qconsole.log");
// -basedir <path>
// Overrides the system supplied base directory (under GAMENAME)
-// COMMANDLINEOPTION: -basedir <path> chooses what base directory the game data is in, inside this there should be a data directory for the game (for example id1)
+// COMMANDLINEOPTION: Filesystem: -basedir <path> chooses what base directory the game data is in, inside this there should be a data directory for the game (for example id1)
i = COM_CheckParm ("-basedir");
if (i && i < com_argc-1)
{
// -path <dir or packfile> [<dir or packfile>] ...
// Fully specifies the exact search path, overriding the generated one
-// COMMANDLINEOPTION: -path <path ..> specifies the full search path manually, overriding the generated one, example: -path c:\quake\id1 c:\quake\pak0.pak c:\quake\pak1.pak (not recommended)
+// COMMANDLINEOPTION: Filesystem: -path <path ..> specifies the full search path manually, overriding the generated one, example: -path c:\quake\id1 c:\quake\pak0.pak c:\quake\pak1.pak (not recommended)
i = COM_CheckParm ("-path");
if (i)
{
// general default
numplayers = 8;
-// COMMANDLINEOPTION: -dedicated [playerlimit] starts a dedicated server (with a command console), default playerlimit is 8
-// COMMANDLINEOPTION: -listen [playerlimit] starts a multiplayer server with graphical client, like singleplayer but other players can connect, default playerlimit is 8
+// COMMANDLINEOPTION: Server: -dedicated [playerlimit] starts a dedicated server (with a command console), default playerlimit is 8
+// COMMANDLINEOPTION: Server: -listen [playerlimit] starts a multiplayer server with graphical client, like singleplayer but other players can connect, default playerlimit is 8
if (cl_available)
{
// client exists, check what mode the user wants
srand(time(NULL));
// FIXME: this is evil, but possibly temporary
-// COMMANDLINEOPTION: -developer enables warnings and other notices (RECOMMENDED for mod developers)
+// COMMANDLINEOPTION: Console: -developer enables warnings and other notices (RECOMMENDED for mod developers)
if (COM_CheckParm("-developer"))
{
forcedeveloper = true;
Cbuf_InsertText("exec quake.rc\n");
// check for special benchmark mode
-// COMMANDLINEOPTION: -benchmark <demoname> runs a timedemo and quits, results of any timedemo can be found in gamedir/benchmark.log (for example id1/benchmark.log)
+// COMMANDLINEOPTION: Client: -benchmark <demoname> runs a timedemo and quits, results of any timedemo can be found in gamedir/benchmark.log (for example id1/benchmark.log)
i = COM_CheckParm("-benchmark");
if (i && i + 1 < com_argc)
Cbuf_InsertText(va("timedemo %s\n", com_argv[i + 1]));
void MR_Init(void)
{
// use -forceqmenu to use always the normal quake menu (it sets forceqmenu to 1)
-// COMMANDLINEOPTION: -forceqmenu disables menu.dat (same as +forceqmenu 1)
+// COMMANDLINEOPTION: Client: -forceqmenu disables menu.dat (same as +forceqmenu 1)
if(COM_CheckParm("-forceqmenu"))
Cvar_SetValueQuick(&forceqmenu,1);
// use -useqmenu for debugging proposes, cause it starts
// the normal quake menu only the first time
-// COMMANDLINEOPTION: -useqmenu causes the first time you open the menu to use the quake menu, then reverts to menu.dat (if forceqmenu is 0)
+// COMMANDLINEOPTION: Client: -useqmenu causes the first time you open the menu to use the quake menu, then reverts to menu.dat (if forceqmenu is 0)
if(COM_CheckParm("-useqmenu"))
MR_SetRouting (TRUE);
else
Cvar_RegisterVariable(&sv_heartbeatperiod);
for (i = 0;sv_masters[i].name;i++)
Cvar_RegisterVariable(&sv_masters[i]);
-// COMMANDLINEOPTION: -ip <ipaddress> sets the ip address of this machine for purposes of networking (default 0.0.0.0 also known as INADDR_ANY), use only if you have multiple network adapters and need to choose one specifically.
+// COMMANDLINEOPTION: Server: -ip <ipaddress> sets the ip address of this machine for purposes of networking (default 0.0.0.0 also known as INADDR_ANY), use only if you have multiple network adapters and need to choose one specifically.
if ((i = COM_CheckParm("-ip")) && i + 1 < com_argc)
{
if (LHNETADDRESS_FromString(&tempaddress, com_argv[i + 1], 0) == 1)
else
Con_Printf("-ip option used, but unable to parse the address \"%s\"\n", com_argv[i + 1]);
}
-// COMMANDLINEOPTION: -port <portnumber> sets the port to use for a server (default 26000, the same port as QUAKE itself), useful if you host multiple servers on your machine
+// COMMANDLINEOPTION: Server: -port <portnumber> sets the port to use for a server (default 26000, the same port as QUAKE itself), useful if you host multiple servers on your machine
if (((i = COM_CheckParm("-port")) || (i = COM_CheckParm("-ipport")) || (i = COM_CheckParm("-udpport"))) && i + 1 < com_argc)
{
i = atoi(com_argv[i + 1]);
gamma = 1;
scale = 1;
base = 0;
-// COMMANDLINEOPTION: -texgamma <number> sets the quake palette gamma, allowing you to make quake textures brighter/darker, not recommended
+// COMMANDLINEOPTION: Client: -texgamma <number> sets the quake palette gamma, allowing you to make quake textures brighter/darker, not recommended
i = COM_CheckParm("-texgamma");
if (i)
gamma = atof(com_argv[i + 1]);
-// COMMANDLINEOPTION: -texcontrast <number> sets the quake palette contrast, allowing you to make quake textures brighter/darker, not recommended
+// COMMANDLINEOPTION: Client: -texcontrast <number> sets the quake palette contrast, allowing you to make quake textures brighter/darker, not recommended
i = COM_CheckParm("-texcontrast");
if (i)
scale = atof(com_argv[i + 1]);
-// COMMANDLINEOPTION: -texbrightness <number> sets the quake palette brightness (brightness of black), allowing you to make quake textures brighter/darker, not recommended
+// COMMANDLINEOPTION: Client: -texbrightness <number> sets the quake palette brightness (brightness of black), allowing you to make quake textures brighter/darker, not recommended
i = COM_CheckParm("-texbrightness");
if (i)
base = atof(com_argv[i + 1]);
snd_pcm_hw_params_alloca (&hw);
snd_pcm_sw_params_alloca (&sw);
-// COMMANDLINEOPTION: -sndpcm <devicename> selects which pcm device to us, default is "default" (ALSA sound driver only)
+// COMMANDLINEOPTION: Linux ALSA Sound: -sndpcm <devicename> selects which pcm device to us, default is "default"
if ((i=COM_CheckParm("-sndpcm"))!=0)
pcmname=com_argv[i+1];
if (!pcmname)
pcmname = "default";
-// COMMANDLINEOPTION: -sndbits <number> sets sound precision to 8 or 16 bit (email me if you want others added)
+// COMMANDLINEOPTION: Linux ALSA Sound: -sndbits <number> sets sound precision to 8 or 16 bit (email me if you want others added)
if ((i=COM_CheckParm("-sndbits")) != 0)
{
bps = atoi(com_argv[i+1]);
}
}
-// COMMANDLINEOPTION: -sndspeed <hz> chooses 44100 hz, 22100 hz, or 11025 hz sound output rate
+// COMMANDLINEOPTION: Linux ALSA Sound: -sndspeed <hz> chooses 44100 hz, 22100 hz, or 11025 hz sound output rate
if ((i=COM_CheckParm("-sndspeed")) != 0)
{
rate = atoi(com_argv[i+1]);
}
}
-// COMMANDLINEOPTION: -sndmono sets sound output to mono
+// COMMANDLINEOPTION: Linux ALSA Sound: -sndmono sets sound output to mono
if ((i=COM_CheckParm("-sndmono")) != 0)
stereo=0;
-// COMMANDLINEOPTION: -sndstereo sets sound output to stereo
+// COMMANDLINEOPTION: Linux ALSA Sound: -sndstereo sets sound output to stereo
if ((i=COM_CheckParm("-sndstereo")) != 0)
stereo=1;
Cvar_RegisterVariable(&bgmvolume);
Cvar_RegisterVariable(&snd_staticvolume);
-// COMMANDLINEOPTION: -nosound disables sound (including CD audio)
+// COMMANDLINEOPTION: Sound: -nosound disables sound (including CD audio)
if (COM_CheckParm("-nosound") || COM_CheckParm("-safe"))
return;
snd_mempool = Mem_AllocPool("sound", 0, NULL);
-// COMMANDLINEOPTION: -simsound runs sound mixing but with no output
+// COMMANDLINEOPTION: Sound: -simsound runs sound mixing but with no output
if (COM_CheckParm("-simsound"))
fakedma = true;
if (vf_dll)
return true;
-// COMMANDLINEOPTION: -novorbis disables ogg vorbis sound support
+// COMMANDLINEOPTION: Sound: -novorbis disables ogg vorbis sound support
if (COM_CheckParm("-novorbis"))
return false;
s = getenv("QUAKE_SOUND_SAMPLEBITS");
if (s)
shm->format.width = atoi(s) / 8;
-// COMMANDLINEOPTION: -sndbits <bits> chooses 8 bit or 16 bit sound output
+// COMMANDLINEOPTION: Linux OSS Sound: -sndbits <bits> chooses 8 bit or 16 bit sound output
else if ((i = COM_CheckParm("-sndbits")) != 0)
shm->format.width = atoi(com_argv[i+1]) / 8;
s = getenv("QUAKE_SOUND_SPEED");
if (s)
shm->format.speed = atoi(s);
-// COMMANDLINEOPTION: -sndspeed <hz> chooses 44100 hz, 22100 hz, or 11025 hz sound output rate
+// COMMANDLINEOPTION: Linux OSS Sound: -sndspeed <hz> chooses 44100 hz, 22100 hz, or 11025 hz sound output rate
else if ((i = COM_CheckParm("-sndspeed")) != 0)
shm->format.speed = atoi(com_argv[i+1]);
else
s = getenv("QUAKE_SOUND_CHANNELS");
if (s)
shm->format.channels = atoi(s);
-// COMMANDLINEOPTION: -sndmono sets sound output to mono
+// COMMANDLINEOPTION: Linux OSS Sound: -sndmono sets sound output to mono
else if ((i = COM_CheckParm("-sndmono")) != 0)
shm->format.channels = 1;
-// COMMANDLINEOPTION: -sndstereo sets sound output to stereo
+// COMMANDLINEOPTION: Linux OSS Sound: -sndstereo sets sound output to stereo
else if ((i = COM_CheckParm("-sndstereo")) != 0)
shm->format.channels = 2;
else
shm->format.channels = 2; //stereo
shm->format.width = 2;
-// COMMANDLINEOPTION: -sndspeed <hz> chooses 44100 hz, 22100 hz, or 11025 hz sound output rate
+// COMMANDLINEOPTION: SDL Sound: -sndspeed <hz> chooses 44100 hz, 22100 hz, or 11025 hz sound output rate
i = COM_CheckParm( "-sndspeed" );
if( i && i != ( com_argc - 1 ) )
shm->format.speed = atoi( com_argv[ i+1 ] );
memset((void *)shm, 0, sizeof(*shm));
shm->format.channels = 2;
shm->format.width = 2;
-// COMMANDLINEOPTION: -sndspeed <hz> chooses 44100 hz, 22100 hz, or 11025 hz sound output rate
+// COMMANDLINEOPTION: Windows Sound: -sndspeed <hz> chooses 44100 hz, 22100 hz, or 11025 hz sound output rate
i = COM_CheckParm ("-sndspeed");
if (i && i != (com_argc - 1))
shm->format.speed = atoi(com_argv[i+1]);
dsbcaps.dwSize = sizeof(dsbcaps);
primary_format_set = false;
-// COMMANDLINEOPTION: -snoforceformat uses the format that DirectSound returns, rather than forcing it (DirectSound sound driver)
+// COMMANDLINEOPTION: Windows DirectSound: -snoforceformat uses the format that DirectSound returns, rather than forcing it
if (!COM_CheckParm ("-snoforceformat"))
{
if (DS_OK == pDS->lpVtbl->CreateSoundBuffer(pDS, &dsbuf, &pDSPBuf, NULL))
}
}
-// COMMANDLINEOPTION: -primarysound locks the sound hardware for exclusive use (DirectSound sound driver)
+// COMMANDLINEOPTION: Windows DirectSound: -primarysound locks the sound hardware for exclusive use
if (!primary_format_set || !COM_CheckParm ("-primarysound"))
{
// create the secondary buffer we'll actually work with
memset((void *)shm, 0, sizeof(*shm));
shm->format.channels = 2;
shm->format.width = 2;
-// COMMANDLINEOPTION: -sndspeed <hz> chooses 44100 hz, 22100 hz, or 11025 hz sound output rate
+// COMMANDLINEOPTION: Windows Sound: -sndspeed <hz> chooses 44100 hz, 22100 hz, or 11025 hz sound output rate
i = COM_CheckParm ("-sndspeed"); // LordHavoc: -sndspeed option
if (i && i != (com_argc - 1))
shm->format.speed = atoi(com_argv[i+1]);
{
sndinitstat stat;
-// COMMANDLINEOPTION: -wavonly uses wave sound instead of DirectSound (wave sound driver)
+// COMMANDLINEOPTION: Windows Sound: -wavonly uses wave sound instead of DirectSound
if (COM_CheckParm ("-wavonly"))
wavonly = true;
#endif
snprintf (engineversion, sizeof (engineversion), "%s %s %s", gamename, os, buildstring);
-// COMMANDLINEOPTION: -nostdout disables text output to the terminal the game was launched from
+// COMMANDLINEOPTION: Console: -nostdout disables text output to the terminal the game was launched from
if (COM_CheckParm("-nostdout"))
sys_nostdout = 1;
else
houtput = GetStdHandle (STD_OUTPUT_HANDLE);
// give QHOST a chance to hook into the console
-// COMMANDLINEOPTION: -HFILE is used by QHOST to hook into the windows dedicated server console window
if ((t = COM_CheckParm ("-HFILE")) > 0)
{
if (t < com_argc)
hFile = (HANDLE)atoi (com_argv[t+1]);
}
-// COMMANDLINEOPTION: -HPARENT is used by QHOST to hook into the windows dedicated server console window
if ((t = COM_CheckParm ("-HPARENT")) > 0)
{
if (t < com_argc)
heventParent = (HANDLE)atoi (com_argv[t+1]);
}
-// COMMANDLINEOPTION: -HCHILD is used by QHOST to hook into the windows dedicated server console window
if ((t = COM_CheckParm ("-HCHILD")) > 0)
{
if (t < com_argc)
Cvar_RegisterVariable (&vid_dga_mouseaccel);
#endif
InitSig(); // trap evil signals
-// COMMANDLINEOPTION: -nomouse disables mouse support (see also vid_mouse cvar)
+// COMMANDLINEOPTION: Input: -nomouse disables mouse support (see also vid_mouse cvar)
if (COM_CheckParm ("-nomouse") || COM_CheckParm("-safe"))
mouse_avail = false;
}
#else
drivername = "libGL.so.1";
#endif
-// COMMANDLINEOPTION: -gl_driver <drivername> selects a GL driver library, default is libGL.so.1 (Linux/BSD) or opengl32.dll (windows) or /usr/X11R6/lib/libGL.1.dylib (MacOSX), if you don't know what this is for, you don't need it
+// COMMANDLINEOPTION: Linux GLX: -gl_driver <drivername> selects a GL driver library, default is libGL.so.1, useful only for using fxmesa or similar, if you don't know what this is for, you don't need it
+// COMMANDLINEOPTION: BSD GLX: -gl_driver <drivername> selects a GL driver library, default is libGL.so.1, useful only for using fxmesa or similar, if you don't know what this is for, you don't need it
+// LordHavoc: although this works on MacOSX, it's useless there (as there is only one system libGL)
i = COM_CheckParm("-gl_driver");
if (i && i < com_argc - 1)
drivername = com_argv[i + 1];
gl_videosyncavailable = false;
-// COMMANDLINEOPTION: -nogetprocaddress disables GLX_ARB_get_proc_address (not required, more formal method of getting extension functions)
+// COMMANDLINEOPTION: Linux GLX: -nogetprocaddress disables GLX_ARB_get_proc_address (not required, more formal method of getting extension functions)
+// COMMANDLINEOPTION: BSD GLX: -nogetprocaddress disables GLX_ARB_get_proc_address (not required, more formal method of getting extension functions)
+// COMMANDLINEOPTION: MacOSX GLX: -nogetprocaddress disables GLX_ARB_get_proc_address (not required, more formal method of getting extension functions)
GL_CheckExtension("GLX_ARB_get_proc_address", getprocaddressfuncs, "-nogetprocaddress", false);
-// COMMANDLINEOPTION: -novideosync disables GLX_SGI_video_sync (required for video sync control on GLX)
+// COMMANDLINEOPTION: Linux GLX: -novideosync disables GLX_SGI_video_sync
+// COMMANDLINEOPTION: BSD GLX: -novideosync disables GLX_SGI_video_sync
+// COMMANDLINEOPTION: MacOSX GLX: -novideosync disables GLX_SGI_video_sync
gl_videosyncavailable = GL_CheckExtension("GLX_SGI_video_sync", videosyncfuncs, "-novideosync", false);
usingmouse = false;
drivername = "libGL.so.1";
#endif
-// COMMANDLINEOPTION: -gl_driver <drivername> selects a GL driver library, default is libGL.so.1 (Linux/BSD) or opengl32.dll (windows) or /usr/X11R6/lib/libGL.1.dylib (MacOSX), if you don't know what this is for, you don't need it
+// COMMANDLINEOPTION: SDL GL: -gl_driver <drivername> selects a GL driver library, default is libGL.so.1 (Linux/BSD) or opengl32.dll (windows) or OpenGL.framework (MacOSX), useful only for 3dfxogl.dll/3dfxvgl.dll or fxmesa or similar, if you don't know what this is for, you don't need it
i = COM_CheckParm("-gl_driver");
if (i && i < com_argc - 1)
drivername = com_argv[i + 1];
Con_DPrint("Checking OpenGL extensions...\n");
-// COMMANDLINEOPTION: -nodrawrangeelements disables GL_EXT_draw_range_elements (renders faster)
+// COMMANDLINEOPTION: GL: -nodrawrangeelements disables GL_EXT_draw_range_elements (renders faster)
if (!GL_CheckExtension("glDrawRangeElements", drawrangeelementsfuncs, "-nodrawrangeelements", true))
GL_CheckExtension("GL_EXT_draw_range_elements", drawrangeelementsextfuncs, "-nodrawrangeelements", false);
-// COMMANDLINEOPTION: -nomtex disables GL_ARB_multitexture (required for faster map rendering)
+// COMMANDLINEOPTION: GL: -nomtex disables GL_ARB_multitexture (required for faster map rendering)
if (GL_CheckExtension("GL_ARB_multitexture", multitexturefuncs, "-nomtex", false))
{
qglGetIntegerv(GL_MAX_TEXTURE_UNITS_ARB, &gl_textureunits);
-// COMMANDLINEOPTION: -nocombine disables GL_ARB_texture_env_combine or GL_EXT_texture_env_combine (required for bumpmapping and faster map rendering)
+// COMMANDLINEOPTION: GL: -nocombine disables GL_ARB_texture_env_combine or GL_EXT_texture_env_combine (required for bumpmapping and faster map rendering)
gl_combine_extension = GL_CheckExtension("GL_ARB_texture_env_combine", NULL, "-nocombine", false) || GL_CheckExtension("GL_EXT_texture_env_combine", NULL, "-nocombine", false);
-// COMMANDLINEOPTION: -nodot3 disables GL_ARB_texture_env_dot3 (required for bumpmapping)
+// COMMANDLINEOPTION: GL: -nodot3 disables GL_ARB_texture_env_dot3 (required for bumpmapping)
if (gl_combine_extension)
gl_dot3arb = GL_CheckExtension("GL_ARB_texture_env_dot3", NULL, "-nodot3", false);
}
-// COMMANDLINEOPTION: -notexture3d disables GL_EXT_texture3D (required for spherical lights, otherwise they render as a column)
+// COMMANDLINEOPTION: GL: -notexture3d disables GL_EXT_texture3D (required for spherical lights, otherwise they render as a column)
gl_texture3d = GL_CheckExtension("GL_EXT_texture3D", texture3dextfuncs, "-notexture3d", false);
-// COMMANDLINEOPTION: -nocubemap disables GL_ARB_texture_cube_map (required for bumpmapping)
+// COMMANDLINEOPTION: GL: -nocubemap disables GL_ARB_texture_cube_map (required for bumpmapping)
gl_texturecubemap = GL_CheckExtension("GL_ARB_texture_cube_map", NULL, "-nocubemap", false);
-// COMMANDLINEOPTION: -nocva disables GL_EXT_compiled_vertex_array (renders faster)
+// COMMANDLINEOPTION: GL: -nocva disables GL_EXT_compiled_vertex_array (renders faster)
gl_supportslockarrays = GL_CheckExtension("GL_EXT_compiled_vertex_array", compiledvertexarrayfuncs, "-nocva", false);
-// COMMANDLINEOPTION: -noedgeclamp disables GL_EXT_texture_edge_clamp or GL_SGIS_texture_edge_clamp (recommended, some cards do not support the other texture clamp method)
+// COMMANDLINEOPTION: GL: -noedgeclamp disables GL_EXT_texture_edge_clamp or GL_SGIS_texture_edge_clamp (recommended, some cards do not support the other texture clamp method)
gl_support_clamptoedge = GL_CheckExtension("GL_EXT_texture_edge_clamp", NULL, "-noedgeclamp", false) || GL_CheckExtension("GL_SGIS_texture_edge_clamp", NULL, "-noedgeclamp", false);
-// COMMANDLINEOPTION: -noanisotropy disables GL_EXT_texture_filter_anisotropic (allows higher quality texturing)
+// COMMANDLINEOPTION: GL: -noanisotropy disables GL_EXT_texture_filter_anisotropic (allows higher quality texturing)
if ((gl_support_anisotropy = GL_CheckExtension("GL_EXT_texture_filter_anisotropic", NULL, "-noanisotropy", false)))
qglGetIntegerv(GL_MAX_TEXTURE_MAX_ANISOTROPY_EXT, &gl_max_anisotropy);
-// COMMANDLINEOPTION: -notextureshader disables GL_NV_texture_shader (required for the Geforce3 water shader, NVIDIA only)
+// COMMANDLINEOPTION: GL: -notextureshader disables GL_NV_texture_shader (required for the Geforce3 water shader, NVIDIA only)
gl_textureshader = GL_CheckExtension("GL_NV_texture_shader", NULL, "-notextureshader", false);
-// COMMANDLINEOPTION: -nostenciltwoside disables GL_EXT_stencil_two_side (accelerates shadow rendering)
+// COMMANDLINEOPTION: GL: -nostenciltwoside disables GL_EXT_stencil_two_side (accelerates shadow rendering)
gl_support_stenciltwoside = GL_CheckExtension("GL_EXT_stencil_two_side", stenciltwosidefuncs, "-nostenciltwoside", false);
// we don't care if it's an extension or not, they are identical functions, so keep it simple in the rendering code
if (qglDrawRangeElements == NULL)
qglDrawRangeElements = qglDrawRangeElementsEXT;
-// COMMANDLINEOPTION: -noshaderobjects disables GL_ARB_shader_objects (required for vertex shader and fragment shader)
-// COMMANDLINEOPTION: -noshadinglanguage100 disables GL_ARB_shading_language_100 (required for vertex shader and fragment shader)
-// COMMANDLINEOPTION: -novertexshader disables GL_ARB_vertex_shader (currently unused, allows vertex shader effects)
-// COMMANDLINEOPTION: -nofragmentshader disables GL_ARB_fragment_shader (currently unused, allows pixel shader effects)
+// COMMANDLINEOPTION: GL: -noshaderobjects disables GL_ARB_shader_objects (required for vertex shader and fragment shader)
+// COMMANDLINEOPTION: GL: -noshadinglanguage100 disables GL_ARB_shading_language_100 (required for vertex shader and fragment shader)
+// COMMANDLINEOPTION: GL: -novertexshader disables GL_ARB_vertex_shader (currently unused, allows vertex shader effects)
+// COMMANDLINEOPTION: GL: -nofragmentshader disables GL_ARB_fragment_shader (currently unused, allows pixel shader effects)
if ((gl_support_shader_objects = GL_CheckExtension("GL_ARB_shader_objects", shaderobjectsfuncs, "-noshaderobjects", false)))
if ((gl_support_shading_language_100 = GL_CheckExtension("GL_ARB_shading_language_100", NULL, "-noshadinglanguage100", false)))
if ((gl_support_vertex_shader = GL_CheckExtension("GL_ARB_vertex_shader", vertexshaderfuncs, "-novertexshader", false)))
{
// interpret command-line parameters
vid_commandlinecheck = false;
-// COMMANDLINEOPTION: -window performs +vid_fullscreen 0
+// COMMANDLINEOPTION: Video: -window performs +vid_fullscreen 0
if (COM_CheckParm("-window") || COM_CheckParm("-safe"))
Cvar_SetValueQuick(&vid_fullscreen, false);
-// COMMANDLINEOPTION: -fullscreen performs +vid_fullscreen 1
+// COMMANDLINEOPTION: Video: -fullscreen performs +vid_fullscreen 1
if (COM_CheckParm("-fullscreen"))
Cvar_SetValueQuick(&vid_fullscreen, true);
width = 0;
height = 0;
-// COMMANDLINEOPTION: -width <pixels> performs +vid_width <pixels> and also +vid_height <pixels*3/4> if only -width is specified (example: -width 1024 sets 1024x768 mode)
+// COMMANDLINEOPTION: Video: -width <pixels> performs +vid_width <pixels> and also +vid_height <pixels*3/4> if only -width is specified (example: -width 1024 sets 1024x768 mode)
if ((i = COM_CheckParm("-width")) != 0)
width = atoi(com_argv[i+1]);
-// COMMANDLINEOPTION: -height <pixels> performs +vid_height <pixels> and also +vid_width <pixels*4/3> if only -height is specified (example: -height 768 sets 1024x768 mode)
+// COMMANDLINEOPTION: Video: -height <pixels> performs +vid_height <pixels> and also +vid_width <pixels*4/3> if only -height is specified (example: -height 768 sets 1024x768 mode)
if ((i = COM_CheckParm("-height")) != 0)
height = atoi(com_argv[i+1]);
if (width == 0)
Cvar_SetValueQuick(&vid_width, width);
if (height)
Cvar_SetValueQuick(&vid_height, height);
-// COMMANDLINEOPTION: -bpp <bits> performs +vid_bitsperpixel <bits> (example -bpp 32 or -bpp 16)
+// COMMANDLINEOPTION: Video: -bpp <bits> performs +vid_bitsperpixel <bits> (example -bpp 32 or -bpp 16)
if ((i = COM_CheckParm("-bpp")) != 0)
Cvar_SetQuick(&vid_bitsperpixel, com_argv[i+1]);
}
}
gldrivername = "opengl32.dll";
-// COMMANDLINEOPTION: -gl_driver <drivername> selects a GL driver library, default is libGL.so.1 (Linux/BSD) or opengl32.dll (windows) or /usr/X11R6/lib/libGL.1.dylib (MacOSX), if you don't know what this is for, you don't need it
+// COMMANDLINEOPTION: Windows WGL: -gl_driver <drivername> selects a GL driver library, default is opengl32.dll, useful only for 3dfxogl.dll or 3dfxvgl.dll, if you don't know what this is for, you don't need it
i = COM_CheckParm("-gl_driver");
if (i && i < com_argc - 1)
gldrivername = com_argv[i + 1];
if (qwglGetExtensionsStringARB)
gl_platformextensions = qwglGetExtensionsStringARB(hdc);
-// COMMANDLINEOPTION: -novideosync disables WGL_EXT_swap_control (required for video sync control on WGL)
+// COMMANDLINEOPTION: Windows WGL: -novideosync disables WGL_EXT_swap_control
gl_videosyncavailable = GL_CheckExtension("WGL_EXT_swap_control", wglswapintervalfuncs, "-novideosync", false);
ReleaseDC(mainwindow, hdc);
*/
void IN_StartupMouse (void)
{
-// COMMANDLINEOPTION: -nomouse disables mouse support (see also vid_mouse cvar)
if (COM_CheckParm ("-nomouse") || COM_CheckParm("-safe"))
return;
mouseinitialized = true;
-// COMMANDLINEOPTION: -dinput uses DirectInput for mouse/joystick input, may be more precise or responsive, but probably not (windows only)
+// COMMANDLINEOPTION: Windows Input: -dinput uses DirectInput (instead of GDI) for mouse/joystick input, may be more precise or responsive, but probably not
if (COM_CheckParm ("-dinput"))
{
dinput = IN_InitDInput ();
if (mouseparmsvalid)
{
-// COMMANDLINEOPTION: -noforcemspd disables setting of mouse speed (ignored with -dinput, windows only)
+// COMMANDLINEOPTION: Windows GDI Input: -noforcemspd disables setting of mouse speed (ignored with -dinput, windows only)
if ( COM_CheckParm ("-noforcemspd") )
newmouseparms[2] = originalmouseparms[2];
-// COMMANDLINEOPTION: -noforcemaccel disables setting of mouse acceleration (ignored with -dinput, windows only)
+// COMMANDLINEOPTION: Windows GDI Input: -noforcemaccel disables setting of mouse acceleration (ignored with -dinput, windows only)
if ( COM_CheckParm ("-noforcemaccel") )
{
newmouseparms[0] = originalmouseparms[0];
newmouseparms[1] = originalmouseparms[1];
}
-// COMMANDLINEOPTION: -noforcemparms disables setting of mouse parameters (ignored with -dinput, windows only)
+// COMMANDLINEOPTION: Windows GDI Input: -noforcemparms disables setting of mouse parameters (ignored with -dinput, windows only)
if ( COM_CheckParm ("-noforcemparms") )
{
newmouseparms[0] = originalmouseparms[0];
joy_avail = false;
// abort startup if user requests no joystick
-// COMMANDLINEOPTION: -nojoy disables joystick support, may be a small speed increase
+// COMMANDLINEOPTION: Windows Input: -nojoy disables joystick support, may be a small speed increase
if (COM_CheckParm ("-nojoy") || COM_CheckParm("-safe"))
return;