B
Hey, habe das Problem gelöst. Die Idee mit einem Updater hatte ich auch (es unterscheidet sich diese Klasse nicht allzu sehr von meiner Sprite Klasse, wo ich das genau so gemacht habe) aber das Problem was das Surface das immer mehr Speicher in anspruch genommen hat("message"). Ich dachte mit
delete message;
wird der Speicher freigegeben, irgendwie nicht wirklich.
Meine Erweiterung meiner TextKlasse für alle, die es interessiert.
void SDL_Text::textupdate(bool one, std::string textmakeupdate)
{
message = TTF_RenderText_Solid(font, textmakeupdate.c_str(), textColor);
texts = SDL_CreateTextureFromSurface(csdl_rendererm->GetRenderer(), message);
SDL_QueryTexture(texts, NULL, NULL, &rtexts.w, &rtexts.h);
textdraw();
clear();
}
void SDL_Text::clear()
{
SDL_FreeSurface(message);//Wichtigste Zeile! Hier wird der Spreicher von der/die/das Surface freigegeben
SDL_DestroyTexture(texts);
}