- Tried adding bilinear filtering support for paletted textures, but the
shader seems to be producing crappy output, so it's disabled for now. Specifically, it produces distorted output at regular intervals for textures that aren't power-of-2-sized, and it's still doing visible filtering when the texture is rendered at its original size, so obviously it's not doing something right. - Fixed the use of power-of-2-sized native textures for smaller game textures again. - Fixed: D3DFB did not restore all the state it needed to after resetting the device. - Fixed: R_DrawTopBorder() must clip itself around the 3D view, since it's now drawn later. - With full software rendering, palette flashes once again effect the whole screen. Changes I neglected to put in the previous commit log: - Moved the view border drawing into the 2D mode part. When using Begin2D() now, the only part of the software buffer that gets updated to the screen is the part with the actual 3D scene and only if you tell it to. - Fixed a D3D memory leak on every frame in windowed mode and the same thing for the screen wipes. Note to self: If it's an interface, be sure to Release it, because it will be AddRef'ed before being returned to you. - Moved the BlendView() call out of FBaseStatusBar::Draw() so that it can be applied before copying the 3D scene to the screen underneath the 2D parts. - Restored the console's darkening level to its old table-based amount. - Fixed D3DFB::SetColorOverlay()'s incorrect calculations. - Fixed the D3D screen wipes for letterboxed modes. SVN r662 (trunk)
This commit is contained in:
parent
59c8faa7df
commit
5d9d2a9088
9 changed files with 348 additions and 169 deletions
|
|
@ -1489,12 +1489,14 @@ void R_DrawTopBorder ()
|
|||
if (realviewwidth == SCREENWIDTH)
|
||||
return;
|
||||
|
||||
R_DrawBorder (0, 0, SCREENWIDTH, 34);
|
||||
offset = gameinfo.border->offset;
|
||||
size = gameinfo.border->size;
|
||||
|
||||
if (viewwindowy < 35)
|
||||
if (viewwindowy < 34)
|
||||
{
|
||||
R_DrawBorder (0, 0, viewwindowx, 34);
|
||||
R_DrawBorder (viewwindowx, 0, viewwindowx+realviewwidth, viewwindowy);
|
||||
R_DrawBorder (viewwindowx+realviewwidth, 0, SCREENWIDTH, 34);
|
||||
p1 = TexMan(gameinfo.border->t);
|
||||
for (x = viewwindowx; x < viewwindowx + realviewwidth; x += size)
|
||||
{
|
||||
|
|
@ -1515,6 +1517,10 @@ void R_DrawTopBorder ()
|
|||
p1 = TexMan(gameinfo.border->tr);
|
||||
screen->DrawTexture (p1, viewwindowx+realviewwidth, viewwindowy - offset, TAG_DONE);
|
||||
}
|
||||
else
|
||||
{
|
||||
R_DrawBorder (0, 0, SCREENWIDTH, 34);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue