mirror of
https://github.com/ZDoom/gzdoom.git
synced 2024-11-14 08:31:23 +00:00
- fixed: When looking through a plane mirror the portal plane exclusion logic needs to be flipped, because the mirror inverts the vertical view direction.
This commit is contained in:
parent
125a30307a
commit
f52744e8a4
1 changed files with 3 additions and 0 deletions
|
@ -777,6 +777,8 @@ void GLPlaneMirrorPortal::DrawContents()
|
||||||
ClearScreen();
|
ClearScreen();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
// A plane mirror needs to flip the portal exclusion logic because inside the mirror, up is down and down is up.
|
||||||
|
std::swap(instack[sector_t::floor], instack[sector_t::ceiling]);
|
||||||
|
|
||||||
int old_pm=PlaneMirrorMode;
|
int old_pm=PlaneMirrorMode;
|
||||||
|
|
||||||
|
@ -794,6 +796,7 @@ void GLPlaneMirrorPortal::DrawContents()
|
||||||
gl_RenderState.SetClipHeight(0.f, 0.f);
|
gl_RenderState.SetClipHeight(0.f, 0.f);
|
||||||
PlaneMirrorFlag--;
|
PlaneMirrorFlag--;
|
||||||
PlaneMirrorMode=old_pm;
|
PlaneMirrorMode=old_pm;
|
||||||
|
std::swap(instack[sector_t::floor], instack[sector_t::ceiling]);
|
||||||
}
|
}
|
||||||
|
|
||||||
void GLPlaneMirrorPortal::PushState()
|
void GLPlaneMirrorPortal::PushState()
|
||||||
|
|
Loading…
Reference in a new issue