Commit graph

1102 commits

Author SHA1 Message Date
Bill Currie
de04e1b602 Lots of win32 (mingw cross) build fixes.
HTTP (curl) support is missing, but everything else builds.
2010-12-23 11:40:16 +09:00
Bill Currie
0173ba07b4 Prefer int over long for (u)int32_t.
WHen int and long are the same size, it feels better to use int. More
importantly, it keeps things simple for linux builds vs mingw builds.
2010-12-23 09:47:05 +09:00
Bill Currie
4ab92c03e3 fix a bogus parameter name 2010-12-13 18:01:21 +09:00
Bill Currie
ce96e6b055 The beginnings of fog support.
gl_fog.c is taken from fitzquake with only minor modifications to get it
into QF. Other than worldspawn/network parsing, it's not used yet.
2010-12-10 17:17:30 +09:00
Bill Currie
8e557e81b6 Break out the guts of Ed_LoadFromFile into ED_Parse.
ED_Parse does not support progs privided parsing (at this stage, anyway),
but this will allow clients to easily get at the entities in a map.
2010-12-10 17:17:29 +09:00
Bill Currie
3ae2ef8d11 Remove non-progs data from edict_t.
All data that is irrelevant to the progs engine itself has been removed
from edict_t and moved into the sv_progs code.
2010-12-09 17:24:37 +09:00
Bill Currie
9deb178e21 Some documentation fixups. 2010-12-09 13:35:11 +09:00
Bill Currie
e46b52a81c Plug the edict_leaf memory leak. 2010-12-08 09:20:43 +09:00
Bill Currie
31cf4b0d78 Use a linked list for the leafs in which the entity is positioned.
This allows the pvs to be used on an antity no matter how many leafs the
entity is touching. Seems to work nicely, but it will leak memory every
time a map is loaded.
2010-12-08 08:44:52 +09:00
Bill Currie
a0828ddd06 Clean up bsp limits.
Delete all bogus bsp limits, fixing the code that depended on them.
Document those limits that are dictated by the format.
2010-12-07 17:58:09 +09:00
Bill Currie
0bd960d6cc Move IDPAKHEADER to where it belongs.
It's not used anywhere, but it doesn't belong with the bsp types.
2010-12-07 13:54:54 +09:00
Bill Currie
3b0dbd29ca make distcheck fixes 2010-12-06 21:24:49 +09:00
Bill Currie
c2af7896bd Revert "make droptofloor continue the trace if it starts solid"
This reverts commit 10232acdfe.

The problem was really in the trace code, but it got fixed by "accident"
when I had similar problems in hipnotic a couple of years later. Now to
figure out just what the trace could really should be doing.
2010-12-05 14:56:32 +09:00
Bill Currie
a4b97e9e2e Dynamic entity allocation. Unlimited static entities.
Entities can now be allocated dynamically. They are freed whenever a new
map is loaded.

Use the dynamic entities for static entities.
2010-12-03 21:01:52 +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
f98b002f9e Make R_StoreEfrags const-correct.
R_StoreEfrags does not need to modify its parameter or anything to which
it directly refers, so make the pointer single-level and constant.
2010-12-03 13:30:49 +09:00
Bill Currie
085b0f4448 Remove R_SplitEntityOnNode2
When R_AddEfrags is used (as is the case in nq), this function is
redundant. Brush models in qw are currently broken (invisible), but that's
just a matter of getting qw to use R_AddEfrags instead of R_NewEntity.

This removal should speed up the software renderers a little bit.
2010-12-02 08:31:48 +09:00
Bill Currie
0e737cae15 Fix some "a" -> "an". 2010-11-29 12:54:26 +09:00
Bill Currie
8831a109a4 Create and use mclipnode_t.
I didn't realize this was a critical part of fitzquake's large map
support. This should fix the non-solid brush entities in Conflagrant
Rodent.
2010-11-29 09:36:21 +09:00
Bill Currie
85c693d2b8 whitespace 2010-11-29 09:34:11 +09:00
Bill Currie
763ae71335 Remove the hull_t defines.
Nothing uses them...
2010-11-29 09:05:20 +09:00
Bill Currie
995a8d3e4e Don't use assembly code for SV_HullPointContents.
This is the only assembly code dependent on the size of dclipnode_t.
Removing it paves the way for fixing clipnodes in large maps.
2010-11-29 08:51:29 +09:00
Jeff Teunissen
b0217bf0cf Merge branch 'master' into forge 2010-11-28 03:05:30 -05:00
Bill Currie
f31595781c Add and used SYS_VID for video/targets masked prints. 2010-11-27 08:48:00 +09:00
Bill Currie
cacd2fb895 FiztQuake's lerping system.
Seems to be mostly working. I get some funny results for zombies, but that
might be moving and turning at the same time causing issues.
2010-11-26 16:20:05 +09:00
Bill Currie
31c13d92a2 Protocol 666/large map support from FitzQuake.
Alpha and lerping aren't implemented yet, but things seem to be working. I
can load and play oms2.bsp (Conflagrant Rodent).
2010-11-26 16:20:05 +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
abc17c1d91 New cvar commands from fitzquake. 2010-11-26 16:19:25 +09:00
Bill Currie
defc2a264b Add QFile_GetHandle()
This allows other rua builtins to make use of ruamoko files.
2010-11-24 17:01:19 +09:00
Bill Currie
763cec3838 Some spelling/grammar corrections. 2010-11-24 17:01:18 +09:00
Bill Currie
d0370f7cf5 zixthree's Microsoft Visual C++ 2005 Express Support
+ Support for VC++ 2005 Express.
- MFC dependency for quakeforge.rc.
+ VC++ 2005 compatible icon, choose Vista or XP icon depending on SDK target OS.
! Renamed E_POINTER macro to E_PTR (was in conflict with Windows macro).
! Fixed HAVE_SNPRINTF and HAVE__SNPRINTF macros.
! Fixed HAVE_VSNPRINTF and HAVE__VSNPRINTF config macros.
+ Added explicit dependency to gdi32.lib and user32.lib when using Express.
! Changed -0x80000000 to INT_MIN
! Added return value when running *_Error for Visual C++ compiler.
! Function method_free wasn't freeing _meth parameter.
+ Added a Visual Studio solution specific to Express to remedy unsupported features.
! Renamed solution files to reflect their associated Visual Studio flavor.
! Updated vc2005/readme.txt to reflect changes and notify incompatibility with Wave preprocessor.
2010-11-21 15:29:57 +09:00
Bill Currie
d4ae231f34 sezero's NET_SendToAll fix
Here's a patch to NET_SendToAll() which was always
broken: it never skipped non-connected clients.
Depending on the compiler, it would wait the whole
5 seconds of its blocktime before it gave up.
While there, changed its blocktime argument to
double (the comparison is against a double.)
2010-11-21 14:27:43 +09:00
Bill Currie
ef7958d680 Lots of const correctness. 2010-10-13 20:52:08 +09:00
Bill Currie
cd159e1cc1 Use LoadBSPMem to load brush models.
Now that Mod_LoadBrushModel uses bspfile.[ch], the engine uses the same
code as the tools to work with bsp files.
2010-10-13 20:52:05 +09:00
Bill Currie
56fb4d9a22 allow safe bsp freeing
any memory the bsp thinks it does not own will not be freed
2010-10-13 20:52:05 +09:00
Bill Currie
cec8e09f07 white space cleanup 2010-10-13 20:52:05 +09:00
Bill Currie
1d86e71404 make WriteBSPFile take a const bsp_t *
This means that the supplied bsp can now be reused, as it should be.
2010-10-13 20:52:05 +09:00
Bill Currie
f4042c5b91 Make the bsp disk data structures type size independent.
However, this assumes float is always 32 bits.

Also use size_t for the *size fields in bsp_t and clean up the mess.
2010-10-13 20:52:05 +09:00
Bill Currie
8808eba3ff add VectorSet macro
VectorSet(a,b,c,d) -> vec3_t d = (a, b, c)

This should be useful.
2010-10-13 20:52:05 +09:00
Bill Currie
faf63e60c2 Make wad files type size-safe. 2010-10-09 16:10:49 +09:00
Bill Currie
fe9fdd7b83 add VectorSet macro
VectorSet(a,b,c,d) -> vec3_t d = (a, b, c)

This should be useful.
2010-09-26 14:54:42 +09:00
Bill Currie
7dc1ccdbea Add a function for retreiving the parsed token.
Saves having to reach into the token's dstring (script->token->str was
getting annoying).
2010-09-26 13:50:17 +09:00
Bill Currie
19a558a2db Fix a doxygen warning 2010-08-31 22:07:49 +09:00
Bill Currie
fcd9c3e115 Fix a stray doxygen control comment. 2010-08-31 21:15:40 +09:00
Bill Currie
42faad9015 Move expand_squiggle() from quakefs to sys, and rename to Sys_ExpandSquiggle.
Hopefully the final resting place of this function.
2010-08-25 14:00:04 +09:00
Bill Currie
e9bd9a4baa Move QFS_CreatePath() to Sys_CreatePath(). 2010-08-25 13:52:24 +09:00
Bill Currie
4f620655be Document quakefs.h 2010-08-25 13:40:22 +09:00
Bill Currie
ba8ca132a9 Change QFS_Gamedir()'s parameter from dir to gamedir. 2010-08-25 13:31:24 +09:00
Bill Currie
745bdfafdf Eliminate QFS_LoadHunkFile().
It is unused, and part of the group of functions I wish to remove from QF.
2010-08-25 13:31:23 +09:00
Bill Currie
cbee789fe1 Change ProgPath to ModelPath and dir.progs to dir.models.
The default is still $path/progs, as that is what is expected by the
game-code.
2010-08-25 13:31:13 +09:00