Bill Currie
cac2e04b18
Avoid namespace issues with dstatements.
2011-01-19 11:35:34 +09:00
Bill Currie
33db650161
Add QuatInverse to calculate 1/q.
...
There's still no direct quaternion division because I don't know if the
definition of q1/q2 is (1/q2)*q1 or q1*(1/q2) (it does make a difference).
2011-01-18 22:22:18 +09:00
Bill Currie
3c9991364b
Add a "void return" instruction.
...
I got fed up with always having to explicty return something.
2011-01-13 00:29:56 +09:00
Bill Currie
13503198e5
Add quat_origin convenience constant.
...
Same as vec3_origin in that all elements are zero.
2011-01-11 08:41:40 +09:00
Bill Currie
cb0bc7229a
Resurect the debugging messages in rua_obj.c
...
Yet another debug flag: SYS_RUA_OBJ
2011-01-10 12:26:10 +09:00
Bill Currie
75ec6bf244
Clean out some unnecessary types from the progs engine and clean up the mess.
...
This is a nasty commit, sorry, but 99% of the commit is interdependent.
2011-01-10 12:25:31 +09:00
Bill Currie
2b539ee4ae
Add include for stdlib.h
...
This is needed for size_t when hash.h is the first file included.
2011-01-10 12:25:30 +09:00
Jeff Teunissen
d764ef80d0
write "color" PCX files (stupid bug)
2011-01-09 04:34:35 -05:00
Jeff Teunissen
68b5db87b2
Document PCX read/write functions & struct
2011-01-09 04:06:50 -05:00
Jeff Teunissen
4090674fa5
LoadPCX(): Turn convert argument into a qboolean.
2011-01-09 04:05:57 -05:00
Jeff Teunissen
9e0575313e
Net debugging
...
Add a SYS_NET developer mask for debugging network, and use it.
2010-12-30 05:01:58 -05:00
Bill Currie
6e18c3df85
Make qfs developer prints a little more controllable.
2010-12-28 09:08:51 +09:00
Bill Currie
90fcbefaff
Don't use entity_t's next for linking static enitities.
2010-12-25 19:59:34 +09:00
Jeff Teunissen
bbc8154ec7
joystick fixes
...
Make /dev/input/js0 the default joy_device, and temporarily bump max
buttons to 18 (until I kill the maximums entirely)
2010-12-24 05:03:32 -05:00
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
Bill Currie
cf40f5073d
Nuke QFS_WriteBuffers.
...
This function is too dangerous for my liking, and it's now unnecessary
since qfs has been locked down.
2010-08-25 13:31:13 +09:00
Bill Currie
031055a91f
Move the qfs_* cvars out of quakefs.h
...
The qfs cvars are all private.
2010-08-25 13:31:13 +09:00
Bill Currie
0cc4bc8c69
Move searchpath out of quakefs.h.
...
It's not needed, nor should it be used, anywhere else.
2010-08-25 13:31:13 +09:00
Bill Currie
478394ef81
Nuke MAX_GAMEDIR_CALLBACKS
...
The number of gamedir callbacks is now unlimited.
2010-08-25 13:31:08 +09:00
Bill Currie
a51e888a1b
Nuke MAX_OSPATH and clean up the mess.
2010-08-25 13:31:08 +09:00
Bill Currie
baede61f4f
New function: dstring_strdup
...
I got tired of always doing dstring_newstr/dstring_copy, so I thought it
was time to wrap it. dstring_strdup is the dstring equivalent of strdup.
2010-08-25 13:31:00 +09:00
Bill Currie
fcdd046333
Add some docs for expand_squiggle.
2010-08-25 13:30:53 +09:00
Bill Currie
fd24170b32
get the behavior or PL_NewData correct
...
It taking ownership of the data was the correct behavior, so go back to that.
2010-08-20 13:21:22 +09:00
Bill Currie
a744caa421
The public api of qfplist is now fully documented.
...
Evertyhing that can or should be private now is, and all public functions
are documented.
2010-08-20 13:10:37 +09:00
Bill Currie
a703956553
split up most of bsp5.h and get things compiling again
2010-08-18 17:52:13 +09:00
Bill Currie
54fc922f6c
better error checking while reading streamed data
2010-08-13 01:48:20 +00:00
Bill Currie
ce5658416d
add support for up to 8 channels in sound effect files
...
The sounds are down-mixed to 2 channels (qf does not (yet) support more than
2 channel output), but this allows pretty much anything to be used for a
source of music. Only 5.1 (6 channel), stereo and mono have been tested, but
the others should work (any issues would be mis-interpretation/implementation
of the channel layout).
2010-08-12 02:28:27 +00:00
Bill Currie
b1620616b9
reset the "resampler" when seeking
2010-08-11 23:47:31 +00:00
Bill Currie
22e8698827
resampling now works
...
However, no fallback for when libsamplerate is missing.
2010-08-11 23:47:03 +00:00
Bill Currie
1c985bc925
bah, forgot these
2010-08-11 23:46:28 +00:00
Bill Currie
7502cd9ec5
making slow progress on sound quality
...
streamed oggs playback cleaning when not resampling, but flacs are still crap
2010-08-11 23:45:09 +00:00
Bill Currie
65a748fc3c
floating point mixer now working
...
the resampler is being badly abused for streams, and it's not yet properly
autoconfiscated, but things are working. Better yet, at the correct pitch and
speed.
2010-08-11 23:44:34 +00:00
Bill Currie
de35661d5d
hopefully correct comment
2010-08-11 23:43:54 +00:00
Bill Currie
2bb2d14b89
make "sample counts" frame based rather than mono sample based
...
that was always horribly confusing
2010-08-11 23:43:35 +00:00
Bill Currie
46a067b2f6
Do proper error handling when loading sound files.
...
This fixes the segfault grg got when trying to play a 5.1 channel file.
2010-08-08 03:02:55 +00:00
Bill Currie
0dfff8fd58
ignore stuff
2010-08-07 10:42:09 +00:00
Bill Currie
997102fea8
audit the usage of "only"
...
There are still a few iffy places (notably around certain prepositions), but
the relevant sentences are now much easier to read.
2010-01-13 06:42:26 +00:00
Bill Currie
0a203c0ab5
qccx (etc) "integer" autodetection.
...
Check for usage of denormal floats and if found, either bail with a
descriptive error message or give a mild warning that things will probably
break. This avoids the possibility of things like RuneQuake getting "lucky"
and doing real harm, and certainly avoids the segfaults.
2010-01-13 06:36:54 +00:00
Bill Currie
00e590f5f5
Really nail down the args param in rua_obj_msg_sendv().
2010-01-13 06:36:16 +00:00
Bill Currie
dc3fc291f6
fix a bunch of comments
2010-01-13 06:30:36 +00:00
Bill Currie
6eae016d3e
minor cleanups
...
fix some comments, cleanup some whitespace, and don't explicitly call
PR_RelocateBuiltins as it is called (indirectly) by PR_LoadProgs.
2010-01-13 06:28:28 +00:00
Bill Currie
36fe939ea5
don't hang when processing \{N} escape sequences and fix a comment
2010-01-13 06:21:29 +00:00
Bill Currie
58c167eaed
correct a bogus comment
2009-12-23 11:21:34 +00:00
Bill Currie
4b0320f341
glx, gly, glwidth and glheight are now gone too. also GL_BeginRendering
2009-12-23 08:20:29 +00:00
Bill Currie
f2004abecc
nuke scr_width and scr_height
2009-12-23 07:00:42 +00:00
Bill Currie
a2fa2d425b
fix viewsize interaction with the cleaned up screen size handling
2009-12-23 06:29:11 +00:00
Bill Currie
4ff2cb88cf
bigscreen patch from Philippe Troin
2009-12-20 05:34:41 +00:00
Bill Currie
b14fcccd8f
get qf compiling with gcc 4.4
2009-12-19 10:54:23 +00:00
Bill Currie
0b1cc3d21f
Support Japanese keyoards (yay, I can finally toggle the console :P)
2009-03-18 00:26:34 +00:00
Bill Currie
59c077638a
Fix the annoying "Unknown interpreter 'id'" error. It was both bogus and a symptom of other problems (also fixed).
2009-03-16 11:49:52 +00:00
Bill Currie
0af43cf016
make the resampling state a little more self-contained. this should make
2009-01-08 07:48:08 +00:00