Сбой программы при использовании SDL_CreateTextureFromSurface () - PullRequest
0 голосов
/ 24 марта 2020
SDL_Texture *Graphics::createTexture(TTF_Font *font, const char *text, SDL_Color color, int wrap) {
    SDL_Surface *surface = TTF_RenderText_Blended_Wrapped(font, text, color, wrap);
    SDL_Texture *texture = SDL_CreateTextureFromSurface(renderer, surface);
    SDL_FreeSurface(surface);
    return texture;
}

Если я закомментирую строку для SDL_CreateTextureFromSurface, то программа работает. Я проверил SDL_GetError и TTF_GetError, оба говорят, что ошибки нет. ТТФ инициализируется просто отлично. Этот код работал, когда я использовал для программирования на Linux, но теперь я на Windows 10, и это не так.

Эта функция из того же класса и работает просто отлично, и она также использует SDL_CreateTextureFromSurface .

SDL_Texture *Graphics::loadTexture(const char *path) {
    SDL_Surface *surface = IMG_Load(path);
    SDL_Texture *texture = SDL_CreateTextureFromSurface(renderer, surface);
    SDL_FreeSurface(surface);
    return texture;
}
...