mirror of
https://github.com/ZDoom/gzdoom.git
synced 2024-11-11 15:21:51 +00:00
- fixed: Fog boundaries were not drawn on line portals.
There's two restrictions, though: * on one-sided-line portals fog boundaries will not be drawn. * the filler sector behind the portal may not have a sky ceiling texture. This is because the drawing code contains several sky checks which get in the way here.
This commit is contained in:
parent
715bdd69af
commit
8f45664089
1 changed files with 5 additions and 2 deletions
|
@ -1654,7 +1654,10 @@ void GLWall::Process(seg_t *seg, sector_t * frontsector, sector_t * backsector)
|
|||
|
||||
|
||||
/* mid texture */
|
||||
bool drawfogboundary = gl_CheckFog(frontsector, backsector);
|
||||
bool isportal = seg->linedef->isVisualPortal() && seg->sidedef == seg->linedef->sidedef[0];
|
||||
sector_t *backsec = isportal? seg->linedef->getPortalDestination()->frontsector : backsector;
|
||||
|
||||
bool drawfogboundary = gl_CheckFog(frontsector, backsec);
|
||||
FTexture *tex = TexMan(seg->sidedef->GetTexture(side_t::mid));
|
||||
if (tex != NULL)
|
||||
{
|
||||
|
@ -1672,7 +1675,7 @@ void GLWall::Process(seg_t *seg, sector_t * frontsector, sector_t * backsector)
|
|||
fch1, fch2, ffh1, ffh2, bch1, bch2, bfh1, bfh2);
|
||||
}
|
||||
|
||||
if (seg->linedef->isVisualPortal() && seg->sidedef == seg->linedef->sidedef[0])
|
||||
if (isportal)
|
||||
{
|
||||
lineportal = linePortalToGL[seg->linedef->portalindex];
|
||||
ztop[0] = bch1;
|
||||
|
|
Loading…
Reference in a new issue