- Fixed: ACS used incompatible values for APROP_RenderStyle. It needs to use

the exact same values as previous ZDoom versions
- Added a DECORATE 'stencilcolor' property so that the stencil render style
  can be used.
- Added some NULL pointer checks to the font loading code.

SVN r713 (trunk)
This commit is contained in:
Christoph Oelckers 2008-01-26 15:50:52 +00:00
commit d134deda95
6 changed files with 126 additions and 39 deletions

View file

@ -2223,18 +2223,7 @@ ESPSResult R_SetPatchStyle (FRenderStyle style, fixed_t alpha, int translation,
{
fixed_t fglevel, bglevel;
if (style.BlendOp == STYLEOP_FuzzOrAdd)
{
style.BlendOp = (r_drawfuzz || !r_drawtrans) ? STYLEOP_Fuzz : STYLEOP_Add;
}
else if (style.BlendOp == STYLEOP_FuzzOrSub)
{
style.BlendOp = (r_drawfuzz || !r_drawtrans) ? STYLEOP_Fuzz : STYLEOP_Sub;
}
else if (style.BlendOp == STYLEOP_FuzzOrRevSub)
{
style.BlendOp = (r_drawfuzz || !r_drawtrans) ? STYLEOP_Fuzz : STYLEOP_RevSub;
}
style.CheckFuzz();
if (style.Flags & STYLEF_TransSoulsAlpha)
{
@ -2376,3 +2365,28 @@ bool FRenderStyle::IsVisible(fixed_t alpha) const throw()
// Treat anything else as visible.
return true;
}
//==========================================================================
//
// FRenderStyle :: CheckFuzz
//
// Adjusts settings based on r_drawfuzz CVAR
//
//==========================================================================
void FRenderStyle::CheckFuzz()
{
if (BlendOp == STYLEOP_FuzzOrAdd)
{
BlendOp = (r_drawfuzz || !r_drawtrans) ? STYLEOP_Fuzz : STYLEOP_Add;
}
else if (BlendOp == STYLEOP_FuzzOrSub)
{
BlendOp = (r_drawfuzz || !r_drawtrans) ? STYLEOP_Fuzz : STYLEOP_Sub;
}
else if (BlendOp == STYLEOP_FuzzOrRevSub)
{
BlendOp = (r_drawfuzz || !r_drawtrans) ? STYLEOP_Fuzz : STYLEOP_RevSub;
}
}