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
Alam Ed Arias
459d8064ee
Merge branch 'master' into public_flatsprite
2017-05-12 20:42:55 -04: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
Sryder
2e72539df2
Remove accidental leftovers
...
Accidentally left a comment and stuff in there from previous attempts
2016-12-13 21:22:40 +00:00
Sryder
4fb2a18846
Fix a one character bug with clipping
2016-12-13 21:18:05 +00:00
Sryder
39d4f22660
Flat sprites for OGL
2016-12-13 21:02:23 +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
toasterbabe
c5675c0725
Merge branch 'new_spriteframe_angle' of http://git.magicalgirl.moe/STJr/SRB2.git into public_flatsprite
...
# Conflicts:
# src/r_things.c
2016-08-22 22:56:30 +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
toasterbabe
41b35a923f
Gave the new flag-based system for sprite angles actual flag names instead of relying on magic numbers.
...
Also, I did a wee smidgen of reorganisation.
2016-06-16 14:20:03 +01:00
toasterbabe
52bf13367f
New rotation functionality.
...
* NAMEcL refers to a frame which is seen for the entirety of an object's left side.
* NAMEcR refers to a name which is seen for the entirety of an object's right side.
* NAMEcLcR does both sides.
* Having just a NAMEcL requires you to fill in the opposite side either with NAMEcn where n is 1 and 5 to 8 OR fill in with a NAMEcR
* Switches down the centerline of the object instead of at the ANGLE_202h interval for normal sprites.
* Characters were selected for 1) ease of use and 2) not getting in the way of adding support for zdoom's totally bananas 16-way sprite system at a later date if we so choose
2016-06-16 00:59:54 +01:00
Alam Ed Arias
2c8008e11e
NULL checks
2016-06-13 10:07:10 -04:00
Alam Ed Arias
b9a39f3043
Merge branch 'public_next' into master
2016-06-04 22:36:55 -04:00
Monster Iestyn
4c422f6605
OpenGL: closed door/window detection code now accounts for slopes, just like in software
2016-06-04 18:31:21 +01:00
Alam Ed Arias
c23b40fa9c
Merge branch 'public_next' into master
2016-06-02 18:39:08 -04:00
Monster Iestyn
c863e311fe
OpenGL: Fix upper texture Effect 1 only skewing
2016-06-01 19:22:54 +01:00
Monster Iestyn
bf85cc25bd
OpenGL: Fix lower unpegged texture offset, fix lower unpegged + effect 1 so the texture actually skews
2016-06-01 18:51:38 +01:00
Alam Ed Arias
e5a14d859e
Merge branch 'public_next' into private
2016-05-27 11:37:09 -04:00
Alam Ed Arias
20dcf138e2
hardware: let not break MSVC support
2016-05-27 01:28:21 -04:00
Alam Ed Arias
008be7c90d
hardware: start the surf as clean
2016-05-27 01:19:16 -04:00
Alam Ed Arias
b51a1148d1
Merge branch 'public_next' into master
2016-05-25 10:21:55 -04:00
Alam Ed Arias
57091261d9
MSVC: fixed up MSVC project
2016-05-21 23:53:04 -04:00
Monster Iestyn
01debc27a2
Merge branch 'public_next'
2016-05-06 18:06:18 +01:00
Monster Iestyn
11c24f5ab6
Merge branch 'next' into gl-slopes
...
# Conflicts:
# src/hardware/hw_main.c
2016-04-09 22:12:29 +01:00
Inuyasha
50d3fe15b8
Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal
...
# Conflicts:
# src/d_main.c
# src/doomdef.h
2016-03-31 21:17:29 -07:00
Alam Ed Arias
51aa7692d8
Merge branch 'master' into next
2016-03-30 20:15:08 -04:00
Alam Ed Arias
d90536967d
removed/remline ununsed code
2016-03-30 14:05:07 -04:00
Inuyasha
317161221d
Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal
2016-03-09 01:23:48 -08:00
Inuyasha
5a38088623
Well, we don't need "experimental" slopes anymore either
...
Not when we have properly working ones!
2016-03-09 01:09:21 -08:00
Alam Ed Arias
0369f39ef4
Merge branch 'master' into gl-slopes
2016-02-22 00:15:26 -05:00
RedEnchilada
bcd05b1c63
Also fixed it for MD2s
2016-02-21 23:04:14 -06:00
RedEnchilada
ce793dfe28
Fix vissprite-related crashing in OGL
2016-02-21 22:50:29 -06:00
Monster Iestyn
f87f1b7b1a
Fixed compiler errors as well as a ton of tab spaces (apparently it's a common problem in this file anyway but whatever)
2016-02-21 11:37:59 -06:00
Inuyasha
e87a86dd67
Merge branch 'public_next' of http://git.magicalgirl.moe/STJr/SRB2Internal
2016-02-03 18:03:02 -08:00
Inuyasha
f17be6641e
Merge branch 'master' of http://git.magicalgirl.moe/STJr/SRB2 into pub_next
2016-02-03 18:00:28 -08:00
Monster Iestyn
0455b572dc
Removed weird test for water planes in HWR_Subsector
...
It crashes when you try to test it anyway, lol
2016-02-03 17:58:44 -08:00
yellowtd
b3fbc37c94
Midtextures, lights, and culling fixes for ogl slopes
...
There's a weird issue with lights that's hard to diagnose but otherwise
this is ready to go I think
2016-01-27 20:10:02 -06:00
yellowtd
e6235d4d6b
Fix FOF slope rendering in ogl
...
should work as well as software if not better now
2016-01-27 20:09:52 -06:00
yellowtd
52ae3f2875
GL slope walls and fixed plane culling
2016-01-27 20:09:34 -06:00
yellowtd
24da82f026
Begin work on OGL slope support
...
unfinished
2016-01-27 20:09:04 -06:00
Monster Iestyn
4a8dd8031e
dispoffset now works in OpenGL
2016-01-13 22:50:15 -08:00
Monster Iestyn
30ef257050
dispoffset now works in OpenGL
2015-11-23 17:01:10 +00:00
RedEnchilada
ada9b6a9ea
I was helping yellow debug a crash and we found out this thing never actually fixed the crash like it was supposed to so it's fixed now -3-
...
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9044 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:14 -04:00
MonsterIestyn
6cff0bba70
Base draw distances on viewx/viewy coordinates, NOT the player object's coordinates (this can cause problems with things like skyboxes for instance). Splitscreen's player 2 should not affect what sprites player 1 can see, and vice versa! Especially not for precipitation, that just looks ridiculous.
...
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9041 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-31 18:00:13 -04:00
MonsterIestyn
af4c2fe391
Some minor cleanup for OpenGL sprite/MD2 code
2015-03-31 18:00:04 -04:00
MonsterIestyn
8232dbca10
*Fixed OpenGL's handling of cv_translucency effects (should not remove shadows if off, but perhaps make them use default alpha?), someone was a bit hasty! *De-stupified the MD2 status checks regarding drawing of sprites - if they're already checked before calling HWR_DrawSprite, there's no point doing them WITHIN the function as well *Split off sprite shadow code into HWR_DrawSpriteShadow for convenience
...
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8983 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-03-01 19:38:00 -05:00
RedEnchilada
a30222d8e6
I was helping yellow debug a crash and we found out this thing never actually fixed the crash like it was supposed to so it's fixed now -3-
...
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9044 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:22 -06:00
MonsterIestyn
fb47b046da
Base draw distances on viewx/viewy coordinates, NOT the player object's coordinates (this can cause problems with things like skyboxes for instance). Splitscreen's player 2 should not affect what sprites player 1 can see, and vice versa! Especially not for precipitation, that just looks ridiculous.
...
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9041 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:09:20 -06:00
MonsterIestyn
c93ae69d9d
Crawlas now use only one state for looking each SPR2_ constants added to dehacked.c for use in SOC/Lua (both "SPR2_RUN" and "SPR2_RUN_" are in theory the same thing in this implementation, likewise for other 3-char name cases) spr2names array/table also added for use in Lua - it works identically to Lua's sprnames, only with SPR2_ constants/string names instead Some minor cleanup for OpenGL sprite/MD2 code
...
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@9004 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 02:03:01 -06:00
JTE
b2681984a6
Merge branch 'player-animations'
...
SPR_PLAY now calls up a secondary spritedef for all animations for all players. Old character wads (including player.dta) are no longer compatible.
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8993 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 01:59:38 -06:00
MonsterIestyn
5d1ef1ff31
*Fixed OpenGL's handling of cv_translucency effects (should not remove shadows if off, but perhaps make them use default alpha?), someone was a bit hasty! *De-stupified the MD2 status checks regarding drawing of sprites - if they're already checked before calling HWR_DrawSprite, there's no point doing them WITHIN the function as well *Split off sprite shadow code into HWR_DrawSpriteShadow for convenience
...
git-svn-id: https://code.orospakr.ca/svn/srb2/trunk@8983 6de4a73c-47e2-0310-b8c1-93d6ecd3f8cd
2015-02-24 01:59:34 -06:00
Alam Ed Arias
e28882a56d
oh, nPlaneVerts is a size_t?, well, then we need to use sizeu#()
2015-01-10 17:27:24 -05:00
Alam Ed Arias
73b3287b19
SRB2 2.1.14 release
2015-01-01 14:50:31 -05:00
Sryder13
3f1bb6359f
Merge remote-tracking branch 'upstream/master'
2014-11-14 22:21:07 +00:00
Sryder13
e90286ae52
Fix the polyobject crash
2014-11-14 22:19:44 +00:00
Ronald Kinard
d8484a86e0
Virtual resolutions in OpenGL
...
Also made fades use core functions if they are available.
2014-11-13 18:06:38 -06:00
Alam Ed Arias
404b5f666c
SRB2 2.1.12 release
2014-11-11 19:55:07 -05:00
JTE
9d1da548aa
Fix hardware / r_opengl warnings.
2014-11-02 01:31:38 -04:00
Alam Ed Arias
aa612bcf91
whiteline checkup
2014-11-02 01:31:36 -04:00
Sryder13
0c0ede6f18
OpenGL: Polyobject Planes
2014-10-27 20:57:45 +00:00
Sryder13
987f9f5c26
Quick sky fix 2
...
walls not extending down when a thok barrier has top textures and both
ceilings have sky.
2014-09-09 23:57:12 +01:00
Sryder13
cee8fff7b3
Quick sky fix
...
Avoid Z-Fighting on the depth wall with the regular walls to stop the
possibility of regular walls being made partially invisible.
2014-09-09 01:59:19 +01:00
Sryder13
b2852ec0f4
OpenGL: Sky culling
...
Gets rid of stuff being drawn where the sky should be being drawn.
2014-09-08 23:29:05 +01:00
Sryder13
bc0b5505a8
OpenGL: Fix sky drawing
...
sky positioning and scaling more correct compared to software.
2014-09-08 00:55:32 +01:00
Sryder13
ca0f0bf2fd
OpenGL Fade masks
...
I think I've done this all right, someone correct me if I haven't.
2014-09-04 01:35:29 +01:00
Sryder13
d96eaa768c
else added
...
less redundancy.
2014-08-30 14:36:18 +01:00
Sryder13
ae27ace7fe
Polyobject translucency quick fix.
...
I realise what I did before may cause FOF's in the same sector to not be
drawn, if they were before.
2014-08-30 14:20:07 +01:00
Sryder13
278f2e9b66
Polyobject top/bottom texture + translucency
...
polyobjects do have top/bottom textures, silly.
And translucency.
2014-08-30 14:10:55 +01:00
Alam Ed Arias
7cb77075d1
SRB2 2.1.11 release
2014-08-26 23:56:30 -04:00
Alam Ed Arias
c028c83235
SRB2 2.1.9 release
2014-08-03 23:49:33 -04:00
Alam Ed Arias
b511294749
Merge remote-tracking branch 'Sryder13/master'
2014-05-27 15:14:55 -04:00
ilag
1af18c7013
Redo all changes I ended up losing trying to undo the mess I made.
...
Also, fix the issue pointed out by Alam.
2014-05-02 14:24:20 -07:00
Sryder13
46e84465e8
OpenGL: FOF Cutting Fix 2
...
Fixes Translucent FOF's cutting Solid FOF's.
2014-04-20 10:35:50 +01:00
Sryder13
bae7b5b2ac
OpenGL: FOF cutting fix
...
Fixes any FOF's with FF_SOLID not cutting each other.
2014-04-19 17:21:30 +01:00
Sryder13
098eb28036
OpenGL Multi-Property FOF's
...
Multi-Property FOF's have their multiple side properties display in
OpenGL.
2014-04-17 13:02:34 +01:00
Sryder13
b63e99efd8
OpenGL Screen Flip
...
Screen flipping in OpenGL is no longer done by inverting the screen
polygons.
2014-04-07 17:08:04 +01:00
Sryder13
56fbdfdad3
OpenGL Translucent Midtexture Fix
...
Translucent Midtextures using holes with textures in them now work when
there is no FOF's above their sector.
2014-04-05 22:13:09 +01:00
Sryder13
fc12fc7cd4
OpenGL Screen Fading Fix
...
Screen Wipes now work as they did in 2.0.x.
2014-03-31 23:47:12 +01:00
Sryder13
d75d7cd09a
OpenGL Splitscreen Fix
...
First screen in split-screen is now not completely black.
2014-03-31 00:07:55 +01:00
Sryder13
fc978c79bb
OpenGL wall Y offset
...
Fixed wall textures breaking when Y offset of the wall was too high.
2014-03-28 23:28:00 +00:00
Sryder13
9e10e3278b
Negative Light
...
Light no longer goes wrong when lightlevel of a sector is negative.
2014-03-24 17:11:45 +00:00
Sryder13
770c7eeade
LightLevelToLum gone
...
LightLevelToLum unused by everything now, it seemed to be giving wrong
values for lightlevels.
2014-03-24 16:11:25 +00:00
Sryder13
734d6b56f0
OpenGL Flashpal Flashes
...
Fixed flashes for OpenGL Nukes/Teleports etc.
2014-03-23 00:04:35 +00:00
Sryder13
9386b3900b
OpenGL remove HOMs
...
Removes HOMs from OpenGL.
This also seems to have made skyboxes not draw ontop of everything else
on Intel GPU's.
2014-03-22 17:17:40 +00:00
Sryder13
1f452953b6
Post processor skybox
...
Post processing no longer done in the skybox.
2014-03-22 14:52:32 +00:00
Sryder13
24681013d1
Opaque translucent midtextures
...
Fixed translucent midtextures being opaque when there were multiple
lights in a sector.
2014-03-20 20:34:56 +00:00
Sryder13
dd16f58e38
OpenGL Skybox
...
OpenGL skyboxes.
Slight change to sky vertical offsetting.
2014-03-20 20:13:15 +00:00
Sryder13
2b80874646
MD2's replacing skinned mobj fix
...
MD2's that replace mobjs that have a skin, but the skin doesn't have an
MD2 now display.
2014-03-19 23:40:02 +00:00
Sryder13
ba0c93d814
MD2 & Patch drawing fixes
...
MD2's can be translucent again.
MD2's can use sprites instead of another random texture if they have no
texture.
Patches are drawn in the correct place on non aspect correct
resolutions.
Cropped Patches are drawn.
2014-03-19 23:10:37 +00:00
Alam Ed Arias
b93cb1b65a
SRB2 2.1 release
2014-03-15 13:11:35 -04:00