* Only expose DLL directory instead of globbing all of them
The old way didn't work when mingw libraries were installed from
packages, like with MSYS2. Not quite done yet, though, since I don't
know which DLL files we need from SDL2_mixer.
* Fix dl_FOUND not being properly set
* Revert "Fix dl_FOUND not being properly set"
This reverts commit 832eb25f826ca88063a87585a373156e37fe364e.
* Add DLL files for SDL_mixer
* Download SDL libraries automatically on Windows
* Add SDL2_image and link against zlib
On Windows, we compile our own zlib. Still need to get mingw worked
out, though.
* Fixes for the SDL_image finder
Missed a few instances of NET in my copy-paste.
* Fix mingw compilation
* Use our compiled zlib instead of SDL_image's
Also do some general cleanup and fixes, too many to enumerate.
* Remove unneeded error
* MSVC fixes
- Don't avoid the external project on subsequent cache generations.
- If no toolchain is in use, don't attempt to make an absolute path to
it.
* Add a hash for zlib
* Properly handle multi-config build systems with zlib
* Ignore unused cache vars with zlib build
* Build and install only the zlib dynamic library
* Fix up zlib installer to work on MSVC
* Update README, move cross-compile toolchains
Moving them to the root directory makes it more obvious they're intended
to be used by end-users.
Fixes#61
This commit introduces:
* Vertex coordinates only used for rendering. These get moved in P_RemoveSlimeTrails(), the actual vertex coordinates are moved only if not in compatibility mode, and the rendering coordinates are moved back to their original location if a Linguortal is detected.
* Seg lengths and angles only used for rendering. These get recalculated after the vertices were moved.
* A fix for the "Long Line Wobble" based on the seg lengths introduced above.
* An overflow-safe variant of SlopeDiv(). This is only used in R_PointToAngleCrispy(), which in turn is an overflow-safe variant of R_PointToAngle(), which in turn is only used for rendering in R_CheckBBox(), R_AddLine() and P_SegLengthsAngles().
* Fixes for the Automap to cope with huge level dimensions which span the entire INT range.
All of the above fix the rendering glitches found in extreme maps such as e.g. planisf2. They were taken from Crispy Doom (and thus mostly from PrBoom+), where they have been introduced years ago and have proven to work. Fixes#70
* support maps with NODES in compressed or uncompressed ZDBSP format or DeePBSP format (Fixes#63)
* move some stuff around
* fix loading DeepBSP nodes
* support maps with NODES in compressed or uncompressed ZDBSP format or DeePBSP format
* move some stuff around
* fix loading DeepBSP nodes
This fixes the issue that Linux builds were configured without PNG
screenshot support, although the dl library has been found. Thanks
@AlexMax for figuring this out.
Also, this will eventually become Woof! 1.0. Thanks @JNechaevsky for
performing a series of demo playback tests confirming the port's
stability after the sound system overhaul.
Interestingly, these checks wouldn't have been possible without vastly
improving the port's Vanilla demo playback capabilities before. These
were, in turn, hard to compare against the original WinMBF, because
the latter would occasionally crash due to the fragile sound channel
locking... I am really glad that this mess has been figured out now!
This commit contains the following changes:
- let SDL_Mixer do the actual sound mixing
- do not connect pitch-shifted samples to a sound SFX
- immediately free samples not connected to a sound SFX
- linear stereo volume separation
- pimp pitch shifting amplitude
This finally gets rid of the fragile sound channel locking and thus hopefully fixes#58 .