Bill Currie
3eb859a88f
Move the entity transform setup into the clients.
...
This has several benifits:
o The silly issue with alias model pitches being backwards is kept out
of the renderer (it's a quakec thing: entites do their pitch
backwards, but originally, only alias models were rotated. Hipnotic
did brush entity rotations in the correct direction).
o Angle to frame vector conversions are done only when the entity's
angles vector changes, rather than every frame. This avoids a lot of
unnecessary trig function calls.
o Once transformed, an entity's frame vectors are always available.
However, the vectors are left handed rather than right handed (ie,
forward/left/up instead of forward/right/up): just a matter of
watching the sign. This avoids even more trig calls (flag models in
qw).
o This paves the way for merging brush entity surface rendering with the
world model surface rendering (the actual goal of this patch).
o This also paves the way for using quaternions to represent entity
orientation, as that would be a protocol change.
2011-12-15 17:09:01 +09:00
Bill Currie
91e65b6c80
Rename mplane_t to plane_t and clean up the mess.
...
I got rather tired of there being multiple definitions of mostly compatible
plane types (and I need a common type anyway). dplane_t still exists for
now because I want to be careful when messing with the actual bsp format.
2011-11-28 20:54:34 +09:00
Bill Currie
1c47f9e16d
Kill some magic numbers.
2011-09-04 09:58:12 +09:00
Bill Currie
efa0105748
Rename some headers to fix doxygen warnings.
2011-07-23 15:58:45 +09:00
Bill Currie
47e55fe1c6
Properly terminate each fisheye quad strip.
...
The horizontal quad strips need to be rendered individually rather than as
one single strip. The latter results in ugly triangles crossing the screen.
2011-04-17 13:03:22 +09:00
Bill Currie
14480fd1b4
Move the call to R_ClearEnts to the renderer.
...
This fixes the hang on certain maps in qw-client.
2010-12-25 19:59:34 +09:00
Bill Currie
8919aec663
Get global fog working in mtex mode.
2010-12-10 21:40:36 +09:00
Bill Currie
a6941e27ef
Eliminate MAX_VISEDICTS. Unlimited visible entities.
...
The renderer can now render as many entities as can be crammed into the
currently visible set of nodes.
2010-12-03 14:59:02 +09:00
Bill Currie
8c4fe2f844
Rename Sys_DPrintf to Sys_MaskPrintf.
...
We now have finer runtime control over what gets printed. Need to do a
SYS_DEV audit, creating new masks as apropriate.
2010-11-26 16:19:26 +09:00
Bill Currie
a5f0fbc821
Proper widescreen support. The GL renderer now respects the pixel aspect calculated by the vid init code. Also, a new cvar: vid_aspect. The format is width:height and the values may be any float greater than 0. The default is 4:3, but any units may be used.
2009-12-24 05:33:41 +00:00
Bill Currie
4b0320f341
glx, gly, glwidth and glheight are now gone too. also GL_BeginRendering
2009-12-23 08:20:29 +00:00
Bill Currie
ee0de1b4e1
got it right this time
2009-12-23 08:05:03 +00:00
Bill Currie
c2945605bc
oops
2009-12-23 07:57:07 +00:00
Bill Currie
8ddfdf03b2
with the changes in size handling, viewport setup becomes much simpler
2009-12-23 07:53:05 +00:00
Bill Currie
6d6dc27592
make startup and shutdown a little quieter
2007-11-06 10:39:49 +00:00
Bill Currie
d66934942d
nuke Con_Printf and Con_DPrintf and use Sys_* instead
2007-11-06 10:17:14 +00:00
Bill Currie
81a57bb3fa
patch from phrosty for vc2005 support. includes fixes for a bunch of gcc-isms that crept in over the years.
2007-03-22 23:20:57 +00:00
Bill Currie
99c0954b47
the big dso visibility patch :). Sure, we have to have unique names for static builds, but with controlled visibitly we should get faster program loads (although this isn't C++, so it's not as bad) and complex plugins are cleaner.
2007-03-10 12:00:59 +00:00
Bill Currie
7bca4cf8af
clean up the draw interface a bit
2006-12-02 10:07:08 +00:00
Bill Currie
3fb03fc2be
hah, should have been using __attribute__((used)) all that time (rather
...
than __attribute__((unused))). fixes the missing console in -x11
2005-08-04 15:27:09 +00:00
Bill Currie
616f094369
don't mangle the angle. no idea why it was there and it shouldn't normally
...
get there /anyway/
2005-04-27 08:07:09 +00:00
Bill Currie
8a237169c3
patches to allow for multiple view ports
2004-05-07 03:54:35 +00:00
Bill Currie
57ffcae9fe
remove some dead code
2004-05-03 04:52:00 +00:00
Bill Currie
fc4211c257
the rest of Grievre's lighting tweaks
2004-05-02 21:21:00 +00:00
Bill Currie
1c0735d0c9
* taniwha mutters about end-runs (sorry, Grievre)
2004-04-28 04:07:50 +00:00
Bill Currie
785307fd9a
Grievre's lighting tweeks
2004-04-27 22:18:23 +00:00
Ragnvald Maartmann-Moe IV
29502c8f5a
Lots of optimizations, particularly for GL state changes, and tweak lighting a
...
bit more.
Also a cleanup from Grievre: Use VectorIsZero in two places in gl_mod_alias.c.
2004-03-15 21:32:19 +00:00
Ragnvald Maartmann-Moe IV
9cd16b8dfd
Grievre's lighting patch, plus some of my own changes.
...
My changes:
Emit normals if truform is enabled.
Attempt to avoid 0,0,0 normals (makes lighting & tesselation unhappy).
Fix some (ancient) apparent bugs in GetAliasFrameVerts16().
Clamp minlight, instead of adding it.
Apply colormod as glColor, rather than adding it to emission, to prevent QSG2
issues with fullbrights.
Rearrange init code, and don't go quite as wild with responsiveness to lights.
Material & lightmode settings will need tweaking & testing to work well on all
cards. Feedback needed there.
2004-03-10 08:14:38 +00:00
Ragnvald Maartmann-Moe IV
b7df0b5278
Remove gl_doublebright, remove fractional overbrights, clean up init a bit,
...
uglify init a bit. Stuff for taniwha to look at. Nothing to see here, move
along.
2004-03-07 23:51:29 +00:00
Ragnvald Maartmann-Moe IV
e29e469646
Multitexture state fix. Harmless so far, but testing carefully helps us avoid
...
state leak horrors.
2004-02-27 21:42:52 +00:00
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