Commit graph

557 commits

Author SHA1 Message Date
Ragnvald Maartmann-Moe IV
f773e1fa36 Minor alias model rendering speedup. 2002-08-03 07:07:23 +00:00
Ragnvald Maartmann-Moe IV
10c3f91a24 Revert taniwha's broken-radeon workaround. 2002-08-03 07:07:00 +00:00
Bill Currie
9c08f5b169 fix a typo that caused weirdness with the lerping 2002-08-03 06:13:35 +00:00
Ragnvald Maartmann-Moe IV
97d6f46f75 Speed up 16bit coord alias models a bit. (only one VectorScale per vertex now) 2002-08-02 18:07:53 +00:00
Bill Currie
2ce0f2ded2 we now require modern autoconf (2.52+), automake (1.6+) and libtool (1.4+).
This gives us a bunch more flexibility. plugins no longer have the "lib"
prefix or the version suffix, they're now installed in
$fs_sharepath/QFplugins,, builds should take much less time (in general,
only one of pic or non-pic versions are build), bins and libs can have
individual CFLAGS
2002-08-01 19:49:10 +00:00
Ragnvald Maartmann-Moe IV
587de27849 Another step towards QSG2 compliance. 2002-07-25 14:43:36 +00:00
Ragnvald Maartmann-Moe IV
4ed68266ea Speedup when r_waterripple = 0, and small speedup to texture coordinate calculation. 2002-07-25 14:01:36 +00:00
Ragnvald Maartmann-Moe IV
d3fc8c5fb6 No need for function pointers on R_AddDynamicLights_*, they are never called from outside the R_BuildLightMaps_* function that matches them.
Nice spotting, taniwha!
2002-07-24 15:30:28 +00:00
Ragnvald Maartmann-Moe IV
85c7e43aef Split lightmaps off from surface drawing. 2002-07-23 19:57:47 +00:00
Ragnvald Maartmann-Moe IV
d297c2b3a3 Colormod & alpha for brushmodels, excluding skypoly emittors. 2002-07-07 06:15:36 +00:00
Ragnvald Maartmann-Moe IV
edc4e27124 Minor order fixup. 2002-07-07 02:34:48 +00:00
Ragnvald Maartmann-Moe IV
a49177c605 Merge a few more lines into queue_character, and prepare for optimizing gl Draw_nString. 2002-06-28 17:47:26 +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
e6e11af426 Move the contents of gl_funcs.c out of the renderer, and into targets where they belong. Also some cleanups. -sgl target is temporarily broken, all others should work. 2002-06-24 21:35:37 +00:00
Chris Ison
70d8026067 Removing -3dfx's dependancy on clide 2002-06-24 15:56:01 +00:00
Ragnvald Maartmann-Moe IV
c8bc5dfb4c QSG2 glows almost working. Plus lots of typos killed. 2002-06-18 21:41:24 +00:00
Ragnvald Maartmann-Moe IV
c25cfe6c9e A couple extra glFinishes a frame just aren't good for performance, even if they are a handy workaround for taniwha's text rendering bug... 2002-06-18 15:40:30 +00:00
Bill Currie
1486c97b8f move the vertex setup and va flushing code into inline functions, killing a
lot of duplicate code. Performance is not harmed :)
also some whitespace
2002-06-18 04:13:46 +00:00
Ragnvald Maartmann-Moe IV
00f5d82a86 Make wizard spike hits visible, plus a couple minor cleanups. 2002-06-15 10:54:26 +00:00
Ragnvald Maartmann-Moe IV
2a4f2a77fb Whitespace. 2002-06-15 10:52:14 +00:00
Bill Currie
b65c96ad99 don't call draw_z_sky_polys for modes that don't need it 2002-06-14 19:25:32 +00:00
Ragnvald Maartmann-Moe IV
eaf0f90c2f Undo thinko. 2002-06-14 06:23:11 +00:00
Ragnvald Maartmann-Moe IV
c7432caf2e Fixes to shadow rendering, plus get QSG scale working for alias models. Which breaks viewmodel rendering until we figure out how that is escaping getting scale set. 2002-06-14 06:08:45 +00:00
Ragnvald Maartmann-Moe IV
f12af8a3d4 Minor cleanup/optimization of sprite model rendering. 2002-06-14 06:06:38 +00:00
Ragnvald Maartmann-Moe IV
463ac44d9f Minor optimization for shadows, and make translucent objects have shadows matching their alpha. 2002-06-14 04:14:52 +00:00
Ragnvald Maartmann-Moe IV
942bf55c06 Flush console text before rendering menus, and a tiny optimization to fullscreen blend rendering in GL. 2002-06-13 22:51:43 +00:00
Ragnvald Maartmann-Moe IV
10d7d17fcc Use vertex arrays for text. Another 1-3% speedup. 2002-06-13 05:24:52 +00:00
Ragnvald Maartmann-Moe IV
ceb73449bb Order of operations cleanup, QSG2 alpha is now colormod[3] in entities. 2002-06-07 11:25:47 +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
Ragnvald Maartmann-Moe IV
0552d31b0b Minor optimization. 2002-06-05 06:46:21 +00:00
Ragnvald Maartmann-Moe IV
0bce2d0f2e Add QSG2 colormod, alpha, and scale for sprites. Probably not used by anything, but there you go. 2002-06-05 05:56:13 +00:00
Bill Currie
bebf3f9599 massive speedup to noise_diamondsquare (not that it /really/ matters:) 2002-05-28 05:34:06 +00:00
Bill Currie
f3132162ae speedup r_lightmap_components 3 by ~4.2% in null-render 2002-05-28 03:49:13 +00:00
Bill Currie
101d38bd0c two win32 fixes for gcc 3.1 2002-05-28 03:33:03 +00:00
Bill Currie
acdd37b381 this seems to give ~2.9% speed boost to overkill for null-render 2002-05-28 00:04:01 +00:00
Ragnvald Maartmann-Moe IV
802bcc2762 Another 0.657% speedup for greyscale lighting. Unfortunately, at a price of considerable code duplication. But this is necessary for other planned changes. 2002-05-26 08:56:48 +00:00
Ragnvald Maartmann-Moe IV
6c8e2c24aa *grumbles about old gcc* 2002-05-26 07:07:10 +00:00
Brian Koropoff
75ec7de2f5 This better actually fix the lightmap code. 2002-05-25 21:55:34 +00:00
Brian Koropoff
ddd96312b1 Removed useless dereferencing. With any luck I understand what despair's
code is supposed to do this time.
2002-05-25 20:04:42 +00:00
Ragnvald Maartmann-Moe IV
b7900a2c43 Undo snax's order of operation breakage, and fix the typo that broke lightmap merging for r_lightmap_components 1.
The real problem with greyscale lighting, is in brush model loading. It'll probably take me a while to sort it out, since taniwha didn't get to it before taking off for the weekend. Sorry...
2002-05-25 15:01:23 +00:00
Brian Koropoff
11a14c077e Small order-of-operations fix. 2002-05-24 23:32:34 +00:00
Ragnvald Maartmann-Moe IV
2fe76b39e7 Smarter lightmap handling code. Still considerable optimization possible, at expense of duplicate code. 2002-05-24 17:12:41 +00:00
Brian Koropoff
ee5d0b7a99 Added r_farclip to control the far clipping plane. 2002-05-20 05:11:12 +00:00
Bill Currie
6a5bbf6f0a memory allocation checking cleanup 2002-05-14 06:37:28 +00:00
Bill Currie
44dcf74627 strip the \n from all(?) of the Sys_Error calls (Sys_Error itself will be
adding \n).
2002-05-14 06:12:29 +00:00
Bill Currie
44f9700ed2 two spelling correctsions are remove a redundant VectorCopy 2002-04-30 16:37:11 +00:00
Brian Koropoff
ff901a312f Added argument-list functions to EXP with trig and inverse trig functions
to start.  More will follow.  Switched to doubles from floats and allowed
numbers with exponents to be parsed properly.  Also changed the number of
significant digits printed to 10.  Changed fov so it is now capped at 1,
not 10.  The float value of fov is now used instead of int, so more
precision can be attained at small values.
2002-04-28 08:30:54 +00:00
Jeff Teunissen
5b069de40c Redo r_wateralpha so that it doesn't force its value based on the watervis
serverinfo. Instead, create a new cl_wateralpha float variable that is set to
r_wateralpha->value in Host_Frame, and use that float during rendering.
2002-04-25 12:51:04 +00:00
Jeff Teunissen
a4f3973ef1 Add multitexture support for Alias models, and disable the multitexture
support for BSP models, until they can be fixed. gl_multitexture should now
actually be a speedup!

NOTE: Some OpenGL implementations have trouble with the texture function
used. 3Dfx Voodoo 1/2 are known to have this trouble. I don't know how to fix
this, or even if it can be fixed. :/
2002-04-16 16:51:35 +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
Bill Currie
1d420edcd0 start work on instrumenting GLstub.so 2002-03-11 23:55:50 +00:00
Bill Currie
26d7463be7 the majority of raptor's sgi build patch. I'll look at the last two bits
(server.c and vid_sdl.c) later.
2002-03-03 06:03:51 +00:00
Bill Currie
2f62b744fa After an interesting discussion with Lordhavoc, make the GPU do more work in
the background. This is achieved by doing only a (qf)glFlush at the end of
the frame, doing the inter rendering-frame processing (ie, client frame
processing), glFinish, glXSwapBuffers, then starting the next frame. I've
changed the glFinish call in SCR_UpdateScreen to glFlush and the glFlush
call in GL_EndRendering to glFinish because there's no point in calling
glFinish followed by glFlush. Also, SwapBuffers should always be precedded
by glFinish rather than just glFlush (in Lordhavoc's experience). The
GL_EndRendering at the end of SCR_UpdateScreen got moved to the beginning.
2002-02-27 05:22:21 +00:00
Bill Currie
6767d6bfa0 win32 compile fixes 2002-01-19 20:45:45 +00:00
Bill Currie
c86c5a78bf finally, the client console is merged 2002-01-16 21:53:42 +00:00
Seth Galbraith
0dcfc6dfb4 load tga versions of .lmp files if present 2002-01-16 01:59:05 +00:00
Seth Galbraith
9c1969146c cleanup, implemented tga loading for gfx.wad files 2002-01-15 21:05:34 +00:00
Seth Galbraith
5f4c7ee7bd implemented VP_PARALLEL_UPRIGHT - ask about my Mighty Oak 2002-01-11 03:00:32 +00:00
Seth Galbraith
7dc5b587f8 also try to load skies from gfx/env as darkplaces does 2002-01-11 01:26:21 +00:00
Bill Currie
6132049bf4 gl_draw.c: whitespace
draw.c: (both sw and sw32) fix Draw_nString to be similar to gl_draw.c
2002-01-10 20:19:22 +00:00
Chris Ison
859c18dc07 tidy up Draw_String calls and switched to Draw_nString were needed 2002-01-10 03:54:00 +00:00
Chris Ison
6073ff8d58 added Draw_nString for displaying a non \0 terminated string 2002-01-09 21:20:22 +00:00
Bill Currie
72d6f34dc8 first step to using a saner internal represnetation for the high precietion
models.
2002-01-07 06:32:46 +00:00
Bill Currie
14fb289f2f duplicate GL_GetAliasFrameVerts so 16 bit alias models don't cost so much
even when they aren't being used.
2002-01-07 03:46:56 +00:00
Bill Currie
b582a02aff fix the broken lighting for unlerped verteces 2002-01-07 01:05:44 +00:00
Ragnvald Maartmann-Moe IV
097ff0006f Rearrange vertex order in quads. 2002-01-06 22:43:51 +00:00
Ragnvald Maartmann-Moe IV
aa36ebf6e4 Little bit of whitespace cleanup. 2002-01-05 19:03:36 +00:00
Seth Galbraith
cb6ef3e225 putting if outside the for loop should speed things up 2002-01-05 16:53:43 +00:00
Seth Galbraith
ac5b6823c6 high precision model rendering in GL 2002-01-05 16:20:38 +00:00
Ragnvald Maartmann-Moe IV
a18fdbca68 Minor clarification in pt_fire ramp aging, plus reduce VectorScale use in fixed distance trails from once per particle to once per trail. 2002-01-05 07:23:23 +00:00
Ragnvald Maartmann-Moe IV
b13efc3a83 Particle updates. Some cleanups, small speedups, and reimplement id's effects. r_particle_styles 0 to see id's effects. 2002-01-04 03:32:59 +00:00
Ragnvald Maartmann-Moe IV
07fb841a49 Whitespace, mark a 1 line function as inline. 2002-01-04 03:25:30 +00:00
Bill Currie
9312681182 some more const correctness (in gl_sky_clip.c) and make the sky poly debug
drawing avialable via the gl_sky_debug cvar.
2002-01-03 18:18:45 +00:00
Bill Currie
013f503738 start getting const-correct on vec3_t params 2002-01-03 05:29:38 +00:00
Bill Currie
c68da1f299 o split up GL_DrawAliasFrame so it's normal (ie, not fullbright) pass only
creating GL_DrawAliasFrame_fb to do the fullbright pass. This removes
    the if (fb) tests.
 o  move the DepthMask setting for modelalpha != 1.0 out of
    GL_DrawAliasFrame* into R_DrawAliasModel to reduce potential GL state
    changes.
 o  minor comment cleanup/corrections
2002-01-02 19:23:09 +00:00
Bill Currie
3cfd2c0a8e make GL_DrawAliasShadow use the data calculated by GL_GetAliasFraveVerts so
shadows don't cost as much when lerping is enabled.
2001-12-30 04:16:25 +00:00
Bill Currie
ee9ed0c395 minor cleanups 2001-12-21 21:52:03 +00:00
Bill Currie
7f9e5755fb go back to my clever code (with the bug fixed this time:P). Hey, if it's
still broken, we can always revert it again ;) (NOT!)
2001-12-21 20:56:54 +00:00
Bill Currie
168d3aa308 tiny speedup to texture uploads 2001-12-21 20:12:51 +00:00
Bill Currie
825b02ad87 minor speedup to skybox loading ;) 2001-12-21 06:07:30 +00:00
Ragnvald Maartmann-Moe IV
010ca032a5 Allow arbitrary power of 2 sizes for tga texture loads, reduce memory footprint needed to load rgb tgas. Speed load of non-RLE tgas.
Some slight code sanity improvements.
2001-12-21 01:41:19 +00:00
Bill Currie
ec44f037c1 remove the obsolete z buffer prototype code 2001-12-20 05:16:59 +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
c764ddc64a Just a massive speedup to gl particles. Enjoy.
(Thanks to LordHavoc for prodding me to use glDrawElements, and munge all the particle textures into 1. Code mine, suggestions his)
2001-12-19 04:03:57 +00:00
Bill Currie
5d643c2483 tiny optimisation to GL_GetAliasFrameVerts 2001-12-18 05:50:57 +00:00
Chris Ison
73f9c3aaa5 some minor tidy/speed up 2001-12-18 03:59:37 +00:00
Chris Ison
1c26723864 changed int to an unsigned int 2001-12-17 23:41:58 +00:00
Chris Ison
db71398238 removed row and col usage from Draw_Character 2001-12-17 23:10:00 +00:00
Bill Currie
b3843f7f5b draw.h:
remove dead Draw_TransPic prototype
draw.c:
	really don't draw spaces in Draw_AltString
2001-12-13 19:13:22 +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
Ragnvald Maartmann-Moe IV
e9690c8ee9 Whitespace. 2001-12-11 20:36:23 +00:00
Ragnvald Maartmann-Moe IV
d4a8224d9b Change hudswap to use a callback, and instead of passing a swap variable to 10 functions, where only 2 use it, use a global variable. Make a few scr functions static inline, too. Got a totally unexpected ~0.45fps speedup. 2001-12-09 14:05:30 +00:00
Bill Currie
b52606aed2 *sigh* Turns out id didn't feel like fixing the bugs in progs so don't blat
out frame errors under normal circumstances.
2001-12-08 20:58:09 +00:00
Bill Currie
52b0c8f3fc how me a repeatable bug and I'll show you a dead bug }:>
(this fixes the "Cache_Free: not allocated" crash)
2001-12-04 17:46:42 +00:00
Bill Currie
9bf575d081 several little tweaks that more than make up for the reversion of low-copy 2001-12-03 08:46:56 +00:00
Bill Currie
4f2f686834 r_netgraph_alpha works again 2001-11-30 03:51:43 +00:00
Ragnvald Maartmann-Moe IV
dea0a2c08d Whitespace. 2001-11-25 08:00:16 +00:00
Bill Currie
1cdf7fa55f clean up the math for id skys a little. doesn't fix the sillyness, but that's
caused by the deliberate texuture wrapping and I think gl isn't coping well
with that when the texture coords wind up getting swapped due to the wrap.
2001-11-25 07:41:17 +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
405e8fffc9 Whitespace. 2001-11-24 08:16:43 +00:00
Ragnvald Maartmann-Moe IV
2c8d802935 Whitespace. 2001-11-24 08:08:44 +00:00
Bill Currie
61382f4967 make absolutely certain skin->fb_texture is 0 if there are no fb pixels in
the skin texture.
2001-11-21 08:26:21 +00:00
Bill Currie
7d14013041 fix many, many bugs in the alias skin loading, transforming and rendering
code. This fixes blather's `melted models' (sw), the nq alt player model
skins (gl), the arbitrary limits on skins and skin groups in gl, and the
incorrect timing of group skins (animated) in gl.
2001-11-21 08:14:05 +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
b836566a3d Fix particle physics bug with blob2 particles.
(thanks to taniwha for pointing out half of the fix I was missing)
2001-11-20 08:31:27 +00:00
Bill Currie
5dab7ccaf7 precalculate smoe model specific info (wether the whole model is fullbright,
if it should have shadows, whether it should be scaled/translated (gl eyes),
and the minimum lighting (player)). give a 1.9% speedup in null renderer.
2001-11-20 08:02:35 +00:00
Ragnvald Maartmann-Moe IV
b69e372589 Whitespace. 2001-11-20 06:57:31 +00:00
Chris Ison
5c26b54697 remove smoke I added thismorning 2001-11-15 23:36:14 +00:00
Chris Ison
0e5262c2ea colored explosion smoke 2001-11-15 20:53:23 +00:00
Bill Currie
267e51eaaf while cute, cl_surprise is just way too expensive when gains are measured in
fractions of a percent, and a loss is 3%.

I hate doing this sort of thing :(
2001-11-15 01:37:57 +00:00
Chris Ison
8d50c8ea47 added cl_surprise cvar for easter eggs 2001-11-14 21:46:50 +00:00
Chris Ison
c72e2ef324 re-enable 8bit textures 2001-11-14 21:01:10 +00:00
Bill Currie
d168a3daee this should remove the requirement for gmake on bsd systems 2001-11-12 16:23:41 +00:00
Ragnvald Maartmann-Moe IV
1dfd2d4eaf More use of mathlib, and some small optimizations. 2001-11-09 18:51:33 +00:00
Ragnvald Maartmann-Moe IV
3d572df460 Bug fix (we weren't removing particles from the list until the frame after they died, which caused particle slots to be wasted).
Fix for a bug in particle trail pre-aging (sometimes created some 0 age particles).
And a couple small optimizations.
2001-11-09 12:09:46 +00:00
Ragnvald Maartmann-Moe IV
14aa428871 Switch to dot texture for sparks, and drop particle size. A little less cartoony effect. 2001-11-07 06:57:34 +00:00
Ragnvald Maartmann-Moe IV
f2f8513141 Reduce number of rand() calls in teleport and lava splash effects. Also preserves entropy, and we all know how important that is! 2001-11-06 21:02:18 +00:00
Ragnvald Maartmann-Moe IV
ceb307aead Cleanups, whitespace, convert some ints to unsigned int. Whee! 2001-11-06 05:06:37 +00:00
Ragnvald Maartmann-Moe IV
1c5701f51f Fix a few minor quirks with particle trails. 2001-11-06 04:42:17 +00:00
Ragnvald Maartmann-Moe IV
6af4eae1e5 Couple of cleanups (remove unused variables) and a small optimization. 2001-11-05 14:59:05 +00:00
Bill Currie
dc779acdb5 build the texture chains such that they get rendered front to back. seems to
only get about 0.17% speedup in overkill (with just about every thing off),
but it might make more of a difference in-game.
2001-11-05 06:20:35 +00:00
Ragnvald Maartmann-Moe IV
a856cbc413 Fix for r_lightmap_components 4 weirdness. 2001-11-04 20:58:46 +00:00
Ragnvald Maartmann-Moe IV
a2ed608ee7 Some more small speedups.
Not entirely thrilled with R_BuildLightMap inside 'store:'. Macros are a pain to work around...
2001-11-04 16:57:47 +00:00
Ragnvald Maartmann-Moe IV
dbb6e37bb7 Remove some unneeded variables.
Speed lightmap calculations up for r_lightmap_components 1.
Enough to give a 4.4% speedup to timedemo overkill.
Hint: int/float/int conversions are expensive.
2001-11-04 11:20:35 +00:00
Ragnvald Maartmann-Moe IV
fd19f9332d Tiny comment cleanup 2001-11-04 08:50:16 +00:00
Ragnvald Maartmann-Moe IV
de0b4f65fa modelalpha and currenentity cleanups. 2001-11-04 07:40:35 +00:00
Ragnvald Maartmann-Moe IV
961ea0b693 Move cshift render to before hud/text render, so that you can still read it while heavy cshift action is happening. 2001-11-03 07:50:57 +00:00
Ragnvald Maartmann-Moe IV
e8b36b1a71 Remove unused R_CullBlocked. 2001-11-03 07:30:15 +00:00
Ragnvald Maartmann-Moe IV
08a211385f Optimize some redundant math out of the particle aging loop. 2001-11-02 21:12:09 +00:00
Ragnvald Maartmann-Moe IV
3958b4a4b3 Age particle trails based on position in trail, during creation. 2001-11-02 20:47:47 +00:00
Ragnvald Maartmann-Moe IV
d1c115da05 Whitespace. 2001-10-30 19:58:01 +00:00
Bill Currie
00514d744e this should fix the skating statues 2001-10-29 19:38:20 +00:00
Bill Currie
85c9e0ab1e more externs cleaned up 2001-10-29 17:46:03 +00:00
Bill Currie
78a3e398d5 * taniwha gets medieval on extern 2001-10-28 04:23:37 +00:00
Ragnvald Maartmann-Moe IV
5afce455df Undo taniwha's debugging insanity.
If you want to test for injecting more particles than can fit in the list, particle_new is the right place for the test. It's even there already, just commented out.
2001-10-28 00:47:21 +00:00
Bill Currie
10d83e090a externs in .c files are evil, evil evil (ok, so I haven't cleaned these ones
out yet:P). This fixes the recent GL crash.
2001-10-27 22:27:32 +00:00
Bill Currie
014785a9f2 lots of error checking for our phantom particle bug, but I was unable to
trigger it after 2h of play using the previous changes
2001-10-27 08:32:52 +00:00
Adam Olsen
3bba5398ba - audit malloc usage. now everything checks the return value :) 2001-10-24 22:50:06 +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
Bill Currie
b5341f0d13 we now compile and link with -fno-common. this cleans up the multiple,
uninitialized declarations of variables.
2001-10-23 16:55:23 +00:00
Bill Currie
b3914eeaaa elimination of bare printf (with some exceptions) from libs: Sys_Printf is
used instead
2001-10-18 16:42:14 +00:00
Bill Currie
460a270a54 fix some init order issues brought up by the new gl_funcs.c code. 2001-10-15 19:06:22 +00:00
Bill Currie
fd25261ab3 hopefully better win32 dynamicly loaded gl support. if nothing else,
gl_funcs.c is easier to read :)
2001-10-15 18:24:30 +00:00
Bill Currie
49fe4e9f05 fix a misplaced s&r 2001-10-11 06:54:29 +00:00
Ragnvald Maartmann-Moe IV
1674e6a763 Clean up of models that are always fullbright. 2001-10-10 05:00:30 +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
24e80b21d4 Whitespace. Hiding commented out code is bad. 2001-10-06 01:14:23 +00:00
Ragnvald Maartmann-Moe IV
d657a590b5 Clean up extern functions, update noise_diamondsquare to match LordHavoc's fractalnoise. 2001-10-06 00:39:22 +00:00
Ragnvald Maartmann-Moe IV
8afd4a870e Revert an optimization that impacts legibility more than performance. 2001-10-06 00:31:57 +00:00
Ragnvald Maartmann-Moe IV
9daba0eef7 GL string and character rendering speed up and clean up. 2001-10-05 19:01:57 +00:00
Ragnvald Maartmann-Moe IV
72b198d650 Minor cleanup. 2001-10-05 18:55:40 +00:00
Bill Currie
a1d2cf3532 duplicate file name cleanup and make dist works 2001-10-03 17:50:36 +00:00
Bill Currie
95d3600452 fix skybox/skydom map vis issues. I hope this works on all drivers. 2001-10-03 02:51:30 +00:00
Bill Currie
c3735506c7 hey, I think this one is going to work!!! 2001-10-03 00:07:01 +00:00
Bill Currie
081a44e5bc this works a smidge better 2001-10-02 23:13:54 +00:00
Ragnvald Maartmann-Moe IV
256f6e94c1 Broken attempt at cleaning up Makefile.am's, for taniwha's perusal. 2001-10-02 22:02:10 +00:00
Bill Currie
4699bf6d5b files under inclue/QF are not allowed to include files from include (eg,
including config.h is a nono).
2001-10-02 21:14:11 +00:00
Ragnvald Maartmann-Moe IV
9c778bb539 Minor tweak of lightning sparks and teleport appearances, fix brief breakage of gl_sky_clip 1 & 2 with skyboxes. 2001-10-02 09:11:20 +00:00
Ragnvald Maartmann-Moe IV
9c21edc6d0 Whitespace. 2001-10-02 06:58:44 +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
Jeff Teunissen
e892131af5 Rename gl_libgl to gl_driver, nuke the last of the HAVE_GLX references,
and default gl_driver to OPENGL32.DLL on Win32.
2001-09-28 07:41:38 +00:00
Bill Currie
b1f4a778f9 the rcsid commit from hell }:> 2001-09-28 06:26:31 +00:00
Jeff Teunissen
31b6da027c The video version. This WILL break QW and NQ until my next commit. 2001-09-28 05:33:58 +00:00
Jeff Teunissen
be9ee170d6 Okay, the GL renderer lib is fixed up. 2001-09-27 21:47:47 +00:00
Ragnvald Maartmann-Moe IV
bd1465ef3e Make blood puffs a little less ridiculously large and not overly dense. 2001-09-27 06:52:38 +00:00
Ragnvald Maartmann-Moe IV
35b767cd21 Remove scaling from R_RunParticleEffect, and make blood puff size variable in qw. 2001-09-27 03:09:24 +00:00
Ragnvald Maartmann-Moe IV
2941c07b0a Add small cyan light to lightning impacts. And restore particle direction use in nq. Greatly improves blood effects. 2001-09-27 00:43:46 +00:00
Ragnvald Maartmann-Moe IV
5330fd5651 Whoops. 2001-09-24 18:03:36 +00:00
Ragnvald Maartmann-Moe IV
e2f14519fb Merge world.h. Also reduced smoke particle textures from 8 to 1, a considerable speedup through reduced texture thrash... 2001-09-24 17:52:13 +00:00
Ragnvald Maartmann-Moe IV
bb6796247c Kill r_particles->int_val testing in gl particle engine. Also merge a bit down to r_part.c/r_cvar.c. Properly declare cl_max_particles (how the heck was it working when only ever declared as exter cvar_t *cl_max_particles?).
Should be a minor speedup for gl, definitely a code cleanup.
2001-09-22 02:37:45 +00:00
Ragnvald Maartmann-Moe IV
fc1ab9640e r_numparticles is now r_maxparticles. Ah, the joy of sane variable names. 2001-09-19 18:07:09 +00:00
Ragnvald Maartmann-Moe IV
8af9c2321d Larger lightning sparks, and more importantly, cull particles more efficiently when bumping into max. R_LavaSplash and R_TeleportSplash need work, though. 2001-09-18 23:22:57 +00:00
Ragnvald Maartmann-Moe IV
d3e8e4ed11 Sparks and a little smoke from TE_LIGHTNINGBLOOD.
And kill R_RunGunshotEffect.
2001-09-17 01:48:52 +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
431ac4eedb Convert particles to use byte colors instead of float. Roughly breaks even on Mesa on my machine. Should be a speedup under other drivers. 2001-09-14 12:11:54 +00:00
Bill Currie
8ca44af043 fix a bug in the handling of case m (see skybox.fig) 2001-09-10 00:57:11 +00:00
Ragnvald Maartmann-Moe IV
7af79b96ec Lots of whitespace, header cleanups, and a few tiny optimizations. 2001-09-09 21:41:35 +00:00
Bill Currie
8a959d157b put my sky debug code back in (enabled for now) 2001-09-09 21:27:09 +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
Bill Currie
c762151df6 comment on the code duplication for the texture resamplers 2001-09-07 17:12:02 +00:00
Bill Currie
ffd9e727a8 roll the skin resampling loops back up 2001-09-07 17:05:56 +00:00
Ragnvald Maartmann-Moe IV
0d0e570676 Small particle trail speedup/legibility/flexibility improvement, at price of redundant code in sw/sw32. Tradeoffs. *sigh* 2001-09-07 05:37:11 +00:00
Bill Currie
d7675ada7a move the particle count multiplication out of the renderer and into the clien
(for blood and gunshot, anyway).
2001-09-06 05:41:15 +00:00
Ragnvald Maartmann-Moe IV
4c7e60e73a Rearrange "rocket" trail code. Some small optimizations, mostly a cleanup, will make tweaking individual effects separately easier. 2001-09-06 04:26:53 +00:00
Ragnvald Maartmann-Moe IV
7d52c663a3 Convert a few rand to qfrandom, and a tiny optimization (more of a cleanup, really). 2001-09-05 09:06:48 +00:00
Ragnvald Maartmann-Moe IV
55f0fed0b6 Replace lhrandom with qfrandom, a different convenience macro with better random number distribution (see man 3 rand). 2001-09-05 06:20:45 +00:00
Ragnvald Maartmann-Moe IV
d2c041cae6 Remove and ifdef out currently unused code. 2001-09-05 04:25:47 +00:00
Ragnvald Maartmann-Moe IV
75aaccf9f0 Prettier, but slower particle effects. Also skip particle physics when r_particles 0. 2001-09-05 02:04:02 +00:00
Bill Currie
2e1a5112bd give r_particles a callback to clear all particles when set to 0 and do
some general cleanup to the gl particles code
2001-09-05 00:08:54 +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
Bill Currie
dc4cd343b5 id's sky code is back (gl_sky_clip 2 when no skybox is loaded). Not as fast
as the black polygons (duh:) and not as nice looking as the sky dome, but also
not as slow (fps when standing in the normal coridor looking at the sky in
start: 26 for skydome, 37 for id skys, 44 for black). Good for when you want
to see sky other than black but your card can't handle the fillrate
requirements of skydome. I'll clean up the sqrt in there soonish.
2001-09-03 06:12:10 +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
Bill Currie
0d55476711 make VectorSubtract and VectorCompare macros and clean up the readability
of R_DrawParticles
2001-08-29 20:19:54 +00:00
Bill Currie
5902dcca6a code cleanup 2001-08-29 03:27:31 +00:00
Ragnvald Maartmann-Moe IV
793efd6976 Whitespace. 2001-08-27 01:00:03 +00:00
Ragnvald Maartmann-Moe IV
b1666defb9 Remove unused code. 2001-08-26 19:47:35 +00:00
Ragnvald Maartmann-Moe IV
da1c680364 Whitespace. 2001-08-26 17:13:33 +00:00
Ragnvald Maartmann-Moe IV
06dd45bdb1 Merge common lighting code. Still some lightmap-related code in *_rsurf.c that might be mergable. This is the first step towards 3 component lighting for the sw32 renderer.
Note that gl_lightmap_components is now r_lightmap_components, and gl_dlight_lightmaps is now r_dlight_lightmaps.
2001-08-25 23:23:14 +00:00
Ragnvald Maartmann-Moe IV
c6266aba36 sw32. Flee in terror. This'll break compilation for everything until -sdl32 compiles. sw32 wont work for a while either, so don't get overly excited yet. 2001-08-25 02:47:11 +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
06946d6ab4 memset doesn't use bits 8+ 2001-08-08 23:32:09 +00:00
Bill Currie
3047a6a4ba this seems to fix the flickering dlights problem. surface visibility was
calculated too late for light marking.
2001-08-08 22:20:57 +00:00
Ragnvald Maartmann-Moe IV
a4ea8d088a Header sort. 2001-08-07 21:35:54 +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
c64c31b2e9 white space 2001-08-07 17:27:28 +00:00
Bill Currie
9ac148dd69 freaking out by one error :/ I'm suprised previous runs worked at all, but
with this correction I am finally seeing the expected speed boost (12% on my
c450 using my null GL lib).
2001-08-06 04:13:41 +00:00
Bill Currie
ece21540f7 almost working. just need to figure out why vis info isn't doing the right
thing (I suspect a bug in my deconpression)
2001-08-05 23:17:55 +00:00
Bill Currie
899d8385a9 fix a subtle bug with the lava hall to e3 in start 2001-08-05 06:10:27 +00:00
Bill Currie
dcc6a76313 make SURF_LIGHTBOTHSIDES work and fix a bug in Mod_PointInLeaf that was
preventing grenades from lighting up surfaces when using the vis lighting
2001-08-05 05:59:15 +00:00
Bill Currie
8883bbb369 some lighting fixes. not quite there yet 2001-08-05 05:07: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
2887dd3950 Fix issue with gl_lightmap_components 4 and lightmap updates. 2001-08-02 04:12:26 +00:00
Ragnvald Maartmann-Moe IV
fd0c5aab36 Garbage comment removal. 2001-08-02 02:28:17 +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
56bb92a7f9 make gl_sky_clip 3 do as originally promises 2001-07-22 02:06:02 +00:00
Ragnvald Maartmann-Moe IV
54cda68878 Just a bit of whitespace and comment cleanup. 2001-07-21 23:18:59 +00:00
Ragnvald Maartmann-Moe IV
1461143371 Spiffed up scrag and hellknight missile particle trails. (Partly inspired by darkplaces, though not identical to LordHavoc's) 2001-07-21 20:32:45 +00:00
Bill Currie
1c9e1b176f fear the mighty const correct patch 2001-07-15 07:04:17 +00:00
Bill Currie
c38ca8e2f1 qfplist.h:
remove include of glob.h. not needed and causes win32 build to fail
plugin.c:
	include compat.h and cast the return of GetProcAddress
gl_funcs.c:
	fix parse error and type mismatch
qfgl_ext.c:
	half re-write QFGL_ExtensionAddress to use QFGL_ProcAddress
vid_wgl.c:
	fix for the new gl linking
2001-07-05 17:28:19 +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
Jeff Teunissen
aa7389e8b1 *** empty log message *** 2001-06-27 07:40:10 +00:00
Bill Currie
18ba72b544 shh!! :) 2001-06-27 04:18:39 +00:00
Jeff Teunissen
d485ca1fb1 Still broken, but apparently it works for Mercury. 2001-06-26 02:59:37 +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
Bill Currie
3dbc913903 this is C, not C++ ;) 2001-06-25 15:42:05 +00:00
Jeff Teunissen
5e1de4c8a7 Clean up gl_funcs.c, it's actually readable now. Unfortunately, it sig11s
for me. This may be due to the NVIDIA libGL problem (which they claim is a
bug in libc), but it could very well be that Mercury was right and we
can't have the same names internally as the libGL names. Even so, this
code will probably work on Windows.
2001-06-25 09:32:08 +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
560b475880 gcc 3.0 compile fixes 2001-06-19 22:05:13 +00:00
Bill Currie
735a35b2f9 compile fixes from Artur Frysiak <wiget@pld.org.pl> 2001-06-05 17:23:03 +00:00
Zephaniah E. Hull
380dcf5c9b Some gl_draw cleanups for glpic.
Some sbar cleanups (still broken, suspect driver issues.).
Removal of pmodel and emodel infokeys, waste of info space.
For servers allow people downloading to hear people talking.
2001-06-02 20:39:54 +00:00
Bill Currie
06064ec390 compat.h:
create a field_offset macro that takes a structure type and a field and
	returns the offset of the field within the structure
everything else:
	use field_offset to calculate the size of variable sized structs
2001-05-31 18:11:05 +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
Joseph Carter
05adfd0e53 quakefs.h -> vfs.h
quakeio.h -> vfile.h

More diff reduction between trunk and my VFS code.  Also took the time to
put some headers in order and fix a few #include's pointed out by moving
things around a bit.
2001-05-30 04:34:06 +00:00
Joseph Carter
186d577818 s/QFile/VFile/g - makes my diffs much smaller and more manageable for the
VFS work.
2001-05-30 03:21:19 +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
18fd21da77 merge the particle system 2001-05-29 19:58:35 +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