Созданные текстуры сломаются в SDL2 при изменении размера окнаC++

Программы на C++. Форум разработчиков
Anonymous
Созданные текстуры сломаются в SDL2 при изменении размера окна

Сообщение Anonymous »

Я пытаюсь создать и отображать большое количество текстур в окне с помощью флага SDL_WINDOW_RESICABLE , но когда я его изменения размером с его изменения, некоторые текстуры иногда ломаются. Я не заметил эту проблему, если я создаю текстуру каким -то другим способом, например, отдавая глиф и преобразовав ее в текстуру. Вот полный код: < /p>

Код: Выделить всё

#include 
#include 
#include 
#include 

SDL_Texture* generateColoredTexture(SDL_Renderer *renderer_, int w_, int h_, const SDL_Color &col_)
{
auto *tex = SDL_CreateTexture(renderer_, SDL_PIXELFORMAT_ARGB8888, SDL_TEXTUREACCESS_TARGET, w_, h_);
SDL_SetTextureBlendMode(tex, SDL_BLENDMODE_BLEND);

auto oldTar = SDL_GetRenderTarget(renderer_);
SDL_SetRenderTarget(renderer_, tex);

SDL_SetRenderDrawColor(renderer_, 0, 0, 0, 0);
SDL_RenderClear(renderer_);

SDL_SetRenderDrawColor(renderer_, col_.r, col_.g, col_.b, col_.a);
SDL_Rect dst = {4, 4, w_ - 8, h_ - 8};
SDL_RenderFillRect(renderer_, &dst);

SDL_SetRenderTarget(renderer_, oldTar);
return tex;
}

int main(int argc, char* args[])
{
if (SDL_Init(SDL_INIT_EVERYTHING) < 0)
{
std::cout 

Подробнее здесь: [url]https://stackoverflow.com/questions/78801018/created-textures-break-in-sdl2-when-resizing-a-window[/url]

Вернуться в «C++»