Commit Graph

2265 Commits

Author SHA1 Message Date
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 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 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 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
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
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 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 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 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 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 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 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 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 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 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
hendricks266 dd0f16875f Engine: Add one-bit alpha detection for hightile and model skins.
git-svn-id: https://svn.eduke32.com/eduke32@5649 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-07 11:22:02 +00:00
hendricks266 e9d3b4cc43 Polymost: Add r_texcompr 2, which compresses ART in addition to hightile.
git-svn-id: https://svn.eduke32.com/eduke32@5648 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-07 11:21:58 +00:00
hendricks266 7dd054069f Polymost: Add HICR_ARTIMMUNITY and DAMETH_ARTIMMUNITY, which currently function identically to NOTEXCOMPRESS and NODOWNSIZE combined, and are only used when:
1. Using an ART tile
2. Using a hightile defined through the tilefromtexture "texture" subtoken
3. Using a hightile that, if downsized, will be smaller than the ART tile for that tilenum (tenuous)

git-svn-id: https://svn.eduke32.com/eduke32@5647 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-07 11:21:55 +00:00
hendricks266 c73e8c5036 Fix mistakes in r5642.
git-svn-id: https://svn.eduke32.com/eduke32@5645 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-07 11:21:46 +00:00
hendricks266 7011b30e50 Engine: Move daskinloader into mdloadskin and clean up it and gloadtile_hi against one another.
git-svn-id: https://svn.eduke32.com/eduke32@5644 1a8010ca-5511-0410-912e-c29ae57300e0
2016-03-04 19:24:54 +00:00
hendricks266 506e89fefb Polymost: Refactor all GL internal texture format decision making into uploadtexture().
This directly achieves the following:
* Eliminated codedup.
* Recently introduced GL ES performance downsampling now applies to model skins.
* Replaces the alpha/art format distinction with {RGB/no alpha, RGBA/one-bit alpha (ART transparency), RGBA/full alpha}.
* Cleanly allows multiple fallback formats for each type.
* Ready for further commits.

git-svn-id: https://svn.eduke32.com/eduke32@5642 1a8010ca-5511-0410-912e-c29ae57300e0
2016-02-29 06:34:20 +00:00
hendricks266 aec2da83cd Add BuildGLErrorCheck(), useful for debugging GL.
git-svn-id: https://svn.eduke32.com/eduke32@5641 1a8010ca-5511-0410-912e-c29ae57300e0
2016-02-29 06:34:16 +00:00
hendricks266 e2df2d60d1 Engine: Rename HICR_NOCOMPRESS to HICR_NODOWNSIZE, CACHEAD_NOCOMPRESS to CACHEAD_NODOWNSIZE, DAMETH_NOCOMPRESS to DAMETH_NODOWNSIZE, and HICR_NOSAVE to HICR_NOTEXCOMPRESS.
git-svn-id: https://svn.eduke32.com/eduke32@5640 1a8010ca-5511-0410-912e-c29ae57300e0
2016-02-29 06:34:12 +00:00