Az SDL a Simple DirectMedia Layer rövidítése. Egy multimédiás szoftverkönyvtár, nyílt forráskóddal, C nyelven írva.
sudo apt install libsdl2-dev
#include <stdio.h> #include <SDL2/SDL.h> int main() { SDL_Window *window; SDL_Init(SDL_INIT_VIDEO); window = SDL_CreateWindow("Teszt", SDL_WINDOWPOS_UNDEFINED, SDL_WINDOWPOS_UNDEFINED, 800, 600, SDL_WINDOW_OPENGL); // Sikeres ablakkészítés ellenőrzése if (window == NULL) { printf("Sikertelen létrehozás: %s\n", SDL_GetError()); return 1; } // 10 másodpercig várunk SDL_Delay(10000); // Ablak bezárása, megszüntetése SDL_DestroyWindow(window); // Kilépés SDL_Quit(); return 0; }
Fordítás:
gcc -lSDL2 -o main main.c
Az ablak létrehozás szintaxisa:
SDL_Window* SDL_CreateWindow(const char* title, int x, int y, int w, int h, Uint32 flags)
title | az ablak címe, UTF-8 kódolással |
x | |
y | |
w | az ablak szélessége |
h | az ablak magassága |
flags | jelzők; 0, 1 vagy több SDL_WindowFlags |
SDL_WindowFlags jelzők | |
---|---|
SDL_WINDOW_FULLSCREEN | teljes képernyő |
SDL_WINDOW_FULLSCREEN_DESKTOP | teljesképernyő az aktuális asztal felbontással |
SDL_WINDOW_OPENGL | ablak, amely OpenGL tartalommal használható |
SDL_WINDOW_VULKAN | ablak, amely Vulkan tartalommal használható |
SDL_WINDOW_HIDDEN | nem látható ablak |
SDL_WINDOW_BORDERLESS | ablak, díszítés nélkül |
SDL_WINDOW_RESIZABLE | átméretezhető ablak |
SDL_WINDOW_MINIMIZED | minimalizált ablak |
SDL_WINDOW_MAXIMIZED | maximalizált ablak |
SDL_WINDOW_INPUT_GRABBED | az ablak kapja meg a fókuszt |
SDL_WINDOW_ALLOW_HIGHDPI | Az ablak vegyen fel high-DPI módot; támogatott az SDL 2.0.1-től |