スクリーンをアップデートする。
int SDL_Flip(SDL_Surface *screen);
screenはアップデートするスクリーン。
SDL_SetVideoMode()でSDL_DOUBLEBUFを指定していると、効果的。
返り値は -1: エラー、 0:成功
#include <SDL/SDL.h>
int main(){
/* ビデオサーフェス */
SDL_Surface* videoSurface = NULL;
/* 矩形 */
SDL_Rect rect;
/* 背景色 */
Uint32 bgColor;
/* ループ変数 */
int loop;
/* 初期化処理 */
SDL_Init(SDL_INIT_EVERYTHING);
/* ウインドウオープン */
SDL_SetVideoMode(640, 480, 0, SDL_HWSURFACE | SDL_DOUBLEBUF);
/* ビデオサーフェスの取得 */
videoSurface = SDL_GetVideoSurface();
/* 矩形の初期化 */
rect.w = 640;
rect.h = 2;
rect.x = 0;
rect.y = 0;
/* 塗りつぶし処理 */
for(loop = 0; loop < 240; loop++){
bgColor = SDL_MapRGB(videoSurface->format, 0x00, 0x00, 0xFF - loop);
rect.y = loop * 2;
SDL_FillRect(videoSurface, &rect, bgColor);
}
/* フリップ */
SDL_Flip(videoSurface);
/* 3秒ウエイト */
SDL_Delay(3000);
/* 終了処理 */
SDL_Quit();
return 0;
}

少しずつ色を変えてグラデーションを作成する例