mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2024-11-25 22:01:01 +00:00
Merge branch 'other-software-fixes' into 'master'
Some other software fixes/changes Some other software fixes/changes I've made * Change 1: single-sided linedef midtextures (read: not double-sided linedefs, but single-sided) now don't skew if Effect 2 is checked. Before, there wasn't any ability for software to disable skewing for them. =V * Change 2: PolyObject back side midtextures now return to being where they should be. Had to make a hack to fix this though. See merge request !86
This commit is contained in:
commit
307129f7c9
1 changed files with 12 additions and 2 deletions
14
src/r_segs.c
14
src/r_segs.c
|
@ -1883,12 +1883,13 @@ void R_StoreWallRange(INT32 start, INT32 stop)
|
||||||
// a single sided line is terminal, so it must mark ends
|
// a single sided line is terminal, so it must mark ends
|
||||||
markfloor = markceiling = true;
|
markfloor = markceiling = true;
|
||||||
#ifdef ESLOPE
|
#ifdef ESLOPE
|
||||||
if (!(linedef->flags & ML_EFFECT1)) {
|
if (linedef->flags & ML_EFFECT2) {
|
||||||
if (linedef->flags & ML_DONTPEGBOTTOM)
|
if (linedef->flags & ML_DONTPEGBOTTOM)
|
||||||
rw_midtexturemid = frontsector->floorheight + textureheight[sidedef->midtexture] - viewz;
|
rw_midtexturemid = frontsector->floorheight + textureheight[sidedef->midtexture] - viewz;
|
||||||
else
|
else
|
||||||
rw_midtexturemid = frontsector->ceilingheight;
|
rw_midtexturemid = frontsector->ceilingheight - viewz;
|
||||||
}
|
}
|
||||||
|
else
|
||||||
#endif
|
#endif
|
||||||
if (linedef->flags & ML_DONTPEGBOTTOM)
|
if (linedef->flags & ML_DONTPEGBOTTOM)
|
||||||
{
|
{
|
||||||
|
@ -2507,6 +2508,15 @@ void R_StoreWallRange(INT32 start, INT32 stop)
|
||||||
#ifdef ESLOPE
|
#ifdef ESLOPE
|
||||||
maskedtextureheight = ds_p->maskedtextureheight; // note to red, this == &(ds_p->maskedtextureheight[0])
|
maskedtextureheight = ds_p->maskedtextureheight; // note to red, this == &(ds_p->maskedtextureheight[0])
|
||||||
|
|
||||||
|
#ifdef POLYOBJECTS
|
||||||
|
if (curline->polyseg) { // use REAL front and back floors please, so midtexture rendering isn't mucked up
|
||||||
|
rw_midtextureslide = rw_midtexturebackslide = 0;
|
||||||
|
if (!!(linedef->flags & ML_DONTPEGBOTTOM) ^ !!(linedef->flags & ML_EFFECT3))
|
||||||
|
rw_midtexturemid = rw_midtextureback = max(curline->frontsector->floorheight, curline->backsector->floorheight) - viewz;
|
||||||
|
else
|
||||||
|
rw_midtexturemid = rw_midtextureback = min(curline->frontsector->ceilingheight, curline->backsector->ceilingheight) - viewz;
|
||||||
|
} else
|
||||||
|
#endif
|
||||||
// Set midtexture starting height
|
// Set midtexture starting height
|
||||||
if (linedef->flags & ML_EFFECT2) { // Ignore slopes when texturing
|
if (linedef->flags & ML_EFFECT2) { // Ignore slopes when texturing
|
||||||
rw_midtextureslide = rw_midtexturebackslide = 0;
|
rw_midtextureslide = rw_midtexturebackslide = 0;
|
||||||
|
|
Loading…
Reference in a new issue