_coursrach/testSDL/Lesson2/main.cpp

53 lines
1.8 KiB
C++

#include <SDL2/SDL.h>
#include <iostream>
using namespace std;
const int screen_width ;
const int scren_height ;
SDL_Window* win = NULL;
SDL_Renderer* renderer = NULL;
SDL_Texture* LoadImage(char* path)
{
SDL_Surface* loadedImage = NULL;
SDL_Texture* texture = NULL;
loadedImage = SDL_LoadBMP(path);
if (loadedImage != 0)
{
texture = SDL_CreateTextureFromSurface(renderer, loadedImage);
SDL_FreeSurface(loadedImage);
}
else
cout << SDL_GetError << endl;
return texture;
}
int main()
{
if (SDL_Init(SDL_INIT_EVERYTHING) != 0 )
{
cout << "SDL_Init error\n";
return 1;
}
SDL_Window* window = SDL_CreateWindow("Hello World!", 100, 100, 640, 480, SDL_WINDOW_SHOWN);
if (window == nullptr)
{
cout << "Window create error\n";
return 1;
}
SDL_Renderer* renderer = SDL_CreateRenderer(window, -1, SDL_RENDERER_ACCELERATED || SDL_RENDERER_PRESENTVSYNC);
if (renderer == nullptr)
{
cout << "Renderer error\n";
return 1;
}
SDL_RenderClear(renderer);
SDL_RenderCopy(renderer, LoadImage("./hello.bmp"), NULL, NULL);
SDL_RenderPresent(renderer);
SDL_Delay(3000);
SDL_DestroyRenderer(renderer);
SDL_DestroyTexture(LoadImage("./hello.bmp"));
SDL_DestroyWindow(window);
SDL_Quit;
return 0;
}