Commit graph

124 commits

Author SHA1 Message Date
Ragnvald Maartmann-Moe IV
44c89c1904 Optimize fullbright testing for brushes, assorted other cleanups, test for
functions built into current GL drivers, as well as the old extensions, and
add incorrectly rendering BGRA support.
Whee!
2004-02-24 20:50:55 +00:00
Ragnvald Maartmann-Moe IV
872498a1f0 Reorder a lot of code, removing tons of ifs. multitexture paths are a bit more
sane now. Also optimize QSG2 color handling, and fix some QSG2 bugs. Not that
anyone cares, nobody uses it anyways.
Should be faster, but isn't here. *grmbl*
2004-02-22 06:00:15 +00:00
Chris Ison
ca6112767c Grievres' water HOM and mtex FB only rendering FB texture fix 2004-02-21 09:04:52 +00:00
Ragnvald Maartmann-Moe IV
5157f668ad Fix a bunch of state leaks that made multitextured fullbrights smear the world.
Now just have one (known) issue with bmodels with fullbright textures not
rendering their base texture. Floating fullbrights are nifty!

Also a number of optimizations, which need wider performance testing.
2004-02-21 05:36:19 +00:00
Ragnvald Maartmann-Moe IV
88c5d21ece Whitespace, slight code reorder in gl_rmain.c 2004-02-09 04:13:44 +00:00
Ragnvald Maartmann-Moe IV
e1146a541c TruForm support. Controlled by gl_tessellate 2004-01-26 00:13:47 +00:00
Bill Currie
6a94607d9d rename VectorMA to VectorMultAdd, add VectorMultSub and use it in a few
places. Not certain how much speed difference it makes :/
2003-08-08 15:25:53 +00:00
Ragnvald Maartmann-Moe IV
6763d73f99 Make glError testing static, for now, to shut up compiler warnings. 2003-05-09 05:22:30 +00:00
Ragnvald Maartmann-Moe IV
f6b556a3a1 *beats CVS with the cluebat* 2003-05-09 01:41:56 +00:00
Ragnvald Maartmann-Moe IV
d68b4b6121 \n is nice occasionally. 2003-05-08 22:32:02 +00:00
Ragnvald Maartmann-Moe IV
28dd1612c3 Clean up glError handling. 2003-05-08 22:16:30 +00:00
Bill Currie
905f1826eb temporarily remove location support from nq (and location markers from both)
until client code has been cleaned up more
2003-04-21 18:26:21 +00:00
Ragnvald Maartmann-Moe IV
3bfdf0aea3 Test for gl errors every frame. 2003-03-21 21:28:09 +00:00
Ragnvald Maartmann-Moe IV
88c2735d9c Make sprite rendering use vertex arrays, as a test for detection of vertex array support (tests only for OpenGL 1.1 or better, at the moment, no driver blacklist yet). 2003-03-20 19:58:18 +00:00
Ragnvald Maartmann-Moe IV
83f0901c17 Cleaned up fisheye code which totally ignored QF coding style.
Also attempt to fix an init bug in R_InitFishEyeOnce (add gl_cube_map_capable = false to else).
2003-02-09 19:35:49 +00:00
Bill Currie
d63cde4103 import the GL_ARB_texture_cube_map defines 2003-01-15 18:26:58 +00:00
Bill Currie
0ea15c3f82 sw and gl fisheye patches from Arkadi Shishlov (arkadi@it.lv). I don't
think /I/ can play that way (dizzy:)
2003-01-15 16:53:34 +00:00
Bill Currie
761a7546dd re-arrange things so __attribute__ and __builtin_expect are properly
autoconfiscated so rcsid will continue to work with gcc 3.3
2003-01-15 15:31:36 +00:00
Bill Currie
71196fedf6 make gcc more anal about prototypes, string constants and function
visibility (ie, global functions must have a prototype)
2003-01-06 18:28:13 +00:00
Bill Currie
ca4b3acd6c big protototype cleanup. Now, except for a few cases, all non-static
prototypes are in headers files.
2002-11-05 19:12:51 +00:00
Ragnvald Maartmann-Moe IV
00b798c5b6 MORE whitespace. Will it never end? 2002-10-10 20:12:32 +00:00
Ragnvald Maartmann-Moe IV
32a85e7130 Clipping cleanups.
Calculate radius for alias models as well as brush.
Culling is no longer optional on alias models (was only ever disabled for viewmodel, which is a lot of extra effort to avoid clip testing 1 thing out of hundreds).
Clip QSG2 scaled alias models with a scaled bbox.
2002-08-20 00:48:59 +00:00
Ragnvald Maartmann-Moe IV
fd1ded5c4a Add r_nearclip and r_particles_nearclip. Also put some limits on r_farclip. And fix id's insane max and min float, and some minor improvements in frustum setup in GL. 2002-06-26 22:20:12 +00:00
Ragnvald Maartmann-Moe IV
46949068a2 Check return value on R_AllocDlight. Small optimization, people cutting r_dlight_max heavily should like it. 2002-06-05 22:07:38 +00:00
Brian Koropoff
ee5d0b7a99 Added r_farclip to control the far clipping plane. 2002-05-20 05:11:12 +00:00
Chris Ison
347cdc5e33 some small performance optimizations with textures and animations 2002-04-15 03:26:08 +00:00
Bill Currie
51805ebd92 nothing much, just give wildcode a 30% speed boost. Basicly, stop binding
a texture for every single brush poly: due to texsort, they will come in
batches.
2002-03-16 09:25:06 +00:00
Ragnvald Maartmann-Moe IV
018481b1ac Might as well allow gl_affinemodels to affect the viewmodel as well... 2001-12-19 20:15:38 +00:00
Ragnvald Maartmann-Moe IV
e78bdb3ea6 Fix failure to free cache for non-shadowed stuff (lightning, grenades, etc).
Also a minor speedup (only mess with glHints once per frame, instead of dozens of times).
2001-12-19 18:32:26 +00:00
Ragnvald Maartmann-Moe IV
f66b7a93e5 Major particle interface cleanup, several bugfixes, and minor performance improvements. Oh, check out "/help easter_eggs" (gl-only, at the moment). 2001-12-11 22:37:30 +00:00
Bill Currie
e99b422628 extinguish gl_fires. it's semi-broken, generally nasty (code wise) and
kinda tacky. also results in a slight speed boost:)
2001-11-25 06:24:26 +00:00
Ragnvald Maartmann-Moe IV
4d406337b6 Move gl_fires into gl, where it belongs.
Also some small cleanups in particles.
Brighten grenade smoke a tiny bit, so it's not so invisible in the typically dark quake areas.
And some minor cleanups to water rendering.
2001-11-24 08:21:07 +00:00
Ragnvald Maartmann-Moe IV
3f79367865 Minor rendering cleanup, also may help rendering speed when r_wateralpha = 1, by playing with draw order. 2001-11-20 09:41:15 +00:00
Ragnvald Maartmann-Moe IV
de0b4f65fa modelalpha and currenentity cleanups. 2001-11-04 07:40:35 +00:00
Ragnvald Maartmann-Moe IV
e8b36b1a71 Remove unused R_CullBlocked. 2001-11-03 07:30:15 +00:00
Ragnvald Maartmann-Moe IV
d1c115da05 Whitespace. 2001-10-30 19:58:01 +00:00
Bill Currie
85c9e0ab1e more externs cleaned up 2001-10-29 17:46:03 +00:00
Bill Currie
bf309fb554 split the sprite and alias model rendering code out from gl_rmain.c into
their own files.
2001-10-23 17:20:56 +00:00
Ragnvald Maartmann-Moe IV
db87121c2b Whitespace. 2001-10-10 04:59:43 +00:00
Ragnvald Maartmann-Moe IV
9cc671e6d2 Try #2.
Change r_maxparticles from short to unsigned int.
Make MAX_DLIGHTS into a cvar, r_dlight_max that sets the unsigned int r_maxdlights.
2001-10-09 20:35:17 +00:00
Ragnvald Maartmann-Moe IV
820fcbb8d2 R_Mirror-related cleanups, and some whitespace. 2001-10-02 06:13:22 +00:00
Ragnvald Maartmann-Moe IV
5e6f77cddb Instead of glEnable/glDisable (GL_ALPHA_TEST) pairs for every sprite rendered, let's do it once for the entire sprite loop. Minor hit when there are no sprites, but 2+ it's a gain. Better worst case, rather than better peak performance. 2001-10-02 01:48:51 +00:00
Ragnvald Maartmann-Moe IV
63ac10dfde Clean up glDepthFunc and glDepthRange so it's properly initted, and not set needlessly every frame. 2001-10-02 00:01:05 +00:00
Ragnvald Maartmann-Moe IV
4b3c4e1eaf Whitespace. 2001-10-01 21:52:05 +00:00
Bill Currie
b1f4a778f9 the rcsid commit from hell }:> 2001-09-28 06:26:31 +00:00
Ragnvald Maartmann-Moe IV
a7d8e2c0ea TE_EXPLOSION2 now does colored lighting. And spark showers brightened up a bit. Sparks all yellow now, none of the weird dingy grey ones. ;) 2001-09-16 20:07:28 +00:00
Ragnvald Maartmann-Moe IV
28fe1dc004 Tweak rocket trails. Uglier, but don't bog down rocket snipers. Also a couple tiny optimizations and cleanups. 2001-09-09 19:37:07 +00:00
Bill Currie
05f489735e code cleanups and possibly minor optimisations 2001-09-07 21:15:08 +00:00
Ragnvald Maartmann-Moe IV
65c526c057 Some minor cleanups, and lots of particle effects tweaks.
Less blinding rocket trails is probably the most noticable change, other than a nice speedup in nq timedemos. Little change for overkill, though. Aw...
2001-09-04 10:32:51 +00:00
Ragnvald Maartmann-Moe IV
ed4de07e9a Header and variable declaration cleanups, tiny bit of whitespace. 2001-09-01 08:57:04 +00:00
Bill Currie
ea614fc2c6 turns out the sprite models are /not/ relocatable, so back out that change
in favor of cleaning up the accessors
2001-08-31 17:33:25 +00:00
Adam Olsen
384dfb7b66 - partial work for putting sprites in the cache.
doesn't currently build.
2001-08-31 15:32:11 +00:00
Adam Olsen
f1a016c8a5 - Refine the Cache_Get callback, to use a void * instead of a char *
- Switch alias models over to Cache_Get/Cache_Release
2001-08-31 12:22:45 +00:00
Bill Currie
d81d7fd02c glColor cleanup 2001-08-30 18:24:19 +00:00
Ragnvald Maartmann-Moe IV
793efd6976 Whitespace. 2001-08-27 01:00:03 +00:00
Ragnvald Maartmann-Moe IV
da1c680364 Whitespace. 2001-08-26 17:13:33 +00:00
Ragnvald Maartmann-Moe IV
e7fb6a1100 Whitespace, comment cleanups, and a very tiny cleanup/micro-optimization for R_AddDynamicLights. 2001-08-22 11:00:25 +00:00
Bill Currie
ec3eed4c7a don't do the lerp calcs for blend == 0 or blend == 1 2001-08-21 05:46:55 +00:00
Bill Currie
0d82df96b0 ah, found the correct fix :) 2001-08-21 05:29:15 +00:00
Bill Currie
7ea46cf4ed disable lerping of the shadedots. stops the flicker but some lighting will
probably be a little funny.
2001-08-21 05:16:30 +00:00
Bill Currie
9bad6b89bb lerping works again. flames no longer flicker, but players do a /little/ 2001-08-21 03:49:17 +00:00
Ragnvald Maartmann-Moe IV
b868a09661 Kill off gl_view.c and sw_view.c. Renderer merge is more or less complete now. Software and gl renderers now calculate color shifts the same way, and sw looks a bit different now. Powerups don't shift enough in sw right now, IMO. 2001-08-10 00:28:57 +00:00
Bill Currie
0cba1b0f62 pre-calculate blended alias frame verteces and don't bother doing any
blended calculations for single pose frames/models
2001-08-07 21:18:49 +00:00
Bill Currie
647d38fa40 Make R_MarkLights use the vis info to speed things up. Oddly, even though
R_MarkLights is now about 3% instead of about 15%, I've lost 8 fps on my
null GL speed test. However, R_AddDynamicLights has jumped up a bit, so I'm
wording if maybe more surfaces are being lit.
2001-08-05 04:01:45 +00:00
Ragnvald Maartmann-Moe IV
6e9b51edfc (Optionally) Use glTexSubImage2D for lightmap updates. Doesn't give as large a boost as I'd hoped, but will matter far more as other optimizations happen. New cvars gl_lightmap_align does nothing yet, and gl_lightmap_subimage only works in mode 0 and 1. Mode 2 (should be fastest mode on most cards) will eventully get implemented... 2001-08-02 02:18:04 +00:00
Bill Currie
f61ca0e321 fix the persistent fires. For sanity's sake, the non-renderer specific parts
of gl_dyn_fires.c have been moved to r_main.c (for now).
2001-06-29 02:43:04 +00:00
Zephaniah E. Hull
908d265212 Clean up and repair of the run time linking, does NOT work until deek
commits his gl_funcs.c.
2001-06-26 02:26:46 +00:00
Jeff Teunissen
3fbfa27fcd Woohoo. The QFGL_* function prefixes are gone again from the tree. It
might even work under Windows now, but don't get your hopes too high. :)
2001-06-25 06:17:07 +00:00
Zephaniah E. Hull
3715430479 This is changing more then I wanted to at once, however.
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.)
2001-06-24 09:25:55 +00:00
Bill Currie
323015b11a include/QF header cleanup. including config.h (or any file from include) is
a nono because headers in include/QF get installed, but include don't and thus
would break quakeforge-dev.
2001-05-31 05:33:13 +00:00
Bill Currie
6bf58ab1af no header includes cvar.h now 2001-05-31 03:41:35 +00:00
Bill Currie
f988572c4d lighthalf and gl_lightmode, meet Mr. Chainsaw, he will be your playmate today. 2001-05-29 21:59:02 +00:00
Bill Currie
a87c4bbd93 vid.c:
Don't bother checking vid_gamma for CVAR_ROM becuase it is impossible to
	get to VID_UpdateGamma when it is set except for when the cvar is
	initially created, and we /want/ the code to execute in that case.
vid.h:
	add initialized to viddef_t
vid_common_gl.c:
	actually /use/ gammatable (it tends to help)
vid_*.c:
	clean up rendundant decls of gammatable, vid_initialized (now
	vid.initialized) and make sure vid.initialized gets set.
gl_view.c:
	remove gammatable decls
2001-05-25 04:03:47 +00:00
Bill Currie
73e6e1684f FINALLY, the nq and qw renderers are merged. the view and particle subsystems
are not yet merged due to their dependence on the client, but that will come
soon.
2001-05-24 19:22:35 +00:00
Renamed from nq/source/gl_rmain.c (Browse further)