Herní Framework
Jak si naklonovat a sprovoznit herní framework postavený na knihovnách SDL2. Prozatím je hlavní platforma a a vývojové prostředí Visual Studio, ale CMake by měl umožnit snadné porotvání na další platofrmy a IDE. Vše bude průběžně testováno a řešeno na základě vaší odezvy.
Potřebný SW
Budete potřebovat mít naisntalované tyto nástroje. Vše by mělo stačit v nejnovějších verzích bez značného omezení.
- CMake - Oficiální download stránka - stahujte Windows x64 Installer
CMake
Slouží ke konfiguraci a správě projektu ve smyslu jeho sestavování a distribuci. Na základě konfiguračních souborů nám připraví projekt pro IDE.
Git
Slouží pro správu a verzování zdrojových kódů. Umožňuje nám snadno stáhnout celý zdrojový kód a později ho i updatovat. Další jeho významnou funkcí je kooperace mezi několika vývojáři.
Tutoriál
1) Naklonování zdrojových kódů projektu
- Vytvoříme složku pro náš projekt někde na disku. Například
C:\Programming\MojeHra\
.
- Naklonujeme Gitovský repozitář
- Repozitář se nachází na adrese
https://git.uzlabina.cz/bures/thegametemplate
. - Naklonujeme pomocí následujícího příkazu. Bude třeba se přihlásit svým studentským účtem. Výsledek je patrný na obrázku níže.
git clone https://git.uzlabina.cz/bures/thegametemplate.git Hra
2) Stažení knihoven SDL2 a SDL2_Image
- Dále budeme potřebovat stáhnotu a rozbalit knihovny SDL2 a SDL2_Image. Oboje ve verzi tzv. Development Libraries. Oboje by měli být zip archivy.
- Knihovna SDL2
- Knihovna SDL2_Image
- Oba zipy obsahují složku, kterou umístíme do stejné složky jako Git repozitář z předchozího kroku.
- Ukázky na obrázcích
3) Konfigurace a vytvoření řešení pro VS pomocí nástroje CMake
V tomto kroce předpokládáme, že celý náš projekt leží například v C:\Programming\MojeHra\
- složka z prvního kroku
- Uvnitř našeho repozitáře vytvoříme složku
build
- v tomto příkladě by to byloC:\Programming\MojeHra\Hra\build
- Spustíme program CMake - grafickou verzi
- Položku Where is the source code nastavíme na naklonovaný Git repozitář. V tomto příkladě:
C:\Programming\MojeHra\Hra
- Po opětovném stisknutí Configure by měl být projekt bez chyb.
- Následuje Generate pro vygenerování solution souborů pro visual studio
- Následně můžeme rovnou otevřít VS pomocí tlačítka Open Project
4) Kompilace s puštění projektu
Jakmile se nám projekt otevře ve VS. Je třeba akorát nastavit náš projekt TheGame jako výchozí tím, že na něj v průzkumníku řešení klikneme pravým tlačítkem a vybereme Nastavit jako spouštěný projekt. Projekt lze následně sestavit, spustit a upravovat dle vašich přání.
5) Co dále?
Projekt má nyní 3 hlavní funkce, které stojí za vaší pozornost a kam by jste měli upřít svoji shanu, pokud chcete vytvořit nějaký vlastní gameplay:
void startGame()
- Tato funkce se zavolá před začátkem samotné hryvoid update()
- Tato funkce se volá před každým vykresleným snímkem. Typicky by měla obsahovat herní simulaci - pohyb, kolize, vstup z klávesnice, herní pravidla.void draw()
- Tato funkce se stará o vykreslení každého herního snímku. Zde by jste měli obstarávat vykreslování herních assetů.
ToDo
Seznam toho co Já Buracisko chci a musím předělat vylepšit v rámci další iterace.
- Udělat jeden samostatný projekt, který pojme veškeré závislosti a odpadne tak nutnost managovat knihovny ručně - pravděpodobně vlastní mirror a kompilace v rámci projektu
- Rozdělit frameworkové části kódu do okolních souborů s dokumentovaným API
- Delta time do update/draw funkcí pro precizní pozicování
- Bomberman like ukázkový project.