Commit Graph

175 Commits

Author SHA1 Message Date
Bill Currie f9b95cee92 some micro-optimisations 2004-02-23 07:17:41 +00:00
Ragnvald Maartmann-Moe IV c4402e07bd Working towards merging q2 model, sprite, and map support. Check back in a few
years, might be finished. ;)
2004-02-08 02:49:38 +00:00
Bill Currie 77b2942982 several libs can now get built as dlls in windows: console, gamecode,
gamecode_builtins, gib, image, modules, object, ruamoko and util.
2004-01-19 07:47:41 +00:00
Bill Currie 7ba6756810 temporary hack to avoid crashing when s_explod.mdl isn't precached but
explosions are requested
2004-01-17 07:14:42 +00:00
Bill Currie 629e22aa61 fix a buffer overflow and an underflow 2004-01-17 05:11:34 +00:00
Ragnvald Maartmann-Moe IV 4597b44334 /, not // in paths. textures//foo.png is ugly. ;) 2004-01-08 03:33:45 +00:00
Ragnvald Maartmann-Moe IV 043c1ce466 Check for %s_luma as well as %s_glow. Also a bit of whitespace. 2004-01-04 01:20:20 +00:00
Bill Currie 40b8974c33 better external skin handling from Grievre 2003-12-28 05:25:06 +00:00
Ragnvald Maartmann-Moe IV 1be98dcf08 gl_external_textures -> gl_textures_external, plus whitespace & codingstyle. 2003-12-23 20:05:52 +00:00
Bill Currie 4b6b5135ac more texture tweeks from Griever: gl_external_textures 2003-12-23 08:38:33 +00:00
Bill Currie 9f76665963 luma tweak (redundant code removal) from Grievre 2003-12-23 07:22:04 +00:00
Ragnvald Maartmann-Moe IV 12d3a137a1 Luma texture support for brush models (From Fuh, by way of Grievre). 2003-12-21 08:02:03 +00:00
Bill Currie 2b5a3753ca nuke QF/texture.h moving it's contents into QF/image.h (yay, finally, a
real home for tex_t:)
2003-09-04 18:59:39 +00:00
Bill Currie 39ed540979 LoadImage is now used for all external textures giving almost transparent
.png and .tga support.
2003-09-04 18:46:59 +00:00
Bill Currie ff43d61f81 use the correct bytes per pixel count 2003-09-04 16:26:14 +00:00
Bill Currie 4d1313d0c1 don't seg when using 1 component lightmaps 2003-08-30 22:39:27 +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 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 0cf0f710b7 remove some unneeded code 2003-07-09 15:34:58 +00:00
Bill Currie 4f66e1e9da fix a bunch of the previous FIXMEs. needs a bit more work for win32
compiling
2003-07-08 22:39:45 +00:00
Bill Currie 5f3573143a the beginnings of a jihad against buffer overflows 2003-05-08 23:24:02 +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
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 c186266f06 whitespace 2003-03-12 02:21:51 +00:00
Bill Currie bb5f5e0a0c fix a couple of gcc 2.95 warnings 2003-02-19 21:41:37 +00:00
Ragnvald Maartmann-Moe IV e3ea39e67b QuakeForge now supports map specific textures in `textures/mapname/`. 2003-02-19 17:41:16 +00:00
Bill Currie 851d203916 work towards a more secure qfs 2003-02-14 22:36:10 +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
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
Bill Currie d7e7b7de7d cause the model to load into a calloced buffer rather than the hunk temp
region to avoid the data getting corrupted by cache shufflings. This
/should/ fix the bad extents bug (Closes: #37)
2002-10-11 02:54:02 +00:00
Bill Currie 75c7119cd8 gamma correct the loaded lightmaps so swgamma works better (MUCH better:) 2002-09-15 05:04:14 +00:00
Bill Currie f7b4dffcc0 get larger player skins working in gl 2002-09-13 05:32:28 +00:00
Ragnvald Maartmann-Moe IV cb241c50bf Replace * with # in map names, rather than _. Seems to be the "standard" for replacement textures. 2002-09-10 23:40:13 +00:00
Ragnvald Maartmann-Moe IV b7c2f5efa3 Allow loading textures from `textures` directory, as well as from maps. 2002-09-06 21:52:11 +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
Bill Currie f473a4fa17 more thorough reporting on bad surface extents 2002-08-27 16:01:51 +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 e2e605841f Code in variable declarations. Yuck. *thwaps taniwha* 2002-08-25 16:51:30 +00:00
Ragnvald Maartmann-Moe IV ddb90e1acd More whitespace. Eek. 2002-08-25 16:35:22 +00:00
Ragnvald Maartmann-Moe IV 19315a399f Whitespace, comment cleanups. 2002-08-25 14:25:38 +00:00
Ragnvald Maartmann-Moe IV 44e2fbaa87 More whitespace. 2002-08-22 20:06:30 +00:00
Ragnvald Maartmann-Moe IV 6ab0175cfc Whitespace... 2002-08-22 19:16:44 +00:00
Ragnvald Maartmann-Moe IV e6e920747c Whoops, more whitespace. 2002-08-22 19:08:33 +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 27f9b7a1c0 Whitespace. 2002-08-22 18:45:58 +00:00
Ragnvald Maartmann-Moe IV 87b5d2ec5b Whitespace. 2002-08-22 18:38:07 +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
Ragnvald Maartmann-Moe IV e9febea31c Whitespace. 2002-08-19 06:00:31 +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 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
Bill Currie 1337b8bd3d be a little more verbose with the "Bad surface extents" error. 2002-07-03 21:03:49 +00:00
Ragnvald Maartmann-Moe IV df55030fa8 Fix alias bounding box sizes, so that large critters don't disappear when at edge of view frustrum...
(Taken and debugged from tutorial on quakesrc.org)
2002-06-14 09:33:37 +00:00
Bill Currie 8a762bdaaf hack to work around the gl lighting fix breaking sw 2002-05-30 21:39:21 +00:00
Bill Currie 4e67f8d155 remove an extern 2002-05-30 18:38:57 +00:00
Ragnvald Maartmann-Moe IV f1f942dfd1 Hacking my way towards working r_lightmap_components 1.
Users of r_lightmap_components 1, should set `int mod_lightmap_bytes = 1` at the start of `quakeforge/libs/models/brush/gl_model_brush.c`.
2002-05-25 15:29:22 +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 e4975cd675 very minor load-time optimisation 2002-04-23 17:23:18 +00:00
Bill Currie b322835767 fix a missing \n 2002-04-03 18:50:36 +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 316386b542 mod->textures can legitimatly have null textures, so be on the lookout for
them. This fixes the client crash on certain levels.
2002-01-24 02:44:19 +00:00
Seth Galbraith 31a98f0f80 only load tgas for texture names that end in backslash 2002-01-17 16:31:34 +00:00
Bill Currie 6dbdfc0464 yeah, it's an icky global, but it's actually the right way to get at the
model header in the model loader.
2002-01-17 02:10:06 +00:00
Seth Galbraith 778af4276e external tga skin loading, doesn't work for players (teamcolor stuff) 2002-01-16 20:32:39 +00:00
Seth Galbraith 93116bc827 external mip texture loading 2002-01-16 01:02:50 +00:00
Seth Galbraith 9c1969146c cleanup, implemented tga loading for gfx.wad files 2002-01-15 21:05:34 +00:00
Bill Currie 6637f3fba5 more FIXME and whitespace cleanups 2002-01-12 04:46:15 +00:00
Seth Galbraith 3b6c2c8d0d pretty 32 bit color sprite tga loading - e.g progs/s_light.spr_0.tga 2002-01-11 04:20: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
Seth Galbraith 42456845f0 high precision software mdl rendering 2002-01-05 03:21:02 +00:00
Seth Galbraith 6ec47e6be6 slaying hardcoded mdl vertex and triangle limit 2002-01-04 07:40:00 +00:00
Bill Currie 013f503738 start getting const-correct on vec3_t params 2002-01-03 05:29:38 +00:00
Seth Galbraith d570f0905f high precision model loading 2001-12-30 02:30:26 +00:00
Bill Currie bd0ac4a38a merge Mod_LoadSpriteFrame from gl and sw back into the common sprite loader
pulling the gl specific code (the loading of the texture into GL) into
a separate function (Mod_SpriteLoadTexture), which is just a stub in sw
2001-11-22 05:31:44 +00:00
Bill Currie 0be2a31f2e lots of code cleanup. Merge Mod_LoadAllSkins, merge the sw32 model loading
code into the sw model loading code, remove all refs to r_pixbytes from the
sw renderer (it was never anything but 1), kill libQFmodels_sw32, remove
all the 16 bit code from the 8 bit sw renderer.
2001-11-21 19:13:53 +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
Bill Currie ec75b71711 don't bother with fullbright skins for models that are allways fullbright and
clean up a misplaced function prototype
2001-11-20 08:45:26 +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
Bill Currie d168a3daee this should remove the requirement for gmake on bsd systems 2001-11-12 16:23:41 +00:00
Bill Currie 85c9e0ab1e more externs cleaned up 2001-10-29 17:46:03 +00:00
Bill Currie 3ce8029f74 fix a silly goof with the models 2001-10-28 05:43:53 +00:00
Bill Currie 78a3e398d5 * taniwha gets medieval on extern 2001-10-28 04:23:37 +00:00
Adam Olsen 3bba5398ba - audit malloc usage. now everything checks the return value :) 2001-10-24 22:50:06 +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 a1d2cf3532 duplicate file name cleanup and make dist works 2001-10-03 17:50:36 +00:00
Jeff Teunissen 873521a68d Makefile cleanup continues. Models. 2001-09-28 09:49:09 +00:00
Bill Currie b1f4a778f9 the rcsid commit from hell }:> 2001-09-28 06:26:31 +00:00
Chris Ison 0efd28abcc trying to get bootstrap to work in cygwin 2001-09-25 23:04:13 +00:00
Bill Currie 49a85718f8 total nukage of Con_*Printf calls from libs (except for video). Sys_*Printf
(Sys_DPrintf is new) is now used exclusively for all lib printing. Con_Init
sets the sys printf recirection to Con_Print (which has been revamped
appropriatly) and the server sets it to SV_Print (which was SV_Printf and
the new SV_Printf calls /it/). This should fix the rcon print redirection
issues.
2001-09-21 04:22:46 +00:00
Bill Currie 74e9f89e8c forward port the client info string filtering from 0.3 and remove info.h from
a couple of c files that no longer need it.
2001-09-11 03:10:29 +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
Adam Olsen 6cab8cf4e0 - change Cache_Get calls to Cache_TryGet (which I just added), so they
can tollerate failure.
- minor error message tweak (an emptry string is not NULL!)
2001-08-31 03:48:26 +00:00
Ragnvald Maartmann-Moe IV 20544c6c67 Remove some obsolete comments. 2001-08-25 03:06:46 +00:00