SDL - Úvod
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

SDL - ÚvodSDL - Úvod

 
Hledat
Vybavení pro Laser Game
Laser Game Praha
Pokemon Go - vše o nové hře
Harry Potter a prokleté dítě

SDL - Úvod

Google       Google       13. 9. 2005       35 399×

SDL je multimediální knihovna (nejen) pro C++. V tomto seriálu se vás pokusím naučit vykreslování 2D grafiky, ovládání pomocí klávesnice a myši, přehrávání zvuků a hudby a možná i něco navíc. Potřebujete samozřejmě alespoň základní znalost C++ (postačí i C, budeme programovat pouze strukturovaně). V úvodu vám napíšu něco o SDL a jak jej rozchodit ve VC++ a Dev-C++...

Reklama
Reklama

SDL (Simple Directmedia Layer) je nejen knihovna multimediální, ale také multiplatformní. To znamená, že jej podporuje nejen Windows, ale také mnoho dalších operačních systémů (Linux, Mac OS, Solaris, FreeBSD a další...). Knihovnu vyvíjí Loki Software a její oficiální stránky najdete na www.libsdl.org .

SDL funguje pod mnoha jazyky, avšak já vás jej budu učit pod C++. Budu vycházet zejména z těchto tutoriálů, které mne naučily většinu z toho, co v SDL umím, ale částečně budu také vycházet z vlastních zkušeností. Chtěl bych tímto poděkovat Mariu Androvi, který tyto skvělé tutorialy napsal.

Tento seriál je určen zejména pro ty, kteří zvládají alespoň základy jazyka C/C++ a chtějí v něm už konečně udělat něco grafického. Pokud C/C++ neovládáte, tak vám doporučuji nejdříve navštívit kurz C++ a až po usilovné práci s konzolí se sem vrátit. Podle mě je SDL pro začátky s grafikou ideální (i já sám jsem v něm napsal svou první hru), ale jestli jsou vám dva rozměry málo a raději byste dělali ve 3D, pak doporučuji buď DirectX nebo OpenGL - ve skutečnosti to není tak složité, jak se může zdát a navíc je vykreslování podporované hardwarově (je mnohem rychlejší).

Pokud C/C++ neovládáte, tak vám doporučuji nejdříve navštívit kurz C++ a až po usilovné práci s konzolí se sem vrátit.

Konec keců :), teď vám popíšu, jak sprovoznit SDL v MS Visual C++ a Dev-C++:

Visual C++

Nejprve potřebujete stáhnout aktuální vývojářskou verzi SDL pro Visual C++. Momentálně je to verze 1.2.9, kterou si můžete stáhnout zde. Ale pokud se chcete ujistit, zdali mezitím nevyšla nová verze nebo vám odkaz nefunguje, jděte na www.libsdl.org do sekce download / SDL 1.2 a podívejte se po Development libraries, tam najděte Win32 a z následujících odkazů vyberte Visual C++. Jakmile soubor stáhnete, tak vytvořte ve složce include od vašeho VC++ složku SDL (např. C:VC98includeSDL) a do ní nakopírujte obsah složky include ze stáhnutého souboru. Poté zkopírujte obsah složky lib ze stáhnutého souboru do složky lib vašeho VC++ (např. C:VC98lib). Vytvořte ve VC++ nový projekt (Win32 Application). Jděte do Project->Settings->Link a připište "sdl.lib sdlmain.lib" (bez uvozovek) na konec řady ostatních .lib souborů. Nakonec přejděte na Project->Settings->C/C++->Code Generation a ze seznamu Use run-time library vyberte Multithreaded DLL. Poslední věc, co musíte udělat je napsat někde na začátek hlavního cpp souboru #include <SDL/SDL.h>.

Dev-C++

Nejprve potřebujete stáhnout aktuální vývojářskou verzi SDL pro Mingw32. Momentálně je to verze 1.2.9, kterou si můžete stáhnout zde. Ale pokud se chcete ujistit, zdali mezitím nevyšla nová verze nebo vám odkaz nefunguje, jděte na www.libsdl.org do sekce download / SDL 1.2 a podívejte se po Development libraries, tam najděte Win32 a z následujících odkazů vyberte Mingw32. Jakmile soubor stáhnete, tak vytvořte ve složce include od vašeho Dev-C++ složku SDL (např. C:Dev-CppincludeSDL) a do ní nakopírujte obsah složky include ze stáhnutého souboru. Poté zkopírujte obsah složky lib ze stáhnutého souboru do složky lib vašeho Dev-C++ (např. C:Dev-Cpplib). Vytvořte nový C++ projekt (nejlépe asi Windows Application), jděte do Projekt->Vlastnosti projektu->Parametry a do linkeru připište: -lmingw32 -lSDLmain -lSDL. Nyní už jen někde na začátek hlavního cpp souboru připište #include <SDL/SDL.h> a měli byste být připraveni pro psaní aplikace v SDL.

Důležitou věcí je dynamická knihovna SDL.dll. K vývojářským verzím je přibalena u Dev-C++ ve složce bin a u VC++ ve složce lib. Abyste mohli spustit program v SDL, musíte mít tuto knihovnu buď ve složce C:windowssystem32 (Windows NT, 2000 a XP) nebo C:windowssystem (Windows 95, 98, ME), popřípadě ji mít ve stejné složce jako spustitelný program. Takže až budete chtít svůj program v SDL dát na internet, tak k němu nezapomeňte přibalit i SDL.dll.

To je pro dnešek vše. Příště si povíme něco o inicializaci SDL, vytvoření okna a vykreslení jednotlivých pixelů.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
Autor programuje v C++, resp. využívá knihovnu SDL. Sportuje, má rád hudbu a zvířata.

Nové články

Obrázek ke článku JIC otevírá největší digitální dílnu pro veřejnost v České republice

JIC otevírá největší digitální dílnu pro veřejnost v České republice

JIC otevírá první nonstop veřejně dostupnou digitální dílnu světového formátu s vybavením za 3 miliony korun. Dílnu může využívat po registraci kdokoliv. V  prostorách vzniknou prototypy produktů místních startupů, projekty kutilů a studentů i umělecká díla. Cílem dílny je zpřístupnit veřejnosti drahé přístroje a přitáhnout více podnikavých lidí k technickým oborům.

Reklama
Reklama
Obrázek ke článku Nový IT hráč na českém trhu

Nový IT hráč na českém trhu

V roce 2015 otevřela v Praze na Pankráci v budově City Tower své kanceláře společnost EPAM Systems (NYSE:EPAM), jejíž centrála se nachází v USA. Společnost byla založená v roce 1993 a od té doby prošla velkým vývojem a stále roste.

Obrázek ke článku České Radiokomunikace opět hledají nejlepší nápady pro internet věcí

České Radiokomunikace opět hledají nejlepší nápady pro internet věcí

České Radiokomunikace (CRA) pořádají druhý ročník CRA IoT Hackathonů. Zájemci z řad vývojářů a fanoušků moderních technologií mohou změřit své síly a během jediného dne sestrojit co nejzajímavější funkční prototyp zařízení, které bude komunikovat prostřednictvím sítě LoRa. CRA IoT Hackathony se letos uskuteční ve dvou fázích, na jaře a na podzim, v různých městech České republiky. Jarní běh se odstartuje 31. března v Brně a 7. dubna v Praze.

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý