Commit graph

667 commits

Author SHA1 Message Date
Bill Currie
0a8867fde9 replace all VectorSubtract (vec3_origin, ... and
VectorCopy (vec3_origin, ... with VectorNegate (... and VectorZero (...,
respectively. Should be a small speedup.
2003-09-03 22:17:04 +00:00
Bill Currie
f7b1196b8d fix the gl stack overflow (and make sure all skybrush surfaces get checked
and queued)
2003-08-28 19:50:28 +00:00
Bill Currie
2c30939891 remove some magic numbers (sloppy coder:P) 2003-08-28 02:24:08 +00:00
Ragnvald Maartmann-Moe IV
c2053fbfb1 Prettier particles! Renderer is now informed of sv_gravity changes in qw. Not
supportable without protocol changes in nq.
2003-08-27 22:20:03 +00:00
Bill Currie
415fae8d6b make the two normals arrays consistent 2003-08-26 07:00:13 +00:00
Ragnvald Maartmann-Moe IV
d8068de4fa Commit experimental particle optimization. Reduces random particles from using
6 15 bit rand() to 2 calls, with 5 bits for each of the 6.
This is up to a 1% speedup for qf particles, and up to 2.1% for id.

It may particularly affect explosions with r_particles_style 0.
Please report any anomolies in any particle effects.
2003-08-15 20:26:09 +00:00
Ragnvald Maartmann-Moe IV
9ed8150b85 More particle optimizations. 2003-08-11 20:48:34 +00:00
Bill Currie
7ead5a91f8 don't let gcc automaticly inline functions but make gcc inline bigger
functions when told to. also make gcc warn if it can't inline a function.

Explicitly inline several functions (including moving VectorNormalize to
mathlib.h so it /can/ be) resulting in a 5.5% speedup for spam2 (88 to 92
fps)
2003-08-11 06:05:07 +00:00
Bill Currie
b88d275994 fix some warnings 2003-08-11 05:16:04 +00:00
Ragnvald Maartmann-Moe IV
f35b1db291 Fix a potential uninitialized variable segfault taniwha noticed, and optimize
particle effects a bit more.
2003-08-09 04:38:11 +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
Bill Currie
184aa7beb0 should be a minor speedup to mono lightmaps 2003-08-07 21:05:58 +00:00
Bill Currie
732a9a80d1 gain about 3 fps (180 to 183) in null-renderer 2003-08-07 19:58:39 +00:00
Bill Currie
6063fb75d9 make the console run at full speed no matter what demo_speed is at. what a
lot of work for such a simple concept :P
2003-07-25 22:21:47 +00:00
Bill Currie
772ad66019 don't need that any more (yay:) 2003-07-15 17:41:31 +00:00
Bill Currie
855fc53709 handle alloca properly 2003-07-09 06:28:09 +00:00
Bill Currie
dddf045221 put "FIXME: overflow" on all the char arrays I could find that weren't
obviously safe
2003-07-08 20:11:10 +00:00
Bill Currie
66e2ef1926 fix an uninitialized variable 2003-05-23 17:39:33 +00:00
Bill Currie
c2c3a62956 nuke Qexpand_squiggle. instead, expand ~ to $HOME on qfs initialization and
cache the value.

don't call Qopen directly in the engine. instead call QFS_Open (generic) or
QFS_WOpen (write only, zip flag).

rework QFS_NextFilename to use a dstring (avoiding a potential buffer
overflow), support 10000 files and work from the top-level fs_userpath
directory. adjust QFS_WriteFile and QFS_WriteBuffers etc to suit.

make sw32 screenshots actually get written.

hopefully everything gets written to the right places :)
2003-05-23 17:17:01 +00:00
Bill Currie
ba3601685c wad pics don't have extensions (plugs a buffer underflow hole) 2003-05-16 19:44:25 +00:00
Brian Koropoff
dd0332632e Make gcc2 stfu. 2003-05-15 04:37:00 +00:00
Brian Koropoff
e2061095a6 Fixed .tga loading for GL targets. SW targets still need work in all
likelyhood.
2003-05-14 21:08:43 +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
0a5f3c31eb ping/pl/fps/time now stays put and is now in the client rather than the
renderer (so nq is currently missing it)
2003-05-08 05:49:57 +00:00
Bill Currie
a4abf526e8 there's no need to call Con_CheckResize every frame and it's now
detrimental anyway
2003-05-06 18:00:03 +00:00
Bill Currie
e732cf591d remove all references to OFS_* from the C code. only the macros in progs.h
use them now
2003-04-22 18:20:15 +00:00
Bill Currie
f842d98964 initialize noise1 2003-04-22 01:37:13 +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
Bill Currie
eb099ae0d3 make qf gcc 3.3 clean 2003-04-17 00:01:48 +00:00
Bill Currie
01bff9c79e WildCode's alias model VA prepatory patch 2003-04-08 04:13:49 +00:00
Bill Currie
e483333bbe beat the skydome bugs to a pulp. no more seam (and probably a bunch faster
on slow cards)
2003-04-05 07:59:29 +00:00
Bill Currie
6cc7d43b53 make the texture coords in skyvec always 1/2 pixel in from the edge 2003-04-04 07:00:51 +00:00
Bill Currie
e00966b319 speed up 16 bit vertex lerping by getting GL to do the 1/256 scaling for us 2003-04-03 23:09:43 +00:00
Ragnvald Maartmann-Moe IV
8db859b77c Minor bit of neatening, remove CHAIN_SURF alias, so it's clearer what is being used where. 2003-03-25 07:25:22 +00:00
Ragnvald Maartmann-Moe IV
6c7701a38b Prevent bad gl_max_size settings from causing buggy drivers to freak out. 2003-03-24 20:21:24 +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
Bill Currie
57a470a88a alpha compile fixes (unused functions) 2003-03-08 07:17:32 +00:00
Ragnvald Maartmann-Moe IV
2000954a2c Whitespace, and a workaround for show_* misplacement. 2003-03-03 19:20:44 +00:00
Ragnvald Maartmann-Moe IV
a9c61bb6bf Updated for OpenGL 1.4, plus whitespace. 2003-02-25 05:45:11 +00:00
Bill Currie
6a687f5e45 rename all the globals in quakefs.[ch] to be QFS_* or qfs_* 2003-02-14 19:46:07 +00:00
Ragnvald Maartmann-Moe IV
a34980eda5 Fix easter_egg toggling. 2003-02-14 00:58:22 +00:00
Ragnvald Maartmann-Moe IV
6d6fade23a Change mach64 test to only happen at particle system inits, rather than testing for every individual particle injection.
Mach64 now gets id particle effects. Disabling the majority of effects isn't the best method, IMO.
2003-02-13 21:48:28 +00:00
Ragnvald Maartmann-Moe IV
af33733ce4 More x86-64 (AMD, not intel IA64, taniwha!) fixes.
Compile problems pointed out by Mike A. Harris. Thanks!
2003-02-12 23:41:20 +00:00
Bill Currie
4bd1718475 re-arrange viewsize handling to fix the hud bug in glx 2003-02-11 21:24:27 +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
3ab4eb6545 Arkadi's mach64 patch 2003-02-06 21:47:33 +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
Ragnvald Maartmann-Moe IV
34d4483424 white noise, er space. 2003-01-08 01:46:28 +00:00
Ragnvald Maartmann-Moe IV
d2820cd857 Reduce code duplication, kill a function used by only one caller.
Also disables a workaround for "interpolation seams" that I believe to be an old DRI bug. If anyone has skybox (not dome!) seams, try altering the ftc `if 0` to `if 1`.
2003-01-07 22:12:54 +00:00
Bill Currie
ca720c26a5 blah, forgot about no-asm :P 2003-01-06 19:05:51 +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
8a2fbf43a7 alphageek's crosshair patch modified so it's crosshair 3 (need to port this
to the sw renderer's:/)
2003-01-03 03:36:45 +00:00
Bill Currie
f75c88b247 work around a gcc (GCC) 3.1 20020420 (prerelease) bug in darwin (ppc?) 2002-12-20 23:49:11 +00:00
Bill Currie
37c5bb6ec6 merge the bulk of the three screen files into r_screen.c so all common code
is shared.
2002-12-11 17:34:48 +00:00
Bill Currie
bf3fa3dc76 remove some dead code and a lot of unnecessary diffs 2002-12-11 16:45:40 +00:00
Bill Currie
ca55210c6e remove some redundant steps 2002-12-11 05:46:42 +00:00
Bill Currie
88f7b9ae84 it's rgb, not rbg 2002-12-11 05:33:54 +00:00
Bill Currie
15655c23cd get snaps working properly 2002-12-10 18:24:38 +00:00
Bill Currie
7da551d044 the output is rather mangled but the client no longer crashes 2002-12-10 05:04:30 +00:00
Bill Currie
de7299a64f don't crash when doing a remote screenshot 2002-12-09 17:47:12 +00:00
Brian Koropoff
f1279be1e5 Fixed a segfault with very high resolutions. 2002-11-23 05:47:17 +00:00
Bill Currie
ee30860cef fix a bunch of ;; typos 2002-11-20 21:44:04 +00:00
Bill Currie
6ce0abe536 more alpha compile fixes. Closes: #60 because while it started out for
0.1.1 it developed into an alpha compile issue for 0.5.2
2002-11-13 20:20:50 +00:00
Bill Currie
498bdcc406 compile fixes for alpha linux 2002-11-10 02:50:42 +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
0b0f9ee371 More whitespace. 2002-10-10 20:03:23 +00:00
Ragnvald Maartmann-Moe IV
ef47bf6e12 gl_skymultipass -> gl_sky_multipass. Much nicer tab completion. 2002-10-10 19:49:36 +00:00
Ragnvald Maartmann-Moe IV
b025a4e9aa Wh17e5p@c3! 2002-10-10 19:44:27 +00:00
Ragnvald Maartmann-Moe IV
998d68a833 In GL, have r_speeds 1 display particle count. 2002-10-02 04:15:23 +00:00
Bill Currie
9aa84f4ead case i has 7 visits, not 6 :P 2002-10-02 01:58:29 +00:00
Bill Currie
3d668334e6 copy that fix for the other renderers 2002-09-30 21:35:13 +00:00
Bill Currie
d7bbe82efd make sure the bottom part of the console gets updated properly if it covers
the status bar.
2002-09-30 21:25:24 +00:00
Bill Currie
b0629d24fa handle the new case Despair discovered. 2002-09-23 06:18:48 +00:00
Bill Currie
5189ffeae9 fix software model lighting 2002-09-18 14:38:41 +00:00
Ragnvald Maartmann-Moe IV
a9b16f5de5 Tweak ramp decay on new spark shower. 2002-09-17 05:13:13 +00:00
Ragnvald Maartmann-Moe IV
d6a2b54252 Use ramps for spark showers, so they fade in color as well as alpha.
Lightning doesn't have a ramp, so it doesn't use this feature yet.
2002-09-17 02:14:58 +00:00
Bill Currie
f7b4dffcc0 get larger player skins working in gl 2002-09-13 05:32:28 +00:00
Ragnvald Maartmann-Moe IV
2a8896d4a1 Grr, what's with cvs today? 2002-09-13 01:08:21 +00:00
Ragnvald Maartmann-Moe IV
ca50e1945b Oops. 2002-09-13 00:23:58 +00:00
Bill Currie
899ad6bebe use the correct palette when writing out screen shots 2002-09-10 15:13:12 +00:00
Bill Currie
ecdd537183 beat sw gamma handling till GL works. after a fasion. it /looks/ like it was
beaten on.
2002-09-10 06:35:32 +00:00
Bill Currie
9f6f50699d remove vid_basepal, creating vid.palette (current palette) and host_basepal 2002-09-10 03:51:10 +00:00
Bill Currie
f6ab24e6bc min-clamp ambientcolor instead of shadecolor. should make for more visible
players
2002-09-09 23:06:08 +00:00
Ragnvald Maartmann-Moe IV
c4609f5195 Experimentally allow external texture loading. Also prevent loading RGB textures as RGBA, which wastes a lot of texture memory, and looks ugly on 16bpp boards. 2002-09-06 21:37:22 +00:00
Ragnvald Maartmann-Moe IV
92db391e7c Optimize model rendering a hair. WildCode spotted that minimum shade was only being applied to the view model (why do we set it up for other stuff if it's not going to be used?). While looking at that, I noticed we could do the divide by 200 in model setup. 2002-09-01 23:45:22 +00:00
Ragnvald Maartmann-Moe IV
c1a8a02762 Whitespace. 2002-08-27 19:38:04 +00:00
Bill Currie
a7380fef66 nuke msg_suppress_1 in favor of Sys_DPrintf 2002-08-27 18:05:59 +00:00
Bill Currie
ec47e08e1c go back to using QFile, quakeio.h and quakefs.h 2002-08-27 07:16:28 +00:00
Ragnvald Maartmann-Moe IV
d11fbc0b5c Change from if/else if/else function for setting scale in a number of particle effects, to scale = pow (count, 0.23). Smooth particle size changes with varying count, and doesn't seem any slower in my benchmarks. 2002-08-26 00:11:16 +00:00
Ragnvald Maartmann-Moe IV
ff03367bc2 Whitespace and comment cleanups. 2002-08-25 05:55:28 +00:00
Ragnvald Maartmann-Moe IV
147f940510 Kill dead gl_occlusion cvar. 2002-08-23 21:55:59 +00:00
Ragnvald Maartmann-Moe IV
7bf21e20ed Use R_CullSphere for rotated bsp models. 2002-08-23 21:14:43 +00:00
Ragnvald Maartmann-Moe IV
aa85219dc4 Commit R_CullSphere use for alias models. Only a 3.3% speed hit for me, and should quiet "foo is disappearing" whinging. 2002-08-23 04:09:00 +00:00
Bill Currie
c44ec1993d handle up to 512x512 map textures /properly/. would be nicer if the max
could be dynamic
2002-08-22 19:00:55 +00:00
Ragnvald Maartmann-Moe IV
c91f1a2aea Rename Length to VectorLength. 2002-08-20 02:22:40 +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
Bill Currie
55cdde81da rename clmodel to model 2002-08-19 04:15:46 +00:00
Bill Currie
b1a180b25e move the view model check for min_light into the model loader (checks for
progs/v_*)
2002-08-19 04:05:02 +00:00
Bill Currie
1a0cf8d1f4 remove some redundant/incorrect code 2002-08-14 06:28:38 +00:00
Bill Currie
7ed7938b1c get colored lighting working reasonably well 2002-08-14 05:45:50 +00:00
Bill Currie
2abaf27cdc attempt to fix the dark models at centers of dlights 2002-08-12 15:36:52 +00:00
Bill Currie
8e97d6279a first stab at colored alias model lighting 2002-08-12 06:14:55 +00:00
Bill Currie
1afd2d95b2 break out the 1 vs 3 lightmap components code into separate functions and
do preliminary support for colored alias model lighting
2002-08-12 04:42:29 +00:00
Bill Currie
7e4e294089 fix the unlit models in full light bug 2002-08-12 02:05:45 +00:00
Bill Currie
4123d74e5e don't segfault when a surface uses the `null' texture (r_notexture_mip) 2002-08-09 06:07:25 +00:00
Bill Currie
cbde41c669 damnit! 2002-08-08 04:41:41 +00:00
Bill Currie
3baec9e856 clean out the dead mtex code 2002-08-08 04:27:49 +00:00
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
3c7d65a798 Whitespace. 2002-07-25 14:42:41 +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
Bill Currie
51e4cad3fe get Draw_SubImage doing transparencies 2002-07-25 05:04:22 +00:00
Bill Currie
51b189f56a make Draw_SubPic do transparent pics 2002-07-25 04:30:50 +00:00
Bill Currie
defcedec49 give access to Draw_SubPic 2002-07-24 21:39:03 +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
1f8a1d613f Fix r_particles_nearclip being forced to max. 2002-07-08 00:05:33 +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
87741d2b90 Tweak r_firecolor to reduce haloing on rocket dlights. 2002-06-12 04:37:33 +00:00
Bill Currie
74597018ec heh, forgot to ifdef the call to R_InitVars 2002-06-10 22:52:13 +00:00
Ragnvald Maartmann-Moe IV
9bca381c41 Remove R_Init_Entity. Never used, and probably doesn't belong in the renderer. 2002-06-07 23:38:53 +00:00
Bill Currie
ebfdbd9285 the fpu manipulation stuff seems to be better off in the one place that
actually uses it...
2002-06-07 15:09:20 +00:00
Bill Currie
4e07810f0d a little cleanup of unneeded lines 2002-06-07 14:44:02 +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
b4e8e0750c well, that's one way to confuse anybody
fixes the floating point exception
2002-06-03 07:23:41 +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
7a3b63418b `adequate' temporary fix for r_lightmap_components 1 2002-05-28 04:11:40 +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
942b3c2744 Floating point value of fov is now used. 2002-04-29 22:03:33 +00:00
Bill Currie
a1fef28b60 fix the sw32 fov caps so it maches sw and gl 2002-04-29 17:21:52 +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
7c134a6f95 Fix up the watervis stuff. Whoops! :) 2002-04-25 14:34:15 +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
Bill Currie
da994c16e5 rewrite R_SplitEntityOnNode to be itterative rather than recursive (using
a static `stack') to avoid the function call overhead. this cuts about 40%
of the execution time from this function.

No matter what I tried, best results were obtained using __builtin_expect,
so make sure non-gcc compilers do the right thing when they encounter it.
2002-04-25 04:32:55 +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
ba9ad15ebd it he's if I understand that Draw_CachePic puts the pic into the cache... 2002-04-10 06:56:25 +00:00
Bill Currie
0855e018dd d'oh, bloody gcc 2.95 builtin prototypes 2002-04-10 01:38:21 +00:00
Bill Currie
15e17acc1c the draw api now uses a `real' qpic_t rather than loading the pic every time 2002-04-09 21:38:41 +00:00
Robin Redeker
adca50e52b Did further working on the menu code.
Added a _unfinished_ Player options-submenu, for setting
the name, top-/bottomcolor.
Added Draw_Fill and such to the progs api.
Added some comments.
2002-03-16 20:22:01 +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
29706477d4 gl_driver default is now configurable 2002-02-22 08:55:24 +00:00
Bill Currie
72bd704d13 BSD compile fixes 2002-01-31 07:37:56 +00:00
Bill Currie
0906ac5694 get the positioning correct for Draw_CenterPic 2002-01-29 18:44:31 +00:00
Bill Currie
5b0e6dc342 add file and string modules to csqc. the file nodule is rather parnoid
about the path it's handed (need to get even more paranoid, though). the
string module just has char replacement so far. Add Draw_CenterPic to
r_progs.c, but this will only last till qpic_t is supported in qc.
the load menu almost works: just need to add key handling and fix a bug in
PF_sprintf
2002-01-21 07:24:51 +00:00
Bill Currie
bb82e48ab1 add Draw_String to csqc 2002-01-20 00:03:34 +00:00
Bill Currie
84636f20cb make sure r_progs gets linked in when using the .a lib 2002-01-19 22:53:00 +00:00
Bill Currie
6767d6bfa0 win32 compile fixes 2002-01-19 20:45:45 +00:00
Bill Currie
10acad1ee4 first tie-in for the renderer (Draw_Pic: the interface will likely change
to better match the real interface, but this will do for now)
2002-01-18 22:35:46 +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
Bill Currie
9d59d953bd more cleanups 2002-01-12 05:32:21 +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
9ba80eb4d9 use Hunk_TempAlloc instead of realloc for the alias model verts 2002-01-07 16:43:47 +00:00
Bill Currie
c1c76f7058 whitespace 2002-01-07 06:50:41 +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
f8daa09bcb Fix software scrag missile trails, and add a minor optimization to them and hell knight's fire wave trails. 2002-01-06 23:12:09 +00:00
Ragnvald Maartmann-Moe IV
097ff0006f Rearrange vertex order in quads. 2002-01-06 22:43:51 +00:00
Seth Galbraith
0a7ddae612 move high precision check out of loop to optimize sw model rendering 2002-01-05 20:00:50 +00:00
Ragnvald Maartmann-Moe IV
aa36ebf6e4 Little bit of whitespace cleanup. 2002-01-05 19:03:36 +00:00
Seth Galbraith
1e57bcdca2 no more hardcoded MAXALIASVERTS limit 2002-01-05 17:56:33 +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
Seth Galbraith
42456845f0 high precision software mdl rendering 2002-01-05 03:21:02 +00:00
Bill Currie
df947a8843 pt_color is now an int so don't convert it 2002-01-04 04:12:10 +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
Ragnvald Maartmann-Moe IV
f9d3f9f017 Remove dead cvar. 2001-12-09 07:43:58 +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
Ragnvald Maartmann-Moe IV
20690b71e0 Argh! Try #2. 2001-12-03 11:46:30 +00:00
Ragnvald Maartmann-Moe IV
43b31965a2 Back out local changes that shouldn't have been committed along with the rename to r_particles_max. 2001-12-03 11:08:10 +00:00
Ragnvald Maartmann-Moe IV
29a8d84806 cl_maxparticles to r_particles_max. annoying, but makes cl_ tab-completion less so. 2001-12-03 08:55:46 +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