We already restore moved entities below, only we hadn't called
SV_LinkEdict with touch_triggers set to true. However, this isn't needed
since the entity was not moved from it's original position.
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
Quite a bit of churn here, but mostly nothing non-obvious. The only part I
probably changed more than I should have for this changeset was
SV_PushMove, since QW had factored out SV_Push from that. However, a quick
test of both NQ and QW seems to have everything working as normal.
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
All the callers had their start and end addresses anyway, so do the length
calculation in just one place. Fixes the last few WIN64 specific build
warnings as well.
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
The main win targets all build, though there's a few warnings to be fixed.
SDL not working yet - might just need to rebuild the library, but might
also need to point to a different sdl2-config binary?
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
Try to avoid cases where -180 != 180 or 0 != 360 by ensuring that we
use the ranges (closed->open) of [0, 360) or [-180, 180).
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
Mostly important for the rowbytes, which are negative for a bottom-up
windows DIB. Big thanks to szo for posting about this gotcha to the forum.
Also had to change a few places where a bit shift was used to divide
rowbytes by 2. Behaviour is undefined for signed numbers with negative
values.
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
Nothing really to change except the headers included and the library to
link against. Switched on WIN32_LEAN_AND_MEAN, so had to add a few extra
includes for that.
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
Not very well tested, but the loopback client works. Still missing entity
alpha, lerpfinish and a few other things.
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
Currently not supported by the software renderer. Intersecting bmodel
surfaces will behave weirdly (and people tend to assume it does work,
because glquake handle's it just fine).
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
Still need to implement the server side and the changes for outgoing
client commands, but this is enough that I can playback demos recorded
with protocol 666.
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
This really seems like a thinko to me. Patch below.
snd_mix.c (SND_InitScaletable): fixed an off-by-one mistake in the
signed char conversion.
Signed-off-by: Ozkan Sezer <sezero@users.sourceforge.net>
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
Pre-calculate the frustum clip flags and cull backward facing bmodel
faces. This takes advantage of the surface bbox info and gives a small
speedup on maps having large/complex submodels.
Restructured the main loop in R_DrawBEntitiesOnList so that there are a
few less levels of code indentation there.
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
Yes, it looks like crap but not really any worse than it looks in glquake.
Will do something to fix it at some stage...
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
Pretty GCC dependent at this point anyway, may as well just do it this way
and get rid of issues building on different platforms.
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
Not used by the edge/span driver at all. If I ever discover I want it back
again... well it's in the commit history.
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>
Pre-calculate frustum clip flags for each node/surface in the PVS by using
a separate walk of the tree before drawing. Doesn't seem to be any
measureable performance benefit, but it was nice to separate this step
from the drawing.
The BSP walk doesn't need to be ordered, so could be done iteratively with
no node stack.
I'm hoping I can apply this to submodels too without too much performance
impact for small models and with some benefit for large, complex models...
Signed-off-by: Kevin Shanahan <kmshanah@disenchant.net>