- New: When using the D3D9 framebuffer, palette blending is now applied only

to the 3D area of the screen. This means the console and (the primary
  rectangular area of) the status bar are no longer blended.


SVN r601 (trunk)
This commit is contained in:
Randy Heit 2007-12-18 01:50:08 +00:00
commit c087e4d411
7 changed files with 174 additions and 14 deletions

View file

@ -87,6 +87,7 @@
#include "version.h"
#include "v_text.h"
#include "st_start.h"
#include "templates.h"
// MACROS ------------------------------------------------------------------
@ -524,6 +525,7 @@ void D_Display (bool screenshot)
switch (gamestate)
{
case GS_FULLCONSOLE:
screen->SetBlendingRect(0,0,0,0);
C_DrawConsole ();
M_Drawer ();
if (!screenshot)
@ -535,6 +537,18 @@ void D_Display (bool screenshot)
if (!gametic)
break;
if (!menuactive)
{
screen->SetBlendingRect(viewwindowx, MAX(ConBottom,viewwindowy),
viewwindowx + realviewwidth, MAX(ConBottom,viewwindowy + realviewheight));
}
else
{
// Don't chop the blending effect off at the status bar when the menu is
// active. Mostly, this is just to make Strife's dialogs with portrait
// images look okay when a blend is active.
screen->SetBlendingRect(0,0,0,0);
}
R_RefreshViewBorder ();
P_CheckPlayerSprites();
R_RenderActorView (players[consoleplayer].mo);
@ -559,16 +573,19 @@ void D_Display (bool screenshot)
break;
case GS_INTERMISSION:
screen->SetBlendingRect(0,0,0,0);
WI_Drawer ();
CT_Drawer ();
break;
case GS_FINALE:
screen->SetBlendingRect(0,0,0,0);
F_Drawer ();
CT_Drawer ();
break;
case GS_DEMOSCREEN:
screen->SetBlendingRect(0,0,0,0);
D_PageDrawer ();
CT_Drawer ();
break;