terminx
e0e517aaed
Revise r7838 again
...
git-svn-id: https://svn.eduke32.com/eduke32@7847 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:26:22 +02:00
terminx
f3e4dd4463
Patch from Nuke.YKT to work around precision-based inaccuracy problems in Polymost TROR
...
git-svn-id: https://svn.eduke32.com/eduke32@7846 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:25:31 +02:00
terminx
1d14991acc
Add MERGE_NODES macro for Polymost... this will be used in the following commit
...
git-svn-id: https://svn.eduke32.com/eduke32@7845 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:25:28 +02:00
terminx
ee92304087
Patch from Nuke.YKT to clip bunches to screen boundaries in Polymost
...
git-svn-id: https://svn.eduke32.com/eduke32@7844 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:25:24 +02:00
terminx
47fa1eccd4
Patch from Nuke.YKT to fix sloped floor and ceiling textures wiggling around in Polymost
...
git-svn-id: https://svn.eduke32.com/eduke32@7843 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/build/src/polymost.cpp
2019-09-20 15:24:54 +02:00
terminx
a3b6d0e70b
Revise r7838: one less dumbass typo
...
git-svn-id: https://svn.eduke32.com/eduke32@7842 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:57 +02:00
terminx
28c778c8a3
Automatic source file dependency generation for GNUmakefile
...
This automatically saves the dependencies used for a given object file during the first compilation, then uses the generated data for each subsequent compile to determine if the object needs to be rebuilt. Why? Because if I see one more warning about the C++ One Definition Rule, I'm going to fucking snap.
git-svn-id: https://svn.eduke32.com/eduke32@7839 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:50 +02:00
terminx
565383e1d2
Revise r7835: instead of not testing wall sprites, we'll just ignore the side blockers
...
git-svn-id: https://svn.eduke32.com/eduke32@7838 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:47 +02:00
terminx
4beaeb5426
Don't check clip objects for sprites in the keepaway() loop in clipmove()
...
This prevents some hilarious issues with deadly wall decorations. The "side blocker" clip lines that already exist for these sprites should already prevent the kinds of clipping issues this loop is intended to address, anyway.
git-svn-id: https://svn.eduke32.com/eduke32@7835 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:40 +02:00
terminx
dad28df269
OK, this is just a bit too restrictive
...
git-svn-id: https://svn.eduke32.com/eduke32@7834 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:38 +02:00
terminx
dc7ec3b2fe
Fix additional clipmove() issue
...
git-svn-id: https://svn.eduke32.com/eduke32@7832 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:33 +02:00
terminx
1da1331299
Clean up raytrace() and rename it to cliptrace()
...
git-svn-id: https://svn.eduke32.com/eduke32@7831 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:31 +02:00
terminx
490b7249a2
Allow reading vec3_whatever_t as vec2 directly
...
It's a union in a struct in a union in a struct. Oh god, what have I done.
git-svn-id: https://svn.eduke32.com/eduke32@7830 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:28 +02:00
terminx
52db0e37f7
Additional clipmove() reworks
...
This fixes a LOT of clipping errors but needs thorough testing.
git-svn-id: https://svn.eduke32.com/eduke32@7829 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:25 +02:00
terminx
17d3c302a3
Switch a few iterators in clipmove() from int to native_t
...
git-svn-id: https://svn.eduke32.com/eduke32@7828 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:23 +02:00
terminx
417318c271
clipmove() patch from Nuke.YKT:
...
"In some edge cases posx/y might be 'inside' of neighbor sector. I've added double check for this case"
git-svn-id: https://svn.eduke32.com/eduke32@7827 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:20 +02:00
terminx
df28860bad
Add divscale64()
...
git-svn-id: https://svn.eduke32.com/eduke32@7826 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:18 +02:00
terminx
dc0130625a
Minor pushmove() cleanup
...
git-svn-id: https://svn.eduke32.com/eduke32@7825 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:15 +02:00
terminx
ed457895f1
Replace check_floor_curb() with cliptestsector()
...
git-svn-id: https://svn.eduke32.com/eduke32@7824 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:12 +02:00
terminx
0fb77f8af3
Use corrected slope heights in getzrange() and pushmove()
...
git-svn-id: https://svn.eduke32.com/eduke32@7823 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:10 +02:00
terminx
2482cddbb5
Add getcorrectzsofslope()
...
git-svn-id: https://svn.eduke32.com/eduke32@7822 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:23:08 +02:00
terminx
e6b700cf9b
Promote divisor argument to tabledivide64 to int64_t and replace a couple of 64-bit divides in rintersect() and inflineintersect()
...
git-svn-id: https://svn.eduke32.com/eduke32@7820 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/build/src/build.cpp
2019-09-20 15:23:03 +02:00
hendricks266
e49e8f4cd6
Fix warnings in sjson
...
git-svn-id: https://svn.eduke32.com/eduke32@7813 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:17:45 +02:00
hendricks266
0cd74a6782
Add sjson to project
...
git-svn-id: https://svn.eduke32.com/eduke32@7812 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:17:43 +02:00
terminx
165b320f64
Amend r7805
...
'Murica.
git-svn-id: https://svn.eduke32.com/eduke32@7811 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:17:40 +02:00
terminx
67dc0cb5f8
Fix mirrors in Polymer
...
git-svn-id: https://svn.eduke32.com/eduke32@7809 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:17:34 +02:00
terminx
43f263fc65
Try walldist + 8 instead of walldist << 1 in clipupdatesector()
...
git-svn-id: https://svn.eduke32.com/eduke32@7807 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:17:28 +02:00
terminx
97390c1ff4
Fix another bunch of improperly sized bitmap arrays
...
git-svn-id: https://svn.eduke32.com/eduke32@7806 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/build/src/build.cpp
2019-09-20 15:17:25 +02:00
pogokeen
3d63d1b720
Add updatesectorneighbour() and updatesectorneighbourz() and make them accessible to CON to allow searching for nearby neighbouring sectors from a known sector.
...
These updatesector counterparts are more performant for tasks that require determining whether nearby sectors exist at a point as they will not exhaustively search the map.
This also leads to more correct behaviour when sectors are disjoint, as queries will breadth-first search neighbouring sectors rather than risk accidentally stumbling first across accomodating disjoint sectors.
git-svn-id: https://svn.eduke32.com/eduke32@7805 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/build/include/build.h
2019-09-20 15:16:47 +02:00
hendricks266
d1b43acc06
Use std::numeric_limits instead of float.h
...
git-svn-id: https://svn.eduke32.com/eduke32@7799 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:14:23 +02:00
hendricks266
48b2cfef59
Fix compilation of linklist.h in C++11 mode with clang
...
git-svn-id: https://svn.eduke32.com/eduke32@7796 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:11:03 +02:00
pogokeen
12ce6a78fe
Fix parallel build by switching to generating .obj files from .glsl files and treat the shader source as an externed global resolved at link time.
...
Additionally, remove the no longer necessary shader generated headers folder from .gitignore
git-svn-id: https://svn.eduke32.com/eduke32@7793 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# .gitignore
# source/build/src/polymost.cpp
2019-09-20 15:10:56 +02:00
terminx
9fde5434f8
Fix translucent masked wall sorting issue in Polymost
...
git-svn-id: https://svn.eduke32.com/eduke32@7792 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:10:23 +02:00
terminx
fe4245dfc3
Voxel fix
...
git-svn-id: https://svn.eduke32.com/eduke32@7791 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:10:21 +02:00
terminx
f46db45970
Voxel fixes from Nuke
...
git-svn-id: https://svn.eduke32.com/eduke32@7788 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:10:14 +02:00
hendricks266
4e04e4a096
Fix issue with shader compilation
...
git-svn-id: https://svn.eduke32.com/eduke32@7787 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:10:12 +02:00
hendricks266
616b0c2347
Fix sequential GNUmakefile build
...
git-svn-id: https://svn.eduke32.com/eduke32@7786 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 15:10:09 +02:00
pogokeen
1664310159
Support clamping in polymost1Frag.glsl and use it for sprites
...
git-svn-id: https://svn.eduke32.com/eduke32@7783 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# source/build/include/polymost.h
# source/build/src/polymost1Frag.glsl
# source/build/src/voxmodel.cpp
2019-09-20 15:10:02 +02:00
Christoph Oelckers
a55e19ed83
- fixed the shader.
2019-09-20 15:02:49 +02:00
pogokeen
f6993940e5
Separate out polymost1Frag and polymost1Vert shaders from polymost.cpp and add rules for building in the GNUmakefile.
...
Additionally, git ignore the shader's generated headers folder.
git-svn-id: https://svn.eduke32.com/eduke32@7782 1a8010ca-5511-0410-912e-c29ae57300e0
# Conflicts:
# .gitignore
# source/build/src/polymost.cpp
2019-09-20 14:57:42 +02:00
pogokeen
fe36034e43
polymost.cpp: Adjust shaders to use texture2DGradARB() if available
...
git-svn-id: https://svn.eduke32.com/eduke32@7781 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:53:22 +02:00
terminx
a075a89304
Voxel fixes from Nuke.YKT
...
git-svn-id: https://svn.eduke32.com/eduke32@7778 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:39:40 +02:00
terminx
2882609822
Don't attempt to animate sprites drawn as voxels by picnum
...
git-svn-id: https://svn.eduke32.com/eduke32@7777 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:39:10 +02:00
terminx
c96ec9d440
This is just syntax and formatting
...
No functional changes.
git-svn-id: https://svn.eduke32.com/eduke32@7776 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:39:09 +02:00
terminx
dc9c7bc7b0
Make shadows on voxels in Polymost look like they do in classic
...
git-svn-id: https://svn.eduke32.com/eduke32@7770 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:47 +02:00
terminx
7e7f19b5fd
Add tilehasmodelorvoxel() function and fix instances where voxels for multi-sided sprites would get flipped based on the viewing angle
...
git-svn-id: https://svn.eduke32.com/eduke32@7767 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:40 +02:00
terminx
940df04eb6
Make cache1d try a little harder to find a suitable block before bailing with "CACHE SPACE ALL LOCKED UP!"
...
git-svn-id: https://svn.eduke32.com/eduke32@7764 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:34 +02:00
terminx
53000d1f31
Make cacheAgeEntries() do a more consistent amount of work per frame
...
git-svn-id: https://svn.eduke32.com/eduke32@7763 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:32 +02:00
terminx
6f54235b7a
Fix edge case in clipupdatesector()
...
git-svn-id: https://svn.eduke32.com/eduke32@7760 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:26 +02:00
terminx
82c37b78cc
Prevent uninitialized access to hitwalls[] in clipmove()
...
git-svn-id: https://svn.eduke32.com/eduke32@7759 1a8010ca-5511-0410-912e-c29ae57300e0
2019-09-20 14:36:24 +02:00