SDL_BlitSurface()でスクリーンに転送したのち、SDL_UpdateRect()で画面の更新を行う。
int SDL_BlitSurface(SDL_Surface *src, SDL_Rect *srcrect, SDL_Surface *dst, SDL_Rect *dstrect);
srcが転送元のサーフェース。srcrectが転送元の位置、サイズ。NULLを指定するとサーフェースの全体。dstが転送先のサーフェース。dstrectが転送先の位置。NULLを指定すると左上の座標(0,0)となる。
void SDL_UpdateRect(SDL_Surface *screen, Sint32 x, Sint32 y, Sint32 w, Sint32 h);
x,y,w,hがすべて0の場合は画面全体の更新となる。
SDL_Surface* screen; SDL_Surface* parts; SDL_Rect dst; dst.x = 10; dst.y = 20; dst.w = parts->w; dst.h = parts->h; SDL_BlitSurface( parts, NULL, screen, &dst ); SDL_UpdateRect( screen, 0, 0, 0, 0 );