Commit graph

52 commits

Author SHA1 Message Date
Yamagi Burmeister
7ea4db4ace Remove now unused function CL_SendCommand(). 2016-08-04 21:29:30 +02:00
Yamagi Burmeister
d15f5d5b97 Make sure CL_UpdateWindowedMouse() is called.
Without this the automatic mouse grab is not working.
2016-08-04 21:28:17 +02:00
Yamagi Burmeister
4ae8706d22 Make the client asynchronous, e.g. decouble net and refresh frames.
This is largely based upon the cl_async 1 mode from KMQuake2, which in
turn is based upon r1q2. The origins of this code may be even older...
Different to KMQuake2 the asynchonous mode is not optional, the client
is always asynchonous. Since we're mainly integrating this rather
fundamental change to simplify the complex internal timing between
client, server and refresh, there's no point in keeping it optional.

The old cl_maxfps cvar controls the network frames. 30 frames should be
enough, even Q3A hasn't more. The new gl_maxfps cvar controls the render
frames. It's set to 95 fps by default to avoid possible remnant of the
famous 125hz bug.
2016-08-04 17:36:42 +02:00
Yamagi Burmeister
978eec1a8d Add an explicit fflush() when writing the config.
Yes, fclose() flushes the stream and yes, this is unnecessary. But I've
seen at least two times partial written configs on Win 10. :(
2016-08-04 09:07:47 +02:00
Yamagi Burmeister
eaee1d71d5 Rename cl_stereo* cvars to gl_stereo*.
They're renderer cvars, not client cvars.
2016-04-07 17:01:09 +02:00
Valery Guskov
f6c596c1c5 better default configuration for 3d 2016-04-04 23:57:59 +03:00
Valery Guskov
0f8bda3c33 first attempt at porting separation support
ported from stereo-quake
http://www.benryves.com/products/stereoquake
2016-04-01 08:51:11 +03:00
Yamagi Burmeister
5ad7b1e72d Fix several printf in the client.
Submitted by: Ozkan Sezer
2015-08-24 17:52:57 +02:00
Daniel Gibson
1ce9bdba51 Implemented a persistent, per game/mod console history
it's saved in $HOME/.yq2/$mod/history.txt

While I was at it, I made the max number of lines in the history
configurable at compiletime by introducing a NUM_KEY_LINES #define
2015-05-20 14:59:32 +02:00
Yamagi Burmeister
db10e0db87 Untangle the input system from the refresher
In the old times the refresher was a stand alone DLL. For performance
reasons and to avoid laggy input parts of the input system were
implemented in this DLL. Now that the renfresher is part of the main
binary and initialized at client startup we can remove most of the
abstractions between input system, refresher and client. Also the
input system can be treated as a normal subsystem.

Changes:
- Untangle the VID_* stuff and the IN_* stuff. The functions
  called by function pointers in in_state are now called directly
  and 'struct in_state' was removed.

- Remove input.h and rename the appropriate backend functions.
  There's no longer a need for an abstraction layer between the
  input backend and the input frontend.

- Move input initialization and shutdown into CL_Init(), like it's
  already done for all other subsystems.

- Remove Key_ClearStates(). I'm pretty sure that's a left over from
  the old Win 9x backends and unnecessary.

- General cleanup.
2015-01-16 18:23:39 +01:00
Yamagi Burmeister
2795088e86 Initialize the screen handling code before the renderer
This change is needed to break a otherwise fatal cycle:
- The renderer calls VID_MenuInit()
- VID_MenuInit() calls SCR_GetMenuScale()
- SCR_GetMenuScale() relies on gl_menuscale which is still
  uninitialized at this time.
2014-06-24 19:11:53 +02:00
Yamagi Burmeister
18733b68ce Do not allow input devices to write to command buffer
Input devices should send key events and nothing more. The ability to
add commands into the input buffer was used by the joystick code
(removed long time ago) and as a dirty hack to work around limitations
of DirectInput.
2014-01-05 18:51:27 +01:00
svdijk
6472514c8f Lets not do the last two commits just before 5.11
Revert "change several strcat calls to Q_strlcat calls"
This reverts commit ab879f1bc7.

Revert "change (v)sprintf calls to (v)snprintf calls"
This reverts commit b46e210d76.
2013-05-18 18:59:39 +02:00
svdijk
ab879f1bc7 change several strcat calls to Q_strlcat calls 2013-05-17 22:25:18 +02:00
svdijk
e07294b6b1 replace most strncpy calls (several of them wrong) by Q_strlcpy calls 2013-05-11 14:44:36 +02:00
svdijk
3c6a57129e cinematics: force 4:3 aspect ratio (new cvar cin_force43) 2013-04-22 20:44:47 +02:00
svdijk
561add00a8 cl_main:CL_UpdateWindowedMouse() optimization. 2012-11-16 20:30:59 +01:00
svdijk
247e2baa3a More mouse grab/release tuning. 2012-11-14 21:08:07 +01:00
svdijk
eb8a2d792f Minor console mouse release tweak. 2012-11-05 21:33:44 +01:00
svdijk
64632bbc3b client/cl_main.c:UpdateWindowedMouse(): release mouse in menu. 2012-10-30 20:36:23 +01:00
svdijk
76e3480ccb Some rewriting of windowed_mouse setting, in preparation of releasing the mouse in the menu. 2012-10-30 20:36:15 +01:00
Ricardo Garcia
74beca0d11 Add "horplus" cvar to get Hor+ behavior with default FOV
If "horplus" is set, the "fov" cvar is interpreted as the horizontal FOV
in a 4:3 screen, and is adapted automatically to the current screen
aspect ratio accordingly. If not set, use the old Vert- approach.

In addition, "horplus" can also be set from the video menu by selecting
the "Auto" option for aspect ratio, which also resets the FOV value to the
standard 90 degrees.

Finally, add a 5:4 aspect ratio (1280x1024) and correct the 16:9 angle
slightly.
2012-10-28 10:20:46 +01:00
Yamagi Burmeister
a79b705c13 Make cl_maxfps persistent 2012-10-06 09:15:32 +02:00
Yamagi Burmeister
b52336850f Reformat the client 2012-07-22 15:34:45 +02:00
Yamagi Burmeister
e8eea857e4 Fix another buffer overflow, this time when writing the config.cfg
This overflow is a problem on all platforms but manifested itself
especially on a german Windows XP due to it's long profile path.
2012-06-10 18:45:14 +02:00
Yamagi Burmeister
e9c90e16a9 Change atoi() to strtol() 2012-06-04 09:13:28 +02:00
Christoph Mallon
ab034114b4 Whitespace fixes. 2012-04-30 08:25:59 +02:00
Yamagi Burmeister
03015a686b Hide music playback from CD behind CDA 2012-04-25 08:53:25 +00:00
Yamagi Burmeister
9d60a5de6a Hide OGG/Vorbis support under OGG 2012-04-25 08:24:38 +00:00
Yamagi Burmeister
b282f41093 Begrenze cl_maxfps per Default auf 95 2010-11-27 11:56:50 +00:00
Yamagi Burmeister
8b3002b1dd Benenne alle r_ CVAR in gl_ um 2010-10-24 08:50:01 +00:00
Yamagi Burmeister
ca1f64c016 Behebe das Problem, dass CL_Shutdown() rekursiv ein weiteres Mal
aufgerufen wird. Danke an caedes für das entgödeln.
2010-10-19 16:21:02 +00:00
Yamagi Burmeister
7edacb5638 - Reiße das Clipboard raus, funktionierte eh nicht
- Entferne weiteren toten Code
2010-10-19 08:34:59 +00:00
Yamagi Burmeister
67ef502a93 - Reduce sounds to 96
- Increase com_maxfps to 120
2010-10-01 16:11:00 +00:00
Yamagi Burmeister
0c020c4ee4 Intelligentere Deafults:
rate 8000 ist mehr als ausreichend bei allem, was kein Modem mehr ist.
s_mixahead 0.14 ist besser als 0.2, außer man will ein leichtes soundlag
cl_maxfps auf 60. Das reicht und verhindert bugs
2010-07-13 18:42:12 +00:00
Yamagi Burmeister
787686a976 Dateiheader neu formatiert und "particles.h" entfernt 2010-07-13 18:19:42 +00:00
Yamagi Burmeister
6fd3a53119 Die Reste vom Joystick entfernt 2010-07-13 18:04:07 +00:00
Yamagi Burmeister
974aeeea41 cl_newfx.c auf andere Dateien verteilt und entfernt 2010-06-18 16:28:25 +00:00
Yamagi Burmeister
ca2cbd5da6 Den Autodownload-Code in eine eigene Datei 2010-06-18 16:15:33 +00:00
Yamagi Burmeister
286f180e08 Den generischen Netzwerkkram in eine eigene Datei 2010-06-18 16:07:51 +00:00
Yamagi Burmeister
7f27895864 - cl_stereo* endgültig entfernt
- Heute funktionieren TCP-Stacks meist
2010-06-18 15:52:39 +00:00
Yamagi Burmeister
8731796ce1 Ein Dateiheader und die ungenutzten cl_stereo* cvar raus 2010-06-18 15:47:54 +00:00
Yamagi Burmeister
e4fcb87983 cl_main.c neu formatiert, die Kommentare aktualisiert und eine Refrenz
auf die Zeit vor SDL entfernt.
2010-06-18 08:33:12 +00:00
Yamagi Burmeister
66725c11e5 Allways Run ist nicht überschreibbar -> also zurück
freelook muss auch dem renderer beigepult werden
2010-02-01 15:23:57 +00:00
Yamagi Burmeister
413ed9f6d1 Freelook und Always Run in Standardeinstellung ein 2010-02-01 15:10:50 +00:00
Yamagi Burmeister
8ef2d63866 Erlaube die Anzeige der Waffe im Widescreen-Mode und mache dies Default 2009-10-04 12:32:44 +00:00
Yamagi Burmeister
b6f5dadf4c Merge in den Trunk:
- OGG/Vorbis Support
 - pk3 Support (ungetestet)
2009-10-03 16:06:45 +00:00
Yamagi Burmeister
310cf9ee77 Zwei Warnungen durch Casts behoben. Damit bauen Client und
Common nun mit -Werror durch.
2009-03-04 09:03:08 +00:00
Yamagi Burmeister
05e630158a Dateien des Clients neu angeordnet 2009-03-03 13:43:32 +00:00
Yamagi Burmeister
61b0a4c456 Mit dieser kleinen Aenderung koennen wir hoffentlich wieder Maps laden 2009-03-02 18:16:46 +00:00