[[oktatas:programozás:3d|< 3D]]
====== SDL ======
* **Szerző:** Sallai András
* Copyright (c) Sallai András, 2020
* [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]]
* Web: https://szit.hu
===== Az SDL =====
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.
===== Telepítés =====
==== Linuxon ====
sudo apt install libsdl2-dev
===== Kezdés =====
#include
#include
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 | az ablak x pozíciója; SDL_WINDOWPOS_CENTERED vagy SDL_WINDOWPOS_UNDEFINED
| y | az ablak y pozíciója; SDL_WINDOWPOS_CENTERED vagy SDL_WINDOWPOS_UNDEFINED
| 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 |
===== Forrás =====
* https://wiki.libsdl.org/SDL1.2Tutorials (2020)
* https://wiki.libsdl.org/SDL_CreateWindow (2020)