mirror of
https://github.com/TerryCavanagh/VVVVVV.git
synced 2026-01-29 17:38:16 +03:00
Interpolate horizontal warp BG
So that it's really, really smooth. Only noticeable in slowdown mode, though.
This commit is contained in:
@@ -111,6 +111,7 @@ void Graphics::init()
|
||||
tempBuffer = NULL;
|
||||
tl = point();
|
||||
towerbuffer = NULL;
|
||||
towerbuffer_lerp = NULL;
|
||||
trinketr = 0;
|
||||
trinketg = 0;
|
||||
trinketb = 0;
|
||||
@@ -1957,7 +1958,9 @@ void Graphics::drawbackground( int t )
|
||||
}
|
||||
break;
|
||||
case 3: //Warp zone (horizontal)
|
||||
BlitSurfaceStandard(towerbuffer, NULL, backBuffer, NULL);
|
||||
BlitSurfaceStandard(towerbuffer, NULL, towerbuffer_lerp, NULL);
|
||||
ScrollSurface(towerbuffer_lerp, lerp(0, -3), 0);
|
||||
BlitSurfaceStandard(towerbuffer_lerp, NULL, backBuffer, NULL);
|
||||
break;
|
||||
case 4: //Warp zone (vertical)
|
||||
backoffset+=3;
|
||||
|
||||
@@ -233,6 +233,7 @@ public:
|
||||
Screen* screenbuffer;
|
||||
SDL_Surface* menubuffer;
|
||||
SDL_Surface* towerbuffer;
|
||||
SDL_Surface* towerbuffer_lerp;
|
||||
SDL_Surface* foregroundBuffer;
|
||||
SDL_Surface* tempBuffer;
|
||||
|
||||
|
||||
@@ -193,6 +193,8 @@ int main(int argc, char *argv[])
|
||||
|
||||
graphics.towerbuffer = SDL_CreateRGBSurface(SDL_SWSURFACE ,320 ,240 ,fmt->BitsPerPixel,fmt->Rmask,fmt->Gmask,fmt->Bmask,fmt->Amask );
|
||||
SDL_SetSurfaceBlendMode(graphics.towerbuffer, SDL_BLENDMODE_NONE);
|
||||
graphics.towerbuffer_lerp = SDL_CreateRGBSurface(SDL_SWSURFACE, 320, 240, fmt->BitsPerPixel, fmt->Rmask, fmt->Gmask, fmt->Bmask, fmt->Amask);
|
||||
SDL_SetSurfaceBlendMode(graphics.towerbuffer, SDL_BLENDMODE_NONE);
|
||||
|
||||
graphics.tempBuffer = SDL_CreateRGBSurface(SDL_SWSURFACE ,320 ,240 ,fmt->BitsPerPixel,fmt->Rmask,fmt->Gmask,fmt->Bmask,fmt->Amask );
|
||||
SDL_SetSurfaceBlendMode(graphics.tempBuffer, SDL_BLENDMODE_NONE);
|
||||
|
||||
Reference in New Issue
Block a user