一段时间以来一直试图在网上找到这个。
我有一个包含一些内容的 SDL_Surface(其中一个是文本,另一个是精灵的一部分)。在游戏循环中,我将数据很好地显示在屏幕上。但随后它再次循环,它不会替换旧数据,而只是覆盖它。因此,在文本的情况下,它变得一团糟。
我试过 SDL_FreeSurface 但没有用,有人知道另一种方法吗?
fpsStream.str("");
fpsStream << fps.get_ticks();
fpsString = fpsStream.str();
game.fpsSurface = TTF_RenderText_Solid(game.fpsFont, fpsString.c_str(), textColor);
game.BlitSurface(0, 0, game.fpsSurface, game.screen);