Hlavní stránka Multimédia Hry a zábava Hrátky s Unreal Engine VII: Klid před bouří
Hrátky s Unreal Engine VII: Klid před bouří
autor: Aleš Ulm , publikováno 17.9.2010
Hrátky s Unreal Engine VII: Klid před bouří

Na konci minulého dílu jsme vás navnadili na pokračování, ve kterém budeme vyrábět vlastní hru. Ještě než s tím začneme, je třeba si ale vysvětlit několik posledních detailů a naučit se pár drobností. Dneska si tedy povíme o dalších zákonitostech týkajících se skriptování a hlavně potom něco o dědičnosti skriptů.


Pokud si i po přečtení předchozí kapitoly pořád ještě chcete zašpinit ruce skriptem, tak se na něj pojďme podívat.

Skripty jsou uloženy v obyčejných textových souborech s koncovkou uc. Nalézt je můžete v různých podadresářích v Development\Src. Když se tam podíváte, uvidíte, že už tam nějaké opravdu jsou. Lépe řečeno – jsou jich tam tisíce (zhruba 2500). Pokud vás napadlo, že je zvláštní, že v editoru stačí kliknout na Play from here nebo nějakou ikonu a hrajete – běháte, skáčete, měníte zbraně, střílíte, zásahy zanechávají stopy, ubývá vám munice atd. atd., pak vězte, že to je díky těmhle skriptům, které jsou normálně součástí hry Unreal Tournament III.

Hrátky s Unreal Engine VII: Klid před bouří

 

Už jsme se bavili o tom, že při práci s UDK nezačínáme vlastně úplně od nuly, protože máme k dispozici modely, textury – zkrátka spoustu assetů z UT3. To samé platí o skriptech. Pokud máte v tuhle chvíli pocit, že by bylo nejlepší existující skripty smazat a začít zcela od nuly, tak bych vás měl nejspíš včas zabrzdit, protože to je opravdu nemoudré rozhodnutí. Plně vás chápu, protože jsem byl ve stejné pozici. Přišlo mi, že se nejlíp s UDK naučím pracovat, když začnu úplně od nuly. Jenže na rozdíl od enginů, kde tohle bylo celkem žádoucí (Vision,Torqu­e,CPAL3D,A6 atp.), je to u UDK příliš komplikované. Předně je provázanost enginu s těmito skripty příliš velká na to, abyste ji byli schopni zcela eliminovat a za druhé by byla věčná škoda nevyužít něco, co vytvářela řada těch nejpovolanějších expertů – lidí z Epicu – řadu měsíců. Proto se tyhle skripty stanou základem, na kterém budeme stavět. Pokud byste měli i tak nutkání jít hlouběji, dělat věci opravdu po svém, tak nezoufejte – jak budeme postupovat, budete mít příležitost tyhle základní skripty rozšiřovat nebo nahrazovat.

Víme, že to, že se můžeme po spuštění hry pohybovat a vůbec dělat nejrůznější skopičiny je dílem těhle skriptů. Jak to ale přesně funguje?

Poznámka: Pokud jste se již setkali s objektově orientovaným programováním a termíny jako třída, dědičnost, funkce atp. jsou pro vás známé věci, můžete klidně následující pasáže přeskočit. V opačném případě se vám je pokusím pomocí lidského slovníku vysvětlit.

Hrátky s Unreal Engine VII: Klid před bouří

Každý skript, resp. každý soubor představuje třídu. Tak a tím se… skoro nic nevysvětlilo, což? Takže co je to ta třída – třída je jeden ze základních pojmů, který když (spolu s dědičností) pochopíte, tak máte z půlky vyhráno. Třída je základní prvek v objektově orientovaném programování (OOP). Pokud netušíte, co tato zkratka znamená, tak to zatím nemusíte řešit, postupně si to objasníme. Třída je jakási forma, či definice objektu, která obsahuje popis jeho vlastností a toho, co objekt „umí“ (mohli bychom se sice trápit se správnými názvy, jako jsou členské proměnné a metody, ale ty necháme programátorům, ne?). Abych vám to ještě více přiblížil, tak si ukážeme poměrně častý příklad.

Řekněme, že máme nějakou třídu Button. Ta nám, jak už název napovídá, definuje tlačítko. Není graficky nijak zajímavé, nemá žádný obrázek, je to prostě jen takové to šedivé tlačítko, které známe z Windows. A protože jsme si řekli, že třída je vlastně taková forma (template), uvnitř ní by bylo napsáno něco ve smyslu „Tohle je třída, která definuje tlačítko. Tlačítko má tyto vlastnosti: pozici x na obrazovce, pozici y na obrazovce, vertikální velikost, horizontální velikost, text popisku. Tlačítko můžeme zmáčknout, můžeme na něj najet myší.“



 
Komentáře naleznete na konci poslední kapitoly.
52 čtenářů navrhlo autorovi prémii: 24.4Kč Prémie tohoto článku jsou již uzavřené, děkujeme za váš zájem.
Tento web používá k poskytování služeb soubory cookie.