Commit graph

123 commits

Author SHA1 Message Date
leilei-
e8f5ed153c
November stuff
* - s_interrupt - allows sounds to be interrupted by the same sound or entity channel
- new dynamic light calculation for vertex lighting, affecting vertex color (no projected dlight textures)
- rgbGen material for allowing calculation for diffuse, specular, emmissive vertex colors by hex values
- rgbMod shader command allowing new vertex color effects
- removed deprecated R_ParseStageSimple, it never worked as intended

* - r_slowness gone. Use llvmpipe, PCem, or a slow computer instead.

* Spring cleaning of old deprecated/broken post-process GLSL experiments
- r_anime broke in 2015
- r_tvMode - well, shaderglass exists now
- r_motionblur - Bad technique, too much memory
- t_pslettize - slow, relies on shader's lookup of a vector table
- r_film - bad on well-lit maps
- r_retroAA - this broke early too. also looked bad. would rather implement FSAA 4x

* test

* Cool console things
- cl_consoleScale : makes the console more 640x480 sized on any higher res. Also affects notify messages, so you can read chat easier
- cl_consoleColor also affects the line at the bottom. Also new default colors
- If consoleShader can't load (which will happen with some mods), it will fallback to a flat-colored console.
- Generic'd the red/blue team names.  We will not be having missionpack clans.

* SDL2: Clicking the red X now does something: you can leave!!!

If it sucks.... hit da bricks!!
real winners quit

* s_xmp_startPattern - makes the tracker song play a different pattern (for use with sub-songs)

* - fixed xmp playback as xmp explicitly requires a length of the module now. Fixes issue #96
- suppress the warning about non-22khz music, as mods are playing at the mixer's rate always, and this warning regards a much earlier (1999) unstable sound mixer.

* - deprecating r_modelshader because the shader got stale, old, buggy, and amd hates it now
- r_shadeMethod will be something else (and not shader-based)

* - r_lightmapColorNorm : Make normalization of bright luxels an option, default is 1 (q3 behavior).
- r_lightmapColorNorm 0 = no normalization, straight clamp, like Nightdive's vision of Quake2
- r_lightmapColorNorm 2 = experiment: normalize, but add some luminance on while maintaining the hue by normalizing again. This tries to restore more range on fully saturated colors
- dropped SHADER_MAX_VERTEXES back to 1000 because raising it causes various unexpected issues, so dialing it down for now
- raise MAX_IMAGE_ANIMATIONS to 16 because I've got a cool water shader using it and 8 is too choppy

* - Crash fix for older (<=2001) mods by trimming the string shared with ui module, so no overflow for them
- jettisoning old proposed mme particle system that was never ever hooked up properly.
- other small warning cleanup

* Some renderer refactor and cleanup
- r_shadeMethod : 0/1 = q3 behavior, 2 = ue1-ish behavior, 3 = mix of 1 and 2, -1 = one uniform color, 150-666 = a lod range to change between the 3
- r_monolightmaps : refactor - goes to the light data instead of the calculations and images
- removed r_greyscale because this is a data-modifying novelty that would complicate support for loading compressed texture formats. This is better off as a post-process shader
- environment mapping refactor, rewrite and cleanup
- removed a lot of deprecated rgbGens
- removed r_texdump (it never worked)
- remove a few leftover broken postprocess things

* - Internal GLSL brightness shader, so gamma control can work without the glsl/brightness_fp.glsl file when r_ext_vertex_shader is 1 and r_alternateBrightness is 2.
- r_skyTess - an attempt to make the complexity of skydomes an option so it could use less polygons. Has no effect on skyboxes

* - More r_dynamiclight options:
  r_dynamiclight 2 = Slightly additive dynamic light projections, modeled after the PS2 port
  r_dynamiclight 3 = disables dynamic light projections but substitutes them with flashblends (ala GLQuake). If r_monolightmaps are enabled, the flashblends are orange. Viewblends are left out as the sudden duration of the dynamic lights when firing would be harmful.
- Because of these changes, Riva 128 and Permedia 2 owners should be allowed to enjoy dynamic lights
- option to use ReactOS's wspiapi.h header (file not included)
- some makefile changes to allow an option for more Win 4 (95/NT4) compatiblity easier. Compiling with WINFOUR disables curl, uses SDL1, and has some additional workarounds to get it working on Windows 95 (winsock2 still required though)

* - fixed a fog modulation regression stemming from a rgbMod case returning and not breaking. whoops
- little warning cleanup wrt flashblend

* Sun stuff
- r_drawSun is now default 1 (was 0), because...
- sunShader key - allows sky shaders to explicitly define a shader to use for the sun. In addition to that, a flare type number and a size multiplier number can follow for a little more customization. Partially inspired by RTCW's sunshader key, which only dealt with the image (and never finished their lens flare reflections)
- Suns with a portal on screen won't cancel out the sun or its flare
- If no sun flare is specified, don't draw a sun flare at all. should be one less unnecessary depth read
- r_drawSun 2 is the old 'always show sun' behavior
- sun shader now correctly orientated
- drawing the sun uses a quadstamp
- some 'low end video' alternative shader loading that current does not work. May revert
- ifdefing out shademethod LOD for fixing later

* - GetViewPosition builtin for cgame to allow stuff like text drawn over entities
- MDR physics: allows MDR bones to move independently of model by a defined file on bone numbers, their type, etc. (like hair and flags), but broken (currently ifdef'd out)
- ifdef'd out IQM support as that's broken, we aren't using it, and only other whole games are using it
- Removed attempt at r_lowEndVideo

* - Model fog fix
- Suppressing redundant sound warnings to developer print
- Preliminary DDS texture loading
- Dropping renderergl1 and renderergl2 as they're unsupported, redundant, stale code with none of the new improvements, and we don't use modularized renderers. Still having these files in the tree implies we use them and that can bring confusion.

* - Cgame entity glow renderer hookup
- R_ShowImages: Adjust for overbright
- a tribute to Rebecca Heineman and Jennell Jaquays

* RB_UVcolor: casting as gcc 14 hates this line
makefile - because gcc 14 is fussier, i'll do this wrt VMA for now.
2025-11-23 02:38:33 -05:00
Joey Herguth
c2250b7fca Add SDL2 compile option.
This sets SDL2 as the default as well.
2021-08-25 18:51:53 -07:00
sago007
c7798a862b Small whitespace fix 2016-12-30 19:19:40 +01:00
sago007
3a716d93b4 Now creates XDG_DATA_HOME if it is missing. This fixes all known problems. 2016-12-30 18:24:12 +01:00
sago007
05cbf012e3 Moved the symlink logic in case of an invalid. Also deleted old outcommented logic. 2016-12-30 17:39:33 +01:00
sago007
d905eba02b Wrong logic while creating "homeXdg".
Also changed .local/share/openarena to .local/share/OpenArena.

com_homepath will properly be permanently broken as it cannot handle two different home names.
2016-12-28 16:23:09 +01:00
sago007
4209b06c26 Started to implement Issue #30. XDG folder structure. All weaknesses from the old system are still there:
HOME must be defined: Not a regression
Only one level of mkdir: Not a regression (but might be more relevant)

com_homepath is not fully implemented and it will need to be set to "openarena" instead of ".openarena". But that just makes it like Mac.
2016-12-28 15:28:19 +01:00
leilei-
3b1646bf1e Integrated youurayy's input lag fix (which was long overdue) 2016-06-02 02:33:07 -04:00
leilei-
22d8f94415 Removing dependency on PSAPI.DLL, and instead, load it when it's needed (and available) just for one EnumProcesses function.
tl;dr: This fixes Windows 95 support
2016-06-01 04:09:11 -04:00
leilei-
ea9bdc0a68 Several renderer fixes for 3dfx hardware:
- Try to determine which 3dfx card we are using
- Use GL_CLAMP for 3dfx instead, fixes dynamic lights/skyboxes/etc. (GL_CLAMP_TO_EDGE becomes GL_REPEAT on older 3dfx drivers)
- Support for 3dfx gamma control and overbrights restored
- Indexed w/ alpha color is now forced GL_RGBA on Voodoo Graphics (v1)
- attempt at silencing the 3dfx splash
2016-05-31 04:34:45 -04:00
leilei-
601a5ec701 The "eaarly console" widnow is now back for Windows
- can be defined off to windowless behavior
- X still doesn't close it
- Still some makefile-related and other cleanup/implementation to do. i sleepcoded this :(
2016-05-28 08:35:11 -04:00
Tim Angus
462694763e Bug #6021 Fix misuse of Sys_Mkdir (Joerg Dietrich) 2013-09-04 17:56:11 +01:00
Thilo Schulz
daf71ca502 Fix recursive crash when home path cannot be created 2013-08-25 12:00:30 +02:00
Zack Middleton
43ea1aebb3 Fix Windows server history scrolling
Update history position when CON_HistNext goes to input line, otherwise
when going to previous a line is skipped.
Don't let CON_HistPrev go to unused lines.
2013-07-21 17:32:56 -05:00
/dev/humancontroller
a8ce30163e make the fread() success-check code in Sys_RandomBytes() more secure 2013-05-30 15:41:19 -05:00
Tim Angus
230af8c9e9 Fix shfolder.dll not getting freed 2013-04-09 21:43:01 +01:00
Zack Middleton
2e45edb550 5717 - Gamecode can open file "" for reading 2013-02-15 21:08:47 -06:00
Zack Middleton
2d6b68edd8 Fix win32 console partial print being overwritten 2013-01-10 16:29:54 -06:00
Zack Middleton
20cd170993 Make win32 console cursor visible 2013-01-10 15:34:54 -06:00
Zack Middleton
c1ddacf5be Fix win32 input left on buffer and overwritten
The input line on the console screen buffer was moved up a line and
overwritten by CON_Print.

Remove input line when console shutdown as well.
2013-01-10 15:06:59 -06:00
Zack Middleton
daa9619913 Don't look for colors past win32 input line length 2013-01-09 15:42:21 -06:00
Zack Middleton
768083b46f Fix win32 dedicated input line printing to backlog
Use to write win32 input line using WriteConsole then overwrite by
CON_Print, so when CON_Print removes color format characters the end of original input line was visable.

"hi ^1guys" use to be shown as "hi guysys" in the console backlog.
2013-01-09 15:21:44 -06:00
Zack Middleton
c501c1ad8a Colorize text on win32 console
Text input line color based on code by "spior"
Main colorize function based on Sys_AnsiColorPrint in sys_main.c
2013-01-08 17:20:01 -06:00
Thilo Schulz
ded2b11959 Fix this for real now. 2012-07-23 21:27:17 +00:00
Tim Angus
88cbeae0fd * Fix warning 2012-07-07 18:24:20 +00:00
Thilo Schulz
053aa8ead7 Fix windows as well 2012-07-07 18:22:19 +00:00
Tim Angus
37f2b4db90 * (bug #5709) Fix crash when invoked with --version 2012-07-07 17:32:19 +00:00
Zack Middleton
6067cadc72 Removed 0xAD character, from /dev/humancontroller. 2012-06-19 14:47:30 +00:00
Zachary Slater
b5acc31a4d CVE-2012-3345 2012-06-14 18:28:58 +00:00
Zack Middleton
c84377854a Unix clients can now enter commands from tty console. Patch by Rambetter with some edits by me. (#4799) 2012-02-06 21:05:57 +00:00
Tim Angus
fd986dae06 * Fix various warnings with GCC and clang 2011-10-27 21:32:28 +00:00
Thilo Schulz
d4f8c4716d Force unload of running VMs when quitting through signal handler 2011-10-14 13:52:28 +00:00
Thilo Schulz
8a500d71da Set default rounding mode to FE_NEAREST again. Thanks to Matthias Bentrup for providing some explanations. 2011-09-27 14:43:20 +00:00
Zack Middleton
0866b667e0 Fixed win32 dedicated server console output. It use to write input line and then write output over the top of it. Reported by Ensiform. 2011-09-12 20:14:36 +00:00
Zack Middleton
06231971ed Use STDOUT_FILENO instead of 1 in con_tty.c 2011-08-05 16:19:01 +00:00
Thilo Schulz
52aed503b5 Bug 5146 - Remove last of warnings under gcc 4.6.1 for Linux, patch by q3urt.undead@gmail.com 2011-08-05 13:33:15 +00:00
Tim Angus
85ae08e800 * Fix some grammar in DLL loading
* s/Sys_LoadQVMDll/Sys_LoadGameDll/
2011-08-03 14:32:49 +00:00
Thilo Schulz
8ab91bde8e - Fix already defined command warnings for minimize
- Fix recursive CL_Shutdown warning and "command already defined" warnings when quitting while playing on a server that changed the gamedir.
2011-08-01 10:16:40 +00:00
Thilo Schulz
404fe4e6e0 Don't search system directories for renderer lib 2011-08-01 09:33:48 +00:00
Thilo Schulz
3752b1d7c4 Change DLL search path order for external libraries that are linked at runtime, like libcurl or libopenal to:
* system library paths
  * executable path
  * fs_basepath
2011-07-29 20:18:37 +00:00
Thilo Schulz
23f6fd1633 Bug 5094 - Code cleanup, patch by Zack Middleton and DevHC. Fixes unused-but-set gcc warnings 2011-07-29 12:27:00 +00:00
Tim Angus
22552c7bab * Replace usage of system with fork/exec 2011-07-24 22:01:50 +00:00
Tim Angus
b248479376 * Fix various issues with unix Sys_Dialog 2011-07-18 19:32:25 +00:00
Thilo Schulz
9dc32d55e2 Bug 4812 - GCC __attribute__ annotations for printf, non-returning functions etc., patch by linux@youmustbejoking.demon.co.uk and Zack Middleton 2011-07-18 14:56:57 +00:00
Tim Angus
ea6cf5fda9 * Use specific exit code for xmessage 2011-07-18 10:14:04 +00:00
Thilo Schulz
dee3724a13 - Improve game_restart:
* differing screen resolutions and network settings are now honoured when changing fs_game
  * Fix hunk memory leak on game_restart
  * Move cls.state and cls.servername to clc so connection state is fully preserved over game_restart
  * Revert back to previous fs_game after disconnecting from a server that triggered a game_restart
  * Fix error dialog popping up after every game_restart if an error happened previously (reported by Ensiform)
- Fixed that not all commands added by CL_Init() would be removed by CL_Shutdown()
2011-06-21 11:18:35 +00:00
Thilo Schulz
055bd3b464 Bug 5047 - Win32 dedicated server console title should use define, patch by Zack Middleton 2011-06-18 14:30:20 +00:00
Thilo Schulz
9219cde4e8 - Small change to search path order - local files not in .pk3s take precedence over files in pk3s. Should make life easier for modders/mappers wanting to override textures that are already contained in some older pk3
- Make VM loading more robust, change loading order: when vm_* == 0 first try loading DLL, then QVM in *each* search directory/path
- Fix FS_FileForHandle that would return a FILE pointer to invalid file handle 0
2011-06-15 22:09:26 +00:00
Thilo Schulz
a447aa82af Fix #if macros for idx64 and id386 2011-06-15 14:10:20 +00:00
Thilo Schulz
03201aff22 - Add MASM assembler files for MSVC x64 projects to support vm_x86 in x64 mode
- Clean up ftol()/snapvector() mess
- Make use of SSE instructions for ftol()/snapvector() if available
- move ftol/snapvector pure assembler to inline assembler, this will add x86_64 and improve support for different calling conventions
- Set FPU control word at program startup to get consistent behaviour on all platforms
2011-06-13 09:56:39 +00:00