SDL_LOADBMP не будет загружать файл BMP в окно [закрыто]C++

Программы на C++. Форум разработчиков
Ответить Пред. темаСлед. тема
Anonymous
 SDL_LOADBMP не будет загружать файл BMP в окно [закрыто]

Сообщение Anonymous »

Я пытаюсь загрузить файл .bmp в свое окно, используя SDL_LOADBMP, но все, что я пробовал до сих пор, кажется, не решает его. Я попытался использовать абсолютный путь файла, и я также попытался увидеть, был ли мой оригинальный файл .bmp поврежден или что -то в этом роде, заменив его другим файлом .bmp. Каждый раз, когда .BMP не появляется в окне, и вместе с ним я получаю два сообщения об ошибках: < /p>
Failed to load img. SDL Error:
Failed to load media.
< /code>
Я не уверен, почему ошибка SDL не появляется. Итак, чтобы увидеть мой текущий рабочий каталог, я использовал: < /p>
cout
Current working directory: C:\Users\Rinny\Desktop\portfolio\c++\proj-1-sub
< /code>
, которая является той же папкой, что и где файл .bmp, который я пытаюсь загрузить, находится в. < /p>
Вот код: < /p>
#include
#include
#include
#include

using namespace std;

const int screen_w = 1280;
const int screen_h = 720;

bool init(); // function to start SDL
bool load_media(); // * * to load media
void close(); // * * to close SDL

SDL_Window* window = NULL; // window to render to
SDL_Surface* surface = NULL; // surface within the window
SDL_Surface* teto = NULL; // img to be loaded

// function to start SDL
bool init()
{
bool success = true;
// initialize SDL
if(SDL_Init(SDL_INIT_VIDEO) < 0)
{
printf("SDL failed to initialize. SDL Error: %s\n", SDL_GetError()); // error msg if SDL fails to initialize
success = false;
}
else // if SDL successfully initializes proceed to next statement
{
// create window
window = SDL_CreateWindow("game name pending", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, screen_w, screen_h, SDL_WINDOW_SHOWN);
if(window == NULL)
{
printf("Failed to create a window. SDL Error: %s\n", SDL_GetError()); // error msg if fail to create window
success = false;
}
else // if able to create window, proceed to this statement next
{
// get surface from window created earlier
surface = SDL_GetWindowSurface(window);
}
}
return success;
}

// function to load media
bool load_media()
{
bool success = true;
teto = SDL_LoadBMP("kasane.bmp"); // img to load
if(teto == NULL);
{
printf("Failed to load img. SDL Error: %s\n", SDL_GetError()); // error msg if fail to load img
success = false;
}
return success;
}

// function to close SDL
void close()
{
SDL_FreeSurface(teto);
teto = NULL;
SDL_DestroyWindow(window); // also destroys surface
window = NULL;
SDL_Quit();
}

int main(int argc, char* args[])
{
cout

Подробнее здесь: https://stackoverflow.com/questions/796 ... nto-window
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

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