Commit graph

957 commits

Author SHA1 Message Date
terminx
be6069fc6d Support vsync in classic mode (SDL 2.x only), and properly handle failure to enable "adaptive" vsync on systems that don't support it.
git-svn-id: https://svn.eduke32.com/eduke32@5938 1a8010ca-5511-0410-912e-c29ae57300e0
2016-11-15 21:55:30 +00:00
terminx
466f3aca30 Support building without a startup window through the Makefile. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5928 1a8010ca-5511-0410-912e-c29ae57300e0
2016-11-09 22:51:33 +00:00
terminx
f79993a7c9 Mapster32: support sprite blending mode and statnum in clipboard.
git-svn-id: https://svn.eduke32.com/eduke32@5925 1a8010ca-5511-0410-912e-c29ae57300e0
2016-11-01 01:35:41 +00:00
hendricks266
b74c0abd8d Engine: Add vox_undefine().
git-svn-id: https://svn.eduke32.com/eduke32@5914 1a8010ca-5511-0410-912e-c29ae57300e0
2016-10-25 05:43:50 +00:00
hendricks266
da6bc22d35 Polymost: Clear wsprinfo[] upon map load. This should address some remaining instances of wall-ornamented sprite z-fighting.
git-svn-id: https://svn.eduke32.com/eduke32@5910 1a8010ca-5511-0410-912e-c29ae57300e0
2016-10-24 21:30:34 +00:00
hendricks266
86201254bd sdlayer: Add EDUKE32_SDL_LINKED_PREREQ macro.
git-svn-id: https://svn.eduke32.com/eduke32@5903 1a8010ca-5511-0410-912e-c29ae57300e0
2016-10-20 06:26:17 +00:00
hendricks266
8169365820 Bump PSKYOFF_MAX from 4 to 8.
git-svn-id: https://svn.eduke32.com/eduke32@5898 1a8010ca-5511-0410-912e-c29ae57300e0
2016-10-14 07:40:56 +00:00
hendricks266
8a1f1f2ede GL .blend support.
Consult me if you are interested in this feature.

TODO: Polymer.

git-svn-id: https://svn.eduke32.com/eduke32@5888 1a8010ca-5511-0410-912e-c29ae57300e0
2016-10-09 07:55:23 +00:00
hendricks266
07d759234d Some float optimizations in the engine.
git-svn-id: https://svn.eduke32.com/eduke32@5877 1a8010ca-5511-0410-912e-c29ae57300e0
2016-10-03 02:43:48 +00:00
terminx
543e7f67c2 Change default unfiltered texture mode to 0 (no mipmaps)
git-svn-id: https://svn.eduke32.com/eduke32@5874 1a8010ca-5511-0410-912e-c29ae57300e0
2016-09-18 03:54:21 +00:00
terminx
c2d8a66c3a Fix a couple of gcc 6.x warnings.
git-svn-id: https://svn.eduke32.com/eduke32@5837 1a8010ca-5511-0410-912e-c29ae57300e0
2016-08-27 01:42:12 +00:00
terminx
d7d6623364 More readability cleanup. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5835 1a8010ca-5511-0410-912e-c29ae57300e0
2016-08-27 01:42:01 +00:00
terminx
c6617a98b2 More cleanup. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5830 1a8010ca-5511-0410-912e-c29ae57300e0
2016-08-27 01:41:33 +00:00
terminx
4575148c02 Use size_t or ssize_t in for loops where possible
git-svn-id: https://svn.eduke32.com/eduke32@5829 1a8010ca-5511-0410-912e-c29ae57300e0
2016-08-27 01:41:21 +00:00
terminx
aae66ccb11 Further cleanup. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5828 1a8010ca-5511-0410-912e-c29ae57300e0
2016-08-27 01:41:04 +00:00
terminx
34453f5090 Continued cleanup. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5827 1a8010ca-5511-0410-912e-c29ae57300e0
2016-08-27 01:40:56 +00:00
terminx
52f678a743 Massive readability cleanup of game code part 1. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5825 1a8010ca-5511-0410-912e-c29ae57300e0
2016-08-27 01:40:35 +00:00
terminx
95f7cf0982 "return" is not a function.
git-svn-id: https://svn.eduke32.com/eduke32@5803 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:34:41 +00:00
terminx
951ad678c4 Usual cleanup type stuff involving vectors and variable scopes.
git-svn-id: https://svn.eduke32.com/eduke32@5802 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:34:29 +00:00
terminx
0e713e698f Separate art tile related functions out from engine.c and into tiles.c
git-svn-id: https://svn.eduke32.com/eduke32@5801 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:34:25 +00:00
terminx
03daded192 Vectorize a few more things.
git-svn-id: https://svn.eduke32.com/eduke32@5800 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:34:18 +00:00
terminx
29a9b93517 FORCE_INLINE a couple of Polymost support functions.
git-svn-id: https://svn.eduke32.com/eduke32@5799 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:34:10 +00:00
terminx
5800cd588c tsectortype -> usectortype
twalltype -> uwalltype
tspritetype -> uspritetype

No other changes.

git-svn-id: https://svn.eduke32.com/eduke32@5796 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:58 +00:00
terminx
0562de125f More changes similar to the previous commit
git-svn-id: https://svn.eduke32.com/eduke32@5795 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:45 +00:00
terminx
dd1d02a0e7 Change a bunch of engine functions that access sprites, walls, and sectors in a read-only fashion to use the untracked versions of those structs.
git-svn-id: https://svn.eduke32.com/eduke32@5794 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:39 +00:00
terminx
3b7aa279b1 Clipping function tweaks. Fixes building without HAVE_CLIPSHAPE_FEATURE.
git-svn-id: https://svn.eduke32.com/eduke32@5793 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:35 +00:00
terminx
32450bdd68 Relocate maphack related code into mhk.c.
This commit also relocates clipping related code into clip.c and makes a few other minor changes, because I fucked up and merged the commits together. God damn it.

git-svn-id: https://svn.eduke32.com/eduke32@5792 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:30 +00:00
terminx
3eb979f8da Split 2d mode editor stuff that remained in engine.c into 2d.c.
git-svn-id: https://svn.eduke32.com/eduke32@5790 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:14 +00:00
terminx
205a757109 Move palette related functionality from engine.c to palette.c/h.
git-svn-id: https://svn.eduke32.com/eduke32@5789 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:06 +00:00
terminx
cdcc983a22 Move hash table stuff out of engine.c and into hash.c/h.
git-svn-id: https://svn.eduke32.com/eduke32@5788 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:32:53 +00:00
terminx
42ece182e4 Pragma tweaks
git-svn-id: https://svn.eduke32.com/eduke32@5784 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:32:37 +00:00
hendricks266
e06cabb8aa Remove x86 asm pragmas for readpixel and drawpixel and replace them with their C versions.
This fixes a crash in the editor's 2D mode, reported by Paul B.

git-svn-id: https://svn.eduke32.com/eduke32@5781 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-15 07:08:48 +00:00
hendricks266
8ef2032035 Makefile: Revamp setup of all things SDL.
Highlights:
*Building with msys2 can now take advantage of sdl-config and sdl2-config if present.
*Add a header check to error out if SDL_mixer's major version does not match SDL.
*Building with frameworks on OS X works again.

Notes:
*Those cross compiling, particularly targeting Windows, may need to invoke make with SDLCONFIG='' to avoid bringing in libs and headers from the host.

git-svn-id: https://svn.eduke32.com/eduke32@5778 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-15 07:08:35 +00:00
hendricks266
3adda0cbd3 Polymer: Revert part of r5481. We can't rely on the sprite trackers to tell us when tsprites change.
git-svn-id: https://svn.eduke32.com/eduke32@5774 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-10 18:23:22 +00:00
hendricks266
0434a87e3a Remove trailing whitespace from anything we don't need to rebase from an upstream.
git-svn-id: https://svn.eduke32.com/eduke32@5768 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-05 04:46:28 +00:00
hendricks266
128719189f sdlayer: Clean up creation of SDL_Renderer and provide information about the process to the log.
git-svn-id: https://svn.eduke32.com/eduke32@5759 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-29 21:11:21 +00:00
hendricks266
a8287f676f KenBuild: Fix mul3 and sqr pragmas.
git-svn-id: https://svn.eduke32.com/eduke32@5735 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:18 +00:00
hendricks266
42d0f08d18 libdivide.h: Silence "warning: non-constant-expression cannot be narrowed from type 'uint64_t' (aka 'unsigned long long') to 'long long' in initializer list in C++11 [-Wc++11-narrowing]".
The problem that the block of code in question works around was fixed in LLVM r82228 and landed in clang 2.7.

git-svn-id: https://svn.eduke32.com/eduke32@5732 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:07 +00:00
hendricks266
1f761df37f libdivide.h: Silence "warning: variable 'result' is uninitialized when used here [-Wuninitialized]".
git-svn-id: https://svn.eduke32.com/eduke32@5731 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:02 +00:00
hendricks266
4282640c6c Amend previous commit. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5730 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-22 21:01:12 +00:00
hendricks266
764336bdea Fix NO_ALIGNED_MALLOC to actually work and not transpose the parameters. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5729 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-21 02:39:58 +00:00
terminx
e33d010e1a Replace uses of "swap64bit" where "swapdouble" is what is really meant. There is nothing in this to handle potential platforms where sizeof(double) != sizeof(int64_t)
git-svn-id: https://svn.eduke32.com/eduke32@5724 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:25 +00:00
hendricks266
b12c8dc268 Reorder preprocessor lines in libdivide.h so that LIBDIVIDE_USE_SSE2 is defined before emmintrin.h is included. Fixes ticket #23. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5720 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-11 02:59:15 +00:00
hendricks266
93a86e2840 Enable LIBDIVIDE_USE_SSE2 under x86_64 builds or if the binary is built with SSE2 optimizations.
git-svn-id: https://svn.eduke32.com/eduke32@5716 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:27 +00:00
hendricks266
868306abef Polymost: Allow compressed ART tiles (r_texcompr 2) to be cached.
git-svn-id: https://svn.eduke32.com/eduke32@5713 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:17 +00:00
hendricks266
b40f9b5b80 You'll Cowards Don't Even Indent
git-svn-id: https://svn.eduke32.com/eduke32@5712 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:13 +00:00
hendricks266
84a2695cdc Polymost: Clean up and rearrange some texcache code. No functional changes.
git-svn-id: https://svn.eduke32.com/eduke32@5710 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:06 +00:00
hendricks266
d1266434f1 Polymost: Call texcache_calcid once per texture instead of twice. Clean it up a little while we're at it.
git-svn-id: https://svn.eduke32.com/eduke32@5709 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:02 +00:00
hendricks266
93349bd8e0 Add a hack so that when exit() is called on Android, we instead longjmp to main() and return from there.
git-svn-id: https://svn.eduke32.com/eduke32@5706 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-02 18:29:38 +00:00
hendricks266
b3f2532bb5 GL ES: Introduce ETC1 and (alpha-less) ETC2 texture compression, which improves performance by using less VRAM and requiring shorter data bus transfers.
git-svn-id: https://svn.eduke32.com/eduke32@5690 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:16:14 +00:00