Build 9296
GIT-
include xxhash.h instead of xxh3.h and update data types to account for 64-bit hash values
SVN handles and Git names are merged into one person.
include xxhash.h instead of xxh3.h and update data types to account for 64-bit hash values
switch a few things over to xxh3
update xxHash
experimental TROR rendering fixes
fix TROR rendering glitch in polymost when camera Z is outside of sector boundaries
Check all TROR layers in collision code
only bypass SDL_SetWindowGrab() for SDL 2.0.12 and lower
Implement tileflags member of picanm, and added support for new flag: TILEFLAGS_TRUENPOT, that allows you to enable true non-power-of-two texture support per-tile.
(Fixes classic's buggy tiling and panning behaviour and bypasses the emulation of it in Polymost)
Enable non-power-of-two wall support in classic renderer. (Doesn't do anything yet without either a new map format, or upcoming TILEFLAGS_TRUENPOT).
fixes for including compat.h in a C program built with MSVC
I needed to change the weird VS workaround in order for the EDUKE32_STATIC_ASSERT on line 850 to succeed. Things seemed OK when I tested them, but I'd like more information on the suspected compiler bug in question and why this was necessary in the first place.
move osdstrings cleanup out of engineUnInit() and into OSD_Cleanup()
update spriteext_t structure
Like DukePlayer_t, I do not intend to modify this structure again in a way that breaks backwards compatibility, unless 100% absolutely necessary.
Apply pogokeen's fix for hightile texture seams in polymost.
FORCE_INLINE mutex_lock() and mutex_unlock(), make mutex_try() actually work
return length from printf-style functions
re-enable EDUKE32_PREDICT_TRUE and EDUKE32_PREDICT_FALSE
#define EDUKE32_UNREACHABLE_SECTION as debug_break() in DEBUG builds
more fix16 cleanup
There's an optimization or two in here, but tbh I just like deleting shit.
Switch to mmulti.cpp from EDuke32-OldMP repo. Loses IPv6 support, but gains stability and XP support.
enable xoffset for face sprite voxel replacements
add klabs() back into ksqrtasm_old()
fix function signatures of ksqrtasm_old() and clip_nsqrtasm()
These functions were specified as accepting int32_t values, but wrap functions (or are wrapped by functions) that take uint32_t.
set g_loadedMapVersion in engineLoadBoardV5V6()
disable SDL's automatic relative mouse input scaling that is applied when the rendering output is scaled
update libdivide
add divideu64()/divideu64_noinline()
do not change GL_ALPHA_TEST state in model rendering code
fix sprite rendering order in polymost
fix compiler warnings
add error checking to and slightly clean up engineLoadBoardV5V6()
add error checking to engineLoadBoard()
potentially improve dealing with corrupt .md2/.md3 models
I didn't test any actual corrupt models, just noticed the lack of any error checking when looking at something else.
use kread_and_test() instead of regular kread() where appropriate
Remove lunatic.h and lunatic.cpp
Let's not define CLASSIC_NONPOW2_YSIZE_WALLS for now, regardless
of LUNATIC, but keep the code, since it may become useful in the future.
Remove a few more LUNATIC-specific definitions
Adjust krand for removal of LUNATIC
Remove the LUNATIC-specific definitions
of engine_main_arrays_are_static, engine_v8 and Mulscale.