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 .
* First stab at CMake
It builds on Linux, and cross-compiles to Windows as well using the
provided toolchain files. convert-icon is also fixed up with argument
count checking and modern format strings, along with all flake8 warnings
fixed.
* Fix Visual Studio compilation
* Add a newline to gitignore
* Build system updates
- Add documentation.
- Add options for defines.
- Automatically copy DLL files to binary directory.
- Add preliminary CPack support which packages the binary plus docs and
DLL files.
* Fix SDL2_FILES conditional
* Build Windows and Linux packages
We use our own Python script instead of unix2dos. Also, a few other
random fixes came along for the ride.
* Fix up warnings and defines on MSVC
* Update Travis to use CMake
* Remove automake and autoconf files
* Yet more build system updates
- Add docs, examples, and desktop stuff to binary packages.
- Get rid of HAVE_CONFIG_H.
- Change HAVE_DLOPEN to something more CMake-like.
- Add optional targets for most of the tools.
* Ignore files for source package
* Add to README file
* Get rid of BETA, DOGS, and fix another Automake straggler
* Prevent in-tree builds
Fixes#21