SDL2_image не инициализируется

Я пытаюсь загрузить файл .png с помощью SDL2 и SDL2_image. SDL2 инициализируется правильно, в то время как SDL2_image просто дает сбой без видимой причины, пожалуйста, помогите.

IMG_Init() возвращает 0

IMG_GetError() ничего не возвращает

Я использую SDL2 2.0.10 и SDL2_image 2.0.5 (на самом деле последние версии). У меня есть все необходимые DLL-файлы в той же папке, что и мой исполняемый файл (SDL2.dll, SDL2_image.dll, libpng16-16.dll, zlib1.dll). так как я сейчас использую только png-файлы)

Я понятия не имею, почему это не работает, и я пытаюсь найти ответ уже как минимум 2 часа.

Мой код:

if(IMG_Init(IMG_INIT_PNG) != 0) {

        std::cout << "Failed to init sdl_image"<<IMG_GetError()<<std::endl;
        return 0;
}

person Nourios    schedule 22.12.2019    source источник
comment
!= 0 должно быть != IMG_INIT_PNG.   -  person HolyBlackCat    schedule 22.12.2019
comment
Я только что проверил, и это работает! Я чувствую себя таким тупым из-за создания такой бессмысленной темы.   -  person Nourios    schedule 22.12.2019
comment
Не беспокойтесь, я думаю, что он получил меня в первый раз тоже.   -  person HolyBlackCat    schedule 22.12.2019


Ответы (1)


Как указал HolyBlackCat, это должно быть IMG_INIT(IMG_INIT_PNG) != IMG_INIT_PNG вместо IMG_INIT(IMG_INIT_PNG) != 0

person Nourios    schedule 22.12.2019