MATURITNÍ PRÁCE dokumentace
3D hra pro Android Petr Dobeš
školní rok: 2012/2013
obor: třída:
Elektronické počítačové systémy PS4B
ABSTRAKT Tato maturitní práce se zabývá tvorbou hry Akarun, která je určena pro mobilní operační systém Android vyvíjený společností Google. Během vývoje bylo nutno vyuţít různých technologií a postupů. Tyto postupy jsou podrobněji představeny a popsány v dokumentaci. Práce se také snaţí ukázat, jaká úskalí se mohou objevit během tvorby podobných aplikací. Práce také seznamuje se způsoby a průběhem testování aplikací pro zvolenou platformu.
OBSAH Úvod .................................................................................................................................................... 6 1
2
3
4
5
Cíle práce.................................................................................................................................... 7 1.1
Tvorba herní aplikace zaloţené na vhodném 3D enginu .................................................. 7
1.2
Tvorba potřebných textur pro kostky pouţité v levelu ..................................................... 7
1.3
Tvorba několika herních levelů ........................................................................................ 7
1.4
Kontrola dokončení levelů ................................................................................................ 7
1.5
Generování seznamu levelů .............................................................................................. 7
Výběr technologií pro řešení ...................................................................................................... 8 2.1
Programovací jazyk .......................................................................................................... 8
2.2
Vývojové prostředí ........................................................................................................... 8
2.3
Nástroje pro úpravu grafický prvků .................................................................................. 9
2.4
3D grafická knihovna ..................................................................................................... 11
2.5
Nástroje pro testování ..................................................................................................... 11
Způsoby řešení a pouţité postupy ............................................................................................ 12 3.1
Návrh struktury aplikace................................................................................................. 12
3.2
Tvorba struktury ............................................................................................................. 14
3.3
Návrh úrovní ................................................................................................................... 15
3.4
Testování a optimalizace ................................................................................................ 16
Příručka uţivatele ..................................................................................................................... 17 4.1
Poţadavky na zařízení .................................................................................................... 17
4.2
Základní menu ................................................................................................................ 17
4.3
Obrazovka herní úrovně ................................................................................................. 19
Shrnutí ...................................................................................................................................... 22
SEZNAM POUŢITÝCH INFORMAČNÍCH ZDROJŮ................................................................... 23 SEZNAM POUŢITÝCH SYMBOLŮ A ZKRATEK ....................................................................... 24 SEZNAM OBRÁZKŮ ...................................................................................................................... 25 SEZNAM PŘÍLOH ........................................................................................................................... 26
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
6
Úvod Operační systém Android je v současné době nejrozšířenějším operačním systémem v mobilních telefonech, a proto je výhodné dozvědět se více o jeho moţnostech a způsobech vývoje aplikací. Díky nativní implementaci Open GL nabízí Android dostatek výkonných prostředků pro tvorbu her a grafických animací. S rostoucím výkonem současných mobilních telefonů se otevírají nové moţnosti toho, co můţeme pro tuto platformu tvořit. Cílem hry Akarun je předvést, jakým způsobem probíhá vývoj grafických aplikací. V této dokumentaci bude předveden původní návrh celé aplikace a také jeho postupné úpravy, vývoj a ladění. Dokumentace také nastiňuje funkce jednotlivých tříd, které byly v závislosti na návrhu vytvořeny.
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
7
1 Cíle práce 1.1 Tvorba herní aplikace založené na vhodném 3D enginu Je třeba najít dostupné 3D knihovny pro systém Android, seznámit se s nimi a vybrat z nich vhodnou variantu. Dále je nutné na základě této knihovny navrhnout strukturu aplikace tak, aby v ní bylo moţno snadno provádět úpravy a importovat herní úrovně.
1.2 Tvorba potřebných textur pro kostky použité v levelu Je nutno vytvořit textury nebo jejich části, které budou v herní logice seskládány dohromady tak, aby vzhled výsledného 3D modelu odpovídal poţadovanému stavu.
1.3 Tvorba několika herních levelů Aby byly prezentovány všechny aspekty aplikace, je třeba také vytvořit několik herních úrovní. Ty by mělo být moţné načítat z dokumentů ve formě čitelné pro programátora.
1.4 Kontrola dokončení levelů Je třeba vytvořit vhodný systém pro kontrolu vyřešení jednotlivých herních úrovní. Jde o způsob reprezentace současného stavu barev na jednotlivých kostkách a jejich porovnávání.
1.5 Generování seznamu levelů Aby hra byla snadno rozšiřitelná, je nutno zařídit, aby byla v menu generována tlačítka pro spouštění levelů na základě souborů s levely, které jsou umístěny v příslušném adresáři projektu.
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
8
2 Výběr technologií pro řešení 2.1 Programovací jazyk Programovací jazyk byl předem určen zvolenou platformou, která implicitně vyţaduje pouţití jazyka Java. Pro ukládání informací o jednotlivých herních úrovních byl zvolen oblíbený jazyk XML. Tento jazyk byl zvolen z důvodu snadné parsovatelnosti knihovnami obsaţenými v operačním systému Android.
Výhodou jazyka XML je také snadná čitelnost
programátorem a přehledná struktura. Java je interpretovaný, a aţ na výjimku osmi primitivních datových typů, striktně objektově orientovaný programovací jazyk. Disponuje především vysokou přenositelností. Toho je docíleno tím, ţe jazyk není přímo kompilovaný, ale o jeho interpretaci se stará Java virtual machine běţící na dané architektuře. Jeho jednotlivé odnoţe lze nalézt na všech typech zařízení. [1] XML je značkovací jazyk vytvořený konsorciem W3C. Mnoho programovacích jazyků (včetně Javy) usnadňuje jeho zpracování pouţitím nativních knihoven. Pro reprezentaci struktury dat pouţívá jazyk XML vlastní značky. XML je výhradně textový, a lze jej tak upravit v libovolném textovém editoru. [2]
2.2 Vývojové prostředí Pro samotné psaní kódu, kompilaci a ladění bylo pouţito vývojové prostředí Eclipse s doplňkem Android SDK. Tento doplněk je pro Eclipse velmi dobře optimalizován. Společně tak nabízí ucelený nástroj pro kompletní vývoj aplikací. Další výhodou je, ţe prostředí Eclipse i doplněk Android SDK jsou zdarma. Samotné prostředí Eclipse (Obr. č. 1) je napsáno v jazyce Java. Z tohoto faktu vyplývá nativní podpora jazyka Java. Lze v něm však bez problémů pracovat i s jinými technologiemi. Ke staţení je také velmi široká nabídka plug-inů (mezi jinými i plug-in ADT, který dodává nástroje pro práci s projekty pod systémem Android). Pro kaţdý projekt se pouţívá takzvaný workspace (pracovní prostředí), ve kterém je teprve zaloţen daný projekt.[3]
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
9
Obr. č. 1: Vývojové prostředí Eclipse
2.3 Nástroje pro úpravu grafický prvků Úprava 3D modelu byla provedena v programu Blender. Ten byl zvolen pro svou dostupnost. Z mého pohledu však nabízí velmi sloţité a pro začátečníky nepřívětivé prostředí. Pro účely vytváření hry Akarun byl však dostačující a pouţitelný. Blender je 3D modelovací a animační software. Je vyvíjen pod licencí Open source, a tak si můţe jeho zdrojové kódy prohlédnout prakticky kaţdý. Na internetu je k dispozici řada doplňků přidávajících či upravujících některé funkce tohoto nástroje. I v základu však nabízí velmi netradiční funkce, jako je např. tvorbu interaktivních aplikací. Je tak moţno vytvořit hru v samotném prostředí programu Blender. [4]
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
10
Obr. č. 2: Vývojový nástroj Blender
Grafika pro menu a textury byla upravována v programu Adobe Photoshop CS2. Ten je v současné době zdarma a nabízí špičkové nástroje pro úpravu grafiky. Jde asi o nejznámější editor grafiky vůbec. Kromě spousty dostupných plug-inů nabízí sám o sobě sadu filtrů pro velmi pokročilé úpravy obrázků.
Obr. č. 3: Adobe Photoshop CS2 [7]
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
11
2.4 3D grafická knihovna Volba 3D grafické knihovny byla poněkud náročnější. Existuje hned několik frameworků, ze kterých bylo moţno vybírat. Jako jeden z testovaných, stojí za zmínku Min3D, který je poměrně jednoduchý na pouţití. Obsahuje však chyby v otáčení objektů a pouţití světel ve scéně. Autor tohoto frameworku vydal před nedávnem jeho nástupce s názvem Rajawali. Ten přicházel také v úvahu, ale protoţe vyţaduje hardwarovou podporu Open GL 2.0, nebylo by jej moţné testovat na mobilním telefonu, který byl k dispozici. Z výběru vyšel vítězně enigne jPCT-AE, který je mobilní verzí Java enginu jPCT vytvořeného Egonem Olsonem. Engine jPCT nabízí velmi příjemnou a jednoduchou implementaci. Jeho pouţití je velmi intuitivní. Navíc na oficiálním fóru existuje aktivní komunita, na kterou se lze v případě nějakých problémů obrátit.
2.5 Nástroje pro testování K testování aplikace byl pouţit mobilní telefon Sony Ericsson Xperia X10 mini. Byla zde i moţnost pouţití emulátoru vyvíjeného společností Google. Ten je však velmi pomalý a pro testování náročnějších aplikací jako jsou 3D hry je v podstatě nepouţitelný. Po nainstalování potřebných ovladačů k telefonu, je moţné spouštět kompilaci a sestavení v prostředí Eclipse a toto prostředí jiţ samo nainstaluje a spustí aplikaci na připojeném telefonu. Doplněk Android SDK navíc nabízí nástroj LogCat, který se dá pouţít pro analýzu výstupních logovacích souborů telefonu.
Obr. č. 4: Sony Ericsson Xperia X10 mini [5]
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
12
3 Způsoby řešení a použité postupy 3.1 Návrh struktury aplikace Základem kaţdého projektu je prvotní detailní návrh řešení. Tento návrh zkrátí celkový čas tvorby, protoţe není třeba vymýšlet nové způsoby řešení během vývoje. 3.1.1 Obecná struktura aplikace pro Android Jako první v pořadí bylo nutno seznámit se se základní strukturou aplikace pro Android. Jde především o pouţívání tzv. aktivit. Aktivita zastřešuje vţdy jednu část aplikace. Zabezpečuje zobrazení obsahu a další funkce potřebné pro běh aplikace. Zjednodušeně lze říct, ţe pro kaţdé okno aplikace se vytváří jedna aktivita.
Obr. č. 5: Ţivotní cyklus aktivity [6]
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
13
Android vyţaduje striktní pravidla pro umístění souborů v projektu. Zde je uvedeno několik nejdůleţitějších adresářů. Src – obsahuje všechny kompilované zdrojové kódy Gen – nebývá programátorem přímo ovlivňován, obsahuje třídy generované doplňkem Android SDK (např. pro odkazování na zdroje - „resources“ pouţívané v projektu) Libs – obsahuje pouţité knihovny, zde je například vloţena knihovna jPCT-AE Res – obsahuje podadresáře pro jednotlivé typy zdrojových souborů (obrázky, zvukové soubory, XML dokumenty apod. 3.1.2 Návrh modelu pro Akarun V dalším kroku bylo třeba navrhnout strukturu programu tak, aby dbala "dobrých zvyků" OOP (objektově orientovaného programování) a podporovala přehlednost. Při návrhu se počítalo s těmito třídami: Qbe.java Game.java LevelParser.java Objekt.java TextureGenerator.java Preference.java Qbe.java Jedná se o úvodní aktivitu obsahující zobrazení loga, menu, výběru úrovně a návodu pro hru. Game.java Je to aktivita se samotnou hrou implementující knihovnu jPCT-AE. Vyuţívá ostatní třídy pro zajištění běhu herní logiky. LevelParser.java Tato třída slouţí pro načtení úrovně z XML souborů. Třída tyto soubory prochází a z jejich obsahu vytváří potřebné objekty. Pro generování textur vyuţívá třídy TextureGenerator.
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
14
Objekt.java Třída Objekt reprezentuje jeden herní objekt ve hře – tedy např. jednu otočnou kostku. Definuje metody pro animace otáčení a celkově všechny vlastnosti objektů (např. velikost, barvy stran, rychlost animace apod.). TextureGenerator.java Tato třída generuje texturu a tu ukládá do TextureManager enginu jPCT-AE. Všechny textury v úrovni jsou popsány 8-znakovým kódem, kde první znak označuje tvar textury (C značí krychli). Dalších 6 znaků popisuje barvy (např. r značí červenou barvu) jednotlivých stran v předem určeném pořadí. Poslední 8. znak určuje, zda má být textura pro otočitelný objekt či nikoliv (neotočitelné objekty jsou označené černou tečkou na kaţdé straně). Preference.java Třída Preference definuje metody pro načítání a ukládání hodnot do sdílených preferencí nabízených systémem Android. Ty zůstávají nezměněny i po ukončení aplikace či vypnutí telefonu, a proto jsou vhodné pro uloţení informací o současném stavu vyřešených úrovní.
3.2 Tvorba struktury Postupně byly vytvořeny navrţené třídy a implementovány jejich vlastnosti a metody. Návrh však nepočítal s některými dalšími aspekty hry, a proto musely být vytvořeny ještě další pomocné třídy. Jedná se o tyto: CamSetting.java CubeUtils.java ObjectInfo.java SideMatch.java CamSetting.java Tato třída slouţí pro předávání informací o nastavení kamery z XML souboru dané herní úrovně. CubeUtils.java Toto je třída obsahující pomocné funkce, které by logicky nepatřily do jiných tříd. Jde např. o metodu pro samotné načítání 3D modelu ze souboru ve formátu 3DS.
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
15
ObjectInfo.java Třída ObjectInfo slouţí pouze pro uchovávání jedinečného ID herního objektu. Byla potřeba pro identifikaci objektu při dotyku na obrazovku. SideMatch.java Tato třída je pouţita k uchování informací o jednotlivých párech stran objektů, které musí mít pro správné řešení úrovně stejnou barvu. V třídě Game.java je pole objektů typu SideMatch, které tak uchovává veškeré informace potřebné pro kontrolu správného vyřešení úrovně.
3.3 Návrh úrovní Po implementaci všech potřebných tříd bylo nutno vytvořit herní úrovně tak, aby byly správně generovány třídou LevelParser. Jako nejlepší způsob se ukázalo nakreslit nejprve úroveň na čtverečkovaný papír s rozepsáním barev jednotlivých stran, poté vypsat páry stran se stejnými barvami a informace o polohách objektů. Na závěr bylo nutné přepsat tento výpis do souboru ve formátu XML. V době psaní této dokumentace bylo vytvořeno a odzkoušeno 14 herních úrovní s různou obtíţností a celkovou dobou řešení okolo 40 minut.
Obr. č. 6: Ukázka rozkreslené úrovně na papíře
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
16
Zde je ukázka reprezentace jedné kostky v herní úrovni, která je popsána pomocí jazyka XML.
3.4 Testování a optimalizace Během testování se ukázalo jako velmi výhodné pouţívat logovací třídu Log v základu nabízenou operačním systémem Android. Pokud je na mobilním telefonu povoleno ladění aplikací, tak při připojení zařízení k počítači lze číst log v okně nástroje LogCat dodávaného s Android SDK. Především díky tomu byly vyřešeny chyby způsobující pády aplikace, či její nesprávnou funkčnost. Logování počtu vykreslených rámců za vteřinu ukázalo, ţe aplikace je schopna velmi plynule běţet i na starších zařízeních. Na testovacím telefonu Sony Ericsson X10 mini, který navíc obsahuje poměrně nevýkonný grafický procesor Adreno 200, se podařilo dosáhnout aţ 70 vykreslených rámců za vteřinu. Velmi výraznou optimalizací bylo načítání pouze jednoho modelu kostky a jeho klonování.
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
17
4 Příručka uživatele Pro uţívání aplikace nejsou vyţadovány ţádné výjimečné znalosti či dovednosti. Zde jsou popsány základní aspekty hry z uţivatelského hlediska.
4.1 Požadavky na zařízení Aplikace vyţaduje pro správnou funkčnost zařízení s operačním systémem Android ve verzi 2.1 nebo vyšší. Výkonem hardwaru zařízení není ani u starších mobilních telefonů hra limitována.
4.2 Základní menu Základní obrazovka hry Akarun (viz obr. č.7) obsahuje 3 základní tlačítka.
Obr. č. 7: Základní menu 4.2.1 Tlačítko Continue Stisk tohoto tlačítka vyvolá poslední nevyřešenou herní úroveň. V případě, ţe jsou jiţ vyřešeny všechny úrovně, vyvolává poslední úroveň. 4.2.2 Tlačítko Select Level Toto tlačítko slouţí k vyvolání submenu pro výběr herní úrovně. Pro návrat do hlavního menu lze pouţít hardwarové tlačítko zpět. Výpis úrovní (viz obr. č. 8) je realizován jako seznam čísel. Úrovně nejsou řazeny podle obtíţnosti.
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
18
Obr. č. 8: Menu s výběrem levelů Stiskem některého tlačítka s číslem se zobrazí jiţ samotná obrazovka s herní úrovní. Tmavým podbarvením jsou označeny úrovně, které ještě není moţné hrát, protoţe nebyla vyřešena úroveň před nimi. Aby tedy bylo moţné hrát např. úroveň 14 je nutno vyřešit všech 13 předešlých úrovní. 4.2.3 Tlačítko How to play Po stisku tohoto tlačítka jsou zobrazena pravidla (viz obr. č. 9) pro hraní hry. Pro návrat do hlavního menu lze opět pouţít hardwarové tlačítko zpět.
Obr. č. 9: Výpis pravidel hry Mezi pravidla hry jsou také pro názornost zařazeny obrázky (viz. obr. č. 10) demonstrující stav, ve kterém je úroveň vyřešena.
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
19
Obr. č. 10: Ukázka řešení ve výpisu pravidel hry
4.3 Obrazovka herní úrovně Ihned po vyvolání obrazovky s herní úrovní je zobrazena obrazovka s nápisem „Loading“ oznamující načítání úrovně. To by nemělo trvat déle neţ několik vteřin. Poté se jiţ zobrazí samotná herní úroveň tvořená kostkami.
Obr. č. 11: Ukázka herní úrovně č. 10
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
20
Obr. č. 12: Ukázka úrovně č. 3 4.3.1 Ovládání Pro řešení herní úrovně se pouţívá výhradně dotykové obrazovky. Pouze k návratu na předešlou obrazovku lze pouţít hardwarové tlačítko zpět. Posunem prstu po obrazovce se otáčí kamera kolem středu úrovně ve směru posunutí prstu. Otočení je v ose Y limitováno tak, aby nedošlo k otočení vzhůru nohama a zmatení uţivatele.
Obr. č. 13: Znázornění otáčení kamery
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
21
Dotykem na některou z kostek, která není označena černou tečkou, ji otočíme ve směru znázorněným šipkou, která je umístěna na jedné ze stran. 4.3.2 Cíl a pravidla hry Hra je volně inspirována tradiční Rubikovou kostkou. Cílem je dosáhnout stavu, kdy všechny páry stran 2 různých kostek, které sdílejí hranu, mají stejnou barvu. Většinu kostek lze otáčet ve směru označeném šipkou na 2 protilehlých stranách kostky. Otáčení se provádí dotykem na kostku. Přejetím prstu po displeji ve hře lze otáčet kamerou kolem středu úrovně. Tím, ţe jedna kostka sdílí hrany s dalšími, je docíleno náročnosti jednotlivých úrovní na logické uvaţování hráče a jeho představivost. Ne všechny kostky lze otáčet. Kostky, které nelze otáčet, jsou označeny tečkou uprostřed kaţdé strany. Kromě barev a šipek můţe být ještě strana označena jako tzv. „ţolík“, který stejně jako šipky můţe mít vedle sebe jakoukoliv barvu. Ţolík (viz kostka označená tečkou v levé polovině obrázku č. 13) paradoxně činí řešení úrovně většinou těţší.
Obr. č. 12: Ukázka nevyřešené a vyřešené herní úrovně
Obr. č. 13: Ukázka vyřešené herní úrovně
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
22
5 Shrnutí Volba knihovny jPCT-AE se nakonec ukázala jako výhodná díky snadné pouţitelnosti tohoto engine. Návrh herní logiky a její implementace byl dokončen v plném rozsahu. Tvorba textur byla díky generátoru textur velmi zjednodušena a stačilo tedy pouze vytvořit speciální části textur (např. šipky, tečky, apod.). Levelů bylo nakonec vytvořeno 14, coţ plně dostačuje pro vyzkoušení funkčnosti aplikace. Hra Akarun nabízí přibliţně 40 minut zábavy. Tedy alespoň pro ty, které tento druh her baví. Tvorba rozšířila mé znalosti především v oblastech návrhu objektově orientovaných řešení vývoje aplikací pro operační systém Android a pouţívání 3D grafických knihoven. Během vývoje aplikace se vyskytl nespočet problémů, které bylo třeba vyřešit. Šlo především o problémy spojené s pro mne nezvyklým a neočekáváním chováním aktivit systému Android. Největší část projektu byla vypracována ve volném čase během měsíce září. Později se jednalo spíše o drobné úpravy a návrh úrovní, který zabral aţ překvapivě mnoho času. Aplikaci by určitě prospělo větší mnoţství herních úrovní. Přidání nových herních elementů by mohlo jednotlivé úrovně ozvláštnit. V poslední verzi hry ještě chybí jakékoliv zvuky či hudba na pozadí, se kterými se však v počátečním návrhu nepočítalo. Po té by se dalo uvaţovat o sdílení hry na databází softwaru Google Play.
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
23
SEZNAM POUŽITÝCH INFORMAČNÍCH ZDROJŮ [1] Java
(programovací
jazyk)
[online].
2013
[cit.
2013-02-03].
Dostupné
z:
Dostupné
z:
http://cs.wikipedia.org/wiki/Java_(programovac%C3%AD_jazyk) [2] Extensible
Markup
Language
[online].
2013
[cit.
2013-02-03].
http://cs.wikipedia.org/wiki/Extensible_Markup_Language [3] Nejlepší nástroje na programování v Javě [online]. 2013 [cit. 2013-02-03]. Dostupné z: http://computerworld.cz/vyvoj/nejlepsi-nastroje-na-programovani-v-jave-42939 [4] Blender [online]. 2013 [cit. 2013-02-03]. Dostupné z: http://www.emag.cz/blender/ [5] Sony
Ericsson
Xperia
X10
[online].
2013
[cit.
2013-02-03].
Dostupné
z:
http://www.gsmarena.com/sony_ericsson_xperia_x10_mini-pictures-3125.php [6] Activity
[online].
2013
[cit.
2013-02-03].
Dostupné
z:
http://developer.android.com/reference/android/app/Activity.html [7] Free Download Adobe Photoshop CS2 for Mac and Windows 8 [online]. 2013 [cit. 201302-06].
Dostupné
z
http://www.wowwindows8.com/free-download-adobe-
photoshop-cs2-for-mac-and-windows-8/
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
SEZNAM POUŽITÝCH SYMBOLŮ A ZKRATEK OOP
Objektově orientované programování.
XML
Extensible Markup Language
ADT
Android Developer Tools.
SDK
Software Development Kit
24
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
25
SEZNAM OBRÁZKŮ Obr. č. 1: Vývojové prostředí Eclipse ........................................................................................ 9 Obr. č. 2: Vývojový nástroj Blender ........................................................................................ 10 Obr. č. 3: Adobe Photoshop CS2 [7] ........................................................................................ 10 Obr. č. 4: Sony Ericsson Xperia X10 mini [5] ......................................................................... 11 Obr. č. 5: Ţivotní cyklus aktivity [6] ........................................................................................ 12 Obr. č. 6: Ukázka rozkreslené úrovně na papíře ...................................................................... 15 Obr. č. 7: Základní menu .......................................................................................................... 17 Obr. č. 8: Menu s výběrem levelů ............................................................................................ 18 Obr. č. 9: Výpis pravidel hry .................................................................................................... 18 Obr. č. 10: Ukázka řešení ve výpisu pravidel hry .................................................................... 19 Obr. č. 11: Ukázka herní úrovně č. 10 ..................................................................................... 19 Obr. č. 12: Ukázka nevyřešené a vyřešené herní úrovně ......................................................... 21 Obr. č. 13: Ukázka vyřešené herní úrovně ............................................................................... 21
Střední škola informatiky, elektrotechniky a řemesel Rožnov pod Radhoštěm
SEZNAM PŘÍLOH Příloha č.1: CD se zdrojovými kódy a dokumentací
26