pogokeen
1df7127609
Support software renderer upscaling engine-side in sdlayer and sdlayer12 with various scaling factors (beyond just pixel doubling).
...
When glsurface is available, use GL to upscale the render buffer.
Additionally, fix build issues with sdlayer12 introduced by GLAD changes (r6656).
git-svn-id: https://svn.eduke32.com/eduke32@6939 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-14 21:36:44 +00:00
pogokeen
a13a8bf579
polymost.cpp: make c_wrapThreshold consistent between POLYMOST1_BASIC_FRAGMENT_SHADER_CODE and POLYMOST1_EXTENDED_FRAGMENT_SHADER_CODE
...
git-svn-id: https://svn.eduke32.com/eduke32@6937 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-03 04:29:23 +00:00
pogokeen
facc69f142
polymost.cpp: fix rendering for indexed colour textures to match original behaviour when !r_usetileshades or globalflags & GLOBAL_NO_GL_TILESHADES
...
Additionally, fix issue in polymost_setShade() where shade calculation was happening after a check for whether or not the shade needed to be updated.
git-svn-id: https://svn.eduke32.com/eduke32@6936 1a8010ca-5511-0410-912e-c29ae57300e0
2018-07-03 04:29:19 +00:00
pogokeen
5ee2bbc771
polymost_drawpoly(): fix issue where mirrors wouldn't update the depth buffer
...
git-svn-id: https://svn.eduke32.com/eduke32@6888 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-17 22:33:13 +00:00
pogokeen
a4736f6bf7
polymost_bindPth(): Fix issue where non-indexed colour, non-hightile textures (including those with polytintflags HICTINT_USEONART or HICTINT_ALWAYSUSEART) would not render correctly while r_useindexedcolortextures is set.
...
git-svn-id: https://svn.eduke32.com/eduke32@6885 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-08 22:47:55 +00:00
pogokeen
dcdffb73d0
Dynamic tilepacking for indexed colour textures
...
git-svn-id: https://svn.eduke32.com/eduke32@6883 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-08 17:32:16 +00:00
pogokeen
fdaf5a8ac7
polymost_resetVertexPointers(): remove erroneous glBindBuffer call
...
git-svn-id: https://svn.eduke32.com/eduke32@6881 1a8010ca-5511-0410-912e-c29ae57300e0
2018-05-08 17:32:07 +00:00
terminx
f903aac29f
Fix warning
...
git-svn-id: https://svn.eduke32.com/eduke32@6852 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-23 06:35:57 +00:00
terminx
87d19d5cde
More function name shit
...
git-svn-id: https://svn.eduke32.com/eduke32@6832 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:04:00 +00:00
terminx
19c43b84b3
Function names
...
git-svn-id: https://svn.eduke32.com/eduke32@6831 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:03:47 +00:00
terminx
e5bcc1cf81
More function name cleanup
...
git-svn-id: https://svn.eduke32.com/eduke32@6830 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:03:30 +00:00
terminx
1fd209444f
Continuing the quest for clearer function names
...
git-svn-id: https://svn.eduke32.com/eduke32@6829 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:03:12 +00:00
terminx
0340e3cc0f
Engine function name cleanup round 2
...
git-svn-id: https://svn.eduke32.com/eduke32@6828 1a8010ca-5511-0410-912e-c29ae57300e0
2018-04-12 21:02:51 +00:00
pogokeen
ab07afad76
polymost.cpp: fix shadeFactor not being set properly for non-indexed colour textures
...
git-svn-id: https://svn.eduke32.com/eduke32@6784 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-22 07:13:25 +00:00
pogokeen
7b2c468f04
Polymost: center texel fetches for palette lookups and add various optimizations related to indexed texture changes
...
git-svn-id: https://svn.eduke32.com/eduke32@6777 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-21 20:41:32 +00:00
pogokeen
a364b7bbfd
Polymost palette-indexed texture rendering
...
git-svn-id: https://svn.eduke32.com/eduke32@6776 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-21 20:41:26 +00:00
terminx
ee37c04623
Remove attempt at being compatible with the original ranges of ang and horiz values, and introduce a q16 version of drawrooms (and showroom)
...
git-svn-id: https://svn.eduke32.com/eduke32@6735 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 12:02:03 +00:00
terminx
a76750df55
Q16.16 for player angle, too
...
git-svn-id: https://svn.eduke32.com/eduke32@6725 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 04:21:18 +00:00
terminx
4d8bb170a3
Use Q16.16 fixed point for player horiz
...
git-svn-id: https://svn.eduke32.com/eduke32@6724 1a8010ca-5511-0410-912e-c29ae57300e0
2018-03-07 04:21:05 +00:00
hendricks266
6f7313a46a
Fix whitespace issues
...
git-svn-id: https://svn.eduke32.com/eduke32@6700 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 14:46:36 +00:00
pogokeen
c0b0ed2240
polymost.cpp: fix polymost_dorotatesprite() issue where sprites could be rendered with fractional positions and sizes leading to GL filtering imperfections.
...
git-svn-id: https://svn.eduke32.com/eduke32@6698 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-26 11:26:40 +00:00
pogokeen
9001ec60a0
Polymost: workaround for texcache expecting all mipmap levels to be available
...
git-svn-id: https://svn.eduke32.com/eduke32@6675 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-19 06:11:44 +00:00
pogokeen
d6926cb7d3
Fix building on Visual Studio after GLAD & Polymost changes
...
git-svn-id: https://svn.eduke32.com/eduke32@6671 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-17 06:38:15 +00:00
pogokeen
59b01d9d67
Polymost: fix typo causing bug where persistentStreamBuffer was being reset to the config value when it should be disabled
...
git-svn-id: https://svn.eduke32.com/eduke32@6669 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 08:35:45 +00:00
pogokeen
451bdb4601
Polymost: fix bug where polymost2_drawVBO() wouldn't reset the bound buffer state properly for polymost1
...
git-svn-id: https://svn.eduke32.com/eduke32@6664 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:54 +00:00
pogokeen
7b2ac67e9d
Polymost: adjust parenthesis to cease compiler warnings
...
git-svn-id: https://svn.eduke32.com/eduke32@6663 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:51 +00:00
pogokeen
1f133cd049
Polymost: streaming VBO optimizations for polymost_drawpoly()
...
git-svn-id: https://svn.eduke32.com/eduke32@6662 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:48 +00:00
pogokeen
8ebb8083a5
polymost_dorotatesprite(): fix for Polymer bug introduced by Polymost drawarrays optimization
...
git-svn-id: https://svn.eduke32.com/eduke32@6659 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:37 +00:00
pogokeen
ff1d948d44
In-progress POLYMOST2 work
...
git-svn-id: https://svn.eduke32.com/eduke32@6658 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:34 +00:00
pogokeen
3ca5f33c73
Moved to GLAD for dynamic GL/WGL and extension loading.
...
Refactored extension usage that became core in GL2, and adjusted some types for GL2 compatibility.
git-svn-id: https://svn.eduke32.com/eduke32@6656 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:21 +00:00
pogokeen
037289a812
polymost_drawpoly(): only change the blend mode if blending is enabled
...
git-svn-id: https://svn.eduke32.com/eduke32@6655 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:07 +00:00
pogokeen
28f9fcebb4
Polymost: Avoid generation of mipmaps if filter mode isn't set to use them
...
git-svn-id: https://svn.eduke32.com/eduke32@6654 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:05 +00:00
pogokeen
a1c88b740f
Polymost: texture format optimizations
...
git-svn-id: https://svn.eduke32.com/eduke32@6653 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:38:02 +00:00
pogokeen
464e65541c
polymost_drawpoly(): drawarrays optimization
...
git-svn-id: https://svn.eduke32.com/eduke32@6652 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-16 06:37:58 +00:00
hendricks266
ff0768eaa9
Fix build issues with ARM and USE_OPENGL=0. DONT_BUILD.
...
git-svn-id: https://svn.eduke32.com/eduke32@6651 1a8010ca-5511-0410-912e-c29ae57300e0
2018-02-15 03:49:23 +00:00
hendricks266
27d93ac698
Satisfy -Wmaybe-uninitialized warnings exposed by -Og.
...
git-svn-id: https://svn.eduke32.com/eduke32@6632 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-30 16:02:29 +00:00
hendricks266
67438d0cd2
New userdef structure: "global_r", "global_g", "global_b"
...
Set the tinting RGB values of textures being rendered. Can be used in DISPLAYROOMS or before rotatesprite (similar to setaspect). Remember to reset the values afterwards.
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6591 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:35:11 +00:00
hendricks266
392d5fc942
Fix visibility in Polymer with r_usenewshading 4 and palette emulation off.
...
Move some visibility-related constants from Polymer "core" code elsewhere.
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6590 1a8010ca-5511-0410-912e-c29ae57300e0
2018-01-26 04:35:06 +00:00
terminx
09c03151db
Uncomment extra check in COMBINE_STRIPS
...
git-svn-id: https://svn.eduke32.com/eduke32@6573 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-20 08:35:49 +00:00
terminx
c728176352
Revert a tweak made for HTTKC
...
git-svn-id: https://svn.eduke32.com/eduke32@6566 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-17 09:27:27 +00:00
hendricks266
583dc0f47a
Polymost: Account for yscale when deciding if the sky is tall enough to repeat or not. Comment out code that is not working as expected.
...
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6560 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:14:09 +00:00
hendricks266
b6d7de7d27
Add def "globalflags" bit 4, and for individual palettes the "tint" flag bit 512. This makes fog the same for all shades. Make fog behave normally with sector structure .fogpal.
...
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6559 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:14:06 +00:00
hendricks266
2f98d759f6
Fix visibility in Polymer with r_usenewshading 4.
...
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6558 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:14:02 +00:00
hendricks266
ae47d2f11d
New def tokens for "tint": "shadered" or "sr", "shadeblue" or "sb", "shadegreen" or "sg"
...
tint { pal <pal> shadered <0-255> shadegreen <0-255> shadeblue <0-255> }
Make shade apply a tint based on the RGB.
Default values for shade are zero (black).
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6557 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-12 05:13:58 +00:00
terminx
3c8f050565
Fix memory leak with .ANM playback in Polymost
...
git-svn-id: https://svn.eduke32.com/eduke32@6541 1a8010ca-5511-0410-912e-c29ae57300e0
2017-12-02 12:42:40 +00:00
terminx
7acf811eae
Re-comment out part of COMBINE_STRIPS in polymost.cpp
...
git-svn-id: https://svn.eduke32.com/eduke32@6525 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-30 23:54:23 +00:00
terminx
845abb435a
Drop VSPMAX back to 2048 from 4096
...
git-svn-id: https://svn.eduke32.com/eduke32@6524 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-30 23:54:18 +00:00
hendricks266
90045e4ce3
Revert r6496
...
git-svn-id: https://svn.eduke32.com/eduke32@6523 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-30 02:57:23 +00:00
hendricks266
12c4d033f1
Polymost: Set r_parallaxskypanning to 1 by default.
...
This enables sky panning, which allows the effect of CLOUDYSKIES to work properly.
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6521 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:54 +00:00
hendricks266
ad83ca0188
Polymost: Display paper-skies correctly when looking up or down.
...
Show a solid color for skies taller than 256 px, otherwise repeat.
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6520 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:51 +00:00
hendricks266
5fbe1b89be
New def token for "multipsky": "yscale".
...
multipsky <tile> { yscale <yscale> }
Default value is 65536.
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6519 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:48 +00:00
hendricks266
66162032a0
Add r_usenewshading 4.
...
Uses a constant determined from the shade tables.
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6515 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-29 07:29:33 +00:00
hendricks266
9d0e76b2e3
Fox's projection patch 2.0
...
git-svn-id: https://svn.eduke32.com/eduke32@6496 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-06 05:56:48 +00:00
hendricks266
7033d83d26
Fox's maskwall fix 2.0
...
git-svn-id: https://svn.eduke32.com/eduke32@6495 1a8010ca-5511-0410-912e-c29ae57300e0
2017-11-02 04:25:59 +00:00
terminx
7fd86d09ad
If Fox's patch to fix flickering masked walls is correct, this change should improve FPS in some areas.
...
git-svn-id: https://svn.eduke32.com/eduke32@6494 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-31 02:09:44 +00:00
hendricks266
366d823894
Revert r6490.
...
git-svn-id: https://svn.eduke32.com/eduke32@6491 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-31 00:35:23 +00:00
hendricks266
e12b63c3bd
A potential fix for the disappearing maskwall problem.
...
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6490 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-30 03:48:31 +00:00
hendricks266
c746b486b7
Polymost: New projection hack algorithm: Keep zoom equivalent to Classic when looking straight ahead.
...
Patch from Fox.
git-svn-id: https://svn.eduke32.com/eduke32@6486 1a8010ca-5511-0410-912e-c29ae57300e0
2017-10-16 03:32:37 +00:00
terminx
60d06d8757
useless change
...
git-svn-id: https://svn.eduke32.com/eduke32@6440 1a8010ca-5511-0410-912e-c29ae57300e0
2017-09-19 19:10:33 +00:00
terminx
6889b64da8
Tweak Polymost z-fighting avoidance code
...
git-svn-id: https://svn.eduke32.com/eduke32@6434 1a8010ca-5511-0410-912e-c29ae57300e0
2017-08-27 10:20:35 +00:00
terminx
dad337add8
Fix gcc 7.1.0 warnings
...
git-svn-id: https://svn.eduke32.com/eduke32@6370 1a8010ca-5511-0410-912e-c29ae57300e0
2017-07-18 20:53:41 +00:00
terminx
3706ac1b43
Allow scripts to change MAXSPRITESONSCREEN before calls to drawrooms() and friends
...
git-svn-id: https://svn.eduke32.com/eduke32@6347 1a8010ca-5511-0410-912e-c29ae57300e0
2017-07-08 19:42:11 +00:00
terminx
c25aa4a790
OSD (console) cleanup
...
git-svn-id: https://svn.eduke32.com/eduke32@6297 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-27 02:24:14 +00:00
hendricks266
cb12f25cda
Add a wallext structure for non-Lunatic builds so they can have a blend member too.
...
git-svn-id: https://svn.eduke32.com/eduke32@6276 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-25 11:23:53 +00:00
hendricks266
610d2e3b46
Connect wall.blend to Polymost in Lunatic builds with it enabled.
...
git-svn-id: https://svn.eduke32.com/eduke32@6275 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-25 11:23:47 +00:00
hendricks266
5ef942f4ec
Shrink the tilesiz vector to use int16_t members as the original arrays were.
...
git-svn-id: https://svn.eduke32.com/eduke32@6263 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-24 09:21:13 +00:00
hendricks266
ccb6d27349
Polymost: Fix yoffset bouncing of face sprites with cstat 128.
...
git-svn-id: https://svn.eduke32.com/eduke32@6248 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-23 09:17:12 +00:00
hendricks266
f03d704ddb
Polymost: Don't cut off a row and/or column of texels when drawing floor-aligned sprites with odd dimensions.
...
git-svn-id: https://svn.eduke32.com/eduke32@6219 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-21 13:47:04 +00:00
hendricks266
ad46ac785f
Add new tint flag 256, which always skips hightile when picking an image source.
...
git-svn-id: https://svn.eduke32.com/eduke32@6218 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-21 13:46:59 +00:00
hendricks266
986a545ff5
Polymodes: Explicitly opt out of hicfindsubst falling back to pal 0 instead of checking against the reserved palnum range.
...
git-svn-id: https://svn.eduke32.com/eduke32@6217 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-21 13:46:54 +00:00
hendricks266
a032b829bf
Factor out hictinting array accesses.
...
git-svn-id: https://svn.eduke32.com/eduke32@6216 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-21 13:46:50 +00:00
hendricks266
70245fc4f1
Create a new struct for hictinting that uses a uint16_t for flags.r
...
git-svn-id: https://svn.eduke32.com/eduke32@6215 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-21 13:46:44 +00:00
hendricks266
84c913d04c
Only allocate space for tint flags combinations that require a pre-computed texture to be stored in memory, instead of space for every combination.
...
git-svn-id: https://svn.eduke32.com/eduke32@6214 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-21 13:46:36 +00:00
terminx
feb8b43892
Better support for working with blend in the editor
...
git-svn-id: https://svn.eduke32.com/eduke32@6175 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-10 08:19:47 +00:00
terminx
faf5c90eef
Another attempt at fixing Polymost z-fighting. Probably still sucks! :)
...
git-svn-id: https://svn.eduke32.com/eduke32@6170 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-09 06:41:45 +00:00
terminx
d76c3c2764
Polymost: fix texture panning floatiness on slight slopes
...
git-svn-id: https://svn.eduke32.com/eduke32@6164 1a8010ca-5511-0410-912e-c29ae57300e0
2017-06-09 06:40:17 +00:00
hendricks266
aa04307ad1
Route all inclusion of libc headers and most of POSIX headers through compat.h.
...
git-svn-id: https://svn.eduke32.com/eduke32@6074 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-25 08:15:36 +00:00
hendricks266
d43fb548cf
Abolish all " ={ " when assigning a struct. DONT_BUILD.
...
git-svn-id: https://svn.eduke32.com/eduke32@6061 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-05 20:58:33 +00:00
hendricks266
1cc9d13ccf
The great repository rearrangement of 2017.
...
Files moved but not modified. Changes to follow in a subsequent commit.
You down with CPP?
git-svn-id: https://svn.eduke32.com/eduke32@6055 1a8010ca-5511-0410-912e-c29ae57300e0
2017-02-01 10:01:11 +00:00