Commit graph

5637 commits

Author SHA1 Message Date
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
d5ceeebfcb Miscellaneous tomfoolery of little consequence.
git-svn-id: https://svn.eduke32.com/eduke32@5798 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:34:07 +00:00
terminx
e1fc28776c Fix MSVC build
git-svn-id: https://svn.eduke32.com/eduke32@5797 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:34:03 +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
cb2382285f Separate screen capture code from engine.c into screenshot.c
git-svn-id: https://svn.eduke32.com/eduke32@5791 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:33:19 +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
aca0807a81 Performance fix for Polymost wall sprite z-fighting avoidance
git-svn-id: https://svn.eduke32.com/eduke32@5787 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:32:47 +00:00
terminx
212e84ce21 Minor CON optimization bs.
git-svn-id: https://svn.eduke32.com/eduke32@5786 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:32:44 +00:00
terminx
85d0543763 This is stupid as fuck, but I swear I profiled it and it was faster this way. Looked like a cache miss on the first access of the pointers.
git-svn-id: https://svn.eduke32.com/eduke32@5785 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:32:40 +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
terminx
74b01416d0 Allow non-player hitscan projectiles to spawn sprites when impacting walls or sectors, and allow them to break sector textures (they could already break wall textures)
git-svn-id: https://svn.eduke32.com/eduke32@5783 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:32:33 +00:00
terminx
3c9f97a58e Allow SFLAG_NOCLIP to apply to projectile movement
git-svn-id: https://svn.eduke32.com/eduke32@5782 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-21 00:32:28 +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
3dba49a1e3 Replace uses of the HAVE_DS and HAVE_SDL preprocessor macros with MIXERTYPEWIN and MIXERTYPESDL.
git-svn-id: https://svn.eduke32.com/eduke32@5780 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-15 07:08:45 +00:00
hendricks266
4afd27e16f Delete all SDL_mixer Windows libs from our repo since they're not part of our automated build process, and are not recommended.
git-svn-id: https://svn.eduke32.com/eduke32@5779 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-15 07:08:40 +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
6e3e490b93 Makefile: Add NULLSTREAM to factor out the NUL part of DONT_PRINT.
git-svn-id: https://svn.eduke32.com/eduke32@5777 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-15 07:08:31 +00:00
hendricks266
619f3a7a8a Makefile: Add a special set of default optimization options when building for the Haswell-specific x86_64h architecture designation.
git-svn-id: https://svn.eduke32.com/eduke32@5776 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-15 07:08:26 +00:00
hendricks266
b1b7f13a41 Polymer: Correct an oversight in r3580.
git-svn-id: https://svn.eduke32.com/eduke32@5775 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-10 18:23:25 +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
d8c03ba267 Duke3D: Restore some accidentally-working cases of SEs 5, 6, 14, and 30 broken in r3161.
git-svn-id: https://svn.eduke32.com/eduke32@5773 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-10 18:23:15 +00:00
hendricks266
afe530942c BSD: Fix build on OpenBSD. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5772 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-06 22:13:05 +00:00
hendricks266
d33a443b2e Revert r5658. This fixes the disappearing chaingun problem.
git-svn-id: https://svn.eduke32.com/eduke32@5771 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-05 04:46:43 +00:00
hendricks266
31e0cdd87b GL: In uploadtexture, don't assume that a non-masking texture can safely be sent to the driver without the alpha channel.
git-svn-id: https://svn.eduke32.com/eduke32@5770 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-05 04:46:40 +00:00
hendricks266
f0f7b04652 Polymer: Fix the oversight in handling tspr->extra from r5400 by setting it to zero in polymer_scansprites.
git-svn-id: https://svn.eduke32.com/eduke32@5769 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-05 04:46:37 +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
31606866f1 Add some preprocessor checks on the output format to the asm.
git-svn-id: https://svn.eduke32.com/eduke32@5767 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-05 04:46:06 +00:00
hendricks266
a53a821ec3 Makefile: Switch the detection order of OPTOPT flags so that i386 is checked after x86_64. This ensures full compatibility for fat OS X binaries built using ARCH="-arch i386 -arch x86_64".
git-svn-id: https://svn.eduke32.com/eduke32@5766 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-05 04:46:01 +00:00
hendricks266
400abee8b1 Makefile: Create GTK *_banner.c files in obj/ subfolders instead of rsrc/ so that they don't need separate cleanup rules.
git-svn-id: https://svn.eduke32.com/eduke32@5765 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-03 04:50:57 +00:00
hendricks266
005ebde8ce Makefile: Make Objective-C code build as Objective-C++ when we build C code as C++.
git-svn-id: https://svn.eduke32.com/eduke32@5764 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-03 04:50:55 +00:00
hendricks266
ca619df429 Makefile: Add extra optimization defaults for OS X builds since all Intel Macs are guaranteed certain features due to the time of their debut.
git-svn-id: https://svn.eduke32.com/eduke32@5763 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-03 04:50:52 +00:00
hendricks266
5a6aa914a4 Makefile: Clean up handling of architectures.
git-svn-id: https://svn.eduke32.com/eduke32@5762 1a8010ca-5511-0410-912e-c29ae57300e0
2016-06-03 04:50:47 +00:00
hendricks266
3ccf33bc21 Remove unnecessary asm unprotection of ylookup[].
git-svn-id: https://svn.eduke32.com/eduke32@5761 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-29 21:11:27 +00:00
hendricks266
9a50071b1d Clean up self-modifying assembly unprotection and add PROT_EXEC to mprotect() calls.
This fixes NOASM=0 under OS X.

git-svn-id: https://svn.eduke32.com/eduke32@5760 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-29 21:11:24 +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
3719146448 Clean up fallback video mode attempt code in order to fix at least three bugs.
git-svn-id: https://svn.eduke32.com/eduke32@5758 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-29 21:11:17 +00:00
hendricks266
225f37f7b0 A small patch from rhoenie to make our source compatible with the Intel C Compiler.
Our makefile would need more setup and I currently don't have any means of testing.

git-svn-id: https://svn.eduke32.com/eduke32@5757 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-29 21:11:12 +00:00
hendricks266
5ae7bd99f2 Lunatic: Fix build. BUILD_LUNATIC.
git-svn-id: https://svn.eduke32.com/eduke32@5755 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:22 +00:00
hendricks266
41e4ffd2bd Makefile: Convert object lists to an escaped multi-line format for better diffing.
git-svn-id: https://svn.eduke32.com/eduke32@5754 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:18 +00:00
hendricks266
24e217642e Makefile: Add some missing dependencies on the folders in which objects are created.
git-svn-id: https://svn.eduke32.com/eduke32@5753 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:15 +00:00
hendricks266
1208af001c Makefile: Add L_CXXONLYFLAGS, and use it to pass "-static-libstdc++" on Windows.
git-svn-id: https://svn.eduke32.com/eduke32@5752 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:12 +00:00
hendricks266
d8c23261a6 Makefile: Remove STATICSTDCPP variable.
git-svn-id: https://svn.eduke32.com/eduke32@5751 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:09 +00:00
hendricks266
26e15e7098 Makefile: Rename "CPPONLYFLAGS" variable to "CXXONLYFLAGS", since "CPPFLAGS" traditionaly refers to the C preprocessor, not C++.
git-svn-id: https://svn.eduke32.com/eduke32@5750 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:06 +00:00
hendricks266
d821e6123e Makefile: Output the postprocessed Lunatic symbol lists to $(DUKE3D_OBJ) so they don't need special cleanup and ignore rules. Also fix building the Lunatic-enabled editor on OS X.
git-svn-id: https://svn.eduke32.com/eduke32@5749 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:03 +00:00
hendricks266
b19c8cbe0a Makefile: Output objects to subfolders of one unified "obj" folder and simplify clean rules accordingly.
git-svn-id: https://svn.eduke32.com/eduke32@5748 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:47:00 +00:00
hendricks266
01d0aadc91 Makefile: Add mappings from a component's root prefix to its ideal folder name.
git-svn-id: https://svn.eduke32.com/eduke32@5747 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:57 +00:00
hendricks266
6a24f8eaf3 Makefile: Introduce *_PROPER name variables for output components and use them where currently implemented.
git-svn-id: https://svn.eduke32.com/eduke32@5746 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:54 +00:00
hendricks266
3cb59e1c8d Makefile: Rename a large number of variables in the component definitions in order to make things consistent (and factorable).
git-svn-id: https://svn.eduke32.com/eduke32@5745 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:52 +00:00
hendricks266
34896f6039 Makefile: Fix erroneous tab characters.
git-svn-id: https://svn.eduke32.com/eduke32@5744 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:49 +00:00
hendricks266
ad3ff7678f Makefile: Shorten host platform detection code and improve it on Windows to try using $(OS) before invoking uname, and to catch "MSYS" in addition to "MINGW" in uname's output.
git-svn-id: https://svn.eduke32.com/eduke32@5743 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:46 +00:00
hendricks266
3f9fb0dd73 Makefile: Remove *_TARGET variables for final outputs, which could have been used to disable compilation of specific ones.
This was only ever used to not compile the editor for Wii, but we now support that. Up to now these only served to clutter the Makefile.

git-svn-id: https://svn.eduke32.com/eduke32@5742 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:43 +00:00
hendricks266
39f00bcb35 KenBuild: Address "warning: shifting a negative signed value is undefined [-Wshift-negative-value]".
git-svn-id: https://svn.eduke32.com/eduke32@5741 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:41 +00:00
hendricks266
ac1c5d63dd KenBuild: Fix OS X build.
git-svn-id: https://svn.eduke32.com/eduke32@5740 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:37 +00:00
hendricks266
942690dac6 KenBuild: Fix symbol issues.
git-svn-id: https://svn.eduke32.com/eduke32@5739 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:34 +00:00
hendricks266
c0b9c3a189 KenBuild, SW: rotatepoint
git-svn-id: https://svn.eduke32.com/eduke32@5738 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:30 +00:00
hendricks266
8be6da168f KenBuild, SW: Fix "psky" typo.
git-svn-id: https://svn.eduke32.com/eduke32@5737 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:25 +00:00
hendricks266
6e62295872 KenBuild: tspritetype
git-svn-id: https://svn.eduke32.com/eduke32@5736 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46: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
c9897c55e0 KenBuild, SW: Fix Win32 startup window warnings.
git-svn-id: https://svn.eduke32.com/eduke32@5734 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:14 +00:00
hendricks266
d87833f02a Use "Backslash" instead of "\" for keybinds because its nature as an escape character causes issues. Fixes ticket #16.
git-svn-id: https://svn.eduke32.com/eduke32@5733 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-23 04:46:11 +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
584b748897 Add CON_CLAMP
git-svn-id: https://svn.eduke32.com/eduke32@5728 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:37 +00:00
terminx
ce86532949 VS solution update. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5727 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:34 +00:00
terminx
a3b3a992c0 Fix issue where sometimes hitscan projectile trails weren't spawning
git-svn-id: https://svn.eduke32.com/eduke32@5726 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:31 +00:00
terminx
0de66c3411 Misc Polymost crap. Improves detection of sprite/wall collisions for z-fighting avoidance
git-svn-id: https://svn.eduke32.com/eduke32@5725 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:28 +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
terminx
2d9f205c69 Revert bad attempt at fixing cstat 1024
git-svn-id: https://svn.eduke32.com/eduke32@5723 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:20 +00:00
terminx
f23eb60036 Apply patch from http://bugs.eduke32.com/index.php?do=details&task_id=21
git-svn-id: https://svn.eduke32.com/eduke32@5722 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:17 +00:00
terminx
31326f2910 Change default pointhighlightdist in the editor to 128
git-svn-id: https://svn.eduke32.com/eduke32@5721 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-13 22:15:12 +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
e0ab25a24c More Android build changes. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5719 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-11 01:03:56 +00:00
hendricks266
0331870c1b A quick hack so that Mapster can load more pre-v7 PALETTE.DAT files.
git-svn-id: https://svn.eduke32.com/eduke32@5718 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-05 19:50:22 +00:00
hendricks266
3cba791f5b Some stuff for using clang to build on Android. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5717 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 08:26:08 +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
61fe1c554a GL ES: Interpreting glGetError as always meaning "this internal texture format doesn't work" is too dangerous to keep in the live code (not to mention wasteful). Move it to a new and improved Polymost_InitDummyTexture, now called Polymost_DetermineTextureFormatSupport.
git-svn-id: https://svn.eduke32.com/eduke32@5715 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:24 +00:00
hendricks266
b8f22a6d9c Polymost: Factor out the ETC block preparation by moving the ETC function decision from Polymost_SendTexToDriver into Polymost_PickETCFunction.
git-svn-id: https://svn.eduke32.com/eduke32@5714 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:20 +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
73459ede47 Polymost: Tweak the "don't upload textures with dimension > xdim" GL ES rule to limit to the power of two greater than xdim instead of less than it.
git-svn-id: https://svn.eduke32.com/eduke32@5711 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:25:10 +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
9db5f7e44f Ensure that game backgrounds that sometimes get drawn with orientation&64 always get drawn with orientation&64 to avoid wasting RAM.
git-svn-id: https://svn.eduke32.com/eduke32@5708 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-04 00:24:55 +00:00
hendricks266
5c95eb842a Small tweaks to Android.mk.
git-svn-id: https://svn.eduke32.com/eduke32@5707 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-02 18:29:41 +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
1fcf91d933 Defs: Add "artquality" subtoken to textures, model skins, and skyboxes, which grants the texture HICR_ARTIMMUNITY. In effect, this implies "nodownsize" and signals that texture compression would be undesirable, but okay using r_texcompr mode 2 (aggressive).
git-svn-id: https://svn.eduke32.com/eduke32@5705 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-02 18:29:35 +00:00
hendricks266
b529af4b55 In polymost_glinit, pass a dummy 4x4 texture to uploadtexture in order to detect what compressed texture formats are acceptable without wasting time compressing the first texture it encounters, such as the 3D Realms screen, in case the graphics chip won't take it.
git-svn-id: https://svn.eduke32.com/eduke32@5704 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-02 18:29:32 +00:00
hendricks266
9b4957aa17 Models: This seems like a bugfix.
git-svn-id: https://svn.eduke32.com/eduke32@5703 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-02 18:29:28 +00:00
hendricks266
5c9933439e Fix an unused variable warning introduced in r5696.
git-svn-id: https://svn.eduke32.com/eduke32@5702 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-02 18:29:25 +00:00
hendricks266
5f824d02f6 Revert post-r5496 warning cleanup.
git-svn-id: https://svn.eduke32.com/eduke32@5701 1a8010ca-5511-0410-912e-c29ae57300e0
2016-05-02 18:29:21 +00:00
terminx
6173a8c339 Revert r5496
git-svn-id: https://svn.eduke32.com/eduke32@5700 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-13 04:04:13 +00:00
terminx
958cdfbcbd Tweak nofog, DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5699 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-13 04:04:07 +00:00
terminx
21212558d5 Disable prompt to upgrade from the shareware version after 50 runs
git-svn-id: https://svn.eduke32.com/eduke32@5698 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-13 04:04:03 +00:00
terminx
5927047a3b Allow turning off the jetpack or HoloDuke while looking through a security monitor
git-svn-id: https://svn.eduke32.com/eduke32@5697 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-13 04:03:59 +00:00
terminx
552c88b879 Lookup tables for mapping inventory item indexes to icons (and vice versa). DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5696 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-13 04:03:55 +00:00
terminx
f93e06ffd4 This file lives elsewhere now. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5695 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-13 04:03:49 +00:00
hendricks266
1254ce06d9 Polymost: Fix shading on ART tiles with fullbrights displayed without masking, such as on a whitewall.
git-svn-id: https://svn.eduke32.com/eduke32@5694 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-06 03:07:52 +00:00
hendricks266
38553fc0e3 Menus: Adjust the way bottom edges are clipped in rotatesprite to better handle tall text, or text with long Q tails.
git-svn-id: https://svn.eduke32.com/eduke32@5693 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-06 03:07:47 +00:00
hendricks266
2c9b4d7336 A potential fix for the "loading sounds and music from zip files" bug.
git-svn-id: https://svn.eduke32.com/eduke32@5692 1a8010ca-5511-0410-912e-c29ae57300e0
2016-04-01 23:02:23 +00:00
hendricks266
b879597dd4 OS X: Only build the SDLMain object with SDL 1.2.
git-svn-id: https://svn.eduke32.com/eduke32@5691 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:16:18 +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
hendricks266
c942d9c4b9 etcpak: Modify ProcessRGB to take input in RGBA format instead of BGRA.
git-svn-id: https://svn.eduke32.com/eduke32@5689 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:16:09 +00:00
hendricks266
6c13494fca etcpak: Enforce C linkage on the ProcessRGB functions.
git-svn-id: https://svn.eduke32.com/eduke32@5688 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:16:05 +00:00
hendricks266
7b639accc1 etcpak: Replace use of std::array (which seems not to exist under all compilers) with simple custom class.
git-svn-id: https://svn.eduke32.com/eduke32@5687 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:16:02 +00:00
hendricks266
b4d59a287d etcpak: Replace x86-specific _bswap intrinsic with custom byteswap function (which a good compiler should treat identically anyway).
git-svn-id: https://svn.eduke32.com/eduke32@5686 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:59 +00:00
hendricks266
f07aebfc28 etcpak: Remove C++11 dependency on cstdint when compiling with an earlier standard revision.
git-svn-id: https://svn.eduke32.com/eduke32@5685 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:56 +00:00
hendricks266
6fb3ac4fab etcpak: Modify include guard tokens to conform to the C and C++ standards by not using underscore prefixes.
git-svn-id: https://svn.eduke32.com/eduke32@5684 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:52 +00:00
hendricks266
a98e36e095 etcpak: Remove SSE4.1 and AVX2 support.
They are of no use to us on ARM.

git-svn-id: https://svn.eduke32.com/eduke32@5683 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:48 +00:00
hendricks266
7a940a255f etcpak: The fma function is not a member of the std namespace.
git-svn-id: https://svn.eduke32.com/eduke32@5682 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:44 +00:00
hendricks266
b2339862ce etcpak: Fix type problem in ProcessRGB_ETC2.
git-svn-id: https://svn.eduke32.com/eduke32@5681 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:41 +00:00
hendricks266
33634859c6 Add the ETC compression algorithm portions of etcpak to the repository, with no modifications.
git-svn-id: https://svn.eduke32.com/eduke32@5680 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:37 +00:00
hendricks266
bd6c92926e Fix Android warnings missed due to Android.mk misconfiguration.
git-svn-id: https://svn.eduke32.com/eduke32@5679 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:32 +00:00
hendricks266
fdf4f2d74b Fix warnings pointed out by Xcode.
git-svn-id: https://svn.eduke32.com/eduke32@5678 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:27 +00:00
hendricks266
e1ee089da5 Android: Minor build system cleanup.
git-svn-id: https://svn.eduke32.com/eduke32@5677 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:23 +00:00
hendricks266
7e12cf2a83 jwzgles: Add glCompressedTexImage2D and glCompressedTexSubImage2D as cheap copies of their non-compressed variants.
git-svn-id: https://svn.eduke32.com/eduke32@5676 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:20 +00:00
hendricks266
1c3ed04bcd jwzgles: Allow using RGBA as the input texture format for an alpha-less internal texture format.
git-svn-id: https://svn.eduke32.com/eduke32@5675 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:17 +00:00
hendricks266
82e9e4e304 jwzgles: Revert part of r5655 that wiped out my cast-qual fixes from r5551.
git-svn-id: https://svn.eduke32.com/eduke32@5674 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:14 +00:00
hendricks266
84c949c419 Engine: Clean up texcache_enabled.
git-svn-id: https://svn.eduke32.com/eduke32@5673 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:10 +00:00
hendricks266
3bbe30a6f8 Un-break the iOS build.
git-svn-id: https://svn.eduke32.com/eduke32@5672 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-28 05:15:05 +00:00
terminx
6363de0a4c Fix drawing voxels with ids >= 256
git-svn-id: https://svn.eduke32.com/eduke32@5671 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-16 00:22:44 +00:00
terminx
34f208afa2 Make sprite tails and label borders purple if the sprite is blocking.
git-svn-id: https://svn.eduke32.com/eduke32@5670 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-15 22:17:04 +00:00
terminx
99cb974d0c Fix Mapster32 sprite selection colors when using a tiles.cfg that defines tile groups using colors from the bright half of the original 16-color palette.
In layman's terms, this fixes the effect sprites flashing black in 2d mode.

git-svn-id: https://svn.eduke32.com/eduke32@5669 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:08:02 +00:00
terminx
76d318ab1b Minor change of scope of a couple variables. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5668 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:58 +00:00
terminx
7b0a4fb965 Add .ssi to the list of file extensions loaded automatically when passing a directory with -game_dir
git-svn-id: https://svn.eduke32.com/eduke32@5667 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:55 +00:00
terminx
eeea08cfa6 Fix a bug where cvars of type CVAR_UINT couldn't be set to values larger than a signed int due to clamping by atoi/atol.
git-svn-id: https://svn.eduke32.com/eduke32@5666 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:52 +00:00
terminx
ea0e00a431 Play DUKE_GETWEAPON6 in cheat menu
git-svn-id: https://svn.eduke32.com/eduke32@5665 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:48 +00:00
terminx
1b5335ad72 Add #pragma once to the top of a couple of the most commonly included headers in build/include. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5664 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:44 +00:00
terminx
4ea156822d Android UI work. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5663 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:40 +00:00
terminx
18a8e840bb pragma once for mact headers.
git-svn-id: https://svn.eduke32.com/eduke32@5662 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:34 +00:00
terminx
e2c24bda95 Android stuff. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5661 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:28 +00:00
terminx
83acadd3b4 Remove useless bytesperline parameter from a couple of kplib functions.
git-svn-id: https://svn.eduke32.com/eduke32@5660 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:22 +00:00
terminx
8257e199fd Disable gamma based brightness with GL ES because it's too slow. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5659 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:18 +00:00
terminx
2a55c890e0 Remove a couple of apparently unncessary glPushMatrix()/glPopMatrix() calls.
git-svn-id: https://svn.eduke32.com/eduke32@5658 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:15 +00:00
terminx
9c927bcb36 Don't squish the player in lotag 1 sectors that have a SE7.
git-svn-id: https://svn.eduke32.com/eduke32@5657 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:12 +00:00
terminx
0dda248b3f Move inventory enums into a separate inv.h. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5656 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:08 +00:00
terminx
b999c714ba A couple of jwzgles fixes for mobile, from a newer version of xscreensaver. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5655 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:04 +00:00
terminx
101940d727 Make PLUTOPAKSPRITE glow on the startup screen like it glows in the menu, because the startup screen is displayed until input is received on mobile.
git-svn-id: https://svn.eduke32.com/eduke32@5654 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:07:01 +00:00
terminx
9de3befbba Fix parental lock
git-svn-id: https://svn.eduke32.com/eduke32@5653 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:06:58 +00:00
terminx
2b357b58f1 Android work. DONT_BUILD.
git-svn-id: https://svn.eduke32.com/eduke32@5652 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-14 00:06:54 +00:00