mirror of
https://github.com/TerryCavanagh/VVVVVV.git
synced 2026-01-29 17:38:16 +03:00
Ensure oldfadeamount is updated when fadeamount is
Like cutscene bars, I've added Graphics::setfade(), to ensure that no deltaframe rendering glitches happen due to oldfadeamount not being updated properly. And indeed, this fixes a deltaframe rendering glitch that happens if you return to the editor from playtesting on a faded-out screen, then fade out again (by either re-entering playtesting and then cause a fadeout to happen again, or by quitting from the editor afterwards). The same glitch also happens outside of in-editor playtesting if you exit to the menu while the screen is faded out.
This commit is contained in:
@@ -95,8 +95,7 @@ void Graphics::init(void)
|
||||
//Fading stuff
|
||||
SDL_memset(fadebars, 0, sizeof(fadebars));
|
||||
|
||||
fadeamount = 0;
|
||||
oldfadeamount = 0;
|
||||
setfade(0);
|
||||
fademode = 0;
|
||||
|
||||
// initialize everything else to zero
|
||||
@@ -1354,7 +1353,7 @@ void Graphics::processfade(void)
|
||||
{
|
||||
fadebars[i] = -int(fRandom() * 12) * 8;
|
||||
}
|
||||
fadeamount = 0;
|
||||
setfade(0);
|
||||
fademode = 3;
|
||||
}
|
||||
else if (fademode == 3)
|
||||
@@ -1372,7 +1371,7 @@ void Graphics::processfade(void)
|
||||
{
|
||||
fadebars[i] = 320 + int(fRandom() * 12) * 8;
|
||||
}
|
||||
fadeamount = 416;
|
||||
setfade(416);
|
||||
fademode = 5;
|
||||
}
|
||||
else if (fademode == 5)
|
||||
@@ -1386,6 +1385,12 @@ void Graphics::processfade(void)
|
||||
}
|
||||
}
|
||||
|
||||
void Graphics::setfade(const int amount)
|
||||
{
|
||||
fadeamount = amount;
|
||||
oldfadeamount = amount;
|
||||
}
|
||||
|
||||
void Graphics::drawmenu( int cr, int cg, int cb, bool levelmenu /*= false*/ )
|
||||
{
|
||||
for (size_t i = 0; i < game.menuoptions.size(); i++)
|
||||
|
||||
Reference in New Issue
Block a user