Skip to content

Commit

Permalink
Map Renderer|Fixed: HOM in temple4.wad near {x:6864, y:10528}
Browse files Browse the repository at this point in the history
  • Loading branch information
danij-deng committed May 10, 2012
1 parent a01396b commit 9ba4ee4
Showing 1 changed file with 18 additions and 4 deletions.
22 changes: 18 additions & 4 deletions doomsday/engine/portable/src/rend_main.c
Expand Up @@ -2275,8 +2275,6 @@ static boolean Rend_RenderHEdgeTwosided(HEdge* hedge, BspLeaf* bspLeaf)
line->L_frontsector == line->L_backsector)
return false;

/// @fixme Most of these cases are now irrelevant and can be removed.

if(!solidSeg) // We'll have to determine whether we can...
{
if(backSec == frontSec)
Expand All @@ -2289,9 +2287,25 @@ static boolean Rend_RenderHEdgeTwosided(HEdge* hedge, BspLeaf* bspLeaf)
(bfloor->visHeight >= fceil->visHeight &&
(frontSide->SW_bottommaterial || frontSide->SW_middlematerial)))
{
// A closed gap.
solidSeg = true;
// A closed gap?
if(FEQUAL(fceil->visHeight, bfloor->visHeight))
{
solidSeg = (bceil->visHeight <= bfloor->visHeight) ||
!(Surface_IsSkyMasked(&fceil->surface) &&
Surface_IsSkyMasked(&bceil->surface));
}
else if(FEQUAL(ffloor->visHeight, bceil->visHeight))
{
solidSeg = (bfloor->visHeight >= bceil->visHeight) ||
!(Surface_IsSkyMasked(&ffloor->surface) &&
Surface_IsSkyMasked(&bfloor->surface));
}
else
{
solidSeg = true;
}
}
/// @todo Is this still necessary?
else if(bceil->visHeight <= bfloor->visHeight ||
(!(bceil->visHeight - bfloor->visHeight > 0) && bfloor->visHeight > ffloor->visHeight && bceil->visHeight < fceil->visHeight &&
(frontSide->SW_topmaterial /*&& !(frontSide->flags & SDF_MIDTEXUPPER)*/) &&
Expand Down

0 comments on commit 9ba4ee4

Please sign in to comment.