Commit graph

128 commits

Author SHA1 Message Date
Monster Iestyn
0dc867c05e Cleanup of the code I've tweaked for skies, added SLOPEPARAMS macro to R_StoreWallRange for use in getting seg end z positions 2018-02-03 18:30:49 +00:00
Monster Iestyn
ecf2eed37f Pushing all my work to make OpenGL consistent with my changes to software's sky so far 2018-02-01 22:04:04 +00:00
Monster Iestyn
be13f10626 ended NDS 2017-09-29 22:48:14 +01:00
toaster
3cc14e3985 Merge branch 'directionchar' into 'master'
Autobrake & decoupling player sprite angle from camera angle

See merge request !69
2017-09-19 07:56:22 -04:00
Monster Iestyn
d4141ae230 Remove unused floorinfo_t struct and some unused vars in the hardware code 2017-08-19 18:51:56 +01:00
toasterbabe
2e6c09a636 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into directionchar
# Conflicts:
#	src/hardware/hw_main.c
2017-08-16 21:40:32 +01:00
Monster Iestyn
15a1112218 Merge branch 'master' into opengl-improvements 2017-08-05 21:08:48 +01:00
Monster Iestyn
c10c3d0441 Merge branch 'alignment_v2' into 'master'
Consistent flat alignment

Does what it says on the tin. Consistent between the three different plane drawers:

* Software flat (previously the only one working as intended)
* Software sloped (took a lot of work)
* OpenGL flat and sloped (worked reasonably well but used different signs for some reason)

Check out root/!LatestSRB2Files/srb2win_branch_flat2.exe, root/toaster/flatalignment.wad and any in-dev DSZ1 to test it all out.

See merge request !78
2017-08-05 16:04:41 -04:00
Monster Iestyn
100422e1ce Merge branch 'master' into opengl-improvements 2017-07-02 16:42:40 +01:00
Monster Iestyn
252cdb0c28 Merge branch 'private_flatsprite' into 'master'
OpenGL papersprites

I don't know if anyone actually tested Sryder's original OpenGL papersprites support before it was merged in, but there was some issues with the papersprites themselves "wobbling" about in a sort of weird way depending on the angle you view it from or where you are. It's easiest to see what I mean if you just load up sawb.wad, and strafe about when viewing one of the sawblades.

Thankfully all I really needed to do was tweak the way angles work for papersprites. I also cleaned up Sryder's original code a little, not that I really needed to do so though.

See merge request !96
2017-07-02 09:46:44 -04:00
Monster Iestyn
e5bf3dfa67 Merge branch 'master' into opengl-improvements
# Conflicts:
#	src/doomdef.h
2017-06-23 17:20:18 +01:00
Monster Iestyn
e3f627120f Merge branch 'public_next'
# Conflicts:
#	src/doomdef.h
#	src/p_mobj.c
2017-06-23 17:19:06 +01:00
Monster Iestyn
b37d09df5f Merge branch 'opengl-slope-FOF-lighting-fix' into 'master'
OpenGL slope FOF lighting fix

This fixes some issues with sloped FOFs that affect lighting in OpenGL (as in, those that cast a shadow or have a colormap). Particularly, they can do strange things to any wall textures adjacent to them, as we've noticed ourselves in levels for 2.2. =P

See merge request !194
2017-06-22 19:49:42 -04:00
Monster Iestyn
c3c85bb4d2 Do not draw segs that belong to polyobjects, if you're drawing subsectors adjacent to them
Polyobject segs should ONLY be drawn if the polyobject itself is in the polylist of a subsector being rendered. That way you won't sometimes see polyobject walls through level boundaries, if you happen to be close enough to their pre-spawn locations outside the level (or in them, if you decided to go on a noclip journey).
2017-06-03 17:47:46 +01:00
Monster Iestyn
3658b22a7f wallVerts[].y is actually the map z coord, so use wallVerts[].z instead (which is actually the map y coord)
Don't worry I'm not going mad, this is actually how it's supposed to be
2017-06-03 14:46:03 +01:00
Monster Iestyn
10b835e799 Whoops, this broke my non-NEWCLIP test build 2017-05-31 17:17:08 +01:00
Monster Iestyn
ed81c9abcb Fix paper sprites apparently "turning" around sometimes when you turn the camera, when they're supposed to be still (sawb.wad for instance)
I cleaned up some of Sryder's changes a little too I guess
2017-05-13 12:49:30 +01:00
Sryder
32c4ddca5c Remove accidental leftovers
Accidentally left a comment and stuff in there from previous attempts

# Conflicts:
#	src/hardware/hw_main.c
2017-05-12 23:39:55 +01:00
Sryder
ec0f30f849 Fix a one character bug with clipping 2017-05-12 23:39:01 +01:00
Sryder
3f0f645c70 Flat sprites for OGL
# Conflicts:
#	src/hardware/hw_main.c
2017-05-12 23:38:44 +01:00
Monster Iestyn
3ff899858c Merge branch 'master' into opengl-improvements
# Conflicts:
#	src/doomdef.h
2017-04-19 14:53:50 +01:00
toasterbabe
db4002cd7f Remove now-unused code. 2017-04-10 11:49:14 +01:00
toasterbabe
2636375f94 GL supporting. 2017-04-07 16:51:43 +01:00
toasterbabe
d5ba29eb9b Get plane scrolling effects working the same on and off slopes in both renderers again. 2017-03-31 16:45:47 +01:00
toasterbabe
d62a628346 Consistency between software off-slope and GL on+off-slope flat alignment! (Software slopes are now MORE broken with respect to this, but that comes later.) 2017-03-30 22:48:13 +01:00
Monster Iestyn
f4e5233c7e Remove unused sscount variable
(it's only set to 0 in software, and only ++'d in OpenGL, what kind of sense does that make?)
2017-02-11 22:41:15 +00:00
Monster Iestyn
df534887e9 Remove pointless drawtextured variable and redundant fake planes checks (R_FakeFlat would already have made gr_frontsector/backsector something else if they were) 2017-01-12 21:43:37 +00:00
Monster Iestyn
e87324b814 Made some efforts to improve efficiency of new code, hard to tell if I've made it better or worse though honestly
R_IsEmptyLine is now a thing too btw
2017-01-10 20:07:02 +00:00
Monster Iestyn
c5e99050fc More progress, NEWCLIP added to doomdef.h, sadly it actually all lags the game so I've disabled it for now
Other notes:
* on second thought I'll keep the hw_clip functions' gld prefixes rather than HWR, not like it matters either way
* despite the extra lag it does fix the issues with translucent walls and such when displayed at different vertical angles, such as with the GFZ1 waterfall
2017-01-10 18:01:03 +00:00
Monster Iestyn
93a40eb87a Merge branch 'master' into opengl-improvements 2017-01-09 22:13:34 +00:00
Monster Iestyn
166c6746cd Merge branch 'public_next' 2017-01-08 16:05:32 +00:00
Monster Iestyn
87dc33a78d Merge branch 'master' into next 2017-01-08 15:59:34 +00:00
Monster Iestyn
12ae6bb22a Merge branch 'public_next'
# Conflicts:
#	src/d_clisrv.c
#	src/r_things.c
2017-01-07 15:03:59 +00:00
Monster Iestyn
c601a409e1 Merge branch 'texture-fixes' into 'next'
Some texture-related fixes

Bugs fixed in this branch:
* upper/lower/middle textures with non-existent texture ids being capable of crashing the game. For instance, RVZ1 has colormap codes on non-colormap linedefs, which causes them to wind up with invalid texture ids because of how the game tries to interpret lower/upper textures with "#" followed by characters on normal linedefs. Fortunately these "textures" are normally not visible anyway (since they're all in control sectors) unless they are swapped with in-level textures by some crazy Lua script of some sort...
* animated single-patch textures with holes displaying garbage on first viewing (see this thread: https://mb.srb2.org/showthread.php?t=42195)
* the heights of the lighting (shadows or colormapping) from water/translucent/shadowcasting/etc FOFs become messed up when displayed on repeated midtextures.

See merge request !144
2017-01-06 21:15:22 -05:00
Alam Ed Arias
97f87827f4 hardware: init undef vars in HWR_SortVisSprites 2016-12-22 19:42:00 -05:00
Monster Iestyn
0538c98251 Added missing checks in HWR_AddLine from the software version, move v** vars to the top since R_PointToAngle calls use the same values anyway 2016-12-21 22:31:09 +00:00
Monster Iestyn
a9cfd12e04 Created R_GetTextureNum to make sure top/bottom/midtexture texture ids are always valid in rendering code for both software and OpenGL (and also for the Solid Midtexture effect physics code) 2016-12-16 21:38:53 +00:00
Monster Iestyn
5be8e4f1b0 Make new pv1/pv2 seg pointers, so AdjustSeg doesn't modify the v1/v2 pointers directly anymore
Yes I know they're void * in r_defs.h's seg_t definition, it's quicker than trying to figure out if including hardware/hw_glob.h is a good idea or not
2016-11-07 21:55:56 +00:00
Monster Iestyn
cd3895f676 Merge branch 'public_next' 2016-10-29 17:03:38 +01:00
toasterbabe
ab6fd676b5 YUP, I just fixed OGL Precipitation with this branch too. What the fuck? Squashing ancient bugs, woo. 2016-10-29 11:54:51 -04:00
toasterbabe
5614ff5691 Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2Internal.git into flat_sprites
# Conflicts:
#	src/p_enemy.c
#	src/p_mobj.c
2016-10-02 19:38:53 +01:00
Inuyasha
d7aae15a6f Merge branch 'animated-sky' into 'master'
Animated sky support

What it says on the tin: skies can be animated textures now. Just set them up as normal animated textures (keeping in mind the starting texture still has to comply with the SKYn/SKYnn/SKYnnn naming format) and hey presto, your sky animates.

See merge request !34
2016-09-29 08:34:12 -04:00
toasterbabe
28523760c3 FF_VERTICALFLIP, since I've been messing around with sprite stuff.
* flips the sprite ala MFE_VERTICALFLIP except you don't need to flip the direction of gravity for the object just to draw upside down
* stacks properly with reverse gravity
2016-09-24 14:23:00 +01:00
Alam Ed Arias
074dde5f78 Merge branch 'public_next' into master 2016-08-11 12:59:04 -04:00
toasterbabe
76e658bf1b Minor re-ordering to optimise this branch. 2016-08-07 00:21:16 +01:00
Monster Iestyn
fe5b8c58af Add basic support for animated sky textures 2016-07-31 20:51:39 +01:00
Monster Iestyn
2870e19f7f Take out fixedheight-based hacks for checking if floor or ceiling! Use an "isceiling" boolean for that instead
This apparently fixes most of the issues with ceiling slopes in Boinciel's SUGOI map
2016-07-27 19:56:21 +01:00
toasterbabe
333d8c882e Recreating NAMEcLcR sprite angle loading in internal, as Inu requested. 2016-07-19 00:04:00 +01:00
Alam Ed Arias
8f0994b38b Merge branch 'public_next' into master 2016-07-11 16:22:05 -04:00
Alam Ed Arias
2c8008e11e NULL checks 2016-06-13 10:07:10 -04:00