59 Commits

Author SHA1 Message Date
leilei-
513c538fba A bunch of things
- 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
- 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
- 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
2025-05-20 06:30:51 -04:00
sago007
e120f49e66 Fix duplicate symbol tvinterlace 2018-06-16 17:14:50 +02:00
sago007
1e47ea5264 Removed MDO for now 2018-02-12 20:55:54 +01:00
sago007
89d67c8c3e A few warnings from Travis. Including an out of bound access 2018-02-10 17:34:54 +01:00
sago007
8dbdaa7704 Also remove some clang warnings. Including removing some compiler aguments that are properly only doing things worse now. 2018-02-10 13:59:47 +01:00
sago007
57b2e3c0fd Com compiles without warnings on gcc 7.2.0. Might just test clang too 2018-02-10 13:43:56 +01:00
sago007
a099619f9e Reduced the warning count further 2018-02-06 20:59:19 +01:00
sago007
8c43d3368f Removed most warnings except for array bound.
Some logic changes has happened where I was certain that there was a bug.
2018-02-06 20:27:38 +01:00
sago007
976ce69b41 Small corrections 2016-11-27 12:25:51 +01:00
sago007
c0c6bbb0ef Pure formatting changes 2016-11-27 11:55:46 +01:00
sago007
e90e80eb92 Some incompatible pointer types 2016-11-27 11:54:01 +01:00
sago007
8a0c6dd04b Formatting changes 2016-11-27 11:46:04 +01:00
sago007
f5c2b2d71b Hard an brutal reformatting to make it easier to see my changes 2016-11-27 11:40:54 +01:00
sago007
217a26e3c6 Different proactive changes to prevent problems... or make them A LOT more visible. 2016-11-27 11:25:39 +01:00
sago007
dd2ce7ca1a No longer crashes on Linux 64 bit.
I did not know why "cg_leiEnhancement 1" caused the game to crash.

Before I started debugging I just ran through tr_particles.c and fixed a lot of warnings. This also fixed my problem.
I think the critical part was:
```
-int reallyactive;
+particle_t* reallyactive;
```

The diff makes it a bit hard but another change was:
```
else if (p->colortype = P_INDEXED)
```
to
```
else if (p->colortype == P_INDEXED)
```
and:
```
-vec3_t		color;
+vec4_t		color;
```
2016-11-27 10:34:14 +01:00
leilei-
f62b262b27 - "Generic" in vendor string no longer triggers software rasterizer performance workarounds 2016-11-16 00:32:08 -05:00
leilei-
ecb1a7a219 - Don't picmip the detail textures. this allows detail to look better in lower detail
- try to process generic shoehorned detail textures
2016-11-04 04:02:30 -04:00
leilei-
245fea051e Renderer-based particle system (#25)
* A WIP particle system

* - Some more particle refactoring
- an attempt to fix things that went wrong
- trying to integrate fog onto particles (which is currently wrong)
- qpal.h committed (oops)
- Attempt to separate particle rendering from particle moving for future optimization/refactor
2016-11-01 03:30:15 -04:00
leilei-
cc41c5793e - Quick fix to widescreen expansion code so it won't mess with interface refdefs anymore (the old menu logo should be at normal size now, for example)
- Don't build opengl1 and softwaare as those are either obsolete or don't make a difference and would only serve to confuse
2016-08-20 16:53:55 -04:00
leilei-
05e97b1a7f - fix nasty recursion coming from trace flares, by disabling flares in non-world situations (like interface) 2016-06-23 01:08:50 -04:00
leilei-
cf103f3cb0 - Trace checks added to flares (HUGE speedup)
- Remove obsolete Quake2-era "gamma" code that shouldn't be there anymore since there's a modern way to gamma correct now
2016-06-22 01:19:36 -04:00
leilei-
6711f046d3 - If it's not Windows NT or newer, then startup in 640x480 first, instead of malformed desktop resolutions. This causes 3 less unneccessary initializations on 3dfx 2016-06-08 01:07:16 -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-
5c4712f192 - added tcMod atlas. Lets you have texture page atlases, and animate them!
- Entity alpha can animate them too (for animated compatible replacement smokepuffs for example)
2016-05-19 06:57:02 -04:00
leilei-
d31b9ad6d9 changed this from a warning to a devmsg because these *really* spam up the console in OA3 and is generally a useless warning to the player. 2016-05-09 04:02:14 -04:00
leilei-
95dec7a204 - Made GLSL features a compiling option...sort of 2016-05-09 03:55:16 -04:00
leilei-
3e2c073524 update slightly obsolete filter code 2016-04-23 19:47:08 -04:00
leilei-
04a9dab58c - Moved flare quality check. Fixes crash with dynamic lights
- Removed some silly recursive call.
2016-02-22 01:45:55 -05:00
leilei-
ed43aa0c02 Flare-related speedup:
- r_flareDelay - delays the glReadPixels every specified tics to keep the video bus from being congested by excess reads (maps with way too many flares (i.e. pvomit) sohuld not slow down as much as before)
- TestFlareFast actually now is working as intended because of it
- normal high quality flare functionality moved to r_flareQuality 2.
- r_flareQuality default is now 1.
2016-02-22 00:47:59 -05:00
leilei-
444e8bc25f Preliminary MDO model support from revanic 2015-09-19 02:27:17 -04:00
leilei-
04870d3a20 - r_roundImagesDown 2 - nonpowerof2 (NPOT) support. No extension checking added yet; use at your own risk! (intended for buffer effects)
- r_parseStageSimple - working towards pcx2 support by loading shader stages with the texture last, to approximate blending functions by processing them into having alpha channels (or not, for opaque surfaces). Because I can.
- leifx filter change - indicate number of passes to the shader, so the pixel blurring order can be tweaked to further perfection (ridding the left pixel check as that happens)
2015-04-03 05:53:02 -04:00
leilei-
3597b3cefa - r_tvMode is now r_virtualMode
- r_virtualMode now takes the same modes from r_mode, rather than specifically 640x480 and 320x240
- cleaning up a bunch of warnings and general code refactoring
- r_lightmapBits - specify color depth of the lightmap
- added a few more r_modes
- r_iconBits - specify the color depth of icon elements, saves a bit of vram and the loss is questionably perceptable with all those flat colors anyway
- r_textureDither - work in progress dither for 16-bit textures
- deprecate r_shadeSpecular
- safelewd: load from models/player, so we can hit models/playerfs/ directory
2015-03-16 02:10:19 -04:00
leilei-
fd5f8bc4a6 - Detail texture forcing; adds detail texture layers to shaders that don't specify for one. Slightly broken and still needs work.
- Detail texture scale and layesr also adjust the amplification and density of this effect
- Detail mip fade fixed
- r_suggestiveThemes 0 properly loads models and shaders and textures from models/player only. speedup a bit
- r_suggestiveThemes 2 loads _lewd models, shaders and textures.  To keep 'safe' and 'sexy' safe from autodownloaded lewd that respect the prefix.
- removing r_anime _cel loading, which conflicts with the above system and i'm going all out shader on that anyway
- even more waterimage removal
- r_leifx no longer allows trilinear filter. closer to actual real world voodoo behavior
2015-03-01 04:57:37 -05:00
leilei-
f2c082017e - updated shader programs
- fixed brightness shader
- fixing leifx shaders
- r_modelshader - enables the use of a new diffuse fragment shader for enhanced model shading
- shadespecular slightly regressed :(
- don't do libxmp for travis?
- disabled leifx gamma, seems redundant with actual gamma now
- more waterimage cruft removal. don't do this waterreflectrefract until we have fbos please
2015-01-26 05:01:46 -05:00
leilei-
05433b5c7e - stupid hack to do leifx texture shaders
- some less waterimage stuff
2014-12-18 05:22:04 -05:00
leilei-
1609c8732a - aspect correction for r_tvmode
- timedemo finishing writes to cl_timedemoResult (for UI3)
- support for screen palletizing shader
- Additional placeholder textures (not yet used)
- trying to make r_film more dynamic
- more model shading crap you should ignore
- also, ignore the
2014-11-11 06:03:45 -05:00
leilei-
c18b3f7339 - Options to reduce the blinding dynamic light flare effects to not so blinding that it affects the gameplay negatively
- Some unfinished hack to try to get tvMode screenshots
2014-09-22 06:52:33 -04:00
leilei-
afa5229e5c - Removing more unused 'crazy' lighting
- More r_envmode/shademode removal
- LoadTGA warning shouldn't try to load the tga anyway (leading to gray badly loaded textures which may have memory leaks or buffer issues or something)
2014-09-11 01:01:45 -04:00
leilei-
f619c08fd9 - Deprecating r_shadeMode and r_envMode
- Added lightingSpecularDiffuse which is like diffuse, but clamps and does a specular calc for the overbrights, and this is also disableable with the new r_shadeSpecular cvar
- Added tcGen environmentWater which is more suitable for water
- Faster bulge code from JK2
- Shutting up TGA loading fatal errors for warnings instead (to hunt down bad TGAs easier)
2014-09-06 09:23:10 -04:00
leilei-
2c07195887 - an attempt at sorting and restructuring tr_bloom.c
- NTSC filter support
- added some rgbGen that has entity colors AND lighting, so colorable players don't have to glow
- broken image loading time for imagelist
2014-07-24 02:19:26 -04:00
leilei-
43d6a97c43 - Fixed crash for fragment shader effects being loaded for unsupported hardware
- unfinished texture dumping mode, r_texdump would save jpegs of any texture that loads....upside down. The purpose of this is to make compact content builds with only the used textures (without bloat)
- the eager beginning of a water refraction/reflection buffer
- some map texture listing fixes
- very unfinished revolution environment maps
- very unfinished 'crazy' lighting changes
- some pointless whitepsaces added for no reason other than to open file, add something, remove it later, and leave it changed
2014-06-14 07:30:15 -04:00
leilei-
1947afbe2e - Widescreen fixes, should expand on all viewsize values now and leave less refdefs alone
- Accumulation buffer motion blur, which should work on shader model 2 hardware with less memory footprint. Pixel shader moved to r_motionblur 3 (will do texture motionblur on 2)
- Tried to make r_tvMode 2 half vertical resolution, and failed.
- Q3MME's FX scripted particle system files, just dropped in there, because they can't compile at all atm. Procrastinplanning on integrating this to replace my cgame effects
2014-06-07 05:07:56 -04:00
leilei-
5451917a76 - r_tvMode - forces 640x480 rendering no matter what res
- r_retroAA - old 2000 console style anti-aliasing (if you can call it that)
- XMP uses mixer's sample rate.
2014-05-31 00:29:57 -04:00
leilei-
04f656565d - r_suggestiveThemes cvar - loads _safe (for work) models if set to 0, and if they're available.
- similarly, r_anime looks for _cel prefixed shaders and loads them instead
- r_iconmip - resizes 2D icons (that have nopicmip) to save some inches of video memory/texture cache.
- Don't allocate motionblur textures if motionblur is off
- Motionblur variable passes hack
- remove debug lines from the wip shading mode
2014-05-26 01:24:51 -04:00
leilei-
0f734a2ed2 - Eye tracking
- GLSL Color control WIP
- 'crazy' lighitng WIP
- GLSL Motion blur WIP. Currently VRAM heavy
- Attempt at fallback shaders, which doesn't work right now.
2014-05-18 17:04:26 -04:00
leilei-
b4274edf64 Fix that glsl nextpixel thing. fixes 3dfx shader blur 2014-05-03 00:03:15 -04:00
leilei-
c4f5beb32d - Some changes to support the anime glsl/texture map hack i'm doing. Cvar will be r_anime
- r_envmode 2 replaced with JK2 envmapping
- r_leidebug because I need it
2014-04-10 08:47:44 -04:00
leilei-
ea3b975543 - External placeholder shader feature - for wiping the ugly squares off of maps
- slight paletted texture cleanup.
2014-04-04 05:49:36 -04:00
leilei-
7c0facdacc - r_leifx cvar that controls the magnitude of faking a certain ubiquitous video card, requires leifx_filter/dither/gamma shaders (not committed yet)
- r_slowness, r_slowness_cpu and r_slowness_gpu cvars that sort of fake system bottlenecks. not useful for playing
- more r_modes, no standards followed.
- some additional but dummied out model shading functions
2014-03-28 07:05:56 -04:00