Bill Currie
4d66fc175a
Avoid processing skins every frame.
...
Processing skins every frame would slow things down unnecessarily, so call
the skin functions only when something changes.
2012-01-24 10:28:07 +09:00
Bill Currie
19dc579a5a
Fix custom player skins for the sw renderers.
2012-01-23 23:38:32 +09:00
Bill Currie
08990ebb5a
Make top/bottom color work for GLSL.
...
Works quite nicely (love those colormaps).
2012-01-23 19:24:12 +09:00
Bill Currie
9a4b065eaf
Fix top/bottom colors for the SW renderers.
2012-01-23 17:33:19 +09:00
Bill Currie
6437a77021
Fix glsl qw alias model crc checking.
...
GLSL alias models don't use the cache, so don't try to access the data via
the cache.
2012-01-23 16:47:43 +09:00
Bill Currie
7bfddd7ffe
Gut most of the old skin code.
...
Custom skins are smashed on most targets. Player colors don't work, etc.
However, this will let me do a much cleaner implementation.
2012-01-23 16:16:30 +09:00
Bill Currie
6fe557b407
Ensure the beam entitys' angles get set.
...
This fixes the incorrectly oriented beam entities.
2012-01-21 16:18:20 +09:00
Bill Currie
bfa28f1a84
Fix an out-by-one error.
...
The recent sanitization of nummodels lost the last model in qw due to the
insane way in which the model list is built. oops.
2012-01-12 11:28:25 +09:00
Bill Currie
ffa79eed01
Don't lie about the number of models.
...
The renderer being told there were 2048 models when there were only ~160
was a bit of an unpleasant surprise :P
2012-01-09 16:22:39 +09:00
Bill Currie
423e08ce21
Add demo to "movie" conversion.
...
It currently writes a series of png files (QF/qfmvNNNNNN.png), at a fixed
rate of 30fps, with no sound recording.
2012-01-05 19:19:37 +09:00
Bill Currie
297a4e2756
Put the D_FlushCaches mess back.
...
It turns out that when it is called is highly timing sensitive :(
However, the rest of R_ClearState remains.
2012-01-05 15:50:20 +09:00
Bill Currie
55a0ed49cd
Build qw-client-glslx too.
...
I was asked about timedemo overkill (bigass1 currently gets 40kfps, haha),
so I had to add qw-client-glslx to the build.
2011-12-25 16:41:14 +09:00
Bill Currie
53d89bf85a
Clean up the mess around D_FlushCaches.
...
Create an R_ClearState and call that from the clients. It calls any
necessary functions itself.
2011-12-23 12:51:47 +09:00
Bill Currie
29306f7799
Merge nq and qw sv_phys.c
...
sv_move and world are now identical between the two directories.
2011-12-22 16:54:22 +09:00
Bill Currie
2bec1ae1d9
Make qw's push/block handing the same as nq's.
...
NQ's handling seems to be more correct. The only likely problems are if
something is pushed into (eg) a button, and things will be a little slower.
2011-12-22 16:54:22 +09:00
Bill Currie
3eb788b3f6
Make qw's SV_Push remove ONGROUND for non-players.
...
This seems to have been an optimization for QW since standard qw removed
monsters. However, since there are QW mods that brought back monsters,
this should be an improvement.
2011-12-22 16:54:22 +09:00
Bill Currie
d1be716031
Tidy up the corpse related code in SV_Push.
2011-12-22 16:54:22 +09:00
Bill Currie
4ade879674
Make SV_PushEntity easier to read.
2011-12-22 16:54:22 +09:00
Bill Currie
64115d3331
Clean up sv_phys.c a little before merging.
...
Add some comments and make the code a little more readable so I know
what's going on.
2011-12-22 16:54:22 +09:00
Bill Currie
d441dc9027
Sort the cvar declarations.
...
The diff is still messy, but now it includes only new/old cvars, not moved
cvars.
2011-12-22 16:54:21 +09:00
Bill Currie
3eb859a88f
Move the entity transform setup into the clients.
...
This has several benifits:
o The silly issue with alias model pitches being backwards is kept out
of the renderer (it's a quakec thing: entites do their pitch
backwards, but originally, only alias models were rotated. Hipnotic
did brush entity rotations in the correct direction).
o Angle to frame vector conversions are done only when the entity's
angles vector changes, rather than every frame. This avoids a lot of
unnecessary trig function calls.
o Once transformed, an entity's frame vectors are always available.
However, the vectors are left handed rather than right handed (ie,
forward/left/up instead of forward/right/up): just a matter of
watching the sign. This avoids even more trig calls (flag models in
qw).
o This paves the way for merging brush entity surface rendering with the
world model surface rendering (the actual goal of this patch).
o This also paves the way for using quaternions to represent entity
orientation, as that would be a protocol change.
2011-12-15 17:09:01 +09:00
Bill Currie
4b515a961b
Back out the fitzquake lerp changes.
...
That's not the direction I wish to take the renderer.
2011-12-13 17:01:15 +09:00
Bill Currie
ab2fe9f6a7
Remove the mvd timeskip code.
...
After discussing things with Spike of FTE, it seems that not many clients
handle zero length mvd packets particularly well. While it the skip code
might be useful for qtv, getting the packets into one but not the other
seems to be not worth the effort at this stage.
2011-12-12 17:08:22 +09:00
Bill Currie
6ac017860a
Pretend to be MVDSV for ktpro.
2011-12-11 17:15:33 +09:00
Bill Currie
0e76e1b9bf
Sign extend the size read from the download packet.
...
This fixes qw-client "hanging" on a missing download file. Hopefully fixes
the OpenBSD crash, too.
2011-12-10 21:38:44 +09:00
Antti Harri
cc937828b8
Propagate flags set in pthread.m4 to nq and qw sources. Removes the need
...
to have -pthread in CFLAGS on OpenBSD.
2011-12-10 13:33:20 +02:00
Bill Currie
c3d41326b3
Do key dest changing properly.
...
key_demo wasn't so well thought out. This seems to be much better (and nq
is known to be working nicely).
2011-12-10 16:14:25 +09:00
Bill Currie
16c8b2a18d
Use the new demo imt.
...
There are some problems with menus and the console messing up the key_dest
state (they assume console/menu or game, nothing else), but otherwise
things seem to work.
2011-12-10 15:18:50 +09:00
Bill Currie
91e65b6c80
Rename mplane_t to plane_t and clean up the mess.
...
I got rather tired of there being multiple definitions of mostly compatible
plane types (and I need a common type anyway). dplane_t still exists for
now because I want to be careful when messing with the actual bsp format.
2011-11-28 20:54:34 +09:00
Bill Currie
03abb3b27d
Add support for ellipsoids.
...
Not that boxes work yet, but the fix is the same.
2011-11-28 20:54:33 +09:00
Bill Currie
d9ab3a1f54
Move the config file/command line parsing into qargs.c
...
I don't like the COM prefix, but it will do for now.
2011-09-11 14:57:05 +09:00
Bill Currie
a71acc9ae5
Move the essential init code into Sys_Init().
2011-09-11 14:56:47 +09:00
Bill Currie
f921005a5d
Nuke com.c.
...
It's contents have been moved into game.c and massaged appropriately.
2011-09-11 14:55:13 +09:00
Bill Currie
1f4a6daafb
Fixes for win32.
...
I'd forgotten why SDL_main had such a lame prototype.
It turns out my previous mingw testing wasing testing SDL :(
2011-09-10 17:47:38 +09:00
Bill Currie
86c5b79816
Nuke yet another stack buffer.
...
Dn Dn Dn another one's gone, another one's gone, another one bites the dust
2011-09-07 10:35:42 +09:00
Bill Currie
e3c5f6e608
Fix the wonky rotation translations caused by rotation support.
...
Damn loop in PM_PlayerMove messed up the rotation flag. To think, all that
trouble caused by one little flag.
2011-09-07 09:41:06 +09:00
Bill Currie
e6e1b10c58
Add support for rotating entities to QW.
...
Same as the rotating entities in NQ. Unfortunately, I have some problems
with certain entities doing really weird things during collisions. I'll
sort that out later.
2011-09-07 09:41:06 +09:00
Bill Currie
71be8510e5
Don't do anything when the message is empty.
...
This clears up some fun valgrind noise in SV_Print.
2011-09-07 09:41:06 +09:00
Bill Currie
a3f0a559a5
Fix a segfault when centerprinting.
...
The dstring wasn't getting initialized :/
2011-09-07 09:41:06 +09:00
Bill Currie
937ea854d6
Give QW NQ's explode-box jumping code.
...
It seems that QW already allowed explode-box jumping, but this makes code a
little more consistent. Still need to figure out what to do about the
player physics code: the client prediction is wrong, though the server gets
it right (before the change).
2011-09-07 09:41:05 +09:00
Bill Currie
e1b6f50345
Clean up the diffs a bit between qw and nq sv_pr_cmds
...
Add some missing functions to nq.
In qw, Sys_Printf is mapped to SV_Printf, so no harm there.
2011-09-07 09:41:05 +09:00
Bill Currie
cca9983a48
Clean up the startup file diffs.
...
This also makes functionality consistent across the platforms, such as
adding support for -dedicated to sdl based nq, and various timing
calculations are now consistent.
2011-09-04 12:04:03 +09:00
Bill Currie
db8eee502f
Eliminate the is_server global.
...
More ugliness gone :)
2011-09-04 09:58:13 +09:00
Bill Currie
8d853589e3
Use the gamedir callback for the serverinfo key.
...
This gits rid of a bit of nastiness in the gamedir code :)
2011-09-04 09:58:13 +09:00
Bill Currie
a55f490b47
Add support for map specified fog and skys to qw.
2011-09-04 09:58:12 +09:00
Bill Currie
be8277c8c4
Sanitize some of the differences in cl_parse.c.
...
Most of the differences in CL_ParseServerMessage are now protocol specific.
2011-09-04 09:58:12 +09:00
Bill Currie
9afb691dd9
Change MSG_ReadShort to return an unsigned short.
...
Avoiding the sign extension by default seems to be more useful.
2011-09-04 09:58:12 +09:00
Bill Currie
9ace9f2bfa
Fix some bad timing with a dstring_delete.
...
Opps :P, double free.
2011-09-04 09:58:12 +09:00
Bill Currie
28d9c7234c
A bit more diff reduction before attempting to merge client code.
2011-09-04 09:58:12 +09:00
Bill Currie
514f085e88
Reduce the diffs in cl_demo.c.
...
Starting to look like a change in protocol rather than a complete rewrite.
2011-09-04 09:58:12 +09:00