void GameSurfaceSDL::UpdateTimeStatus(GAME_TIME currentTime)
{
+
SDL_Rect rect = {0, 0, 200, 50};
SDL_Rect StatusViewRect = {0, 0, 200, 50};
SDL_Rect StatusViewPosition = {10, 10, 0, 0};
SDL_Surface *surface, *statusSurface;
const int STATUS_BUFSIZE = 100;
char statusBuf[STATUS_BUFSIZE];
- //if(!gameTimeStatusSurface) SDL_FreeSurface(gameTimeStatusSurface);
+ if(gameTimeStatusTexture) SDL_DestroyTexture(gameTimeStatusTexture);
surface = SDL_CreateRGBSurface(0, 200, 50, 32, 0, 0, 0, 0);
SDL_FillRect(surface, &rect, SDL_MapRGBA(windowSurface->format, 0, 0, 0, 120));
sprintf_s(statusBuf, STATUS_BUFSIZE, "\83^\81[\83\93:%d", currentTime);
statusSurface = TTF_RenderUTF8_Blended(font, toUTF8(statusBuf).c_str(), color);
SDL_BlitSurface(statusSurface, &StatusViewRect, surface, &StatusViewPosition);
- SDL_CreateTextureFromSurface(renderer, surface);
+ gameTimeStatusTexture = SDL_CreateTextureFromSurface(renderer, surface);
SDL_FreeSurface(statusSurface);
SDL_FreeSurface(surface);
}