České vysoké učení technické v Praze Fakulta informačních technologií Katedra softwarového inženýrství
Bakalářská práce
Problematika vývoje herně-výukové aplikace pro předškolní děti Tomáš Sýkora
Vedoucí práce: Ing. Jiří Hunka
13. května 2014
Poděkování Mé díky patří panu Ing. Jiřímu Hunkovi za věcnost a vřelý přístup při vedení práce, rovněž bych chtěl poděkovat panu Ing. Jiřímu Chludilovi za oponenturu a za inspiraci při hledání tématu. Jsem též vděčný paní Mgr. Simoně Pekárkové, jejíž cenné rady umožnily přesah práce do pedagogicko-psychologické roviny. Při audiovizuálním zpracování herně-výukové aplikace mi podali pomocnou ruku přátelé Adam Dominec, Štěpánka Jislová a Jáchym Sůra, jsem jim za to zavázán. Dále děkuji za spolupráci při uživatelském testování paní ředitelce Haně Hlinkové, všem pedagogům a především milým dětem ze Základní a Mateřské školy Pod Budčí v Zákolanech. Kdybych měl vypovědět, co vše pro mne udělali moji rodiče, text bakalářské práce by překročil veškeré doporučené limity. Vám, maminko a tatínku, ze srdce děkuji za to, že jste tu vždy pro mne.
Prohlášení Prohlašuji, že jsem předloženou práci vypracoval(a) samostatně a že jsem uvedl(a) veškeré použité informační zdroje v souladu s Metodickým pokynem o etické přípravě vysokoškolských závěrečných prací. Beru na vědomí, že se na moji práci vztahují práva a povinnosti vyplývající ze zákona č. 121/2000 Sb., autorského zákona, ve znění pozdějších předpisů, zejména skutečnost, že České vysoké učení technické v Praze má právo na uzavření licenční smlouvy o užití této práce jako školního díla podle § 60 odst. 1 autorského zákona.
V Praze dne 13. května 2014
.....................
České vysoké učení technické v Praze Fakulta informačních technologií c 2014 Tomáš Sýkora. Všechna práva vyhrazena.
Tato práce vznikla jako školní dílo na Českém vysokém učení technickém v Praze, Fakultě informačních technologií. Práce je chráněna právními předpisy a mezinárodními úmluvami o právu autorském a právech souvisejících s právem autorským. K jejímu užití, s výjimkou bezúplatných zákonných licencí, je nezbytný souhlas autora.
Odkaz na tuto práci Sýkora, Tomáš. Problematika vývoje herně-výukové aplikace pro předškolní děti. Bakalářská práce. Praha: České vysoké učení technické v Praze, Fakulta informačních technologií, 2014.
Abstrakt Práce se zaměřuje na to, jak pomocí informačních technologií analyzovat dovednosti předškolních dětí a jak rozvíjet jejich kognitivní funkce. Text obsahuje rozbor her pro malé děti a hledá doporučení pro design videoher zacílených právě na předškolní publikum. Cílem práce bylo navrhnout a implementovat originální výukovou hru na tablet podle požadavků psychologa. Práce též obsahuje popis uživatelského testování aplikace s předškoláky. Klíčová slova Herně-výuková aplikace, vývoj her, předškolní děti, screening školní zralosti, tablet, OS Android, Unity
Abstract The thesis is focused on how to support development of preschool children’s cognitive functions and how to analyze their skills with information technologies. The thesis contains an analysis of games for young children and seeks design suggestions for development of videogames for a young audience. The goal of the work is to design and implement a new educational game for a tablet based on requirements of a psychologist. The thesis also describes user testing of the product aplication with preschool children. ix
Keywords Educational game, game development, preschool, school psychological screening, tablet, OS Android, Unity
x
Obsah Úvod Budoucnost vzdělávání . . . . . . . . . . . . . . . . . . . . . . . . . . Osobní motivace . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Vymezení rolí . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 Analýza problémové domény a požadavků na aplikaci 1.1 Pochopení pedagicko-psychologické problematiky . . . . 1.2 Kognitivní předpoklady pro zahájení školní docházky . . 1.3 Požadavky psycholožky na aplikaci . . . . . . . . . . . . 1.4 Seznam požadavků . . . . . . . . . . . . . . . . . . . . . 1.5 Cíloví uživatelé . . . . . . . . . . . . . . . . . . . . . . .
. . . . .
. . . . .
. . . . .
. . . . .
1 2 2 3 5 5 6 7 8 12
2 Analýza technologických možností 17 2.1 Volba herní platformy . . . . . . . . . . . . . . . . . . . . . . . 17 2.2 Volba technologie k vývoji pro OS Android . . . . . . . . . . . 18 3 Analýza aplikací pro předškolní děti cílených na tablet s OS Android 21 3.1 Úvod analýzy Android aplikací pro předškoláky s důrazem na jejich edukativní charakter . . . . . . . . . . . . . . . . . . . . . 21 3.2 Předpokládané rysy aplikací pro předškoláky . . . . . . . . . . 22 3.3 Výběr hodnocených aplikací . . . . . . . . . . . . . . . . . . . . 22 3.4 Sestavení hodnoticí metodiky . . . . . . . . . . . . . . . . . . . 24 3.5 Rozebrání tří zástupců aplikací pro děti . . . . . . . . . . . . . 25 3.6 Shrnutí výsledků z hodnocení dvaceti jedna aplikací . . . . . . 29 4 Návrh 35 4.1 Metodika vývoje . . . . . . . . . . . . . . . . . . . . . . . . . . 35 4.2 Charakteristika herní aplikace a evaluace hratelnosti . . . . . . 36 4.3 Členění aplikace . . . . . . . . . . . . . . . . . . . . . . . . . . 37 xi
4.4 4.5 4.6 4.7 4.8 4.9 4.10 4.11 4.12 4.13 4.14 4.15 4.16 4.17
Proces vzniku herní myšlenky . . . . . . . . . . . . . . . . . . . Koncept příběhu aplikace Malý princ: Jsem připraven na školu? Hlavní postava . . . . . . . . . . . . . . . . . . . . . . . . . . . Popis her zaměřených na rozvoj kognitivních funkcí . . . . . . . Grafické pojetí aplikace . . . . . . . . . . . . . . . . . . . . . . Audio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Zpětná vazba a motivace . . . . . . . . . . . . . . . . . . . . . . Měření . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Ovládání . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Změna obtížnosti . . . . . . . . . . . . . . . . . . . . . . . . . . Uživatelské rozhraní . . . . . . . . . . . . . . . . . . . . . . . . Vnitřní struktura aplikace . . . . . . . . . . . . . . . . . . . . . Model tříd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Datový model . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 Implementace 5.1 Vývojové prostředí Unity . . . . . . . . . . . . . . . . . 5.2 Programování a skriptování pro Unity . . . . . . . . . . 5.3 Vývoj s Unity pro Android tablet . . . . . . . . . . . . . 5.4 Programování důležitých tříd . . . . . . . . . . . . . . . 5.5 Implementace herní logiky . . . . . . . . . . . . . . . . . 5.6 Audiovizuální zpracování . . . . . . . . . . . . . . . . . . 5.7 Finální fáze implementace před uživatelským testováním
. . . . . . .
. . . . . . .
. . . . . . .
. . . . . . .
38 39 39 39 44 44 45 46 47 47 47 50 50 51 53 53 54 56 57 60 60 63
6 Testování 65 6.1 Návrh uživatelského testování . . . . . . . . . . . . . . . . . . . 65 6.2 Popis průběhu testování v mateřské škole . . . . . . . . . . . . 66 6.3 Srovnávací studie tradičního screeningu školní zralosti a jeho elektronické formy na vybrané podmnožině studijních předpokladů . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 6.4 Úvaha nad výstupy z testování z hlediska herního designera . . 70 Závěr
77
Literatura
79
A Představení psycholožky Mgr. Simony Pekárkové
87
B Strukturované požadavky na aplikaci
89
C Scénář herní části aplikace 93 C.1 Obecné . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 C.2 Lineární příběh . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 D Seznam použitých zkratek
99 xii
E Seznam použité neautorské tvorby
101
F Obsah přiloženého CD
103
xiii
Seznam obrázků 1.1 1.2
Ukázka pracovního listu zaměřeného na předčíselné představy [8] . Diagram případů užití herně-výukové aplikace . . . . . . . . . . . .
14 15
3.1
Jaké dovednosti byly rozvíjeny v testovaných hrách nejčastěji . . .
33
Diagram logických scén . . . . . . . . . . . . . . . . . . . . . . . . Posloupnost příběhových scén . . . . . . . . . . . . . . . . . . . . . Princip hry Polička, úkol Výběr odlišného objektu v řadě . . . . . Hra Vysavač, úkol Lokalizace objektu na základě předložky, možné zadání podúkolu: „Najdi míč mezi lampou a stolem.“ . . . . . . . 4.5 Hra Galerie, ukázka úkolu Řazení obrázků na základě časové posloupnosti . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6 Hra Planetky, úkol Řazení podle zadaného atributu, možná instrukce podúkolu: „Dej věci na planetky podle jejich velikosti, nejmenší na nejmenší planetku atd.“ . . . . . . . . . . . . . . . . . 4.7 Návrh obrazovky pro vytvoření profilu nového dětského hráče (realizováno dospělým) . . . . . . . . . . . . . . . . . . . . . . . . . . 4.8 Rozložení prvků GUI při autentizaci dítěte, svůj profil pozná podle obrázku . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.9 Zobrazení statistik konkrétního hráče, zjištění úrovně jeho vyspělosti v testovaných oblastech . . . . . . . . . . . . . . . . . . . . . 4.10 Diagram tříd - je vidět, že kostrou celé aplikace jsou hry tvořené z úkolů a podúkolů. . . . . . . . . . . . . . . . . . . . . . . . . . .
37 40 41
4.1 4.2 4.3 4.4
xv
42 43
45 49 49 50 51
Seznam tabulek 3.1
Seznam analyzovaných her . . . . . . . . . . . . . . . . . . . . . . .
23
B.1 Přehled požadavků na aplikaci . . . . . . . . . . . . . . . . . . . .
89
xvii
Úvod „Ta rovnice je jednoduchá: vzdělání je naprosto základní pro předcházení problému chudoby. Vzdělání představuje škálu možností. V jakémkoli věku mohou lidé díky vědomostem, dovednostem a nabyté jistotě tvořit svou lepší budoucnost.“ [70] - Irina Bokova, generální ředitelka UNESCO „Během devíti měsíců je jakákoli skupina dětí, které ponecháte, aby si samy hrály s počítačem v libovolném jazyce, schopna dosáhnout stejného standardu práce s PC jako běžná sekretářka na západě.“ [52] - Sugata Mitra, pedagog a inovátor v oblasti vzdělávacích technologií „Používání toho, co držím v ruce, je pozoruhodné. Je daleko intimnější než laptop a dokáže mnohem víc než smartphone díky nádherně velikému displeji.“ [39] - Steve Jobs při představování iPadu v roce 2010 Tři citace na úvod předestřely, čemu se budu věnovat se své práci. Abstraktnější pohled na věc by mohl být, že cílem je rozvoj lidské mysli pomocí informačních technologií. Konktrétně se bude jednat o vytvoření výukové hry na tablet pro předškolní děti ve věku 5-7 let podle odborných psychologických doporučení. Svou práci rozdělím na několik částí podle fází vývoje software. V analýze se budu soustředit na pochopení pedagogicko-psychologické problematiky a na sběr požadavků na zamýšlenou aplikaci. Též představím dostupné vývojové technologie. Důležitou součástí bude zhodnocení vybraných Android aplikací pro děti. Posléze bude následovat návrh vlastní herně-výukové aplikace a to z hlediska uživatele i vývojáře. Uplatním maximum dobrých myšlenek nalezených při rozboru aplikací pro děti. Návrh prokonzultuji s psychologem. Konkrétněji bude design zahrnovat herní koncept, příběh a jeho podrobnější rozpracování. 1
Úvod Dále se budu zabývat audiovizuálním stránkou, ovládáním a zpětnou vazbou pro uživatele. Pro vhled do vnitřní struktury použiji diagramy UML a slovní popis třídního a datového modelu. Navrženou aplikaci implementuji pomocí nástrojů vybraných při analýze. Popíši situace, které budu řešit. Vzniklý produkt otestuji s dětskými uživateli a zhodnotím, jak budou děti hrou zaujaty. Jelikož bude aplikace měřit za běhu data o hráčích, bude mne též zajímat, vypovídají-li zjištěné výsledky o reálných schopnostech dětí. V úvodu se dále pokusím začlenit svou práci do širšího kontextu a seznámím čtenáře se svou výchozí pozicí.
Budoucnost vzdělávání Za hranicemi naší země se již odehrává technologická revoluce ve školství a i u nás ji s očekáváním vyhlíží inovátoři v pedagogice. Momentálně převažující frontální systém výuky (poslouchající žáci, vykládající autorita za katedrou) by se mohl razantně proměnit ve chvíli, kdyby každý z žáků měl k dispozici zařízení připojené na internet a mohl vyhledávat informace ze všech koutů světa. Až s tablety nebo s tím, co přinesou další léta vývoje techniky, bude počítáno v osnovách, umožní to posun k individuálnějšímu vzdělávacímu procesu. Pedagog bude moci zasílat kdykoli elektronické hodnocení a poznámky, zadávat cvičení, která v reálném čase budou opravována. Bude moci předávat teorii díky videolekcím a v hodině se pak věnovat diskuzi, experimentům či potížím konkrétních jednotlivců. Chytré stroje nám na jedné straně umožňují přistupovat k informacím, na druhé velice snadno data sbírají. Díky jejich analýze bude snazší upravovat učební metody a předcházet vzniku obtížných situací. Pokud výsledky studenta ukazují, že to s ním v matematice nevypadá nejlépe, proč se nepodívat na dříve sebrané statistiky a co v podobných případech pomohlo? (Zainteresování rodičů? Pozvolnější probírání látky? Ukázání smyslu předmětu?) Těchto pár odstavců ve zkratce ukazuje, jakým způsobem uvažuji nad možnostmi, které nám poskytuje naše doba.
Osobní motivace Dlouhodobě se věnuji aktivitám se společenským přesahem. Měl jsem možnost vést a podílet se na více neziskových projektech. Navštívil jsem též zahraniční konference zabývající se celosvětovými problémy a budoucí podobou našeho světa1 . Z debat, článků a úvah pro mne vyplynulo, že vzdělání je výchozí bod při řešení většiny potíží. 1
Konference mladých iniciátorů změn One Young World 2012 Pittsburgh, setkání technických inovátorů a příznivců přírodověných oborů Campus Party 2012 Berlín, Campus Party 2013 Londýn, setkání mladých Evropanů ve Štrasburku European Youth Event 2014
2
Vymezení rolí S érou počítačů a s nástupem dalších elektronických zařízení, které nás provází, ať jdeme kamkoli, je podle mého názor na čase, aby se odehrál rovněž posun ve vzdělávání. Vzrůstá penetrace chytrých zařízení, k informacím online se dostávají stamiliony lidí. Podle analýzy BI Intelligence má po přepočítání zařízení per capita každý pátý člověk na světě smartphone [12]. Díky technologiím dochází ke zefektivňování výuky, příkladem mohou být lekce Khanovy akademie [40], videolekce MIT [50] a iniciativy dalších renomovaných univerzit [11]. Jednu nahranou přednášku si pouští statisíce lidí napříč zeměmi. Stejně tak přínosná může být kvalitní výuková aplikace na smartphone nebo tablet.
Vymezení rolí Za vznik herně-výukové aplikace zodpovídám já jako vývojář a herní designer. Veliký vliv na podobu produktu bude mít též psycholožka Mgr. Simona Pekárková, jejíž odborný profil naleznete v příloze A. Kvalifikovaný psychologický názor se promítne do celkového zpracování aplikace, zejména do její edukativní roviny. S Mgr. Pekárkovou spolupracuji již od února 2013, kdy začala naše kooperace na prototypu herně-vzdělávací aplikace Skřítek. Dohromady jsme se studentským vývojářským týmem zkoumali možnosti nových technologií pro rozvoj předškolních dětí. Na těchto zkušenostech také zčásti stavím nynější práci. Text bakalářské práce a stejně tak zdrojové kódy budou mým dílem. Pokud budu užívat cizí dílo - ať už se bude jednat o část programu či o audiovizuální materiály - vždy to explicitně uvedu.
3
Kapitola
Analýza problémové domény a požadavků na aplikaci 1.1 1.1.1
Pochopení pedagicko-psychologické problematiky Školní zralost a vymezení zacílení
„Školní zralost“ je pojem patřící pod sociálně vědní obory. Intuitivně lze jeho výklad chápat tak, že dítě má jít do školy ve chvíli, kdy je na ni připraveno. V pedagogickém slovníku je možné nalézt tuto definici: „V pedagogickopsychologickém pojetí znamená školní zralost stav dítěte projevující se v takové úrovni jeho organismu, která mu umožňuje adaptaci na prostředí školy. Toto pojetí vychází z teorií vývojové psychologie, které vysvětlují, jak dítě dozrává ve své centrální nervové soustavě, ve svých mentálních schopnostech, vnímání, pozornosti, řečových a komunikativních dovednostech.“ [62] Na kolik je dítě vyspělé, je možné nahlížet z více úhlů pohledu. Článek na metodickém portálu [51] zmiňuje tyto čtyři oblasti: 1. tělesný (somatický) vývoj a zdravotní stav 2. úroveň vyspělosti poznávacích (kognitivních) funkcí 3. úroveň práceschopnosti (pracovní předpoklady, návyky) 4. úroveň zralosti osobnosti (emocionálně-sociální zralost) Aplikace zhotovená pro účely screeningu školní zralosti by obtížně zjišťovala objektivní informace například o tělesném vývoji, zdravotním stavu nebo o zralosti osobnosti. Z výše zmíněných oblastí bude ve fokusu mé práce úroveň vyspělosti poznávacích (kognitivních) funkcí, jelikož zkoumání dosažené úrovně u této podčásti screeningu je vhodné ke strojovému zpracování. 5
1
1. Analýza problémové domény a požadavků na aplikaci Při diagnostice v pedagogicko-psychologické poradně se psycholog dozvídá o rozvinutosti poznávacích funkcí tím, že zadá dítěti soubor úkolů. Následně sleduje dítě při práci a analyzuje výsledky. Velký počet cvičení je ve formě pracovního listu. Na obrázku 1.1 je vidět ukázka úlohy, která testuje osvojení pojmu „stejně“. Od papíru, na kterém dítě zakroužkovává, jaká židle je největší nebo jaké zvíře nepatří do akvária, je jen malý krůček k obrazovce tabletu. Ten může vnést do celého procesu oživení a nové možnosti - jako sběr dat od velké škály dětských uživatelů. Netroufám si tvrdit, že elektronické zařízení může nahradit dětského psychologa, jeho léta praxe a studia. Rovněž je třeba uvést, že je diametrálně odlišné být v přítomnosti dítěte a vidět, jak pracuje, oproti zkoumání strohých dat sesbíraných strojově. Vyvíjená aplikace bude obsahovat podmnožinu screeningových testů v příběhovém zpracování. Bude rozvíjet děti u nich doma. Přitom poskytne rodičům informace o vyspělosti jejich dítěte, aniž by pro svůj přehled museli navštěvovat pedagogicko-psychologickou poradnu.
1.2
Kognitivní předpoklady pro zahájení školní docházky
Aby mohl prvňáček překonat bez problémů start ve vzdělávací instituci, měl by mít vyvinuty některé komplexní dovednosti na dostatečné úrovni. Pro vhled do problematiky jsem využil publikaci Diagnostika dítěte předškolního věku [9] od pí Jiřiny Bednařové a pí Vlasty Šmardové. Zde uvádím názvy oddílů, které sdružují vždy určitou škálu předpokladů: • Základní matematické představy • Vnímání prostoru a prostorové představy • Vnímání času • Sluchové vnímání a sluchová paměť • Zrakové vnímání a zraková paměť • Řeč • Vizuotorika, grafomotorika Po konzultaci s Mgr. Pekárkovou jsem se rozhodl zpracovat výsek z diagnostických cvičení, aby měla aplikace přiměřený rozsah. Zahrnul jsem úlohy na prvních pět dovedností z výše uvedeného seznam, proto jsou zvýrazněny tučně. K této volbě mne vedlo studium aktuálně používaných metod pro diagnostiku. Řeč se snáze otestuje tváří v tvář než přes mikrofon tabletu. Při obsluze zařízení s dotykovým displejem by bylo možné zručnost dítěte otestovat. 6
1.3. Požadavky psycholožky na aplikaci Avšak ve škole je vyžadován trochu jiný druh vizuomotoriky a grafomotoriky (například špetkové držení psacího náčiní). Takže testování pohyblivosti ruky na tabletu by nebylo zcela účelné. Mnou konstruovaný screening školní zralosti tudíž nebude všeobjímající, ale bude se soustředit na racionálně vybrané studijní předpoklady.
1.3
Požadavky psycholožky na aplikaci
Kvalitně specifikované a strukturované požadavky klienta na cílový produkt pomáhají k vyjasnění, jak má program vypadat a jak se bude užívat. Požadavky jsem se snažil zachytit podle doporučení z článku Bostonského HubTechInsideru [64], který se odkazuje též na standart IEEE 830. Měly by mít vlastnosti jako je korektnost, jednoznačnost, ohodnotitelnost či verifikovatelnost. Seznam požadavků 1.4 s jejich slovním popisem dále upřesňuje tabulka v příloze B.1. Nyní přiblížím, jak byly procesovány požadavky na výsledný produkt mé bakalářské práce. Na určování zaměření, rozsahu a dalších charakteristik se podílela psycholožka Mgr. Simona Pekárková. Musím podotknout, že náš pracovní vztah nelze definovat čistě jako dodavatel-klient, jelikož formování představy o aplikaci vznikalo společnou diskuzí a oba do budoucna předpokládáme další navazující činnost a kooperaci. Po vytyčení cíle - screening školní zralosti - proběhla speficikace požadavků ve třech kolech. Po každé vzájemné výměně názorů jsem probraná témata strukturovaně zaznamenal. Nejprve byly načtnuty hlavní kontury aplikace cílová platforma tablet, hravé a poučné úkoly provázané příběhem, vše maximálně přístupné dětskému uživateli, měření dat uživatelů při běhu aplikace, ukládání výsledků konkrétních hráčů. V dalších dvou kolech následně proběhla revize již navrženého, byly přidávány detailnější poznámky a zapsán způsob verifikace. Požadavky byly ohodnoceny podle své důležitosti. Pro přehlednost jsem vytvořil tři kategorie: • Nutný - Bez nutného požadavku by výsledná aplikace neplnila správně svůj účel. Mají nejvyšší prioritu. • Chtěný - Finální program by mohl bez chtěného požadavku fungovat. Pokud je však chtěná vlastnost přítomna, bude produkt posuzován jako kvalitnější. • Volitelný - Jedná se o nadstavbu vylepšující aplikaci, má menší prioritu než chtěný požadavek. V příloze k práci uvádím tabulku B.1, kde jsou zaneseny požadavky, jejich typ (tzn. „F“ pro funkční, „N“ pro nefunkční), priorita a způsob verifikace. Pak v sekci 1.4 je k nalezení jejich podrobnější popis. Při zpracování jsme se 7
1. Analýza problémové domény a požadavků na aplikaci s Mgr. Pekárkovou dohodli, že budu mít poněkud volnější ruce během vývoje aplikace. Především mi byl ponechán prostor pro kreativitu, co se týče příběhové a grafické stránky. Předpokládali jsme, že se v průběhu času budou nejvíce měnit. Požadavky pro mne vytvořily dostatečně jasný a přitom flexibilní rámec.
1.4
Seznam požadavků
1. Aplikace jako celek a) Aplikace by měla být dostupná na tabletu Cílovou platformou by mělo být zařízení typu tablet. Z hlediska ovladatelnosti se jedná o přístroj dostatečně přívětivý k dětskému uživateli. 2. Ovládání a) Aplikace by měla být ovládána pomocí dotykové obrazovky (dotek, tažení) V požadavku 1a je pojmenována cílová platforma a to tablet. Tato zařízení jsou ovládána majoritně přes dotykový displej. V tomto požadavku je ještě ovládání upřesněno. Ideální bude používat ovládání nesložitým dotykem (kupříkladu výběr klepnutím na herní objekt), který je dítěti nejbližší. b) Aplikace by se dala ovládat pomocí gyroskopu V případě, že se podaří aplikaci dokončit a bude prostor na vylepšení, mohl by být využit gyroskop na zařízení k další formě oživení aplikace. 3. Rozhraní pro dospělé a) Rozhraní pro dospělé by mohlo být ukryto před dětským uživatelem Dětský uživatel by se neměl dostat do prostředí, kterému „nerozumí“. Měl by se pohybovat v rámci vymezeného rozhraní v aplikaci, tedy by mu neměl být umožněn přístup do rodičovského rozhraní (nastavování, statistiky) a ani mimo aplikaci. b) Mohlo by jít nastavit maximální dobu hraní Aby měl rodič kontrolu nad tím, kolik času jeho dítě tráví u herního zařízení, mělo by jít nastavit, jak dlouho dítě může aplikaci používat. Po uplynutí tohoto limitu by měla aplikace dětskému uživateli dát najevo, že nadále není možné pokračovat. Ideálně tuto informaci sdělit v dostatečně přístupné a pochopitelné formě pro dítě (například se hlavní hrdina unavil, a hraní se tedy odkládá na zítřek). 8
1.4. Seznam požadavků c) V rozhraní pro dospělé by měly být přístupné statistiky hraní jednotlivých uživatelů Jelikož jedním z požadavků je měření uživatelský dat, měl by mít rodič přístup ke statistikám jednotlivých dětských uživatelů. Tato data by mohla být ideálně přehledně vizualizována (například grafem). U statistik je však třeba upozornit, že jejich interpretaci by bylo vhodné přenechat odborníkům (aby na základě svých úvah neučinili opatrovníci dítěte neuvážené rozhodnutí). d) Statistiky by se mohly dát exportovat ve formátu csv Pokud by aplikace byla používána častěji při screeningu předškoláků na více zařízeních, bylo by rozumné mít možnost exportovat data ve stejném strojově zpracovatelném formátu. Nabízí se soubory výsledků zálohovat a rovněž porovnávat hodnoty a podrobovat je analýze. Formát csv byl zvolen pro svou jednoduchost a časté použití. 4. Autentizace a) Měl by jít vytvořit profil pro dětského uživatele Pro sběr herních výsledků napříč delším časovým obdobím by bylo vhodné, aby byly asociovány s konkrétním profilem dětského uživatele. Mimo toho jsou uživatelské účty důležité pro ukládání aktuální pozice ve hře (pokud se předpokládá lineární postup, kdy některé úkoly nemusejí být ještě přístupné, protože nejsou dokončeny předchozí). b) Uživatel by měl být identifikován uživatelským jménem a obrázkem Jedná se o kompromis mezi snadným přístupem a snahou o autentizaci uživatele. „Jméno“ neboli řetězec znaků (nemusí tedy fakticky jít o reálné jméno člověka) je zde především pro dospělé uživatele kvůli rozlišení jednotlivých hráčů. Profilový obrázek by měl sloužit dětem, aby bez problému spustily hru pod svým profilem bez nutnosti znát písmenka. Toto minimum identifikačních údajů může být rozšířeno o větší podrobnosti. c) Dětský uživatel by měl být schopen nesložitého přihlášení výběrem svého profilového obrázku Dítě by mělo být co možná nejsamostatnější při ovládání aplikace. Pro autentizaci bude vybírat, který je jeho profilový obrázek. Obrázek bude zvolen dotykem. d) Mělo by se jít dostat do herní části aplikace bez přihlášení Mělo by být umožněno hru hrát i bez nutnosti se přihlásit. Například, pokud si chce na tabletu zahrát dítě jednorázově, může 9
1. Analýza problémové domény a požadavků na aplikaci mu to dospělý umožnit, aniž by narušil konzistentnost výsledků již zaregistrovaných uživatelů. 5. Herní část - obecně a) Hra by měla být provázana jednotným příběhem Herní objekty, postavy a úkoly by měl pojit dohromady jednotný děj, který zaujme a pomůže dítěti uchopit zadání. Nemusí se jednat o složité vyprávění. b) Dětský uživatel by mohl interagovat s aplikací i mimo osu příběhu (oživující prvky herního světa) Pro podpoření zvídavosti a celkové ozvláštnění prostředí aplikace by bylo vhodné zařadit hravé detaily do virtuální herního světa. Jedná se o neavizované reakce aplikace například na dotek uživatele nebo na jeho nečinnost. c) Hra by mohla být zpracována ve 3D Většina her pro předškolní děti používá živou 2D ilustraci. Cílová aplikace však bude mimo jiné zkoušet, jak se dítě orientuje v prostoru, a z tohoto důvodu je vhodnější 3D herní grafika. Přitom není od věci objekty zobrazovat zjednodušeně, barevně a poutavě. 3D bude též použitelnější pro realističtější příběhové animace. 6. Herní část - úlohy a) Aplikace by měla obsahovat úlohu zaměřenou na screening základních matematických představ Aplikace bude složena z více dílčích her. Jedna z nich bude klást nároky na základní matematické uvažování. Může se jednat o třídění, řazení, porovnávání apod. Úloha nemusí pokrývat veškeré operace či pojmy. b) Aplikace by měla obsahovat úlohu zaměřenou na screening prostorové orientace V rámci screeningu se objeví úkol, kterým se bude zjišťovat zdatnost dítěte orientovat se v prostoru. Jde především o správné chápání pojmů jako „před“, „za“, „v“, „vlevo nahoře“ apod. c) Aplikace by měla obsahovat úlohu zaměřenou na screening časové orientace Mezi úlohami bude zařazen i úkol na orientaci v čase. Dítě by mělo dokázat přiřadit určité činnosti (graficky znázorněné) k danému časovému období (části dne nebo k roku). Může být testováno, zdali dítě dokáže uvést sadu momentů do správné časové posloupnosti (například zasazení semínka, růst, květ, trhání plodů). 10
1.4. Seznam požadavků d) Aplikace by měla obsahovat úlohu zaměřenou na screening sluchového vnímání Úkol zaměřující se na sluchové vnímání by mohl pokrývat schopnost sluchové analýzy slov (například rozdělení na slabiky) nebo schopnost sluchové diferenciace (rozlišení podobných slov, určení, zda se slova rýmují) či sluchovou paměť. Sluch je důležitý smysl z hlediska aplikace, jelikož bude většina instrukcí ve zvukové podobě. e) Aplikace by měla obsahovat úlohu zaměřenou na screening zrakového vnímání Pátým úkolem bude ověřována úroveň zrakového vnímání. To je možno rozčlenit na šiřší spektrum podúloh jako je určování barev, rozlišování figury a pozadí, zraková diferenciace (nalézání odlišností, shodností) nebo zraková paměť. f) Úlohy by měly být vnitřně rozčleněny podle obtížnosti Výsledky dětí při hraní úloh by měly vypovídat, v čem hráč obstojí a v čem už ne. Úroveň obtížnosti by tedy měla začínat dostatečně nízko, aby se zjistilo, jestli dítě vůbec porozumělo zadání. Postupem času, pokud dítě nebude mít potíže, by měla stoupat. Obtížnost nepůjde přepínat, aby se o to uživatel nemusel starat, měla by to řešit vnitřní logika hry. g) Zadávání pravidel úkolu by mělo proběhnout slovně Je počítáno s hráči ve věku 5-7 let, tedy prakticky bez znalosti čtení. Proto by instrukce měly být podávány dostatečně srozumitelnou formou - slovně v českém jazyce. h) Úkol by mohl být předveden animací U her by šlo vždy nejprve ukázat, jakým způsobem jít na řešení úlohy. Tento způsob by byl doprovozen slovním komentářem. Následně by bylo dítě vybídnuto k vlastní aktivitě. i) Během hraní by měla být uživateli dána zpětná vazba na jeho akce zvukem a graficky Důležité je zpravit dětského hráče o jeho výkonech již během jeho činnosti. Cílem je, aby se mohl poučit ze svých chyb a nebo v případě úspěchu, aby byl odměněn uznáním. j) Průchod mezi jednotlivými úkoly by mohl být lineární zpřístupní se další, až když je odehrána předchozí hra; „zpřístupnění“ nebude vázáno na úspěšnost ve hraní Z hlediska screeningu je třeba, aby dítě prošlo postupně všemi podúkoly. Ty budou i částečně vystavěny tak, aby na sebe navazovaly. Jelikož je žádáno otestovat všechny předurčené dovednosti dítěte, nebude postup ve hře odvislý od výsledků malého hráče. Pokud hráč již prošel úkoly, budou mu po spuštění hry zpřístupněny. 11
1. Analýza problémové domény a požadavků na aplikaci 7. Měření za běhu aplikace a) Při běhu aplikace by měl být měřen celkový čas a měl by jít zobrazit v rozhraní pro dospělé Dospělý (majitel tabletu, pravděpodobně opatrovník či rodič) by měl mít kontrolu nad tím, jak je aplikace využívána. Jistě, jelikož on disponuje tabletem, mohl by si o tom vést záznamy, nicméně aplikace samotná mu to může ulehčit sama měřením celkové doby hraní u jednotlivých uživatelů. b) Během hraní konkrétního úkolu by měl být měřen čas, který uživatel potřeboval k jeho dokončení U dětí může být rozdílná rychlost reakce. I to je vypovídající údaj, který - například v následném porovnání mezi hráči - bude mít svou informační hodnotu. Čas bude měřen u každé úlohy a bude poté uložen, aby bylo možné sledovat vývoj hodnoty v čase. c) Během hraní konkrétního úkolu by měla být zjištěna procentuální úspěšnost po každém dokončení Úkoly budou vystavěny takovým způsobem, aby bylo vždy zřejmé, zda-li byl dokončen úspěšně či nikoli. Zároveň budou vnitřně členěny obtížnostně, kdy nejtěžší úroveň bude přibližně odpovídat schopnostem sedmiletého dítěte. Bude se tedy dát vyjádřit procentuálně, jak blízko je hráč k této laťce.
1.5
Cíloví uživatelé
Identifikoval jsem více potenciálních uživatelů aplikace: 1. Dítě 2. Opatrovník dítěte (pro zjednodušení dále uvádím jako „rodič“) 3. Dětský psycholog Z hlediska vývoje jsou pro mne pohledy prvních dvou uživatelů stěžejní. Hra by měla děti bavit, měly by ji chápat a samy ovládat. Dále by je měla rozvíjet a měla by umožňovat měřením dat zjišťovat jejich schopnosti, což je zajímavé pro starostlivé rodiče. Pro děti bude klíčové, aby se nenudily. Proto by měla být cvičení v hrách variována. Uživatel-rodič představuje důležitou zúčastněnou stranu. De facto on rozhoduje, k jakým aplikacím bude mít jeho potomek přístup. Produkt by pro něj měl být lákavý kvůli pozitivnímu dopadu na mysl dítěte. Měl by mu umožnit snadnou změnu nastavení (hlasitost, doba hraní, přepnutí uživatele) a také přehledné zobrazení statistik dětského uživatele. 12
1.5. Cíloví uživatelé V úvahu budu též brát, že aplikaci může využívat psycholog jako pomoc při diagnostikování dětí. Data může sbírat v průběhu času od velkého počtu uživatelů. Bude je chtít vyhodnocovat a porovnávat. Z tohoto důvodu uvažuji o možnosti exportovat data v jasně specifikovaném formátu, do budoucna by bylo užitečné vytvořit možnost síťového spojení aplikace s uložištěm na serveru. Děti budou rády za originálnost her - za rozdílné variace mezi spuštěními. V kontrastu s tím by psycholog potřeboval pro relevantnost porovnání výsledků neměnnou konfiguraci zadání (něco jako „standardizovaný průchod“). Pro mne jsou momentálně důležitější přání početnější skupiny cílového publika tzn. dětí a rodičů. V delším časovém horizontu přesahujícím mou bakalářskou práci plánuji vykalibrovat aplikaci i pro psychology. Jednotlivé případy užití zobrazuje use case diagram 1.2.
13
1. Analýza problémové domény a požadavků na aplikaci
Obrázek 1.1: Ukázka pracovního listu zaměřeného na předčíselné představy [8] 14
1.5. Cíloví uživatelé
Obrázek 1.2: Diagram případů užití herně-výukové aplikace
15
Kapitola
Analýza technologických možností 2.1
Volba herní platformy
V zadání bakalářské práce bylo specifikováno, že by výsledná aplikace měla být implementována na zařízení typu tablet. Odůvodnění jasně spatřuji v tom, že dotyková obrazovka je na ovládání intuitivní, což je pro předškoláky velice vhodné. Display tabletu má dostatečnou úhlopříčku a rozlišení k detailnímu zobrazení herní grafiky. Tablet byl vytvořen pro snadnou manipulaci, přenášení, a rovněž tím vyhovuje výukovým aplikací (v budoucnu bych se nedivil nahrazení klasických těžkých učebnic interaktivními multimediálními materiály [21] na tabletu). Vývojář musí učinit rozhodnutí, pro jaké platformy bude jeho produkt dostupný. Jeho volba by měla být odvislá od vize vyvíjeného programu a také musí vzít v úvahu své možnosti. Pro objektivní posuzování jsem používal volně dostupné statistiky o rozdělení trhu, o složení publika, o množství aplikací a o dalších ukazatelích. Subjektivními faktory ovliňujícími výsledek rozhodovacího procesu byly mé uživatelské a vývojářské zkušenosti s rozdílnými operačními systémy a též cena vývoje. Pro zamýšlenou výukovou aplikaci je stěžejní dostupnost širokému publiku, aby se multiplikoval pozitivní vzdělávací efekt. Proto jsem již od začátku zavrhl slabší hráče mezi operačními systémy pro tablety. Podle dat z ledna 2014 běží na 95% tabletů buď iOS nebo Android [65]. Tím pádem jsem se ostatními, jako je Windows nebo BlackBerry, nezabýval hlouběji. Otázka, zda-li Android nebo iOS, je hodně přetřásána mezi uživateli2 i mezi vývojáři [73]. Hlavní charakteristiky jsou známé - iOS je stabilní, stylový, dražší, se stálou a movitější uživatelskou základnou, tabletů s iOS je přes 70% 2 Za zmíňku stojí článek na Metodickém portálu RVP.cz zajímající se o názory učitelů na iOS a Android [66]
17
2
2. Analýza technologických možností [65]. Pro vývojáře je skvělé, že předem zná cílové rozlišení displeje. Oproti tomu Android je známý svou otevřeností a flexibilitou, množství zařízení sice ztěžuje vývoj (kvůli nárokům na přizpůsobení různým rozlišením), ale činí tablety s Androidem cenově dostupnější. Android se svými 44% jasně vede mezi OS na smartphonech, tabletů s Androidem je 22% procent [65]. Uložiště aplikací u obou platforem praská ve švech - je dostupných kolem milionů programů u Androidu i u iOS [36]. Své dilema jsem vyřešil kompromisem, budu uvažovat o aplikaci pro obě platformy. V sekci 2.2 probírám jednotlivé možnosti vývojových prostředí, objasňuji tam, proč jsem si zvolil herní engine Unity jako nástroj k vývoji. Jedním z důvodů je snadná přenositelnost programu díky multiplatformnímu exportu. Odpověď nemusí mít podobu „buď, anebo“. Pro potřeby bakalářské práce se přikloním k operačnímu systému Android a budu popisovat postup vývoje na této platformě. Činím tak z praktických důvodů, jelikož mám již zkušenost s vývojem pro Android a rovněž jsem dlouho vlastníkem zařízení s Androidem. Vývoj a testování pro mne budou levnější, nebudu-li muset momentálně investovat do produktů firmy Apple. Zároveň bude-li aplikace schopná se přizpůsobit většině obrazovek Androidích zařízení, cesta na displej iPadu nebude tak složitá.
2.2
Volba technologie k vývoji pro OS Android
Ve stručnosti zmíním možné způsoby vývoje herní aplikace na OS Android. Uvedu, jakým způsobem jsem uvažoval. Při vzniku hry je možné využívat herních enginů - množiny předpřipravených řešení častých situací při herním vývoji. Případně se programátor může pustit do tvorby vlastního systému. V pár odstavcích představím herní enginy, se kterými jsem se setkal. Obsáhlejší porovnání je k nalezení na internetu na více stránkách [46][53].
2.2.1
Svépomocí
Nejprve o postupu bez herního enginu - při vlastnoručním vývoji se nejčastěji používá programování v Javě pro Android a grafické knihovny jako OpenGL. Vývojář pak tvoří kódy jednotlivých tříd povětšinou v IDE jako Eclipse a do hloubky vidí do jím vytvořené struktury aplikace. Tím pádem si snadno nastavuje rozsah aplikace a rovněž může optimalizovat rychlost a výkon. Je-li programátor zkušený, nedělá mu problém vyprodukovat aplikaci/hru na míru. Vývoj oproti předpřipraveným řešením může trvat déle, zvlášť při komplexnějších projektech. Klade mnohem větší nároky na vývojáře v oblasti návrhu a též na znalost systému, pro který aplikaci tvoří. 18
2.2. Volba technologie k vývoji pro OS Android
2.2.2
AndEngine
Za zajímavou alternativu k vlastnoručnímu řešení považuji volně šířený 2D herní engine AndEngine Nicolase Gremlicha [1]. Jeho výhodou je přímý přístup ke zdrojovým kódům v Javě, které jsou dobře navrženy pro potřeby herního vývojáře. AndEngine je úsporný, rychlý, snadno modifikovatelný. Soustředí se pouze na 2D a nabízí jednoduchý fyzikální svět. Start vývojáři ztěžuje nedostatek dokumentace, k dispozici jsou pouze příklady [32] (zato pokrývají majoritu fukncionalit). Při dřívějším prototypování na školní projekt jsem AndEngine používal ve spojení s Eclipse a gitem, byl jsem vcelku spokojen. AndEngine míří pouze na platformu Android.
2.2.3
Project Anarchy
Slibný, relativně nový herní engine dedikovaný pro mobilní platformy včetně iOS a Android byl představen v létě 2013. Je postavený na proslaveném herním enginu Havok (The Elder Scrolls IV: Oblivion, Half-Life 2, Halo 3, Assassin’s Creed a mnoho dalších legendárních herních titulů). Project Anarchy je k dispozici zdarma. To jej činí rázem velice dobrou možností pro start vývoje kvalitních her s propracovanou fyzikou a umělou inteligencí. Vývojář pracuje v editoru od Project Anarchy a může též těžit z WYSIWYG prostředí pro tvorbu animací [61]. Vývojář má možnost programovat v C++, scripty lze psát jazykem Lua. S enginem nemám bližší zkušenost, jelikož je na scéně kratší dobu (než podobně propracovaný Unity), není k dispozici rozsáhlá dokumentace a ani uživatelská základna, která pomáhá často řešit potíže při vývoji.
2.2.4
Unity
Unity jsem si nechal na závěr představení enginů, abych jej mohl srovnat s dříve představenými a objasnit, proč jsem si jej zvolil jako vývojový nástroj. Unity je 3D, profesionální, robustní, multiplatformní herní engine, který řeší herní fyziku, animace, zvuky, renderování [71] - zkrátka většinu problémů herního vývojáře. Není pouze pro mobilní platformy jako iOS, Android nebo BlackBerry, je možné hry exportovat též na stolní počítače s Windows, Linuxem nebo OS X. Podporuje též vývoj pro Play Station 3, Xbox 360 nebo pro webové prohlížeče. Toto z něj činí silný nástroj pro vývojářská studia, která chystají vydání napříč platformami. Pro menší firmy či jednotlivce je k dispozici verze zdarma, která neobsahuje určitá vylepšení, omezením pro vydání her z verze zdarma je roční obrat společnosti - nesmí přesáhnout sto tisíc dolarů. Unity Pro je možné pořídit za patnáct set dolarů nebo platit měsíční paušál 75$ [44]. Pro mé potřeby bude zcela dostačující Unity Free. Díky fungování již od roku 2005 má Unity velkou uživatelskou základnu, která je aktivní na vývojářském fóru. kromě cenných rad zkušenějších uživatelů člověk nalézá pomoc v kvalitně zpracované dokumentaci, v návodech 19
2. Analýza technologických možností a ve videotutoriálech [43]. Může si vybrat scriptovací jazyk - C#, upravený JavaScript nebo exotičtější jazyk Boo. Dále by se mohl hodit (mimo rámec bakalářské práce) přístup k volně šířeným či zakoupitelným „assetům“ na AssetStore. Takto se lze dostat například k zajímavý časticovým efektům jako je déšť či kouř, nebo k shaderům ovlivňujícím vykreslování grafiky a k dalším komponentám, aniž by je vývojář musel tvořit. Unity si mne získal snadností použití. Přehledný editor a řada návodů umožňují rychlý začátek. Ze studovaných předmětů na FIT ČVUT jsem měl dobrou oporu v objektově orientovaném programování v C++, takže jsem zvolil jako scriptovací jazyk C#, který rovněž vychází ze syntaxe procedurálního jazyka C. Detailněji jsem se s prostředím Unity seznámil ve školním předmětu Počítačové hry a animace učeném na FEL ČVUT předními odborníky z herního průmyslu. Více prostoru vývoji pod Unity věnuji v kapitole Implementace.
20
Kapitola
Analýza aplikací pro předškolní děti cílených na tablet s OS Android „Mám tříletou dceru a musím říct, že mám pro malou v telefonu víc her než pro sebe :). Když jdeme všichni například na večeři, dám jí telefon a mám minimálně 30 minut naprostý klid.“ [67] - komentář uživatele Thomas ke článku na Světě Androida3
3.1
Úvod analýzy Android aplikací pro předškoláky s důrazem na jejich edukativní charakter
Pro získání představy o aktuálních aplikacích pro předškoláky na Google Play [31], uložišti pro Android, otestuji několik vybraných her a pokusím se je ohodnotit z více rozličných perspektiv. Zaměřím se především na jejich hratelnost a zároveň na jejich potenciál rozvíjet dětskou mysl. Obojí je klíčové pro mou další práci. Mohu poté vycházet z dobrých příkladů při návrhu vlastní herně-edukativní aplikace. Zároveň zjistím, jaká oblast k procvičování ještě není zcela pokryta (a tedy kde by moje práce mohla být přínosná). V této části textu nejprve uvedu kritéria pro výběr hodnocených aplikací, pak přiblížím hodnotící metodiku. Na závěr bych rád shrnul signifikantní rysy aplikací a poukázal na zajímavé nápady. 3
Citát neodráží můj postoj k výchově dětí. Pouze ilustruje fakt, že čím dál menší děti se dostávají k elektronice. Motivace rodičů může být různorodá, za sebe budu rád, pokud hry budou děti nejen „zaměstnávat“, ale i učit.
21
3
3. Analýza aplikací pro předškolní děti cílených na tablet s OS Android
3.2
Předpokládané rysy aplikací pro předškoláky
Před samotnou kvalifikací her podle vlastní metodiky nastíním, co by podle mne měla obsahovat aplikace pro uživatele do 7 let. Vnější stránka by měla být plně přizpůsobena tomu, kdo ji bude používat. U aplikací pro předškoláky můžeme předpokládat, že jistého mediátora bude tvořit rodič či opatrovník dítěte. Ten je nejčastěji vlastníkem tabletu a rovněž stojí za výběrem hry. Jeho cílem může být dítě zabavit, v lepším případě rozvinout jeho schopnosti a dát mu možnost seznámit se s technologiemi. Část ovládacích prvků právě slouží výhradně dospělým - jedná se o nastavování zvuku, ovládání, profilu dítěte etc. Měl by být umožněn rychlý průchod nastavením, aby dítě nemuselo dlouho čekat. Spuštění „rodičovského rozhraní“ by mělo být odstíněno od prostoru, kde se pohybuje v aplikaci dítě. Samotná hra oproti těm určeným starším hráčům by měla podle mne upoutat svou rozmanitostí a měla by být pochopitelná pro nečtenáře. Za výhodu bych pokládal zapracování i jednoduchého příběhu umožňujícího porozumět souvislostem. Ke zvýšení atraktivnosti se nabízí hravá, barevná, kreslená grafika podobná televizním pohádkám. Rozpohybování objektů animací pomůže vtáhnout dítě do děje a podpoří jeho soustředěnost. Důležitou součástí jsou zvuky. Nejen hudba navozující atmosféru, ale i verbální komunikace směrem k dítěti. Opakování slov, vysvětlování zadání, chválení a podpora v další činnosti jsou třeba k motivování malých hráčů. Dítě nemá intuici člověka denně pracujícího s elektronikou. Tím pádem by mu mělo být vše vysvětleno a nejlépe ukázáno. Na nemotornost dětských ruček by měl reagovat design ovládacích prvků a také pravidla her (jednodušší je vybírat dotekem než například předmět zakroužkovat). Chytrý level designer tvoří pro děti hru benevolentní. Úroveň by měla stoupat velmi pozvolna, aby rapidní ztížení neodradilo dítě svou nepřekonatelností. Podle mého názoru záleží na drobných detailech, jestli hra bude dětmi přijata. Jedna animace navíc, která dítku umožní škádlit postavičku hry, může dodat chuť k objevování. Na konkrétních aplikacích se blíže podívám na konstrukce užívané v praxi.
3.3
Výběr hodnocených aplikací
Každý měsíc na Android Marketu přibývají tisíce, někdy i desetitisíce aplikací [3]. K 4. květnu 2014 jich bylo k dispozici 1 203 791. Ne všechny jsou dobré kvality a ne všechny jsou herního typu. Spíš jsem chtěl pro začátek ilustrovat šíři nabídky, ve které se má uživatel Androidu orientovat. Hry představují významný segment, nicméně vývojáři cílí spíš na starší publikum než jsou předškoláci. Pokusil jsem se najít zajímavé hry právě pro cílovou skupinu 2-7 let. Povětšinou jsem vybíral anglofonní hry, jelikož je jich 22
3.3. Výběr hodnocených aplikací hodně a mohu je díky své jazykové výbavě snadno rozebrat. Též mne zajímaly české aplikace, protože svou práci zaměřím na české děti. Při výběru množiny her k ohodnocení jsem bral v potaz: • Uživatelské hodnocení na Google Play • Doporučení • Vlastní uvážení • Počet stažení Selekci provádí samotné vyhledávání Google Play, snaží se najít relevantní výsledky (například podle mnou dříve stažených aplikací). Zároveň se na první stránky řadí dobře hodnocené a frekventovaně stahované hry. Procházel jsem nabídnuté aplikace a zvažoval, které by mohly být hratelné předškoláky (pokud pro ně vyloženě nebyly konstruovány). Další část zařazených her jsem našel přes portály, kde se o doporučení starala redakce stránky například Svět Androida [67] nebo Parent Map [57]. Hodnotil jsem aplikace, které zčásti nebo celé byly k dispozici zdarma. Tabulka 3.1: Seznam analyzovaných her Název 4bambini: Dávej bacha Air Control Angry Birds Cordy Cut the Rope Dopravní výchova Kids Alphabet Kids Connect the Dots Kids Educational Games Kids Math Kids Memory Game Kids preschool puzzle Kids Reading Preschool Kids Shapes (Preschool) Preschool All Words První slova SPB Brain Evolution Výukové kartičky Where’s my water? Yummy Burger Zebra Paint Coloring App
Počet stažení 10 000 - 50 000 10 000 000 - 50 000 000 100 000 000 - 500 000 000 1 000 000 - 5 000 000 10 000 000 - 50 000 000 1000 - 5000 1 000 000 - 5 000 000 1 000 000 - 5 000 000 500 000 - 1000 000 50 000 - 10 0000 1 000 000 - 5 000 000 5 000 000 - 10 000 000 1 000 000 - 5 000 000 1 000 000 - 5 000 000 1 000 000 - 5 000 000 1000 - 5 000 500 000 - 1000 000 10 000 - 50 000 1 000 000 - 5 000 000 1 000 000 - 5 000 000 1 000 000 - 5 000 000
Rating 4 5 5 4 5 5 4 4 4 4 4 5 5 4 4 3 3 5 5 4 4
Jazyk CS, EN CS, EN EN EN EN CS EN EN EN EN EN EN EN EN EN CS, EN CS, EN CS EN EN -
Věk 3-7 7 4-7 5-7 6-7 6-7 5-7 3-7 2-7 3-7 3-7 3-7 2-7 2-7 2-7 3-7 6-7 2-7 6-7 4-7 2-7
23
3. Analýza aplikací pro předškolní děti cílených na tablet s OS Android
3.4
Sestavení hodnoticí metodiky
Metodiku na hodnocení jsem vystavěl tak, aby mi v krátkém časovém období umožnila nazřít aplikace z hlediska oblíbenosti, ovladatelnosti, hratelnosti a edukativnosti. Níže uvádím seznam jednotlivých položek formuláře na hodnocení. Název Oficiální název aplikace Odkaz Profil aplikace na uložišti Google Play Počet stažení Rámcový počet stažení uvedený na Google Play. Hodnocení uživatelů Průměr z „oznámkování“ aplikace, nula hvězdiček nejhorší možné, pět hvězdiček nejlepší. Jazyk Zda-li je aplikace dostupná v češtině, v agličtině nebo v obou jazycích. Stáří dětí Věkové rozmezí omezené shora věkem sedm let. Základní princip Textový popis, kde jsem v několika větách uvedl, na jakých základech hra stojí. Instrukce Aby dětský uživatel pochopil zadání, musí mu být předáno ve správné formě. Rozlišuji mezi zadáním zvukem, animací a textem (což pro nečtenáře očividně není vhodné). Některé hry jsou koncipovány tak, že uživatel má nalézt často triviální zadání sám. Ovládání hry Tablet umožňuje více typů uživatelského vstupu, mezi hlavní patří dotyk, gesta a naklánění. Zpětná vazba pro hráče Každá hra více či méně ukazuje, jak si hráč vede. Pro motivaci dětí je nezřídkakdy nutné povzbuzování během hraní. Pomáhá to zvyšovat koncentraci. A okamžitá zpětná vazba může naučit pro příště, co je špatně a co je dobře. Zpracování Sleduji typ grafického zpracování (statické, dynamické, dynamické se simulovanou fyzikou), přítomnost zvuků a příběhu, autentizaci uživatele a měření jeho výsledků. Zahrnuje úkoly na Tuto kolonku bych označil za jádro analýzy. Obsahuje rozčleněné lidské (dětské) dovednosti, které hry potenciálně mohou rozvíjet. Myšlení je komplexním souborem různých operací, z nich jsem vyčlenil určité skupiny díky knize Diagnostika dítěte předškolního věku [9]. Kupříkladu jsem mohl pozorovat, zda-li má aplikace pozitivní dopad na zrakové vnímání. Nadcelek „Zrakové vnímání“ jsem dále dělil podle toho, jestli se úloha týkala barev, části a celku, figury a pozadí, zrakové 24
3.5. Rozebrání tří zástupců aplikací pro děti paměti nebo vizuálního rozlišení. Známý princip pexesa může cvičit jednak zrakovou paměť a vizuální rozlišení, ale může učit i barvy (pokud je například řečeno, v jaké barvě je obrázek vyveden). V případě puzzle se opět jedná o vizuální rozlišování, k tomu se trénuje skládání částí v celek. Podobně jsem v aplikacích hledal též další oblasti z pohledu psychologie. Jedna hra jich může obsahovat větší počet. Moje budoucí práce by se dala charakterizovat jako screening předškolní zralosti (ne diagnostikování v profesionálním smyslu slova), takže jsem nezacházel (a ze své odbornosti jsem ani nemohl) do přílišné hloubky. Rozpoznával jsem u konkrétních dovedností především jejich hlavní znaky odhalitelné poučeným laikem, drobné nuance nejsou aktuálně podstatné pro výstupy analýzy. Popis případné analýzy Pokud hra obsahovala náznak analýzy hráčových schopností, popsal jsem to blíže v této kolonce. Příběhová linka, zpracování Byla-li hra zasazena do děje, napsal jsem si jeho základní osnovu. Kladné připomínky Okomentoval jsem ze svého hlediska, jaké části aplikace oceňuji. Záporné připomínky Poznačil jsem si, které prvky podle mne nejsou zcela vhodné. Subjektivní zábavnost Vycházím ze své zkušenosti hráče a tvůrce her, někdy též z uživatelského testování s dětmi ve svém okolí. Přídavné jméno „subjektivní“ by mělo evokovat, že škála zábavnosti odráží můj osobní názor.
3.5
Rozebrání tří zástupců aplikací pro děti
Pro lepší uchopení výsledků analýzy přiblížím tři kvalitní hry z celkového počtu jednadvaceti zkoušených. Pokusím se naznačit své úvahy při testování.
3.5.1
Where’s My Water?
Pod nádherně vyvedenou hrou je podepsaná společnost Disney. V propracovanosti hry je vidět investice tohoto zábavního gigantu, s jehož filmy se setká každé dítě. Příběh hlavních hrdinů - krokodýlů ze stoky - propojuje drobnější hry, ve kterých hráč využívá funkcionalitu herního světa, aby splnil zadanou úlohu. Jedná se o obdoby úkolu dodání vody do koupele aligátora Swampyho. Hráč musí „vykopat“ skrz hlínu cestu, kudy má téci voda. Proudem vody se snaží 25
3. Analýza aplikací pro předškolní děti cílených na tablet s OS Android sesbírat kačenky či jiné bonusové tokeny. Stejný princip je dále obohacen o přístroje jako je uzavíratelná přepážka. Hra je ve 2D a její svět má vlastní fyziku - voda a špína teče dolů, pára stoupá. Levely mívají různé varianty (v jedné se sbírají kačenky, v jiné se jim musí voda vyhnout). Nechybí bonusový obsah jako je lovení tajemné kačenky (v originále „Mystery duck“). Nová vylepšení jsou zaváděna s postupem ve hře. Where’s My Water? není dostupná v češtině. • Zábavnost Aplikace je naplněna animacemi a zvuky, které lákají zvídavé hráče. Již v menu jednotlivé obrázky reagují na dotyk - krokodýl se začne ošívat, zvonky zahrají. Každá správná akce je podpořena povzbuzením, na konci úkolu je finální animace a znělka následována vyhodnocením. Jako ocenění se ve hře kumulují kačenky. • Ovladatelnost Z toho, jak je hra vystavěna, je jasné, že cílí výš než na předškolní děti. Menu a poznámky jsou textové. Často animace slouží jako pomůcka při ukazování funkcionality. Nejčastěji se při plnění úkolu používají tahy po displeji, hráč musí být dostatečně zdatný v koordinaci pohybu. Úroveň jednotlivých levelů stoupá vcelku příkře, takže myslím, že i pro děti těsně před školní docházkou může být po pár kolech obtížnost příliš vysoká. Scén s nutností výběru (stisknutí tlačítka) je ve hře velké množství, takže méně zkušený uživatel může mít potíže s orientací co právě zvolit. • Edukativnost Hra trénuje nejvíce jemnou motoriku a vizuomotoriku, jelikož právě na přesnosti navedení tekutiny na dané místo závisí úspěch hráče. Pokud level není zcela triviální, je třeba použít kreativní myšlení, díky kterému se hráči podaří nalézt řešení. V jednom typu levelu obrazovka scrolluje a spolu s tím hráč rozhoduje, kudy vodu nasměruje. To umožňuje procvičit rychlost reakce.
3.5.2
Kids Connect the Dots
Jedná se o hru ze série aplikací pro předškoláky od studia Intellijoy. Při pátrání po aplikacích pro svého potomka narazí na tyto vývojáře jistě mnoho rodičů. Jejich hry jsou velice oblíbené - na stránkách uvádějí přes 25 milionů stáhnutí [38] - i proto je podporuje společnost Google. Intellijoy tvoří graficky čisté a jednotně koncipované aplikace. Podle svých vlastních slov vynechávají veškerou funkcionalitu, která nesouvisí se vzděláváním. Podle mého mínění by nebyla na škodu větší hravost pro vtažení dítěte do hry, avšak vývoj by byl rázem složitější. 26
3.5. Rozebrání tří zástupců aplikací pro děti Connect the Dots neboli propojování teček, umožňuje hráči vytvořit obrys nějakého předmětu (například delfína) postupným spojováním bodů. Po dokončení se silueta změní v barevně vyvedený obrázek. Slova používaná ve hře jsou pouze v angličtině. • Zábavnost Vzhledově jsou obrázky líbivé a děti jistě baví, pokud se před nimi na závěr ilustrace objeví. Jako podklad je vždy použito tematické prostředí pro daný předmět. Hru by podle mne vylepšila vhodná animace, jelikož zatím působí lehce staticky. Důležitým prvkem je skutečně závěrečné odhalení, při kterém je i řečena pochvala a je pojmenováno to, co se dítěti povedlo složit. • Ovladatelnost Navigaci v menu ještě musí vykonat dospělý. Jelikož se jedná jen o jedno tlačítko, rychle se to naučí i malý hráč. Hru je možno ovládat čistě jednotlivými oddělenými dotyky (nejsou třeba tahy, ačkoli to hra nevylučuje). Lze nastavit, jestli hra bude „radit“, v takovém případě se po určité době zabarví následující bod odlišně od ostatních. Pokud dítě zrovna prstem na obrazovce hledá navazující bod, mizí po okrajích ovládací prvky (přepnutí na další obrázek a do menu). • Edukativnost Mimo jemné motoriky a vizuomotoriky se při propojování teček dítě učí písmena nebo čísla (podle nastavení), která jsou vždy nahlas vyřčena. Proto si může propojit například číslo s jeho množstevním významem (čím víc spojených teček, tím větší číslo). Po obtáhnutí obrysu je předmět pojmenován, takže dítěti je navyšována slovní zásoba. Samotné tvoření vazeb mezi tečkami rozvíjí zrakové vnímání, kdy je třeba nalézt následující bod. Zde hraje roli též zraková paměť, kdy si dítě díky předchozím hrám může vybavit, jaké písmeno či číslo je další v pořadí.
3.5.3
4bambini: Dávej bacha
Český zástupce aplikací pro děti nabízí možnost, jak seznámit ratolesti s každodenními nebezpečími. Aplikace v české a anglické verzi vycházející z deskové hry má na Google Play přes 10 000 stažení. Vyvinuta byla společností Inmite [37], která stojí za aplikacemi pro mnoho firem, jako jsou banky nebo mediální domy. Dávej bacha ukazuje na malovaných kartičkách rizika, do kterých se člověk může dostat. Hráč musí najít odpovídající druhý obrázek, jenž vysvětluje, co je špatně nebo jak situaci vyřešit. Pozitivně bych hodnotil, že je počítáno s konkrétními uživateli. Snadno lze vytvořit dítěti nový účet, ke kterému je přiřazeno jméno a charakteristický 27
3. Analýza aplikací pro předškolní děti cílených na tablet s OS Android obrázek. U každého profilu se poté ukládají základní statistiky. Zajímavá je například celková doba strávená hraním a poté počet dokončených her. Výsledky nejdou dále do hloubky, nesledují vývoj dítěte v čase ani poměr úspěchů a neúspěchů (natož aby bylo nabídnuto nějaké doporučení, jak rozvíjet, v čem dítě zaostává).
• Zábavnost Převedení stolní hry do aplikace bylo uděláno velice přímočaře, takže skutečně nacházíme statické kartičky jako z karetního balíčku. Tento nedostatek vyrovnávají ukryté animace. Po doteku na kartičku se její část rozpohybuje (vlak se rozjede, bota se rozhoupe, pes zaštěká). Zobrazované situace jsou poutavé a děti může bavit zkoumat řešení, avšak kartičky v páru mají bohužel v rohu uvedena čísla, takže důvtipní hráči mají úkol zjednodušený. Po vybrání komplementární karty se jasně hráči ukáže, zvolil-li správně. Za korektně dokončené hry dostává dítě diplomy (od bronzového po diamantový podle počtu zodpovězených kartiček). K tomu se odkrývají omalovánky za odměnu a zvyšují chuť ve hře uspět. • Ovladatelnost Ač je v popisu hry deklarováno, že je pro děti 3-7 let, mohla by tomu být daleko víc uzpůsobena. Popis k jednotlivým „nebezpečím“ je textový, což prakticky vylučuje neangažování dospělého. Hlavní menu odpovídá potřebám dětí a sestává se ze tří velkých tlačítek - obrázek, kdo právě hraje, šipky umožňující start hry a poháru, za kterým se ukrývají statistiky, omalovánky a diplomy. Podrobnější menu pro dospělého je nenápadně umístěno v pravém dolním rohu. Veškerá interakce využívá jednorázový dotek uživatele, výběr políčka. I omalovánky se vybarvují klepnutím na danou plochu a ne tahy. • Edukativnost Ze hry čiší, že byla stvořena kvůli osvětě a nedá se jí upřít výchovný dopad v prevenci nehod. Hráč je vybízen k řešení problémů. Dozvídá se nová slova z různorodých prostředí. Oproti dalším hrám zde nalézám též rozvoj orientace v časové souslednosti, jelikož kartičky fungují stylem akce a reakce. Pro představu na kartičce se zadáním je: „Proč se nesmíš vyklánět z okna?“ a správná odpověď vycházející z kauzality zní: „Mohl bych vypadnout a vážně si ublížit.“ 28
3.6. Shrnutí výsledků z hodnocení dvaceti jedna aplikací
3.6
Shrnutí výsledků z hodnocení dvaceti jedna aplikací
Do hodnocených aplikací jsem zahrnul celkem jednadvacet titulů, které tvoří reprezentativní vzorek her stahovaných u nás a v zahraničí. Jelikož se do výběru promítla oblíbenost mezi uživateli, můžeme si všimnout, že od úspěšného studia Intellijoy jsem prošel celkem 8 her. Nezávisle na tom se budu snažit vyhodnotit hlavní rysy testovaných aplikací. Data, ze kterých zde uvádím výstupy, jsou dostupná online4 . V tabulce 3.1 jsem uvedl základní údaje ke hrám. Mimo těch deklarujících své zacílení na děti jsem mezi hodnocené zařadil též populární hry jako Air Control nebo Angry Birds, které uváděli sami rodiče na diskuzních forech, že je jejich děti zvládají. Některé aplikace mají viditelně menší počet stažení, ty jsem zahrnul do analýzy protože mají vztah k české herní scéně. Jednou z nich je hra První slova, která má rovněž nejnižší uživatelský rating. Na té jsem mohl zkoumat přístupy, jakým bych se měl spíš vyhnout ve vlastní práci.
3.6.1
Principy
Opakovaným konceptem, který vychází z mobilních casual her [35], je sestavení aplikace z více kratších podúkolů. Rovnou následuje ohodnocení hráče a nabídka, jestli se bude dále pokračovat. V mnoha aplikacích se objevovala jádra tradičních her jako jsou puzzle, omalovánky či pexeso. Avšak nemalé množství vývojářů zůstalo kreativních a obzvlášť u her pro starší děti vymysleli originální pravidla. Nicméně vítězí jednoduchost, protože hlavní herní mechanika se vždy dá shrnout do jedné věty.
3.6.2
Zpracování
• Příběh Příběhová linie se objevila ve čtvrtině mnou hodnocených her. Nebyl na ni kladen velký důraz, používala se jako tmel pro úlohy. Jednotlivé levely a podúkoly jsou svázány k sobě velmi volně (například se v návaznosti na dokončení jednoho otevřou další). Je to tak nastaveno taktéž z důvodu, aby si mohl danou část zahrát uživatel vícekrát a příběh dával stále smysl. Osobně mi přijde škoda, že je příběh upozaděn, jelikož by aplikace mohly děti více zaujmout. Díky příběhu se mezi pojmy vytváří asociace a to pomáhá si věci lépe zapamatovat. Děj může mít velký výchovný přesah, 4
Sdílená tabulka je k dispozici na adrese http://www.otom.info/hodnoceni-aplikaci
-bp/
29
3. Analýza aplikací pro předškolní děti cílených na tablet s OS Android jak dokazuje česká Dopravní výchova, kde hry souvisí z ukázkou pravidel dopravy. Zahrnutí vyprávění však klade při vývoji na tým větší nároky (animace, ovládání, zvuk), proto chápu, že si někteří výrobci práci zjednodušují. • Dynamika Jak bude aplikace složitá na vývoj a náročná na výkon tabletu, je ovlivněno použitou mírou dynamiky. Plošinovka s 3D modely Cordy, kde je využívána fyzika a většina objektů včetně menu je animována, stojí vzorem živosti. Takové zpracování zaujme ihned každé dítě, zas je těžší na vytvoření a ne na všech zařízení funguje plynule. Ač má pohyb objektů pozitivní vliv na pozornost, statičtějších her byla v mém vzorku majorita. Mezi takové řadím i ty, kde se sice poloha předmětů mění, ale až s uživatelovou akcí. Jako když vezme hráč puzzle a uloží ho na místo. Za dynamičnost považuji, pokud hra reaguje místy proměnlivě a vytváří dojem virtuálního světa. • Grafika Nejčastěji byly použity příjemné, teplé, měkké barvy. Objekty byly snadno rozpoznatelné, konkrétní. Až na hru Cordy byla grafika ve 2D, podobou blížící se animovaným pohádkám. Hry si vystačily mnohdy s neměnnými obrázky, případné animace byly nesložité (jednoduchá transformace). Jen u výpravnějších her jako Cut the Rope nebo Where’s my water? byly použity propracovanější dějové animace. • Zvuk Skoro všechny hry (až na omalovánky) se pyšnily abstraktními zvuky doplňujícími uživatelovy akce. Jsou ideální k indikaci úspěchu nebo neúspěchu. Dobrou praktikou studia Intellijoy je pojemování předmětu, který se dítěti povede složit či obkreslit. Hudbu jako výpravnou součást hry zařadil menší počet autorů. Obecně čím dynamičtější a příběhovější hra, tím obsahovala více prvků - hudbu nevyjímaje. Žánry použité muziky se mnoho nelišily, často ambientní podklad tvořily durové elektronické tóny beze zpěvu a bez náhlých zvratů.
3.6.3
Instrukce
V zadávání úkolů bych viděl velký prostor pro zlepšení. Skoro každá aplikace počítala s účastí dospělého při hraní. Pochopitelné je to při spuštění hry a navigaci v menu (avšak i to by šlo zjednodušit pro dítě). Některé hry nabízejí zadání jen textově nebo uživatel musí na ovládání a cíl hry přijít sám. Ano, nejedná se o komplikované hry, ale pro dítě mohou být naprosto nové. 30
3.6. Shrnutí výsledků z hodnocení dvaceti jedna aplikací Vhodné mi přijde názorně předvést, co je cílem úkolu. Zároveň to okomentovat slovně a na vyžádání instrukce zopakovat. Zde však musím poznamenat, že záleží na jazyku, ve kterém je hra dostupná. Bohužel českým dětem moc her přizpůsobeno není. Za české slovní zadání bych pochválil Výukové kartičky a Dopravní výchovu.
3.6.4
Ovládání
Dítě se naučí ovládat tablet velice rychle. Hmat je jeden z prvních smyslů, které novorozenec používá. Na displeji se dotýká rovnou modelů objektů. Vidí bublinu, která při doteku praskne. Je to daleko přirozenější než joystick nebo klávesnice. Dotek na jednom místě (vybrání předmětu, tlačítka) byl uplatněn v každé aplikaci a není to překvapující, jelikož se jedná o bazální funkcionalitu tabletu. Něco málo přes polovinu her už požadovalo od uživatele koordinovanější pohyby v podobě gest. Ty bychom též mohli rozškálovat. Jednoduché jsou přímé tahy, kdy může hra uživateli pomoci „magnetickým“ efektem, pokud má tah končit na určitém místě. Složitější úkony vyžadují Angry Birds nebo Air Control či Where’s my water?, kde pravidla vynucují preciznost. Potom se hra stává hratelná až pro děti kolem šestého roku. Zarážející pro mne bylo, že s gyroskopem počítala pouze jedna hra ze všech testovaných. V ní se nakláněním směrovala kulička bludištěm. Možná je to kvůli tomu, aby se rodičové nebáli, že dítě při složitější manipulaci s tabletem přístroj upustí. Natáčení tabletu a tedy pracování s ním jako s reálným fyzickým objektem podle mne přináší zábavné obohacení.
3.6.5
Zpětná vazba
Hráč potřebuje vědět, jak si vede. V hrách pro dospělé postačí shrnutí na závěr, u her pro předškoláky nacházíme zpětnou vazbu v průběhu hraní. Upozornění na chybu na místě, kde vznikla, vede k lepšímu zapamatování. K tomu je dobré přidružit povzbuzení, aby uživatel nebyl demotivován. Aplikace 4bambini: Dávej bacha při vyhodnocení odpovědi na otázku nechá zprávu o korektnosti na scéně, dokud sám hráč neodklikne, že chce pokračovat. Bonusový obsah je rovněž používán k ohodnocení uživatele. Nejčastějším sbíraným tokenem jsou hvězdičky. Je milé, že tímto způsobem se podporuje soutěživost, avšak pokud se bonusy počítají číselně, nemusí dítě číslíčkům rozumět a ztrácí pro něj význam. Dítě spíš zaznamená zvukovou pochvalu nebo palec nahoru jako jednorázovou akci. V rámci zpětné vazby by podle mne bylo ideální v edukativních hrách zobrazovat správné řešení. 31
3. Analýza aplikací pro předškolní děti cílených na tablet s OS Android
3.6.6
Náhled z hlediska psychologie
V hrách jsem se snažil podchytit, na jakou část dětské mysli by mohly mít vliv. Ze seznamu dovedností jsou zřetelně některé zastoupeny více a jiné méně. Vytvořil jsem přehled četnosti vizualizovaný grafem 3.1. Forma her na tabletu zřetelně nahrává podpoře grafomotoriky, protože dítě má za úkol dotýkat se na určitých místech na displeji. Na opačné straně grafu pozorujeme nárůst u zrakového vnímání, který mi též přijde snadno odůvodnitelný. Tablet komunikuje skrz barevnou obrazovku. Dítě musí odlišovat, co jsou herní objekty, co je pozadí, a propojuje svými myšlenkovými pochody, co k čemu patří. Jelikož se v jedné aplikaci opakují herní motivy, dítěti pomáhá vizuální paměť. Snaží se najít podobnou kartičku, hledá číslo, které si pamatuje, že následovalo po jiném, rozlišuje ovládací prvky, které vidělo používat své rodiče. Pokud jsou hry zadávány slovně a jejich průběh je komentován, dítě slova vstřebává a jeho slovní zásoba se navyšuje. Myslím, že virtuální svět je úžasnou cestou k poznání krajin, do kterých se dítě běžně nepodívá. Při verbální komunikaci je taky vytěžována sluchová paměť. Kreativní myšlení podporuje řešení problémů. Ve vyšších úrovních správně vystavěných her je třeba k úspěšnému završení úkolu zkombinovat víc různých prvků, uživatelem již dříve samostatně ozkoušených. Pokud se dítě naučí řešit schematické úlohy herního světa, může podobné postupy aplikovat i jinde. Na druhé straně existují „bílá místa“, kam hry tolik nezasahovaly. Pokud hra mířila do oblasti matematiky, kladl se důraz na učení čísel (někdy snad víc na memorování než na pochopení množství) a na základní geometrické tvary. K plnému vhledu do matematických operací je však neméně důležité chápat principy řazení a porovnávání. Nebylo by těžké se dítěte u kreseb zeptat, co je větší/menší, případně zadat za úkol seřadit podle velikosti nebo setřídit dle barvy či jiného kritéria. Potřebnou výbavou dítěte by měly být pojmy z časové a prostorové orientace. Autoři her se jim asi nevyhýbali cíleně. Kdyby měli vytvořit hru opírající se o pochopení časové souslednosti nebo učící dítě orientaci v prostoru, určitě by na to přišli. Spíš je zde vidět, že je prioritní zábavnost her a málokdo klade důraz na komplexní rozvoj dětí. Nedůslednost je vidět v neposlední řadě u sluchového vnímání. Hry učí abecedu písmenko po písmenku, avšak stejně důležité je rozpoznat ona písmenka ve slovech ( „Jakým písmenem začíná slovo ‘stůl’?“) a umět rozdělit slovo rytmicky na slabiky. Do toho se pustilo méně vývojových týmů.
3.6.7
Zajímavé detaily
Aplikace se mohou odlišovat drobnými vylepšeními, které bych nerad opomněl. Nemusí vždy souviset s herně-edukativní stránkou, avšak dělají produkt originální oproti konkurenci. 32
3.6. Shrnutí výsledků z hodnocení dvaceti jedna aplikací
Obrázek 3.1: Jaké dovednosti byly rozvíjeny v testovaných hrách nejčastěji
33
3. Analýza aplikací pro předškolní děti cílených na tablet s OS Android • Childlock Aplikace se po dobu hraní dítětem zamyká, aby uživatel nevstoupil, kam nemá. Například aby si dítě omylem hru nevypnulo, může se při stisknutí tlačítka objevit upozornění „Doubleclick to exit“, kterému porozumí hlavně dospělý. • Screenshot Lidé se rádi chlubí výsledky své práce, děti jsou nadšeny, mohou-li ukázat, co vytvořily. Aplikace místy nabízejí možnost uložit aktuální obrazovku (například vybarvené omalovánky). • Postupné zavádění funkcionality Zmíněné pravidlo je sice vcelku časté, avšak natolik důležité, že jsem jej uvedl do tohoto seznamu. Nová funkcionalita přináší čerstvý vítr do průběhu hry. Musí však přijít ve chvíli, kdy si uživatel osvojil dostatečně základní chování. • Animované zadání Na názorné ukázce dítě lehce pochopí, co by se mu dlouze vysvětlovalo verbálně. • Ukryté bonusy Hráčského ducha pěstují schované odměny, na kterých nezáleží úspěch hry. Jedná se o určité „rošťácké přimrknutí“, ocenění toho, že je hráč zvídavý. Takovým bonusem je i nesložitá humorná animace nebo zvuk, které se přehrají po doteku na konkrétní místo herní obrazovky. • Pojmenování nahlas Opakování je matka moudrosti. Pokud je dítěti řečeno, co složilo za obrázek, tvoří se mu v hlavě bohatší síť konexí.
3.6.8
Závěrem analýzy aplikací
Na konec své stručné analýzy si dovolím několik konstatování. Trh aplikací pro předškoláky není zatím příliš rozvinut, ale ve světě již existují týmy věnující se této cílové skupině. Vyrobit propracovanou hru pro menší děti je těžší než se přizpůsobit potřebám starších. Mnou prozkoumané hry, i pokud deklarovaly svůj edukativní záměr, si podle mého mínění nekladly v rozvoji dítěte náročnější cíle. Nahlížet na hry na tablet jako na prostředek ke sbírání zajímavých dat pro rodiče potažmo psychology mi přijde jako zatím neprobádaná oblast. Možná se do toho někteří vývojáři pustili, zatím ale na Android není populárnější aplikace, o které bych věděl. Ze stávajících her pro předškolní děti není od věci si vzít inspiraci, co se týče grafického pojetí. Zároveň je výzvou propojit pravidla hry a výpravnější příběh, protože takové aplikace mají úspěch, avšak jejich vývoj stojí více úsilí. 34
Kapitola
Návrh 4.1
Metodika vývoje
Metodiky vývoje software [59] rýsují počítačovým inženýrům kontury vývojového procesu, díky nimž by měl být projekt úspěšně dokončen v daném čase, s požadovanou kvalitou a v mezích rozpočtu. Strategíí k dosažení cíle vždy existuje více, pro konkrétní realizaci vedoucí pracovník vybírá a upravuje způsob činnosti. Já sám se nemusím domlouvat s širokým týmem, avšak je nutné si stanovit mantinely, v nichž se při vzniku aplikace budu pohybovat. Můj styl práce předurčuje několik faktorů. Vyvíjím menší herní aplikaci na tablet, mimo designu software musím vymyslet příběh a zpracování, majoritu návrhu je třeba zkonzultovat s psycholožkou a některé funkce budou donavrženy až po ozkoušení. Za daných podmínek se kloním k agilnímu přístupu a častému prototypování. Aplikaci budu stavět postupně v týdenních iteracích po cca 30 hodinách, na které si vyčlením prioritně orientovaný seznam úkolů. Předpokládám větší množství úprav návrhu, jelikož z hlediska psychologie vkročím na zatím málo probádanou půdu a tím pádem po prodiskutování prototypu (či návrhu v raných fázích) může dojít ke korekcím. Jelikož jsem si za cíl vytknul herně-výukovou aplikaci, mohu se opírat o metody z produkce videoher [34]. Ty například určují role ve vývojovém týmu jako jsou designer, grafik 2D/3D, programátor, návrhář GUI. Ač valnou většinu z nich zastanu sám, je dobré si uvědomovat, z jaké pozice aplikaci právě nahlížím. Důležitou součástí návrhu her je tkz. game design document (GDD). Je to zamýšlená hra v „papírové podobě“. Zahrnuje vše od názvu hry, cílového publika, konceptu, přes scénáře, nákresy až po návrh ovládání a klíčové prvky herní mechaniky [6]. GDD je nezbytný pro větší herní projekty (desítky, stovky lidí) pro přehled zainteresovaných stran o návrhu hry [23]. Menším vývojářským studiím se hodí na strukturaci konceptu. Tato část bakalářské práce věnující se designu hry bude obsahovat prvky běžně sepisované do game de35
4
4. Návrh sign dokumentu.
4.2
Charakteristika herní aplikace a evaluace hratelnosti
Při zohlednění specifik her pro děti se pokusím vybrat herní žánr(y). A než se pustím do konstrukce herního příběhu, mechaniky a dynamiky, zamyslím se nad chtěnými vlastnostmi hry - hlavně nad tím, co bude tvořit zábavnou složku. Videohry se dají rozřadit do žánrových kategorií podle herních principů, způsobu zpracování a přístupu k příběhu (a též dalších atributů) [72]. Ze seznamu známých žánrů [15] jsou podle mne tyto nejblíže potenciální herněvýukové aplikaci na tablet pro předškoláky: • Vzdělávací • Casual • Arkáda • Adventura „Vzdělávací“ značí, že hra bude děti rozvíjet. „Casual“ vychází z popisu mobilních her, které jsou hrány krátce, nárazově, na vyplnění času. Ač bych byl rád, aby mou hru na tablet rodič použil jako nástroj pro učení svých dětí, je možné, že ji bude považovat jen za způsob, jak svou ratolest zabavit. Klasifikace hry jako „arkády“ o ní říká, že zjednodušeně simuluje některá pravidla z reálného světa a že v ní hráč prochází levely s narůstající obtížností. Použití dítěti známých (simplifikovaných) principů z jeho přirozeného prostředí by bylo v mé hře vhodné pro snadné pochopení fungování hry. Obtížnost a různé úrovně taky budou přítomny, avšak skryté uživateli - systém se sám bude přizpůsobovat hráčovým schopnostem. Mezi „adventury“ bude vyvíjená aplikace spadat, jelikož bude hráč plnit menší úkoly spojené ve větší dějový celek. Zároveň hra nebude obsahovat akční úlohy, ve kterých jde o čas nebo o rychlost reakce (jelikož to není obsahem screeningu školní zralosti). Hra bude vyzdvihovat dětskou touhu objevovat a zkoumat. Při otázce, co by měla hra obsahovat, jsem se díval na návrhový framework MDA (Mechanics, Dynamics, Aesthetics) [34] a na způsoby evaluace hratelnosti her [13] [19] [74]. Z pohledu hráče (část Aestetics v MDA) by jej měla hra bavit díky: • příběhu (narrative game) • audiovizuální stránce (sensation game) 36
4.3. Členění aplikace • zaměření na představivost (fantasy game) • objevování (discovery game)
Design bude dále ovlivněn určením času potřebného k dokončení hry. Budu se snažit o to, aby dítě netrávilo před obrazovkou příliš dlouho, přitom se něco naučilo a rodič zjistil jeho vyspělost. Aby byl screening školní zralosti vypovídající, mělo by dítě projít na jedno spuštění všechny úkoly zaměřené na různé oblasti. Z těchto důvodů plánuji herní příběh na maximálně třicet minut. Zároveň se budu snažit, aby cvičení děti bavila i při opakovaném hraní.
4.3
Členění aplikace
Aplikaci člením podle rozdílných uživatelských rolí na rodičovskou (neherní) část a na část pro děti (hra s příběhem). Spojeny jsou uživatelským rozhraním, kterému se budu věnovat dále v návrhu. Diagram 4.1 znázorňuje možnou navigaci skrz logické scény aplikace.
Obrázek 4.1: Diagram logických scén 37
4. Návrh
4.3.1
Názvosloví
Ač navenek aplikace vypadá celistvě a jednotně, její vnitřní struktura je složitější a pečlivě zkonstruovaná. Při komunikaci s psycholožkou jsme si museli jasně vytyčit, jak o částech budeme hovořit, abychom jeden druhého chápali. Proto zde uvádím několik klíčových slov, která se nadále budu snažit užívat stále ve stejném významu. Oblast Souhrn kognitivních předpokladů, které se váží k určitému pojmu jako je zrak, sluch, řeč. Aplikace Celý program obsahující rozhraní pro rodiče i herní část pro děti. Hra Celistvá část aplikace pokrývající jednu z pěti vytyčených oblastí rozvoje dětského myšlení. Úkol Součást hry se specifickým zadáním, zobecňující a sdružující několik podúkolů. Podúkol Jeden vyhodnotitelný krok úkolu s jasně určeným zaměřením při zjišťování dovedností dítěte.
4.4
Proces vzniku herní myšlenky
K nalezení námětu pro herní příběh lze použít metodu brainstormingu, při které se člověk nesvazuje negacemi a svobodně nechá tvořit svou mysl. Posléze se vybírají z velkého množství nápadů ty s potenciálem naplnit cíl. Proces nemusí proběhnout jednorázově, myšlenky je dobré nechat uzrát a prodiskutovat je s různě smýšlejícími lidmi. Brainstorming je skupinová technika, bez kolektivu může jednotlivec rozvíjet své myšlenky obdobně a to volným asociováním. Můj úmysl byl příjít s něčím blízkým dětské mysli a imaginaci, zároveň jsem se snažil vyhnout škodlivému obsahu (např. násilí). Další mojí ambicí bylo, aby se děj netýkal čistě hry, ale navazoval též na evropskou kulturu. Z tohoto hlediska se mi zdálo vhodné stavět na některém již známém příběhu zpracovaném knižně či filmově. Uvažoval jsem o příbězích se sympatickým hlavním hrdinou, který by mohl komunikovat s dítětem. Většinu mých kritérií splnila kniha Malý princ Antoina de Saint-Exupéryho [17], která je přijímána kladně i pro svou filosofickou rovinu. Po zvolení rámce - svět Malého prince - jsem si sepsal charakteristiku hlavní postavy a typické věci, se kterými se setkává. Nosné mi přišlo cestování Malého prince mezi planetkami a také život na jeho asteroidu B 612 v kosmu. Obojí má v sobě ducha explorace a ponouká zvědavost. Kostrou pro hry a cvičení v aplikaci budou úkoly na zjišťování úrovně školní zralosti. Plánuji vzít abstraktní zadání úkolu a zasadit jej do vznikajícího děje. 38
4.5. Koncept příběhu aplikace Malý princ: Jsem připraven na školu?
4.5
Koncept příběhu aplikace Malý princ: Jsem připraven na školu?
Dítě se dostane na planetku Malého prince, který jej provází svým roztomilým světem. Příběh velice volně navazuje na knihu A. de Saint Exupéryho Malý princ. Herní aplikace bude sestavena z pěti různorodých her. Každá bude mít nesložitá pravidla a svůj děj zapadající do celkového kontextu prohlídky planetky Malého prince. Při prvním spuštění bude dítě následovat lineární příběh, kdy hry budou uváděny v definovaném pořadí za sebou. Tomu odpovídá diagram posloupnosti scén 4.2, přesný děj je zaznamenán ve scénáři v příloze C. Po dokončení lineárního příběhu budou hry zpřístupněny přes jednoduché 3D objektové menu, u kterého bude asistovat dítěti s ovládáním Malý princ.
4.6
Hlavní postava
Hlavní postavou hry je Malý princ, inspirovaný zvídavým hochem od Exupéryho. Jeho vlasy mají zlatou barvu, barvu zralého obilí, oči má modré. Jeho vystupování je dětsky hravé a bezprostřední, přitom v sobě obsahuje přirozenou moudrost. Má na starosti svou planetku, rád se směje, opečovává svou Růži a cestuje po planetkách. Malý princ je ideálním prostředníkem pro komunikaci s dítětem. Může mu vysvětlovat pravidla her a dávat zpětnou vazbu během hraní. Motivací Malého prince pro bavení se s hráčem je touha po kamarádství a společnosti návštěvníka „ze Země“, čehož se mu moc často nedostává. Pro tvorbu dabingu a jazykových mutací je výhodou, že majoritu zvuků může produkovat jediný dabér.
4.7 4.7.1
Popis her zaměřených na rozvoj kognitivních funkcí Zrakové vnímání - hra Polička
Hra nazvaná Polička bude zjišťovat, na jaké úrovni je zrakové vnímání dítěte. Vychází z logických řad, u kterých dítě z řady předmětů vybírá určitý podle instrukce. Při tvorbě obsahu bylo dbáno na to, aby rozhodování skutečně probíhalo na základě vizuální informace. V modelovém úkolu Výběr odlišného objektu v řadě by mohlo být správné zadání konstruováno například barevným odlišením předmětu. Naopak pokud by před dítě byly dány dopravní prostředky a mezi nimi zamíchané zvíře, taky může logicky některý předmět vyřadit, avšak úkol bude spíš zaměřen na řeč a myšlení (kategorizace, nadřazené slovo). 39
4. Návrh
Obrázek 4.2: Posloupnost příběhových scén
40
4.7. Popis her zaměřených na rozvoj kognitivních funkcí 4.7.1.1
Herní příběh
Malý princ si pečlivě vyskládal hračky a další zajímavé předměty na své poličky (Obr. č. 4.3), chtěl by v nich mít pořádek. Až po úklidu si všiml, že se mu vše nepodařilo srovnat, jak si přál. Proto poprosí svého nového kamaráda o pomoc, Malý princ vždy řekne, podle jaké vlastnosti má dítě shodit z poličky nějakou věc.
Obrázek 4.3: Princip hry Polička, úkol Výběr odlišného objektu v řadě
4.7.2
Prostorová orientace - hra Vysavač
Prostorové vztahy používáme s velkou samozřejmostí. Hra Vysavač testuje pochopení prostorových pojmů - v modelovém úkolu Lokalizace objektu na základě předložky jsou to například vztahy dané předložkou „nad“, „pod“, „vedle“, „před“, „za“ etc. V jiném úkolu by to mohla být slova či sousloví jako „nahoře“, „dole“, „vpravo dole“, „uprostřed“. Na scéně jsou rozmístěny objekty a slovní instrukcí je určeno, kde má ležet hledaný předmět. Zobrazené objekty by měly být zcela běžné, aby dítě nemuselo bojovat s neznalostí. Důležité je, aby volilo na základě prostorového kontextu. Proto by na scéně mělo být instancí požadovaného předmětu větší množství, aby dítě docházelo k rozhodnutí opravdu podle zadání. Neměl bych nechat bez povšimnutí, že tento úkol klade nároky na sluchovou paměť dítěte musí zaznamenat, jaká předložka byla řečena či jaké padlo jiné určení umístění. 4.7.2.1
Herní příběh
Cesty Malého prince po okolních planetkách a i na Zemi jsou známé. Malý princ se rád podívá na vzdálená místa, avšak nerad balí. Na to má tedy uzpů41
4. Návrh sobený kufr/vysavač. Stačí jednoduše předmět najít a pak jej vysát hubicí do kufru. Malý princ určí, kde má hráč hledat (Obr. č. 4.4). Až uživatel označí místo, kde předmět je, objeví se sající vysavač a tím je hra ozvláštněna nevšedním dynamickým efektem.
Obrázek 4.4: Hra Vysavač, úkol Lokalizace objektu na základě předložky, možné zadání podúkolu: „Najdi míč mezi lampou a stolem.“
4.7.3
Časová orientace - hra Galerie
Do oblasti časové orientace zahrnuji pojmy, které se váží k času (např.: „večer“, „odpoledne“, „podzim“), a též schopnost zařadit události do časové posloupnosti. Vytvoření sledu obrázků se věnuje modelový úkol Řazení obrázků na základě časové posloupnost. V zadání hráč dostane náhodně promíchané snímky a ty je možno dát jeden za druhý v závislosti na čase. Obrázků může být od tří do šesti (např.: první představuje semínko, druhý ukazuje růst klíčku a na třetím je vzrostlá květina). 4.7.3.1
Herní příběh
Ze svých toulek po blízkých i dalekých planetách si Malý princ přivezl fotky, dost jich pořídil právě na Zemi. Má v plánu si s nimi vyzdobit zeď, avšak už 42
4.7. Popis her zaměřených na rozvoj kognitivních funkcí si není jistý, jak patří jeden snímek za druhý. Proto se rozhodl je pověsit do rámečků, až když se může poradit nyní s hráčem (Obr. č. 4.5).
Obrázek 4.5: Hra Galerie, ukázka úkolu Řazení obrázků na základě časové posloupnosti
4.7.4
Sluchové vnímání - hra Muzika
Dítě si hraním s virtuálními hudebními nástroji bude cvičit své sluchové vnímání. Zadání úlohy bude slovní a odpověď bude uživatel předávat aplikaci přes hudební nástroj na displeji jako buben nebo jednoduché klávesy. Jedním z navrhovaných úkolů, který se zaměřuje na schopnost sluchové analýzy, je Rozdělení slova na slabiky. Na tuto dovednost dítě naváže při čtení a psaní. Instrukce je udeřit tolikrát do bubnu, kolik má slovo slabik. Je to podobné, jako bychom s dítětem slovo „vytleskali“. Případně další úkol mířící na sluchovou diferenciaci by mohl testovat rozpoznávání rýmů. 4.7.4.1
Herní příběh
Beránek i květina jsou dobří společníci, ale někdy až moc tiší. Malý princ si pro zlepšení nálady čas od času zahraje a zazpívá. Tvoří i své písně, proto se hodí znát rytmus a slabiky, rýmy a verše. 43
4. Návrh
4.7.5
Základní matematické představy - hra Planetky
Ještě předtím, než začne dítě sčítat a odčítat čísla, učí se operace potřebné k pochopení základních matematických konstruktů. Ve hře Planetky se dítě věnuje třídění, řazení a též si usouvztažňuje vyjádřené množství (například velikostí) s číselnou hodnotou. Modelový úkol Řazení podle zadaného atributu vyzývá uživatele, aby na zřetelně různě veliké planetky rozřadil několik předmětů podle velikosti či počtu nebo číselné hodnoty. Pro přehlednost není planetek více než šest (v úvahu byla brána plocha displeje). 4.7.5.1
Herní příběh
Planetka B612, na které žije Malý princ, není větší než dům. Nedostatek prostoru Princ vyřešil ukládáním věcí na okolní asteroidy. K tomu, aby se v nich vyznal, je třeba v nich mít pořádek. Malý princ předměty vyslal na oběžnou dráhu planetek (Obr. č. 4.6) a nyní je na dětském hráči, aby je stáhl k planetkám, podle toho jak mu bude doporučeno.
4.8
Grafické pojetí aplikace
Vizuální podoba je to, co vnímá uživatel na výsledné herně-výukové aplikaci nejvíce. Do aplikace budu potřebovat velký počet 3D modelů. Dále užiji 2D grafiku - jednak textury na modely, poté též textury uživatelského rozhraní (GUI) a obrázky v ploše do některých her. Do aktuální první verze produktu budu vyhotovovat modely převážně sám - abych mohl flexibilně modely přizpůsobovat při implementaci. Do finální verze určené pro veřejnost bych preferoval, aby vzhled objetků měl pod dohledem zkušenější grafik. Má představa stylu hry se blíží animovaným pohádkám. Použiji nekomplikované 3D modely, aby detaily nedělaly scénu nepřehlednou. Omezím spektrum barev - měly by být zastoupeny všechny základní a doplňkové, avšak v redukovaném počtu odstínů, aby hra měla jednotný ráz. Vykreslené objekty by měly být barveny plošně, stínovány s jasným barevným přechodem a obtažené černou linkou.
4.9
Audio
Přenesení části informací k uživateli bude probíhat ve zvukové podobě. Aplikace bude promlouvat ústy Malého prince. Příběh, instrukce, zpětná vazba vše bude muset být nahráno dabérem podle scénáře, který je dostupný v příloze C. Při sestavování dialogu jsem musel dbát na to, aby byl uživatel oslovován genderově neutrálně. Například místo „Jsi připraven?“, což evokuje mužský rod, užívat výrazy bez konotace jako „Můžeme začít?“. 44
4.10. Zpětná vazba a motivace
Obrázek 4.6: Hra Planetky, úkol Řazení podle zadaného atributu, možná instrukce podúkolu: „Dej věci na planetky podle jejich velikosti, nejmenší na nejmenší planetku atd.“
Komponenta starající se v aplikaci o přehrávání zvuku bude muset dohlédnout na správnou synchronizaci dialogu, aby se promluvy Malého prince nepřekrývaly. Pro vytvoření uvolněné atmosféry použiji do hry ambientní podkladovou hudbu beze slov, možností je autorská tvorba nebo cizí hudební dílo. U nevlastní práce bude třeba respektovat licenční podmínky.
4.10
Zpětná vazba a motivace
Tablet je interaktivní zařízení, chování aplikace by mělo odrážet akce uživatele. V herní části by si dítě mělo být jisto, zda-li má nyní něco dělat nebo jestli je mu právě vyprávěn příběh. Též by při své vlastní aktivitě mělo zjišťovat, koná-li správně. Aby bylo motivované nadále setrvat v plnění úloh, navrhuji jeho činnost chválit při úspěchu a povzbuzovat jej i v momentech neúspěchu. Zabýval jsem se otázkou, zda-li a jak odměňovat hráče. V bezpočtu mobilních videoher uživatel soutěží - sám se sebou, s jinými hráči - a je nějakým 45
4. Návrh způsobem bodován (narůstající score, hvězdičky, penízky). Designeři her pro starší se spíš ptají, jak a ne jestli vůbec. Nicméně se zacílením na malé děti jsem musel vzít v úvahu názor části odborníků na vzdělávání, že odměňování (tzn. externí motivace) nemusí být pro dítě vhodné [55]. Zjednodušeně řečeno se děti naučí zásadu něco za něco a méně se zapojují jen z důvodu, že si chtějí užít hru. Zprvu mne napadlo, že hráče bude těšit postup ve hře. A že mimo této motivace pak bude fungovat jednorázová slovní zpětná vazba v průběhu hraní (osobní pochvala od hlavního hrdiny vázaná ke konkrétní činnosti, nehodnotící tedy osobu hráče, ale jeho akce). V příběhových hrách typu RPG je skutečně uživatel veden touhou pokračovat v ději. Na druhou stranu jsem si uvědomoval, že mnoho dětí rádo sbírá v hrách určité tokeny a že by taktéž bylo dobré nějak kvantifikovat hráčův úspěch. Momentálně se kloním k tomu, že hráč obdrží něco za dosažení dobrého výsledku. Formu ohodnocení však chci volit smysluplně, aby se nejednalo například o peníze, což by podrývalo vizi kamarádského vztahu Malého prince s uživatelem. Po náhledu na příběh vidím jako vhodné hromadění kapek do konývky s cílem zalít květinu. Kapka je esteticky zajímavá. Přibývání kapaliny v nádobě je snadno čitelné hodnocení postupu i pro děti, které neumí čísla. V neposlední řadě se nejedná o sobecký akt kumulace „bohatství“, ale o prospěšnou péči o flóru.
4.11
Měření
Mezi požadavky na aplikaci patřilo i měření při aktivitě dětského uživatele. Při návrhu si ujasňuji, jaké statistky budou mít vypovídající hodnotu. V převážné míře bude dítě plnit zadanou úlohu. První měřený atribut by tedy mohl být úspěšnost ve hře. Čas potřebný k dokončení úkolu je rovněž zajímavým výstupem. Dále by se dalo sledovat, jak dítě interaguje s přístrojem - jelikož ovládání omezím výhradně na dotyk, bylo by možné zaznamenávat souřadnice pohybu prstu po obrazovce. Stopování trasy dotyku uživatele by po více uživatelských testech mohlo ukázat, jaké ovládací prvky dělají dětem potíže (velikost, barva) nebo jak rychle následuje reakce dětského uživatele na činnost aplikace. Pro většinu dospělých uživatelů, kteří se zajímají o statistiky, je však záznam dotyku bezvýznamný. Proto tato data nyní měřit nebudu. Ke screeningu školní zralosti plánuji po konzultaci s psycholožkou použít atribut úspěšnost a čas na dokončení. Ve spojením s kvalitně vystavěnou strukturou úkolů od psycholožky tyto dva údaje umožní zjistit, jak na tom dítě je s konkrétními studijními předpoklady. Nejmenší jednotka hry - podúkol - se věnuje vždy velice specifické úloze. Procentuální úspěšnost říká, jak dobře si dítě se zadáním poradilo, a dále vím, kolik na to potřebovalo času. V souhrnu výsledků z jedné úlohy lze zřetelně 46
4.12. Ovládání vystupovat pokusy dítěte a jeho vývoj. Rozhodl jsem se úspěšnost a čas k dokončení asociovat s časovou známkou pro možnost chronologického zobrazení dat.
4.12
Ovládání
Hlavním ovládacím prvkem tabletu je dotyková obrazovka umožňují jednoduchá i komplexní gesta. Hra nemá testovat zručnost dětí, budu volit maximálně snadné ovládání - tap (klepnutí), slide či swipe (přejetí v jedné lince) a dragand-drop (vezmi a přetáhni). Přesnější pohyby jako drag-and-drop zařadím až po několika úlohách, aby se dítě do té doby seznámilo s dotykovým displejem. V herní části aplikace budou momenty, kdy je třeba dítěti ukázat herní scénu (aby pochopilo instrukce), avšak není žádoucí, aby mohlo s předměty manipulovat, dokud ještě nezná zadání. Z tohoto důvodu je nasnadně uzamykat někdy možnost doteku. Na hráčovu akci by aplikace měla vždy nějak zareagovat, i když manipulace s předměty nebude v danou chvíli povolena. Pokud se dětský uživatel bude dotýkat displeje, jeho prst zanechá na určitou dobu bílou stopu. Takto přesně bude vědět, kde se dotkl. Pokud udělá tah, objeví se křivka.
4.13
Změna obtížnosti
Předpokládám, že se schopnosti dětí budou lišit případ od případu. Aplikace by se měla svou obtížností přizpůsobit. Často si v běžných videohrách uživatel svou úroveň volí, u předškoláků je třeba obtížnost škálovat automaticky (nebo ji musí přepnout rodič). Jelikož se hra sestává z úkolů a ty zase z podúkolů, složitost úlohy závisí právě na jednotlivých podúkolech. Při spuštění podúkolu bude jeho obtížnost přizpůsobena podle hráčových předchozích hraní. Poprvé je laťka nastavena nejníže, což i umožňuje snadnější pochopení prvně spatřeného zadání. Náročnost podúkolu není vždy určena jednou věcí, záleží i na příslušné testované oblasti. Někdy může být cvičení ztíženo složitostí scény, někdy použitím abstraktního symbolu jako je písmeno místo konkrétního předmětu. Úrovně rozvrhnu společně s psycholožkou.
4.14
Uživatelské rozhraní
Navrhované rozhraní by mělo umožňovat snadno provést akce popsané Use case diagramem 1.2. Různé scénáře se týkají hlavně dospělých a jejich části aplikace. Herní část pro děti nebude složitá na ovládání, jelikož vše bude komentovat Malý princ a hodně přechodů mezi scénami bude automatických. Jen na počátku se dítě bude muset v případě více uživatelských účtů autentizovat (Obr. č. 4.8). 47
4. Návrh Přihlášení uživatele bude probíhat na základě vybrání uživatelského jména nebo díky zvolení příslušného profilového obrázku. Maximálně bude zobrazeno pět obrázků patřících k uživatelským účtům, vybraný bude oproti ostatním větší. Myslím, že málokdy nastane situace, že jeden tablet bude sdílet víc jak pět dětí - pro takové případy jsem do rozvržení vložil posuvník.
4.14.1
GUI pro rodiče
Aplikaci v časovém poměru bude více užívat dítě, takže rodičovské rozhraní by mělo být rychle průchozí. Výjimku tvoří zobrazení statistik (Obr. č. 4.9), na které se rodič bude soustředit mimo hrací čas dítěte. Po úvaze, jakou funkcionalitu bude rodič využívat nejčastěji, jsem se rozhodl začlenit tři tlačítka na všechny obrazovky. Jedná se o tlačítko na vypnutí, dále na zobrazení statistik hráče a poslední do trojice je přepnutí uživatele. Každému z nich jsem přiřadil symbol - vypíná se tradičně křížkem, schematický sloupcový graf představuje statistiky a obrys člověka je pro změnu hráče. Tyto ovládací prvky budou v nevýrazné barvě (neatraktivní pro dítě) v pravém horním rohu. Tlačítka (až na křížek) přepnou aktuální scénu do části aplikace určené pro dospělé, odkud je možné dělat další akce. Pro lepší herní zážitek dítěte jsem rozmýšlel, jak zabránit vstupu malého hráče do neherní části aplikace a jak zamezit náhodnému vypnutí programu. Napadlo mne použít „zámek“ - tzv. childlock. Pro přechod do zamčené oblasti je třeba vykonat nějakou operaci, která se bez zřejmého úmyslu neodehraje náhodou. „Zámkem“ může být například gesto, o kterém dítě neví. V mém případě se po klepnutí na tlačítko objeví informativní text s žádostí o dvojklik (pokud chce uživatel dokončit akci a přejít například na zobrazení statistik). Po prvním přečtení je již dospělý s funkcí seznámen a dvojklik provádí automaticky. Menu v rodičovském rozhraní bude nabízet obsluhu uživatelských účtů vytváření (Obr. č. 4.7), editaci, přepínání aktuálního uživatele. Ostatní konfigurace jako hlasitost zvuku bude přístupná pod tlačítkem „Nastavení“. Informativní shrnutí o účelu programu a o jeho vzniku bude k nalezení v záložce „O aplikaci“. Zobrazení statistik bude agregovat a vizualizovat výsledky hraní jednotlivých uživatelů. Pro každého hráče se statistiky budou dělit podle her, k nimž vždy patří určitá oblast kognitivních funkcí. Znázornění výsledků reflektuje rozdělení her na úkoly. K dispozici budou souhrny z posledního užívání - průměr z doby potřebné k dokončení úkolu a průměr úspěšností za tři spuštění zpět. Zbytek dat se vykreslí jako body do grafu, kde na ose x bude datum pořízení záznamu a na ose y úspěch vyjádřený procenty. Modely GUI, tzv. Mock-up, které jsou součástí této práce (Obr. č. 4.8, 4.7, 4.9) byly vytvořeny ve volně šiřitelném programu Pencil [58]. Ukazují kompozici ovládacích prvků, jejich vzhled bude pravděpodobně ve finální verzi odlišný. 48
4.14. Uživatelské rozhraní
Obrázek 4.7: Návrh obrazovky pro vytvoření profilu nového dětského hráče (realizováno dospělým)
Obrázek 4.8: Rozložení prvků GUI při autentizaci dítěte, svůj profil pozná podle obrázku 49
4. Návrh
Obrázek 4.9: Zobrazení statistik konkrétního hráče, zjištění úrovně jeho vyspělosti v testovaných oblastech
4.15
Vnitřní struktura aplikace
Aplikace bude rozčleněna do tří vrstev - prezentační, logické a datové. O prezentační část - vykreslování - se bude starat herní engine Unity. Logická vrstva bude řešit herní mechaniku, bude spravovat uživatelské profily a zpracovávat uživatelské vstupy. Datová vrstva nebude příliš robustní - především se bude jednat o perzistenci dat hráče a o uložení statistik hraní. Třívrstvá architektura podle mne vhodně odděluje části aplikace podle funkcionality, kterou je následně možné implementovat separátně. Případné změny uvnitř jedné vrstvy neovlivní fungování ostatních.
4.16
Model tříd
Při tvorbě modelu tříd (Obr. č. 4.10) jsem vyšel ze slovního popisu aplikace. Hlavní třídou je App, která udržuje reference na důležité komponenty. Metoda Update() se volá v cyklu a představuje tradiční herní smyčku - sběr uživatelského vstupu, změna stavu objektů, překreslení scény [33]. Vystavěná hierarchie v návrhu herní části obsahující hry, úkoly a podúkoly se promítla do důležitých tříd v modelu - Game, Task, Subtask. Každá z her 50
4.17. Datový model
Obrázek 4.10: Diagram tříd - je vidět, že kostrou celé aplikace jsou hry tvořené z úkolů a podúkolů.
má scénu složenou z objektů, s některými předměty může dotykem uživatel manipulovat (implementují interface ITouchable). Ve čtyřech hrách z pěti budu náhodně obměňovat herní objekty, aby hra byla rozmanitější. Na to v návrhu reaguje třída ReplacingTask, která dokáže načíst objekty (metoda PopulateScene()) a opět je odstranit (metoda CleanScene()). Modely budou umístěny na předem určená místa při designu herní scény. Pro určení pozic v prostoru použiji zástupný objekt - kvádr. Podle velikosti zástupného kvádru také přizpůsobím rozměry načteného objektu. Všechny zástupné kvádry na scéně a objekty s nimi spojené tvoří tzv. layout. Jeden úkol může mít více různých layoutů. Další klíčovou třídou je User reprezentující profil hráče. Uživatelské účty a statistiky hráčů budou mít na starosti příslušné kontrolery. Za kontroler označuji třídu, která umožňuje jednotný přistup ke konkrétním třídám (jako je User) nebo ke sdílenému médiu (dotykové ovládání, zvuk). Instance kontroleru bude za běhu programu pouze jedna, využiji návrhový vzor Singleton.
4.17
Datový model
Data, která se mají uchovávat mezi spuštěními, jsou uživatelské profily a statistiky hraní. 51
4. Návrh Účet hráče bude identifikován uživatelským jménem. Uživatel bude mít též svůj profilový obrázek pro snadnou autentizaci dítěte. Dále se bude ukládat jeho postup ve hře, dosažené score, datum posledního hraní a celkový čas strávený u aplikace. Statistiky hraní zaznamenávají, kdy který hráč dosáhl jakého výsledku v určité části hry. Budou asociovány s hráčem podle jeho jména.
52
Kapitola
Implementace V následující kapitole se budu věnovat praktické části své bakalářské práce. Rozeberu, v jakých prostředích a jak probíhala implementace. Majoritu práce u mne tvořilo programování logiky jednotlivých her podle návrhu z kapitoly 4, modelování herních objektů a skriptování jejich chování. V týdenních až dvoutýdenních iteracích jsem připravoval prototypy aplikace zavádějící postupně funkcionalitu a diskutoval jsem je s psycholožkou Simonou Pekárkovou.
5.1
Vývojové prostředí Unity
Herní engine a k němu vytvořený editor Unity mi umožnily plně se soustředit na vznik aplikace bez nutnosti stavět vlastní virtuální svět. Unity se stará o herní fyziku (pozice objektů, kolize, působení síly etc.) díky enginu PhysX od NVIDIA [60] a o renderování herní scény na obrazovku. Poskytuje též mnoho důležitých pomocných tříd a funkcí pro implementaci vnitřních pravidel hry. Pro vývoj jsem používal verzi Unity 4.3.2. Jelikož jsem s Unity začínal, byly pro mne oporou názorné videotutoriály [69] probírající samotné prostředí Unity, skriptování, fyziku a práci s audiovizuálními materiály. Konkrétní části herního enginu jsem studoval blíže v dokumentaci [20], která nabízí rovněž příklady nejčastějšího užití tříd či funkcí. Pří řešení dílčích problémů - jako například roztříštěnost rozlišení u Android zařízení - jsem hledal odpovědi v komunitě Unity vývojářů [14]. Cenné pro mne byly rady ze článku na Dev mag 50 tipů na práci s Unity (Osvědčené přístupy) [68]. Grafické rozhraní editoru Unity se člení na několik segmentů, které jdou sestavit a rozmístit podle přání vývojáře. Mezi hlavní patří Scene view, kde může level designer rozmisťovat objekty na scénu. Game view umožňuje pohlédnout na scénu, jak by ji viděl hráč. Další podokna se týkají vesměs organizace a úprav assetů. Jako „asset“ jsou označeny virtuální statky, které mohou být součástí hry. Mezi assety patří například textury, zvuky, skripty, 3D modely nebo materiály objektů. Okno Inspector zobrazuje nastavení veřejných 53
5
5. Implementace atributů, Hierarchy znázorňuje vazby rodič–potomek mezi herními objekty, Project panel umožňuje procházet a přidávat nové assety do Unity projektu.
5.1.1
Základní pojmy v Unity
Scene Jeden herní svět, který vyplňují objekty často organizované do určité hierarchie. Scéna je prostor s počátkem souřadnic. Část scény, kterou má vidět hráč, musí zabírat kamera (kamery). GameObject Objekt, který je součástí nějaké herní scény, složený z více komponent. Každý má své atributy - kupříkladu vektory pro pozici, rotaci, měřítko uložené v transform. Pokud má k sobě připojený skript, dají se u něj zavolat metody spojené s jeho životním cyklem jako Start(), Update() nebo Destroy(). Component Jedna „kostička lega“ s určitou funkcí, kterou je možné napojit na herní objekt. Může se jednat například o renderer starající se o vykreslení objektu, o rigidbody, přes které se provádí přístup do fyzikálního pojetí objektu, nebo komponentou může být programátorem napsaný skript. Prefab Herní objekt (či hierarchie objektů) a jeho parametry uložené k opětovnému užití. Velice užitečnou vlastností je, že prefab může být ve více scénách a přitom má jedna sdílená data - stačí jej tedy při změnách aktualizovat jednou a upraví se všechny jeho klony.
5.2
Programování a skriptování pro Unity
Běhové prostředí herního enginu Unity je naprogramováno nativně v C/C++ [2], nicméně uživatelé nemají přístup ke zdrojovým kódům, pouze k API. Vytvářet skripty pro engine je možné v jazyce C#, Boo nebo v UnityScriptu (inspirovaný syntaxí ECMAScriptu [22], jehož praktickým použitím je například JavaScript). Osobně jsem volil C#, jelikož jsem zohlednil dřívější zkušenosti s rodinou jazyků odvozených od jazyka C. „Skript“ bylo a je označení pro kód, který je interpretován jiným programem. Později se začalo též říkat dynamickým, vysokoúrovňovým, velmi rozšířeným jazykům jako je Perl nebo Python, skriptovací jazyky, a za „skript“ se tedy může považovat i méně rozsáhlý program [63]. Skripty užívané v Unity jsou potomkem třídy MonoBehaviour a určují chování herních objektů a ovlivňují herní mechaniku. Mimo ně jsem kódoval též běžné C# třídy využívané ve skriptech (nedědící od MonoBehaviour tzn. neviditelné pro herní scénu v Unity). 54
5.2. Programování a skriptování pro Unity
5.2.1
Skripty a třída MonoBehavior
Engine Unity se stará o chod programu a jeho úkolem je i zajištění herní smyčky, která periodicky umoňuje zjištění uživatelského vstupu, reakci na něj a překreslení scény. Zobrazení snímků na displej se podobně jako u filmu děje několikrát za sekundu, takže se průběh hry zdá lidskému oku plynulý. Jednomu překreslení se říká „frame“ (jako rámečku filmového pásu) a nejběžněji se používá šedesát framů za sekundu (frame rate) [26]. Aby mohly být herní objekty s každým framem aktualizovány, musí obsahovat metodu Update(), kterou volá engine. Tato klíčová metoda je společně s dalšími často používanými předepsána ve třídě MonoBehaviour [54], od níž by měly dědit všechny skripty využívající herní smyčku. Instance třídy MonoBehaviour (nebo potomka) má svůj životní cyklus [25], jehož průběh má na starosti engine Unity. Při vytvoření se volá metoda Awake(), následně, pokud začně být objekt aktivní, je provolána metoda OnEnable() a Start(). Posléze jsou v přesném sledu opakovaně vyvolány metody, které bych souhrnně označil jménem hlavní z nich jako Update(). Na závěr updatu přichází na řadu OnGUI() navržená pro vykreslení grafického rozhraní. Pro pozastavení cyklu je možné zavolat OnDisable() - protějšek OnEnable(). Při odstranění objektu se dostane na OnDestroy(). Mimo metody životního cyklu může MonoBehaviour reagovat na velkou škálu událostí jako jsou kolize nebo stav celé aplikace. Skripty se připojují k herním objektům v Unity editoru. Jejich veřejné proměnné jsou z editoru přístupné. Ve chvíli, kdy skript nepředstavuje objekt virtuálního světa, ale například část aplikace starající se o dotykový displej, může být nahrán do hierarchie k prázdnému objektu. Ve skriptu je možné přistupovat ke komponentám vlastního či cizího objektu a pracovat s nimi (mj. vytvářet nebo i ničit). Přes skripty se tímto způsobem dá vytvořit komplexní herní mechanika - pravidla, jak spolu budou objekty interagovat.
5.2.2
Styl psaní kódu
Při psaní skriptů v programovacím jazyce C# jsem dodržoval několik předem definovaných pravidel. • Komentáře i pojmenování jsou v anglickém jazyce • Jména metod začínají velkým písmenem a popisují funkcionalitu • Pro víceslovné názvy užívám tzv. velbloudí notaci (např. OnTouchBegan()) • Třídní (statické) proměnné lze rozpoznat díky „s“ na začátku • Instanční proměnné začínají písmenem „m“ • Parametry funkcí mají prefix „p“ 55
5. Implementace • Konstanty jsou psány velkými písmeny a slova v nich jsou oddělena podtržítkem Na psaní kódu jsem používal editor MonoDevelop, který je dodáván a propojen s Unity. Unity samo kontroluje syntaxi u detekovaných skriptů a upozorňuje na chyby (nedovolí při chybě přepnout do herního módu).
5.3
Vývoj s Unity pro Android tablet
Pro spojení Unity a Androidu kolují po internetu šikovné rady [30] [7] [75] [18], které vývojáři umožňují psát kvalitnější aplikace. Zejména se v nich hovoří o snižování náročnosti na výkon pro mobilní zařízení, zmenšování počtu drawcallů (překreslení obrazovky) a o přizpůsobení se odlišným typům přístrojů. Na jednotlivé optimalizace se dostane ještě v kapitolách o perzistenci dat či o grafice. Vyvíjel jsem v Unity 4.3 editoru na PC pod Windows 8, dále je třeba mít nainstalováno Android SDK [29]. Následně se v nastavení v Unity upraví vlastnosti aplikace pro export na Android (jméno balíčku, orientace displeje etc.). Poté stačí pro spuštění projektu na Android tabletu připojit jej USB kabelem k PC a Unity se postará o sestavení souboru s příponou .apk a o nahrání. Ač je to dostatečně pohodlné, stále pro mne bylo rychlejší při zkoušení hry využívat maximálně herního módu v editoru na PC a až kompaktnější části aplikace testovat na cílové platformě. Pro tyto účely jsem vybavil třídu TouchController sledující doteky na displeji i kódem umožňujícím simulovat dotek na počítači pomocí myši. K sledování běhu programu jsem převážně těžil ze zabudovaného logu v Unity, který se zobrazuje přes okno editoru zvané Console. Na zjišťování konkrétních statistik výkonu a vykreslování scény na testovacím zařízení Nexus 7 jsem používal vestavěný profiler [49], který každých třicet sekund odesílá záznam o stavu aplikace. Zprávy jsem zobrazoval v debuggovacím nástroji ve vývojovém prostředí Eclipse.
5.3.1
Přizpůsobení různým typům displejů
Jak jsem uvedl již v kapitole Analýza, nevýhodou OS Android je odlišnost vlastností displejů napříč zařízeními. Snažil jsem se o to, aby byla aplikace stejná nebo aspoň podobná na obrazovkách s jiným poměrem šířky a výšky (aspect ratio) a s rozličnou hustotou pixelů (dpi). Jelikož cílím na tablety, hledal jsem momentálně nejčastější parametry přístrojů na trhu a v domácnostech. Samotný Google na stránce pro Android developery shrnuje a aktualizuje svoje statistiky [16], přehlednou tabulku tabletů jsem našel též na The Digital Disciple [48]. Zjistil jsem, že dpi je skutečně různorodé (od 120 dpi do 320 dpi a výš) - což ovlivňuje zejména zobrazení detailů. 56
5.4. Programování důležitých tříd Jelikož jsem měl rozmyšleno, že po grafické stránce budou hry jednoduché, podobné animovaným pořadům pro děti, hodnota dpi nebude pro mou aplikaci fatální. Nicméně bylo třeba zajistit, aby se textury uživatelské rozhraní velikostí přizpůsobily dané hustotě pixelů. K tomu jsem použil matici, která pro všechny prvky GUI přepočítá jejich rozměry v adekvátním poměru ze stávajícího rozlišení oproti defaultnímu (vybral jsem 1280x800 jako referenční). Zajímavou otázkou též byly rozdíly v poměrech stran obrazovek, jelikož to má vliv na velikost zorného pole hráče. Nejprve jsem nastavil v Unity pro Android fixní horizontální orientaci, protože jsem podle návrhu předpokládal, že scény budou potřebovat víc místa v horizontálním směru. Zmíněná tabulka z The Digital Disciple vypovídá o jediných dvou prakticky užívaných poměrech 16:10 a 4:3 (tj. 16:9). Poměr stran by šlo vcelku jednoduše zachovat, jak předestírá blog Game designer theory [47] úpravou parametrů kamery. Prozatím jsem se rozhodl ve vyvíjené verzi dovolit drobné oříznutí okrajů obrazu na výšku, poněvadž u hranic displeje nebude nic významného a fokus hráče bude směřován vždy ke středu obrazovky.
5.4
Programování důležitých tříd
Mimo třídy zaměřujících se na herní logiku, které popíši níže, jsou třeba i třídy zajišťující chod aplikace jako celku a dále též podpůrné řešící dílčí úkony.
5.4.1
Persistence dat
Pro uchování dat mezi spuštěními aplikace jsem se rozhodoval mezi databází SQL Lite a serializací dat do souborů. Proto, abych měl plnou kontrolu nad strukturou ukládaných informací, jsem volil ukládání do souborů. Na serializaci objektů je vhodnější z hlediska ušetření výkonu a paměti využít vlastní třídy, rozhraní a funkce než operovat s předpřipravenými ze C# knihoven. Porovnání těchto dvou přístupů se věnuje článek na Code Project [41]. Zjišťuje například, že manuální přístup je desetkrát rychlejší při serializaci než třída C# BinaryFormatter (zkoušeno autorem článku na 10 000 konkrétních jím vytvořených objektech typu CreditCard). Jelikož v aplikaci nepotřebuji uchovávat složité struktury a vlastnoruční serializace je úspornější, vytvořil jsem třídu DataManager, která se stará o základní operace se soubory. Uživatelské profily ukládám do složky „users“. Každý hráč má pod svým unikátním jménem podsložku ve složce „stats“, kam se mu ukládají statistiky rozčleněné podle jednotlivých her. Ukládané soubory nejsou šifrovány. V příštích verzích aplikace uvažuji o uploadu dat na server, aby bylo možné srovnávat výsledky všech hráčů. 57
5. Implementace
5.4.2
App
Třída App zapouzdřuje statickou třídu Application enginu Unity [4]. Ta ve své původní podobě slouží k managementu běhu aplikace - například pro přepínání levelů. App rozšiřuje funkcionalitu a shromažďuje data sdílená v rámci celé aplikace. Při načítání nové scény má na starosti průvodné operace jako nastavování sdílených proměnných.
5.4.3
User
Třída User představuje profil jednoho dětského uživatele. Díky jménu a obrázku je možná autentizace a přiřazení výsledků k určitému hráči. Mezi členskými proměnnými jsou též časové údaje - poslední přihlášení, doba hraní od spuštění i od vytvoření profilu. Všichni uživatelé registrovaní aplikací jsou přístupní přes UserController, ten udržuje též odkaz na aktuálně přihlášeného. Při přehlašování uživatele nebo při vypínání aplikace jsou data automaticky uložena. Uživatelé jsou ve třídě UserController uloženi ve zřetězeném seznamu. Pro hráče se mění obtížnost her podle jeho úspěšnosti. Třída User obsahuje instanci generické kolekce Dictionary, která udržuje záznam uživatelovy úrovně pro každý podúkol.
5.4.4
Measurable
Abstraktní třída Measurable umožňuje herním částem měřit určitou množinu atributů určujících úspěšnost a čas hraní. Potomci třídy mohou přidat další zaznamenávaná data a implementují sadu metod na měření a ukládání statistik.
5.4.5
Stats
Po každém dokončení podúkolu jsou do instance třídy Stats předány informace potřebné k uložení. Metoda pro perzistenci dat SaveStats() je volána podle potřeby, v aplikaci ji používám vždy po skončení úkolu (který obsahuje podúkoly), aby operace se soubory byly prováděny vždy po větších celcích. Pro zobrazení statistik jsou veškeré hráčovy výsledky načteny třídou StatsController.
5.4.6
Audiomateriály
Pro přehrávání zvuků má Unity přímo připravenou komponentu SoundSource. Ta počítá s prostorovými zvuky - tzn. jsme-li (kamerou nebo jiným listenerem) dál od zdroje, je hlasitost utlumena, pokud není nastaveno jinak. Pokud jsem nepracoval s komponentou SoundSource, používal jsem instanci objektu OneShotAudio. Umožňuje přes skript přehrát kdykoli jakýkoli 58
5.4. Programování důležitých tříd zvuk. Pro nedůležité zvuky a ruchy stačilo jen dané audio spustit. Pro manipulaci s dabingem, jenž vyžaduje určitou synchronizaci a doprovází ji další operace, jsem utvořil třídu SoundController. Ta má frontu zvuků, kterou postupně přehrává. U komentářů Malého prince je tak zajištěno, aby se nepřekrývaly. Rovněž v základním nastavení přes SoundController uzamykám možnost doteku při vyprávění děje a vysvětlování instrukcí. Seznam zvuků pro přehrání v určité scéně je vtělen do třídy SoundManager. Nahrání audiozáznamů do SoundManageru je umožněno přes Unity editor.
5.4.7
Dotekový displej
Statická třída Input enginu Unity uchovává ve svých proměnných informace o uživatelském vstupu. Je možné zjistit stisk klávesy nebo stav a souřadnice doteku, pokud se jedná o dotykové zařízení. Input rozlišuje, kdy dotek začal, pokračoval, kdy skončil a jestli byl statický nebo v pohybu.
5.4.8
TouchController
TouchController přes statickou třídu Input herního enginu Unity dohlíží na uživatelský vstup. Z proměnných od třídy Input lze zjistit počet dotyků, stav doteku i souřadnice na obrazovce. Pro přenesení ovládání z plochy displeje (2D) do 3D světa používám třídu RayCast, která vyšle v daném směru „paprsek“. Ten při kolizi s obalovým tělesem nějakého předmětu pošle tomuto objektu mnou definovanou zprávu. Objekt, který implementuje rozhraní ITouchable, dokáže reagovat na zprávy od TouchControlleru. TouchController umožňuje uzamknout možnost doteku pro chvíle, kdy není manipulace s předměty na herní scéně chtěná. Uzamknutí může být učiněno i na přesný časový úsek - například na čas přehrání dabingu nebo při přechodu mezi scénami.
5.4.9
Další třídy vázané na ovládání dotykem
Předdefinoval jsem si třídy využívající rozhraní ITouchable, které představují základní gesta - swipe a drag’n’drop. Potomci těchto tříd reagují na předurčené akce, u horizontálního swipu to může být pohyb prstu vlevo či vpravo po obrazovce. Aby byl dotek uživatele vizualizován, sehrála svou roli třída FingerPrint. Ta umisťuje otisk prstu tam, kde se hráč dotkl. Jednotlivé otisky jsou od sebe dostatečně daleko, aby nebyly nahuštěny přes sebe. Jsou vytvářeny a přidávány do spojového seznamu, pokud je jeho velikost překročena, přepíše se prvně uložený. Každý frame jsou prvky seznamu vykresleny. Stopa je viditelná pouze ve chvíli, kdy se uživatel dotýká displeje. Při statickém doteku zmizí do dvou sekund. 59
5. Implementace
5.5
Implementace herní logiky
Rozčlenění herní části aplikace na hry, úkoly a podúkoly z kapitoly design jsem zapracoval, a tím pádem vznikly odpovídající třídy Game, Task, Subtask. Game dědí od třídy GameScene, která implementuje společnou logiku herních a příběhových scén a která je potomkem MonoBehaviour. Instance hry spouští různé úkoly, posléze umožňuje poskytnout zpětnou vazbu a změnit stav score. MonoBehaviour je robustní třída a její instance vytváří přímo engine přes metodu Instantiate(). Po zvážení jsem úkoly a podúkoly nakódoval jako samostatné třídy, abych je mohl tvořit jednoduše přes konstruktor. Bylo to rovněž na zkoušku, jak zapadnou do enginu objekty neodvozené od MonoBehaviour. Task, úkol, má pole podúkolů, zadává instrukce, plní scénu objekty podle aktuálního podúkolu a má na zodpovědnost vyhodnocení. Provádí tedy opakovaně sadu operací od PopulateScene() po OnSubtaskEnd() a CleanScene(). Samotný Subtask, podúkol, obsahuje často jen konkrétní podobu zadaného úkolu. Pokud zazněla instrukce „Najdi odlišný předmět.“ podúkol říká, čím bude odlišný, a umožňuje takový objekt načíst ze složky „resources“. Zároveň tento nejmenší dílek hry přizpůsobuje svou obtížnost podle uživatelovy úrovně. Pro obsahovou bohatost náhodně obměňuji předměty v hrách - dítě může hledat jednou míč, jindy na tom samém místě hrnek. Tato variovatelnost se objevuje u většiny úkolů. Nejprve ReplacingTask načte rozmístění objektů tzv. layout, poté na pozice zástupných předmětů vloží herní objekty ze složky „resources“. Nahrávané objekty jsou Unity prefaby, které mají mimo otexturovaného 3D modelu též skript ResObject, komponentu rigidbody a kolizní obálky pro detekci střetu mezi objekty. V prototypu určeném na testování bude pořádí podúkolů a úkolů v hrách určeno napevno. Podobně neměnným způsobem budou přiřazeny načítatelné herní objekty do podúkolů (kladivo, míč, brýle etc.). V budoucnu počítám se snazší možností změn díky rozvržení her, které se stanoví podle strukturovaného souboru typu xml nebo json.
5.6 5.6.1
Audiovizuální zpracování GUI
Uživatelské rozhraní je vykreslováno v metodě OnGUI() třídy MonoBehaviour. Prvky jako jsou tlačítka, texty a ohraničení vytvářím přes statickou třídu GUI enginu Unity. Pro každý z nich stačí definovat obdelníkovou oblast v pixelech a ta určuje velikost a umístění. Aby bylo GUI pro všechny displeje na správných pozicích, jednou z funkcí mé třídy GUIController je vytvářet obdelníky, u kterých zadávám parametry v procentech. GUIController spočítá správnou hodnotu v pixelech pro stávající rozlišení oproti referenčnímu 1280x800. 60
5.6. Audiovizuální zpracování Volání metody OnGUI() a provádění logiky uživatelského rozhraní v jejím těle se nabízelo jako snadná cesta, avšak vývojáři v komunitě uvádějí pokles výkonu [24] [42] oproti jiným možnostem (přes běžné planární objekty s texturou umístěné na scéně). Nicméně při sledování počtu drawcallů za chodu aplikace jsem nezaznamenal potíže s náročností OnGUI(), takže momentálně jsem ponechal toto nejpřímější řešení. V pravém horním rohu je stále viditelné ovládání - vypnout, přepnout na výběr profilu, přepnout na další hru. Po stisknutí tlačítka přijde na řadu podmínka tzv. childlock zamykající přístup do rozhraní, kam by se neměl dostat dětský hráč. Childlock si pamatuje, jaké tlačítko bylo zmáčknuto jako poslední a kdy. Při prvním doteku vypíše na displej, že je třeba dvojdotek. Pokud tak učiní uživatel v horizontu 300 milisekund, je provedena akce tlačítka.
5.6.2
Grafika
Herní vývojář tvořící pro mobilní platformy musí vyvažovat složitost herní grafiky a výkon přenosných zařízení. Většinu rad, jak snížit náročnost [5] [56] [75], lze odvodit selským rozumem. Používat „low poly“ 3D modely (čím méně vertexů tím lépe) a stejně tak omezit velikost textur. V shaderech, které ovlivňují vykreslování, se vyhnout složitým matematickým operacím. Unity samo pak nabízí další možnosti optimalizace jako je vykreslování nehybných objektů se sdíleným materiálem v jednom drawcallu (static batching). Mnou navržené grafické zpracování aplikace se má podobat kresbě rukou, takže jsem mohl těžit z jednoduchosti 3D modelů. Doporučený limit 10 000 vertexů [49] na vykreslení pro mne tedy nebyl zcela překážkou (ve většině scén se vejdu pod 7 000 vertexů). Pro cílený vizuální efekt mi stačil pouze jeden světelný zdroj na scéně, čímž se redukovala nutnost vyčíslovat složité světelné modely. Rovněž jsem si pro úsporu vytvořil základní set barev ve formě materiálů a ty jsem poté používal u víc objektů. Výsledné „komixové“ zobrazení ovlivňuje Toon Shader z Unity Standard Assets, které jsou dostupné všem uživatelům Unity. Plochy jsou barveny jednolitě (případné stínování se děje díky texturou určeným odstínovým rozdílům) a hrany jsou obtaženy černou linkou.
5.6.3
Blender a Unity
Modely do hry jsem vytvářel v 3D opensource nástroji Blender 2.6. Blender mi nabídl dobré funkce pro modelování nekomplikovaných objektů, dokázal by si poradit i se složitějšími, ale snažil jsem se o minimální počet vertexů. Vkládání objektů z Blenderu do Unity je možné přes export do formátu .fbx. Objekt v Unity je nutné zvětšit, jelikož se importuje v jiných rozměrech. Komplikací při přechodu mezi Blenderem a Unity může být, že mají jinak orientované souřadnicové osy, a tedy se objekt načte jinak pootočen. Je možné to ignorovat, což jsem volil já (ale pak na to při operování v lokálních souřad61
5. Implementace nicích dávat pozor), nebo před exportem vždy objekt orotovat. Případně lze v Unity přiřadit importovaný objekt novému hernímu objektu v hierarchii a transformace provádět přes „rodiče“. Pro přenesení objektu včetně animací je nutné v Blenderu tvořit animace jako jednotlivé akce v Action Editoru.
5.6.4
Tvorba textur
Textura je obrázek namapovaný na povrch 3D modelu, který určuje jeho výsledný vzhled. Podklady pro textury jsem připravoval v 3D modelovacím nástroji, kde jsem si vytvořil základní kreslicí plátno a vygeneroval UV souřadnice (rozvržení, jak se obrázek nabalí na 3D model). V kreslicím módu v Blenderu šlo načrtnout hrubé obrysy rovnou na model, které jsem následně dokončil v grafickém editoru Gimp. Do jedné z vrstev obrázku v Gimpu jsem vložil Blenderem generovaný UV layout, ukazující přesně jednotlivé plochy modelu. Pak jsem přesně věděl, jakou část povrchu barvím.
5.6.5
Animace v Unity
Animace objektů představují běžné transformace jako posun, zvětšení a rotování všech součástí modelů (včetně jeho kostry). Dále animace v Unity umožňují přímý přístup k některým proměnným - jako je například příznak enabled (jestli je objekt aktivní), ty se dají v čase měnit podle definované křivky. Pro složitější logiku se využívá vyvolání události, která spustí veřejně přístupnou metodu u některé z komponent objektu. Animaci je možné spustit a opět vypnout - pro objekty s jednou animací. V případě, že objekt může procházet více animačními stavy, používám u něj konečný automat v komponentě AnimationController. Komponenta dokáže smísit animace při přechodu, aby na sebe plynule navázaly. Animation Controller včetně různých událostí jsem kupříkladu zapojil ve hře Vysavač. Nasávací hubice se pohybuje po animací určených drahách a události zapínají a vypínají zvuk vysavače.
5.6.6
Nahrávání a zpracovávání zvuku
Majoritou mnou tvořených zvuků byl dabing postavy Malého prince. Ta provází příběhem a vysvětluje jednotlivé hry. Sepsal jsem přesný scénář (příloha C) pro každou ze scén a prošel jsem jej s psycholožkou, aby byly výrazy a věty pochopitelné pro děti. Následovalo nahrávání s hercem Jáchymem Sůrou, který ztvárnil hlas hlavního hrdiny. Nahráno bylo víc verzí replik, aby se mezi nimi dalo vybírat při postprodukci. Pro instrukce, které skládám v aplikaci dohromady jako „Najdi...“ „...míč...“ „...pod stolem.“, bylo třeba oddělovat dostatečně jednotlivé celky, aby se snadno operovalo se střihy. Finální verze zvuku byla exportována ve formátu .ogg z programu Audacity. 62
5.7. Finální fáze implementace před uživatelským testováním Neautorské ruchy a ambientní podkladová hudba pocházejí z volných uložišť Free Music Archive [27] a Freesound [28]. Tyto zvuky podléhají licenci Creative Commons, takže je nelze využít v komerční verzi aplikace. Jejich seznam včetně autorů je uveden v příloze E.
5.7 5.7.1
Finální fáze implementace před uživatelským testováním Určování obtížnosti a plnění her
Jako první jsem dokončil logiku u všech pěti her. Dal jsem je do takového sledu, aby u nich náročnost ovládání narůstala postupně. Hra Polička se ovládá tapnutím nebo tahem, další změna je pak u hry Galerie, kde přichází na řadu drag’n’drop. Tento způsob manipulace s předměty, vem-přesuň-a-pusť, se objevuje i v poslední hře Planetky, avšak ve větší míře a s menšími objekty. Pravidla her byla hotova, avšak ještě jsem musel dát dohromady posloupnost podúkolů a rozdělit do nich herní objekty. Tuto činnost jsem konal ve spolupráci s psycholožkou, aby skladba úloh byla smysluplná z pedagogickopsychologického hlediska. Předurčili jsme též pro každý podúkol, jak se bude měnit s narůstající obtížností. Vezmu-li to pro ukázku na hře Muzika, kde je za úkol vybubnovávat slova podle slabik, nejprve jsme stanovili počet slov, které dítě bude zkoušet vybubnovat. Každé slovo představuje jeden podúkol. Pokud bude uživatel schopný poznat jednoslabičná slova, může se posunout k víceslabičným. Různé obtížnosti jsou tedy dány tím, kolikaslabičné slovo se může objevit.
5.7.2
Sestavování scén
Až ve chvíli, kdy byl hotový scénář, dabing, 3D modely a jejich animace, jsem začal kompletovat příběhové scény provazující dílčí hry. Naimportoval jsem objekty do Unity, kde jsem je rozmístil do scén, určil jejich materiál a případně jim přidal komponenty jako Collider pro kolize či SoundSource pro přehrání zvuku. U některých scén jsem zapracoval dále animace vytvořené v Unity - například pohyb kamery.
5.7.3
Detailní úpravy
V posledních dnech před testováním jsem zintenzivnil práci. Nové verze aplikace se lišily už jen v drobnostech po implementační stránce, ale byly významné z uživatelského pohledu. Dokončil jsem přehlednou autentizaci hráče - najednou je zobrazeno až pět profilových obrázků a lze mezi nimi přepínat tapem i swipem. Pro možnost zrychlené navigace aplikací jsem zahrnul tlačítko pro přeskočení na další scénu. Ke složitějšímu úkolu na pochopení - vybubnování slova podle počtu 63
5. Implementace slabik - jsem připojil tzv. zácvičný úkol, kdy je dítěti ukázáno, co se po něm chce. I v dalších hrách docházelo k ladění některé funkcionality - například u Galerie nebo Planetek není možné přepnout na další podúkol, dokud není každý předmět někde umístěn. Mezi finalizační vylepšení patřilo i estetické obohacení, díky tomu vedlejší postava Beránka zabečí po pohlazení a Růže zareaguje na zalévání.
64
Kapitola
Testování Aplikace byla vyvíjena se zaměřením na nejnovější verzi Android 4.4.2 Kitkat. Byla zkoušena hlavně na mém zařízení - Google Nexus 7 (2013). Jelikož přínosem aplikace by mělo být propojení technologií a pedagogicko-psychologického know-how, budu se v textu nadále věnovat hlavně uživatelskému testování, které má z tohoto hlediska velkou vypovídací hodnotu.
6.1
Návrh uživatelského testování
Uživatelské testování je cenný zdroj informací pro vývojáře o jeho produktu. K software se dostává člověk, který vytvářený program vidí prvně. Z interakce lze vyčíst pozitiva návrhu a implementace, stejně tak jsou odhaleny nedostatky a nejasnosti.
6.1.1
Specifika uživatelského testování s předškolními dětmi
Pokud jsou cílovým publikem testované aplikace předškolní děti, tento faktor ovlivňuje (dělá složitější) přípravu i průběh testování. Jako první bych zmínil potřebu mít zajištěno bezpečné, komfortní a vybavené prostředí. Dobře se bude cítit dítě u sebe doma, avšak ne každému rodiči je příjemné zvát k sobě testovací tým. Vhodnou variantou pro dítě i vývojáře je zázemí mateřské či základní školy. Existují i další alternativy jako dočasné přizpůsobení adekvátně veliké místnosti účelu testování. Shánění subjektů může probíhat přes školní zařízení nebo přes volnočasová centra či přes osobní kontakty. Ve vzorku by měli být zastoupeni všichni zamýšlení uživatelé. Před zahájením testování musí být zákonní zástupci dítěte dostatečně informováni a musí vyslovit svůj souhlas. Ideální je, pokud jsou při průběhu testování rodiče nebo jiní dítěti důvěrně známí lidé na blízku (možná ne přímo ve stejné místnosti, aby jejich přítomnost proces neovlivnila). Pracovník provádějící testování by měl mít připraveny různé scénáře pro rozličné 65
6
6. Testování dětské temperamenty. Při dimenzování délky a složitosti testů je třeba brát zvýšené ohledy na výdrž a soustředěnost dětí.
6.1.2
Podoba uživatelského testování pro vyvíjenou herně-výukovou aplikaci
V rámci bakalářské práce se budu věnovat dětskému publiku, rozhraní pro rodiče tvořené pár scénami se statistikami, budu momentálně posuzovat sám a v okruhu svých známých. Na kvalitativní uživatelské testování bude třeba sehnat vzorek nejméně pěti dětí ve věkovém rozmezí od 5 do 7 let. Pro porovnání vypovídací hodnoty aplikace z pedagogicko-psychologického hlediska s běžnou formou diagnostiky školní zralosti bude při testováních muset být přítomna psycholožka. V úvodu zjistím o subjektu informace, které mají vliv na práci s tabletem - věk (vyspělost) a dřívější zkušenost s dotykovým zařízením. Další data bude automaticky sbírat aplikace - zaznamená název úlohy, dobu hraní a úspěšnost v procentech. Poslední verze Android umožňuje vývojářům snímat obrazovku, takže budu mít pro pozdější analýzu videonahrávku toho, co se dělo na displeji. Kvůli zachycení videa bude muset být tablet připojen k PC přes USB kabel, avšak při jeho dostatečné délce to nebude činit problém. Během hraní se zaměřím na interakci dítěte s tabletem. Jako první bude probíhat autentizace, kdy si dítě vybere svůj obrázek. Dále se budu soustředit na jeho schopnost tablet ovládat dotekem (tap, swipe, drag’n’drop). Bude mne zajímat, zda-li hráč chápe zadání her a též celkový příběh s Malým princem. Co se týče motivace dítěte, důležité kromě kontinuálního zaujetí bude, zda-li hru dokončí. Pokud se vyskytnou nedostatky, měl bych je mít poznačeny pro pozdější vylepšování. Po odložení tabletu plánuji s uživatelem reflexi hraní. Konkrétně mne budou zajímat názory na zpracování (grafika, zvuk) a taktéž co se mu/jí zdálo těžké. Následně moje otázky budou mířit na to, kdo a proč hráče prováděl po své planetce. Poslední dotaz bude, zda-li by si dítě chtělo případně zahrát znovu. Veškerá komunikace s dětmi bude probíhat v přátelské atmosféře a přiměřeně jejich nátuře.
6.2
Popis průběhu testování v mateřské škole
Testování s cílovými uživateli - dětmi předškolního věku - proběhlo 10. a 11.4. 2014 v Základní a Mateřské škole Pod Dubčí v Zákolanech. Celkem se jej zúčastnilo deset dětí ve věkovém rozmezí pět let a devět měsíců až šest let a osm měsíců. Zastoupeno bylo šest dívek a čtyři chlapci. Mimo testování samotné aplikace děti též prošly několik úloh s psycholožkou - úkoly byly na podobné bázi jako hry v aplikaci. Pro komplexnější pohled na výsledky dětí jsme rovněž distribuovali dotazníky pro rodiče, týkající se technologické gramotnosti jejich dětí, avšak z formulářů se nám vrátilo jen pár. 66
6.3. Srovnávací studie tradičního screeningu školní zralosti a jeho elektronické formy na vybrané podmnožině studijních předpokladů Testování probíhalo v jedné z učeben a děti si hrály s tabletem jedno po druhém. Průměrný čas strávený s dítětem byl padesát minut. Během prvních dvaceti minut většinou prošly s psycholožkou Simonou Pekárkovou úkoly v papírové podobě obdobné jako se objevují v pedagogické-psychologické poradně při diagnostice školní zralosti. Nicméně pro korektnost podotýkám, že to byla velice zjednodušená verze, která se měla přibližovat podčástem vyvíjené aplikace, aby se daly výsledky srovnávat. V následujících pětadvaceti minutách se věnovaly děti aplikaci Malý princ: Jsem připraven na školu? na tabletu Nexus 7. Se zařízením a aplikací jsem je stručně seznámil a byl jsem jim k dispozici po dobu hraní. Sledoval jsem společně s Mgr. Pekárkovou celou řadu ukazatelů nastíněných v návrhu testování. Každé dítě prošlo od vytvoření profilu až po závěrečnou scénu příběhu. Po završení práce s tabletem jsem ještě pokládal dítěti otázky zjišťující jeho názor na aplikaci, pochopení instrukcí, jasnost příběhu a motivaci k činnosti. Během testování aplikace jsme se s kolegyní snažili nezasahovat do interakce dítěte s tabletem. Nicméně děti často vyžadovaly určitý kontakt s dvojicí přítomných dospělých. Pokud dítě bylo něčím zmatené, poznamenali jsme si situaci a pomohli jsme mu. Výstupy z testování byly naše písemné poznámky, dále data měřená aplikací a taktéž videa ze snímání obrazovky během hraní (vhodné pro pozdější detailní rozbor). Mimo ověření hlavní funkčnosti přineslo testování celou řadu dílčích námětů na vylepšení. Rovněž mi pomohlo nazřít, jak děti s tabletem pracují - ať už si to zkusili dříve nebo toto bylo jejich poprvé. Mé poznámky k testování jsou dostupné online5 .
6.3
Srovnávací studie tradičního screeningu školní zralosti a jeho elektronické formy na vybrané podmnožině studijních předpokladů
Autorkou tohoto srovnání je psycholožka a speciální pedagožka Mgr. Simona Pekárková. Její náhled na testování, na němž se spolupodílela, uvádím v nezměněné podobě.
6.3.1 6.3.1.1
Úvodem Stručný popis diagnostiky předškolních dětí
V rámci diagnostiky předškolních dětí a zjišťování úrovně školní zralosti je používána odborníky rozšířená baterie obsahující úkoly z oblasti speciální pedagogiky a vývojové psychologie. Jednotlivé úkoly jsou běžně zadávány dětem 5 Sdílený dokument je přístupný na adrese http://www.otom.info/poznamky-k-testova ni-v-zakolanech-bp/
67
6. Testování ústně, případně se používají pracovní listy, které dítě dokresluje či vyplňuje podle zadané instrukce. V rámci tradičního vyšetření úrovně školní zralosti se sledují oblasti percepční, úroveň kognitivních schopností, pracovní předpoklady, sociální, emocionální a fyzická zralost. Kromě toho je potřeba, aby odborník posoudil úroveň řeči, grafomotoriku, motivaci, úroveň pozornosti a pracovní tempo dítěte a zaznamenal všechny méně obvyklé či nápadné projevy dítěte. 6.3.1.2
Vztah vyvíjené aplikace a diagnostiky
Aplikace si nečiní nároky zástupně diagnostikovat úroveň školní zralosti jako celku, ale aspiruje na vytvoření systematicky vystavených her, které by měly odrážet a stanovovat úroveň dovedností v některých pečlivě zvolených oblastech. Tyto hry by potencionálně mohly být vhodnou alternativou k tradičním pracovním listům (kdy dítě pracuje s papírem a tužkou), které by u dítěte nejen stanovovaly míru aktuální úrovně, ale mohly by být i vhodným didaktickým nástrojem pro rozvoj samotných funkcí. K testování byly vybrány následující oblasti – zrakové vnímání, sluchové vnímání, prostorová orientace, časová orientace, předmatematické představy. Uveďme jen velmi krátkou charakteristiku, která by měla podtrhnout kruciální význam těchto oblastí pro úspěšný začátek „cesty vzdělání“. • Zrakem přijímáme nejvíce informací. Zrakové vnímání má vliv na rozvoj některých oblastí kognice, prostorovou orientaci, matematické představy. Dobré zrakové vnímání je předpokladem úspěšného zvládnutí čtení, psaní písmen, slabik, slov, číslic, čísel atd. • Sluchové vnímání má zásadní význam pro rozvoj a vývoj řeči a výslovnosti. Při jeho oslabení mohou nastat obtíže ve čtení, psaní, zapamatování si informací. • Na rozvoj předmatematických představ má vliv zrakové, sluchové, prostorové a časové vnímání. Na jejich základě se utvářejí číselné představy (určování počtu prvků, chápání čísel, číselné řady, číselné operace). Při přiměřeném rozvoji by dítě mělo v předškolním věku dospět k poznání, že číslo není závislé na uspořádání prvků, velikosti, tvaru.
6.3.2
Porovnání forem screeningu
Pro testování byly připraveny tradiční materiály (pracovní listy), které sledovaly ty samé oblasti jako hry v aplikaci (viz výše). Cílem bylo porovnat výsledky a práci mezi tradiční formou a formou využívající tabletu. Jednotlivé výstupy: 68
6.3. Srovnávací studie tradičního screeningu školní zralosti a jeho elektronické formy na vybrané podmnožině studijních předpokladů 1. V rámci srovnání výsledků lze konstatovat, že jednotlivé hry v aplikaci odpovídajícím způsobem dovedly sledovat tradiční pojetí pracovních listů. To znamená, pokud děti aplikací a hrami v ní začaly, bylo možné jejich úroveň dobře odhadnout a bylo snadné predikovat, jak si děti poradí s pracovními listy. To znamená, pokud děti chybovaly v oblasti předmatematických představ, chybná řešení se objevila i v pracovních listech (v tradiční podobě), pokud děti vykazovaly vysokou úspěšnost v oblasti zrakové diferenciace, pak tomu tak bylo i ve srovnávací pracovních listech. Poměrně vysoká korelace výsledků z aplikace a zjištěných poznatků z běžné formy screeningu hovoří o dobře zvolené vnitřní struktuře a vystavěné náročnosti jednotlivých na sebe navazujících úkolů. Na druhou stranu je potřeba zmínit, že děti, začínající s tradičními pracovními listy, tak mohly projít do jisté míry určitou přípravou na hry v tabletu, které po formální stránce byly pochopitelně jiné, ale obsahová rovina byla podobná. 2. V několika případech děti dosáhly lepších výsledků v první tradiční verzi a nižších výsledků v aplikaci. Tyto děti měly zkušenosti s tabletem, tudíž se nemohlo jednat o vliv „první zkušenosti“ na výsledek. Mnohem zásadnější bude patrně vliv koncentrace a úrovně pracovní zralosti. Nižší výsledky se objevily u dětí, které měly výkyvy v pozornosti či výkyvy v pracovním tempu (zbrklé, mírně impulzivní). Často přeslechly instrukci či řešily překotně a způsobem, který je napadl bez dostatečné zpětné korekce. 3. Ve sledovaném vzorku byly také děti, které neměly dosud žádnou zkušenost s tabletem. Na výkonnosti a dosaženém výsledku v rámci sledovaných oblastí se tento fakt významněji neprojevil. Předchozí nezkušenost s tabletem se odrážela v potřebě větší časové dotace na splnění úkolu (děti se učily, jak „táhnout“ předmět po displeji a jak ho pouštět). Jemné motorické pohyby byly zpočátku dosti křečovité, neuvolněné, a tedy i méně přesné. Ale v případě vybraných sledovaných oblastí tento fakt nesouvisel přímo s výkonem. (Pochopitelně jinak by tomu bylo v případě sledování grafomotoriky apod.) 4. Z psychologického hlediska by byl zajímavým tématem další rozbor a výzkum komunikace, potřeby komunikace, sdílené pozornosti a potřeby zpětné vazby dítěte. Při tradiční podobě práce s dítětem (pracovní listy doma i jinde) je komunikace přirozeně přítomna mezi dítětem a druhou osobou. V případě práce s tabletem, byť v přítomnosti druhého, se aktivní komunikace výrazně vytrácela. Ale podle reakce dětí potřeba komunikace zůstala. Musely přizpůsobit své chování hře na tabletu - ztišit se, aby slyšely instrukci, koncentrovat se na úkol, na zpětnou vazbu, 69
6. Testování zda úkol udělaly dobře či ne a podobně. Potřeba sdílení byla však evidentní, všechny děti chtěly určité momenty sdílet s někým druhým (byť pohledem, úsměvem na druhého, často chtěly doplnit vlastní komentář). V mnoha případech potřeba sdílení byla u dětí intenzivní. 5. Zajímavým bodem během práce s dětmi byl postřeh, že v přítomnosti druhého jim zpětná vazba v tabletové hře (byť pozitivní) nestačila. Často očekávaly nějaký komentář, poznámku i od druhého, pak pro ně celá situace nabyla „opravdového“ významu (ano, to se mi podařilo/ne, to jsem udělal s chybou). Druhá přítomná osoba jako by celou situaci „dítěte hrajícího na tabletu“ zasazovala do širšího rámce, kdy schvaluje a podporuje tento typ chování a her, a mohou se tak z toho radovat oba, či případně se k situaci druhá osoba může stavět kriticky.
6.3.3
Závěr srovnávací studie
Důležitým výsledkem testování bylo ověření, že některé vhodně zvolené oblasti ze screeningu školní zralosti je možné převést do formy tabletových her, které mohou predikovat a upozorňovat na případné obtíže dítěte poměrně dobře jako tradiční metody a postupy. V případě vyladění a dotažení her do ideální podoby by mohly být užitečným vodítkem a pomocným ukazatelem pro rodiče v otázkách, co jejich dítě umí, v čem je dobré a na které oblasti je potřeba upřít pozornost a kde potřebuje pomoci.
6.4
Úvaha nad výstupy z testování z hlediska herního designera
Po vyjádření psycholožky doplním též já své poznámky. Množství poznatků vycházejících z několika hodin testování v mateřské škole v Zákolanech se pokusím koncentrovat v následujícíh řádcích do logických celků. V podkapitolách prolnu závěry obecnějšího rázu s konkrétními situacemi z uživatelského testování.
6.4.1
Zpracování
Za významnou součást aplikace považuji příběh, který spojuje hry a napomáhá při vysvětlování zadání her. Dějová linka - sestavená dosti účelově - splnila vytyčený cíl. Přivedla děti přirozeným způsobem k úkolům v hrách. Malý princ jako hlavní hrdina též obstál, ač by se do budoucna mohl víc pohybovat po scéně. Na jeho promluvy a výzvy děti nezřídkakdy odpovídaly nahlas. Základní smysl hry si zapamatovala majorita dětí a po skončení uváděly, že sbíraly vodu pro Růži nebo zkrátka že měly „zalít kytku“. Pár jich k tomu dodalo i to, že pomáhaly uklízet. Na otázku, kdo byl průvodcem na planetě, 70
6.4. Úvaha nad výstupy z testování z hlediska herního designera se sešlo několik různě přesných odpovědí od „kluk“ přes „Princ“ až po „Malý princ“. Tři děti pojmenovaly Malého prince přesně, jelikož tuto postavu znaly. Celkově se jim hra po grafické stránce líbila, všímaly si některých detailů a na konci doceňovaly krásu Růže. Komentáře od tří dětí poukazovaly na to, že podobnou hru ještě neviděly (nehrály) - domnívám se, že tím byla myšlena hra v češtině a s příběhem, avšak nerad bych, aby bylo „přání otcem myšlenky“. Některé děti byly schopny popsat, co běžně hrají, a pár chlapců nás zarazilo znalostí - užiji-li slova skoro sedmiletého hocha - „brutálních“ her. Zmíněno bylo rozmačkávání mravenců (Ant Smasher), závodní hry a dívky hovořily o aplikaci Pou (jako tamagoči) či o omalovánkách.
6.4.2
Ovládání
Byl jsem příjemně překvapen lehkostí, s jakou děti procházely aplikací. Dotykové ovládání jim nečinilo potíže - asi i protože sedm dětí z deseti se s něčím podobným už setkalo. Princovy žádosti ohledně ovládání ( „Dotkni se mne a budeme pokračovat.“) byly natolik jasné, že žádné dítě nezaváhalo. Pokud dítě nikdy dříve s tabletem nepracovalo, mohlo se to promítnout do výsledného času hraní. Jedna dívenka s tabletem operovala bez vysvětlování - včetně gesta drag’n’drop, avšak objekty posouvala velice pomalu a pečlivě. Problematické se zdály předměty do určité velikosti, u těch drobných se stávalo, že jej dítě uchopilo až na podruhé, na potřetí. Zajímavé by mohlo být měření, jaké jsou hraniční rozměry plochy pro pohodlnou manipulaci. Zamykání možnosti doteku při vysvětlování Malého prince bylo místy zbytečné nebo i kontraproduktivní. Děti se řídily instrukcemi, avšak chtěly ihned danou věc vyzkoušet (ač třeba Princ stále mluvil). Nestávalo se, že by namátkou zkoušely, co se stane ve hře, bez toho aby aspoň pár slov nevyslechly od Malého prince. Neopouštěl bych zamykání dotyku úplně, může se hodit, ale navrhuji na obrazovku umístit informační ikonu znázorňující, že právě dotek není povolen. Přes rodičovské GUI v pravém horním rohu se žádné dítě nedostalo do menu, které není hráčům určeno. Childlock vyžadující dvojdotek pro potvrzení akce zafungoval. Možná ještě víc však pomohlo správné umístění mimo akční radius dítěte (jen jeden z deseti subjektů o tlačítka pro rodiče vůbec zavadil). Tuto tezi podporuje fakt, že daleko častěji se dětem podařilo shodit aplikaci na lištu přes ovládací tlačítka Android umístěna ve spodní části displeje (jejich fungování jsem v kódu aplikace neměnil). Není bez zajímavosti, že četnost tohoto narušení hry byla dána polohou tabletu. Děti měly tendenci začínat gesta před místem, kde se chtěly dotknout - pokud byl tablet položen na stole, často při „napřežení“ přejely přes tlačítka u dolního okraje. Stačilo tedy tablet naklonit o 30 či 45 stupňů, aby k incidentu docházelo méně často. Závěrečným doporučením by pro design rozsáhlejší hry bylo střídat různé typy gest, aby hraní nebylo v tomto směru jednotvárné. 71
6. Testování
6.4.3
Instrukce
Při psaní scénáře jsem hodnou chvíli strávil při formulaci zadání. Šlo o to, aby ve stručné větě zazněl cíl cvičení, aby každé slovo bylo dětem známé, aby byla návaznost na příběh a přitom bylo možné hru zadat nezávisle (kdyby byla spuštěna samostatně). Zároveň jsem se snažil o vyznění, které by neznělo vyloženě imperativně - „musíš to a to“ - spíše v kamarádské atmosféře. Při testování jsem tedy během instruování vždy zpozorněl, abych si poznamenal, jak se dítě s novou úlohou popasuje. V devadesáti procentech případů bylo zadání pochopeno správně. Výsledek strhává hra Muzika, kde činilo potíže slovo „slabika“. Ke hrám se ještě vyjádřím podrobněji. U dvou probíhá hodnocení, až když dítě zazvoní na zvonek. Některé na tento poslední úkon zapomnělo. Aplikace by mohla v takových chvílích dítě upozornit na požadovaný krok. Mimo toho by neškodilo umístit mezi ovládací prvky tlačítko „Replay“ na zopakování kompletního zadání, když se hráč přeslechne.
6.4.4
Hry
Jednou z mých největších obav bylo, že výsledky hraní budou vykazovat jeden z extrémů - buď pro každého budou hry jednoduché, nebo naopak nedokončitelné. Jelikož děti dosahovaly různých výkonů, označil bych aplikaci z tohoto hlediska za úspěšnou. Po testování jsme s Mgr. Pekárkovou určili potřebu zobrazení správného řešení, pokud dítě dělá opakovaně chyby. Hráči se snažili podle svého nejlepšího vědomí a svědomí, takže by jim to chtělo ukázat chyby, aby věděli, že se nejedná o nějakou „nespravedlnost“. K špatným výsledkům bych ještě přidal pro zajímavost a zamyšlení ojedinělý případ, kdy chtěl chlapec zkusit, co se stane, když něco udělá „špatně“.
6.4.5
Polička
Hra, v níž děti vybíraly ve více jak třiceti podúkolech, jaký předmět nepatří do řady podle různých kritérií, přišla na řadu jako první. Každý uživatel porozuměl, co se má dělat, a bavilo ho shazovat objekty z police dotekem. Myslím, že hra Polička byla jedna z nejlépe vystavěných co do obtížnosti. První lehké podúkoly - např. naprosto odlišný předmět v řadě - děti zvládaly hravě, však na těch posledních, nejtěžších cvičeních se už uživatelé rozvrstvili podle bystrosti.
6.4.6
Vysavač
Hra Vysavač byla podle výsledků pro děti nejjednodušší, ač ne všechny dosáhly stoprocentní úspěšnosti. Na základě určení polohy předmětu ( „Najdi míč za lampou.“) jej hráč měl vyhledat. Dobré hodnocení většiny dětí svědčí o tom, že zadávané předložky chápaly správně. Pro komplexnější otestování by do 72
6.4. Úvaha nad výstupy z testování z hlediska herního designera hry zaměřené na prostorovou orientaci mohly být zařazeny složitější vztahy jako vlevo, vpravo. Hru Vysavač si, možná i pro nenáročnost, děti nejvíce oblíbily. V rámci aplikace tedy není na škodu cvičení, které zvedne hráčům sebevědomí. Ještě by se na ní dalo pár drobností vybrousit. Některé objekty v místnosti nebyly zcela rozpoznatelné (konkrétně vana), přesto děti vždy vydedukovaly, čemu se pojem ze zadání nejvíc podobá.
6.4.7
Galerie
U Galerie, kde je zapotřebí dát obrazy do rámů podle časové posloupnosti, jsme při návrhu uvažovali o příkladném předvedení řešení. Nezahrnul jsem to do testovací verze a nyní ze zkušenosti mohu říci, že minimum dětí potřebovalo pomoci. Jednou, dvakrát se stalo, že dítě začalo řadit ne zleva doprava, ale opačně (vlastně proti směru, než čteme). Reakce aplikace by mohla být, že to nevyhodnotí chybně, ale ukáže dítku, jaké pořadí je preferované. Eventuálně by stačilo do prvního podúkolu vložit počáteční obrázek do rámu s předpokladem, že děti budou následovat jednou naučený vzor. Galerie byla rovněž obtížnostně nastavena korektně, děti se dostaly různě daleko.
6.4.8
Muzika
V předposlední hře byla zadávána slova a dítě je rozčleňovalo na slabiky. Mělo udeřit do bubínku podle jejich počtu. Jako u jediné hry bylo názorně předvedeno, jak cvičení řešit, a to na třech slovech - táta, les, babička. Nicméně přesto se děti nejvíce s hrou potýkaly. Po opakovaném neúspěchu se dobře uplatnila rada: „Zkus si slovo nejdřív vytleskat.“ A ukázka, jak na to. Jako první bylo dítěti předloženo jednoslabičné slovo (míč, kůl, mrak), avšak stávalo se, že lépe rozlišovaly děti slova dvouslabičná (máma, boty). Při bubnování občas hráč minul docela velkou plochu bubnu na obrazovce - což bylo zapříčiněno tím, že jako v realitě při bubnování pohyb začínal z větší výšky. V případě nestrefení se pomáhalo zobrazení počtu úderů (na displeji se objevují tečky za každý), pokud dítě tuto reakci na tabletu nevidělo, bouchnutí zopakovalo.
6.4.9
Planetky
Třídění a řazení objektů podle velikosti nebo počtu vyžadovalo největší zručnost. Dítě přesouvalo až dvanáct předmětů způsobem drag’n’drop na asteroidy a pak zvonilo na zvonek. Podobný úkol je ve hře Planetky opakován asi šestkrát, takže se trochu projevuje monotónnost. Ozvláštněním by bylo pohrát si s barvami planetek, nyní jsou všechny šedé. Pracnost, jednotvárnost a celková únava již po patnácti minutách soustředění vyústily u některých dětí v neklid, ale všechny se dobraly konce. 73
6. Testování
6.4.10
Výsledky
Z nasbíraných hodnot úspěšnosti a délky hraní lze vyčíst rozdílné schopnosti dětí, je to dobré pro přehled. Rodiče by to mohlo upozornit, na co se mohou soustředit při rozvoji dítěte. Když jsem dal výsledky měření do souvislosti s dalšími údaji, musel jsem konstatovat, že pro generalizaci mám k dispozici stále málo vzorků. Korelační matice atributů jako jsou již zmíněná data a k nim dále věk, pohlaví a zkušenost s dotykovým displejem neukázala nic signifikantního. Snad trochu naznačila vcelku logickou věc, že starší děti (s čímž souvisí vyspělost) měly o něco lepší hodnocení. Pro mne osobně je důležité, že se přes herní aplikaci dají zjišťovat relevantní informace a ponouká mne to k dalšímu testování. Základní anonymizovaná data jsou k dispozici online6
6.4.11
Motivace hráčů
Zábavnost a chytlavost jsou esence, bez kterých se oblíbená herní aplikace neobejde. Pokusil jsem se vyvážit jednotlivé části aplikace co do atraktivnosti - k tomu musí mít vývojář zkušenost s prací s dětmi nebo dobré konzultanty. Kompaktnost vyvíjeného produktu byla potvrzena, jelikož deset dětí z deseti dokončilo všechna cvičení a až na výjimky byly bez přestání zaujaty. Byl jsem rád, že promluvy Malého prince vyvolávaly reakce a emoce. Na otázky hlavního hrdiny děti přitakávaly. Klíčová byla též slovní zpětná vazba, kterou Princ komentuje korektnost/nekorektnost splnění zadání. Strukturálně jsem rozčlenil zpětnou vazbu jen na pozitivní a negativní, z určité množiny „hlášek“ se načte náhodně jedna. Některé se dětem líbily a rozesmávaly je („Valím oči!“, „Néé, já se picnu.“). Mezi úpravy navrhuji zařadit sofistikovanější systém zpětné vazby, protože rozdílnost v expresivitě výrazů hráč vnímá jako odstupňování vážnosti chyby. Mohlo se kupříkladu, trochu nešťastně, stát, že po jedné malé chybce zaznělo: „Tak ne, dneska nemáš svůj den.“, což by se mělo objevit až po opakovaném pochybení. Již testování s prvním hochem ukázalo, že odměňování sbíráním kapek do konývky může přinést osobní zájem pokračovat v příběhu. Těšil se, jak bude hladina vody růst. Některé děti vyjadřovaly obavu, aby konev nepřetekla. Rozhodně to byl pro ně důležitý ukazatel úspěšnosti. Myslím, že délka příběhu (cca 20min) byla na hraně pozornosti dětí, asi by vydržely ještě o něco déle při větší akčnosti scén. Všímali jsme si určité neposednosti při poslední z pěti her. Napadlo nás s Mgr. Pekárkovou zařadit do motivačních výpovědí Malého prince též oznámení, kolik úkolů ještě zbývá do překonání aktuálně probíhající hry. 6 Sdílený zip archív je umístěn na adrese http://www.otom.info/archiv-vysledku-z-te stovani-bp/
74
6.4. Úvaha nad výstupy z testování z hlediska herního designera
6.4.12
Shrnutí
Testování považuji za vydařené a současnou verzi aplikace za dobrý základ pro pokračování. Každé z dětí sdělilo, že by si znovu zahrály, kdyby byla možnost. Chápaly jednotlivá zadání, těšilo je sbírat kapky pro Růži a při hraní se jim něco dařilo a něco ne. Práce s dětmi přinesla své ovoce v podobě poměrně dlouhého seznamu detailů na vylepšení. Jejich začlenění do aplikace je otázkou času.
6.4.13
Vylepšení navržená po testování
• Ovládání Tlačítko zapauzování hry Tlačítko zopakování instrukce Ikona „dotek zakázán“ ve chvíli, kdy aplikace nereaguje na dotek Ošetřit tlačítka Android zařízení • Hry Obecně Používat dostatečně velké objekty k manipulaci Ukazovat správné řešení po chybě • Hra Galerie Pokud jsou obrázky seřazeny v obráceném pořadí, upozornit na to uživatele • Hra Muzika Začínat dvouslabičným slovem Ukázat animací, jak se vytleskává a zopakovat to, pokud bude hráč stále chybovat • Hra Planetky Srovnávat věci „magneticky“ ke středu planetek Pokud dítě zazvoní a chce ukončit úkol, ač jsou nějaké věci ještě nezařazeny, hra by měla vyžadovat jejich umístění Měnit barvy, tvary, polohy planetek mezi úkoly pro oživení • Zpětná vazba Hlásit hráči, kolik mu už jen zbývá úkolů ke splnění Měnit styl slovní zpětné vazby podle četnosti chyb • Další Propracovanější ukládání dat, aby byly připraveny k dalším operacím 75
Závěr Pravděpodobně budeme díky pokroku svědky toho, že technologie budou pronikat víc a víc do naší blízkosti. Ač s tím někdo nemusí souhlasit, je pravdou, že se k přístrojům dostávají děti od útlého věku. Při našem testování vyšlo najevo, že sedm dětí z deseti už dříve ovládalo dotykový displej. Proto je třeba dobře rozumět, jakým způsobem tablet a jemu podobná zařízení ovlivňují vývoj dítěte. Poté se můžeme snažit maximalizovat pozitivní dopady a zamezit těm negativním. I během mé činnosti na bakalářské práci se svět aplikací pohyboval vpřed. Vznikaly a vznikají nové hry a vývojářská studia[45]. V zahraničí je rodičům někdy nabídnuto zkoumat výsledky svých ratolestí, a například v Holandsku už funguje několik škol, kde se učí jen na tabletech[10]. U nás v ČR trend postupuje pomaleji. Chytré aplikace v češtině pro předškoláky chybí, obzvlášť takové, které by dokázaly zaujmout příběhem a zpracováním. To je motivace, proč dokončit mou aplikaci až do podoby reálného produktu. Zároveň považuji bakalářskou práci na dané téma za přínosnou, jelikož shrnuje základní principy použitelné při tvorbě her pro předškolní děti. Aplikace a její následné testování prokázaly, že velice zajímavé by mohlo být sbírání dat při hraní, když se děti baví. Síla tohoto způsobu měření je v možnosti porovnání výsledků všech uživatelů. Strojově zaznamenané údaje mohou vydat díky dataminingu své svědectví. Myslím, že při větším vzorku by se mohly objevit určité vzorce poskytující informace o lidském myšlení. Jak jsem zmínil, spatřuji potenciál v kumulaci dat z herně-výukových aplikací. Avšak mé zkušenosti popsané v kapitole Testování, kdy jsem spolupracoval s psycholožkou Mgr. Simonou Pekárkovou, naznačují, že data samotná nestačí a nelze se na ně dívat slepě. Možná to je každému zřejmé, avšak pro korektnost bych to rád zopakoval zde v závěru. Zjištěné údaje při hraní musí být interpretovány odborně. Měření výsledků může říci, na kolik procent je dítě v konkrétních úlohách úspěšné (neúspěšné), ale proč tomu tak je a jestli je to špatně, nebo dobře by měl komentovat psycholog. Pokud bych měl zhodnotit aktuální stav aplikace, srovnal bych softwarové 77
Závěr požadavky (sekce 1.4) a implementovanou funkcionalitu. Všechny „nutné“ požadavky jsou ve finální verzi zahrnuty a rovněž většina „chtěných“ a „volitelných“ (snad až na ovládání gyroskopem). Herní část aplikace je ucelená a podle uživatelského testování má zábavní potenciál. Při vývoji programu jsem uplatnil nápady vycházející z analýzy softwaru pro děti a též připomínky od psycholožky. Pro rodiče aplikace nabízí základní informace o výkonech jejich potomků, leč v testované verzi nebylo rozhraní pro rodiče dotaženo do reprezentativní podoby. Aplikace poskytuje i určitá data psychologům k rozboru. Obsahově byla aplikace dostatečně bohatá na otestování, avšak pro opakované hraní by měla být rozšířena. Pro další vylepšení by šlo zavést dílčí změny reagující na výstupy testování. Mimo toho by bylo dále třeba zajistit přenositelnost aplikace mezi zařízeními (potenciálně i mezi platformami). Zatím není připravena pro vstup na trh, avšak nynější fáze je dobrým vstupním bodem. Má osobní vize efektivního využití technologií ve vzdělávání ještě čeká na naplnění. Bakalářská práce na FIT ČVUT mi momentálně dala rozhled a chuť pracovat na dalších aplikacích rozvíjejících schopnosti dětí.
78
Literatura [1] AndEngine.org [online]. [cit. 2014-02-12]. Dostupné z: http://www.anden gine.org/blog/ [2] ANGRYANT. Is Unity Engine written in Mono/C#? or C++. UnityAnswers [online]. [cit. 2014-04-21]. Dostupné z: http://answers.unity3d.c om/questions/9675/is-unity-engine-written-in-monoc-or-c.html [3] AppBrain. [online]. [cit. 2013-11-22]. Dostupné z: http://www.appbrain.c om/stats/number-of-android-apps [4] Application. Unity [online]. [cit. 2014-04-21]. Dostupné z: https://docs .unity3d.com/Documentation/ScriptReference/Application.html [5] Art Asset Best-Practice Guide. Unity [online]. [cit. 2014-04-21]. Dostupné z: http://docs.unity3d.com/Documentation/Manual/HOWTO-Ar tAssetBestPracticeGuide.html [6] BALDWIN, Mark. Game design document template. [online]. [cit. 2014-0305]. Dostupné z: http://gamesed.com/files/baldwin_game_design_doc ument_template.doc [7] BARBAGALLO, Ralph. Developing for Android and iOS with Unity3D: Lessons Learned. In: [online]. [cit. 2014-04-21]. Dostupné z: http://ralphbarbagallo.com/2012/03/29/developing-for-andro id-and-ios-with-unity3d-lessons-learned/ [8] BEDNÁŘOVÁ, J.: Předčíselné psychologická poradna, 2004.
představy.
Brno:
Pedagogicko-
[9] BEDNÁŘOVÁ, Jiřina a Vlasta ŠMARDOVÁ. Diagnostika dítěte předškolního věku: Co by dítě mělo umět ve věku od 3 do 6 let. Brno: Computer Press, a.s., 2011. ISBN 978-80-251-1829-0 79
Literatura [10] BLOOM, Adi. A truly free school. In: [online]. 2014-04-23 [cit. 201404-27]. Dostupné z: http://www.tes.co.uk/article.aspx?storyCode= 6424542 [11] BRDIČKA, Bořivoj. Velký MOOC boom pokračuje. Metodický portál: Články [online]. 01. 10. 2012, [cit. 2013-12-16]. Dostupný z : http://spom ocnik.rvp.cz/clanek/16415/VELKY-MOOC-BOOM-POKRACUJE.html. ISSN 1802-4785. [12] BUSINESS INSIDER. Actually, The US Smartphone Revolution Has Entered The Late Innings [online]. 2012 [cit. 2013-12-16]. Dostupné z: http://www.businessinsider.com/us-smartphone-market-2012-9 [13] COMPTON, Mike. Game Evaluation Criteria: 5 Minutes or Less. [online]. s. 2 [cit. 2014-03-05]. Dostupné z: http://edweb.sdsu.edu/courses/edt ec670/Game_Evaluation_Criteria.pdf [14] Community. Unity [online]. [cit. 2014-04-21]. Dostupné z: http://unit y3d.com/community [15] Category: Video game genres. In: Wikipedia: the free encyclopedia [online]. San Francisco (CA): Wikimedia Foundation, 2001- [cit. 2014-03-05]. Dostupné z: http://en.wikipedia.org/wiki/Category:Video_game_gen res [16] Dashboards. Android Developer [online]. [cit. 2014-04-21]. Dostupné z: http://developer.android.com/about/dashboards/index.html [17] DE SAINT-EXUPÉRY, Antoine. Malý princ. Praha: Albatros, 1989. Dostupné z: http://www.vrana.cz/princ/ [18] DE BYL, Penny. Getting Started with Unity3D for Android. [online]. [cit. 2014-04-21]. Dostupné z: http://vimeo.com/17919196 [19] DESURVIRE, Heather, Martin CAPLAN a Jozsef A. TOTH. Using Heuristics to Evaluate the Playability of Games. [online]. 2004, s. 4 [cit. 201403-05]. Dostupné z: http://userbehavioristics.com/downloads/usin gheuristics.pdf [20] Documentation. Unity [online]. [cit. 2014-04-21]. Dostupné z: http://un ity3d.com/learn/documentation [21] DOSTÁL, Jiří. Multimediální, hypertextové a hypermediální učební pomůcky: Trend soudobého vzdělávání [online]. 2009[cit. 2014-02-12]. Dostupné z: http://www.jtie.upol.cz/clanky_2_2009/multimedialni_h ypertextove_a_hypermedialni_ucebni_pomucky.pdf 80
Literatura [22] ECMAScript. In: Wikipedia: the free encyclopedia [online]. San Francisco (CA): Wikimedia Foundation, 2001- [cit. 2014-04-21]. Dostupné z: http: //en.wikipedia.org/wiki/ECMAScript [23] EDWARDS, Ralph. The Design Doc: A little "how to"on writing a basic design document. [online]. [cit. 2014-03-05]. Dostupné z: http://www.ign .com/articles/2006/06/20/game-design-101-the-design-doc [24] ERIC5H5. Performance differences in UnityGUI versus GuiText/Texture?. UnityAnswers [online]. [cit. 2014-04-21]. Dostupné z: http://answers.unity3d.com/questions/13433/performance-differ ences-in-unitygui-versus-guitext.html [25] FINE, Richard. MonoBehaviour Lifecycle Diagram. In: [online]. [cit. 201404-21]. Dostupné z: http://www.richardfine.co.uk/junk/unity%20lif etime.png [26] Frame rate. In: Wikipedia: the free encyclopedia [online]. San Francisco (CA): Wikimedia Foundation, 2001- [cit. 2014-04-21]. Dostupné z: http: //en.wikipedia.org/wiki/Frame_rate [27] Free Music Archive [online]. [cit. 2014-04-21]. Dostupné z: http://free musicarchive.org/ [28] Freesound [online]. [cit. 2014-04-21]. Dostupné z: https://www.freesou nd.org/ [29] Get the Android SDK. Android Developer [online]. [cit. 2014-04-21]. Dostupné z: http://developer.android.com/sdk/index.html [30] Getting Started with Android Development. Unity [online]. [cit. 201404-21]. Dostupné z: http://docs.unity3d.com/Documentation/Manual/ android-GettingStarted.html [31] Google Play. [online]. [cit. 2013-11-22]. Dostupné z: https://play.googl e.com/store [32] Google Play: AndEngine Examples [online]. [cit. 2014-02-12]. Dostupné z: https://play.google.com/store/apps/details?id=org.and dev.andengine.examples&hl=cs [33] Herní návrhový vzor Herní smyčka. [online]. [cit. 2014-03-05]. Dostupné z: http://newwiki.ceske-hry.cz/Hern%C3%AD_n%C3%A1vrhov%C 3%BD_vzor_Hern%C3%AD_smy%C4%8Dka [34] HUNICKE, Robin, Marc LEBLANC. MDA: A Formal Approach to Game Design and Game Research. s. 5. Dostupné z: http://www.cs.northwest ern.edu/~hunicke/MDA.pdf 81
Literatura [35] IGDA - ITERNATIONAL GAME DEVELOPERS ASSOCIATION. 2008-2009 Casual Games White Paper [online]. 2009 [cit. 2014-02-10]. Dostupné z: http://archives.igda.org/casual/IGDA_Casual_Games_W hite_Paper_2008.pdf [36] INGRAHAM, Nathan. THE VERGE. Apple announces 1 million apps in the App Store, more than 1 billion songs played on iTunes radio [online]. [cit. 2014-03-02]. Dostupné z: http://www.theverge.com/2013/10/ 22/4866302/apple-announces-1-million-apps-in-the-app-store [37] Inmite. [online]. [cit. 2013-11-22]. Dostupné z: http://www.inmite.eu/en [38] Intellijoy. [online]. [cit. 2013-11-22]. Dostupné z: http://www.intellijo y.com/ [39] JOBS, Steve. Steve Jobs introducing the iPad (2010). In: SMOOTHY569. YouTube [online]. 2013 [cit. 2014-02-10]. Dostupné z: http://www.youtu be.com/watch?v=apYHiHszOok#t=12m21s [40] Khanova škola. [online]. [cit. 2013-12-16]. Dostupné z: https://khanov askola.cz/ [41] KOSMOH. BinaryFormatter vs. Manual Serializing. Code Project [online]. [cit. 2014-04-21]. Dostupné z: http://www.codeproject.com/Artic les/311944/BinaryFormatter-or-Manual-serializing [42] KRYPTOS. GUI textures vs. planes for menu. UnityAnswers [online]. [cit. 2014-04-21]. Dostupné z: http://answers.unity3d.com/questions /243367/gui-textures-vs-planes-for-menu.html [43] Learn. Unity [online]. [cit. 2014-02-12]. Dostupné z: http://unity3d.com /learn [44] Licence. Unity [online]. [cit. 2014-02-12]. Dostupné z: http://unity3d.c om/unity/licenses [45] Lipa learning. [online]. [cit. 2014-04-27]. Dostupné z: http://www.lipal earning.com/en/about [46] List of game engines. In: Wikipedia: the free encyclopedia [online]. San Francisco (CA): Wikimedia Foundation, 2001- [cit. 2014-05-06]. Dostupné z: http://en.wikipedia.org/wiki/List_of_game_engines [47] LOPEZ, Adrian. Controlling Aspect Ratio in Unity. Theory and Principles of Game Design [online]. [cit. 2014-04-21]. Dostupné z: http://gamedesigntheory.blogspot.cz/2010/09/controlling-aspe ct-ratio-in-unity.html 82
Literatura [48] MCPHERSON, David J. The Digital Disciple’s Tablet Screen Resolution Chart. The Digital Disciple [online]. [cit. 2014-04-21]. Dostupné z: http://thedigitaldisciple.net/wp-content/uploads/Scr een-Master-3-2014.jpg [49] Measuring Performance with the Built-in Profiler. Unity [online]. [cit. 2014-04-21]. Dostupné z: http://docs.unity3d.com/Documentation/Man ual/iphone-InternalProfiler.html [50] Messachusetts Institute of Technology: Open Course Ware. [online]. [cit. 2013-12-16]. Dostupné z: http://ocw.mit.edu/index.htm [51] METODICKÝ PORTÁL. Školní zralost [online]. 2011-09-12 [cit. 201402-11]. Dostupné z: http://wiki.rvp.cz/Knihovna/1.Pedagogick%C3%BD _lexikon/S/%C5%A0koln%C3%AD_zralost [52] MITRA, Sugata. Kids can teach themselves. In: [online]. [cit. 2014-01-31]. Dostupné z: http://www.ted.com/talks/sugata_mitra_shows_how_kid s_teach_themselves.html [53] Mobile Game Engines [online]. [cit. 2014-05-06]. Dostupné z: http://mo bilegameengines.com/ [54] MonoBehaviour. Unity [online]. [cit. 2014-04-21]. Dostupné https://docs.unity3d.com/Documentation/ScriptReference/Mon oBehaviour.html
z:
[55] NOVÁČKOVÁ, Jana. Jak se z touhy učit se stane sběratelství známek. In: [online]. [cit. 2014-03-05]. Dostupné z: http://www.youtube.com/watch?v= 7cnxm-OatVs [56] Optimizing Graphics Performance. Unity [online]. [cit. 2014-04-21]. Dostupné z: http://docs.unity3d.com/Documentation/Manual/Optimizi ngGraphicsPerformance.html [57] Parent Map. [online]. [cit. 2013-11-22]. Dostupné z: http://www.parentm ap.com/article/20-educational-android-apps-for-kids [58] Pencil Project. [online]. [cit. 2014-03-05]. Dostupné z: http://pencil.e volus.vn/ [59] PHILLIPS, Andrew. Software Development Methodologies. [online]. 2010 [cit. 2014-03-05]. Dostupné z: http://www.codeproject.com/Articles/ 124732/Software-Development-Methodologies [60] Physics. Unity [online]. [cit. 2014-04-21]. Dostupné z: http://unity3d.c om/unity/quality/physics 83
Literatura [61] Project Anarchy [online]. [cit. 2014-02-12]. Dostupné z: http://projec tanarchy.com/about [62] PRŮCHA, J., Walterová, E., Mareš, J. Pedagogický slovník. Praha: Portál, 2003. ISBN: 80-7178-772-8 [63] Scripting language. In: Wikipedia: the free encyclopedia [online]. San Francisco (CA): Wikimedia Foundation, 2001- [cit. 2014-04-21]. Dostupné z: http://en.wikipedia.org/wiki/Scripting_language [64] SEIBER, Paul. How do you write software requirements? What are software requirements? What is a software requirement?. In: [online]. [cit. 2014-01-13]. Dostupné z: http://hubtechinsider.wordpress.com/2011/ 07/28/how-do-you-write-software-requirements-what-are-softwa re-requirements-what-is-a-software-requirement/ [65] Stats Counter. [online]. [cit. 2014-02-12]. Dostupné z: http://gs.statc ounter.com/#tablet-os-ww-monthly-201401-201401-bar [66] STŘELCOVÁ, Gabriela. iOS vs Android. Metodický portál: Články [online]. 19. 12. 2013, [cit. 2014-02-12]. Dostupný z: http://spomocnik.rvp .cz/clanek/18205/IOS-VS-ANDROID.html. ISSN 1802-4785. [67] Svět Androida. [online]. [cit. 2013-11-22]. Dostupné z: http: //www.svetandroida.cz/svetandroida-doporucuje-aplikace-a-h ry-pro-nejmensi-201203 [68] TULLEKEN, Herman. 50 Tips for Working with Unity (Best Practices). In: Dev Mag [online]. [cit. 2014-04-21]. Dostupné z: http://devmag.org.z a/2012/07/12/50-tips-for-working-with-unity-best-practices/ [69] Tutorial. Unity [online]. [cit. 2014-04-21]. Dostupné z: http://unity3d .com/learn/tutorials/modules [70] UNESCO. Education counts: Towards the Millennium Development Goals [online]. 2. vyd. Francie: UNESCO, 2011, 40 s. Dostupné z: http: //unesdoc.unesco.org/images/0019/001902/190214e.pdf [71] Unity[online]. [cit. 2014-02-12]. Dostupné z: http://unity3d.com/ [72] Video game genres. In: Wikipedia: the free encyclopedia [online]. San Francisco (CA): Wikimedia Foundation, 2001- [cit. 2014-03-05]. Dostupné z: http://en.wikipedia.org/wiki/Video_game_genres [73] WARREN, Christina. MASHABLE. IOS vs. Android: What App Platform Should I Choose? [online]. 2013, 2013-09-16 [cit. 2014-02-12]. Dostupné z: http://mashable.com/2013/08/16/ios-android-developmen t/ 84
Literatura [74] WHITEHILL, Bruce. Game Evaluation Sheet. [online]. [cit. 2014-03-05]. Dostupné z: http://thebiggamehunter.com/game-evaluation-sheet/ [75] YORICK. 4 Ways To Increase Performance of your Unity Game. In: Paladin studio [online]. [cit. 2014-04-21]. Dostupné z: http://www.paladinstudios.com/2012/07/30/4-ways-to-increase-p erformance-of-your-unity-game/
85
Příloha
Představení psycholožky Mgr. Simony Pekárkové Vystudovala Pedagogickou fakultu Univerzity Karlovy v Praze, obor psychologie a speciální pedagogika a ukončila pětiletý psychoterapeutický výcvik v systemické terapii. Několik let pracovala pro společnost Člověk v tísni, o. p. s. jako vedoucí programu Podpory vzdělávání dětí a mládeže v sociálně vyloučených lokalitách, následně jako psycholožka ve Speciálně pedagogickém centru pro děti s mentálním postižením. V dalších letech let působila jako psycholožka, speciální pedagožka a rodinná terapeutka v pedagogicko-psychologické poradně. V roce 2011 spoluzaložila občanské sdružení Prevence ve škole, kde se věnovala psychologické a terapeutické činnosti. Dlouhodobě pracuje s třídními kolektivy a vede programy zaměřené na řešení závažných konfliktů ve třídních kolektivech. Připravovala a vedla projekty zaměřené na podporu dětí se specifickými vzdělávacími potřebami, podporu učitelských sborů a rodičů. Od roku 2012 je členem expertní skupiny projektu „Primární prevence ohrožení rodiny“ společnosti Sirius, o.p.s. Podílela se na zajišťování služeb Centra pro rodinu Vega v rámci tohoto pilotního projektu. Je spoluautorkou několika publikací, kvalitativní analýzy inteligenčního testu SON-R a odborných článků. Připravuje a lektoruje odborné semináře, tematické vzdělávací přednášky a workshopy z oblasti psychologie a speciální pedagogiky pro pedagogy, dobrovolníky a pracovníky různých organizací.
87
A
Příloha
Strukturované požadavky na aplikaci Tabulka B.1: Přehled požadavků na aplikaci # 1 1.a 2 2.a
2.b 3 3.a
3.b 3.c
3.d
Požadavek Aplikace jako celek Aplikace by měla být dostupná na tabletu Ovládání Aplikace by měla být ovládána pomocí dotykové obrazovky (dotek, tažení) Aplikace by se dala ovládat pomocí gyroskopu Rozhraní pro dospělé Rozhraní pro dospělé by mohlo být ukryto před dětským uživatelem
Typ Priorita Verifikace
Mohlo by jít nastavit maximální dobu hraní V rozhraní pro dospělé by měly být přístupné statistiky hraní jednotlivých uživatelů Statistiky by se mohly dát exportovat ve formátu csv
N
Nutný
Spuštění na tabletu
F
Nutný
Test ovládání
F
Volitený
Test ovládání
F
Chtěný
F
Chtěný
F
Nutný
Testování s 5-7letým uživatelem - prostupnost do rozhraní pro dospělé (80% úspěných testů) Test nastavení doby hraní Test zobrazení statistik hráčů
F
Volitelný Test exportu statistik Pokračuje na další stránce
89
B
B. Strukturované požadavky na aplikaci
# 4 4.a 4.b
4.c
4.d
5 5.a 5.b
5.c 6 6.a
6.b
6.c
6.d
90
Tabulka B.1 – Požadavky na aplikaci pokračování z minulé stránky Požadavek Typ Priorita Verifikace Autentizace Měl by jít vytvořit profil F Nutný Test vytvoření profilu pro dětského uživatele Uživatel by měl být iden- F Nutný Test vytvoření profilu tifikován uživatelským jménem a obrázkem Dětský uživatel by měl být F Nutný Testování s 5-7letým schopen nesložitého přihláuživatelem - přihlášení šení výběrem svého profilo(80% úspěných testů) vého obrázku Mělo by se jít dostat do F Nutný Test spuštění bez přiherní části aplikace bez přihlášení hlášení Herní část - obecně Hra by měla být provázana N Nutný Dostupný scénář příjednotným příběhem běhu Dětský uživatel by mohl F Chtěný Popsané možnosti interagovat s aplikací i mimo děj mimo osu příběhu (oživující prvky herního světa) Hra by mohla být zpraco- N Chtěný Doložení 3D modelů vána ve 3D Herní část - úlohy Aplikace by měla obsaho- N Nutný Výstupní data z úloh vat úlohu zaměřenou na budou reflektovat jedscreening základních matenotlivé dovednosti matických představ Aplikace by měla obsaho- N Nutný Výstupní data z úloh vat úlohu zaměřenou na budou reflektovat jedscreening prostorové oriennotlivé dovednosti tace Aplikace by měla obsaho- N Nutný Výstupní data z úloh vat úlohu zaměřenou na budou reflektovat jedscreening časové orientace notlivé dovednosti Aplikace by měla obsaho- N Nutný Výstupní data z úloh vat úlohu zaměřenou na budou reflektovat jedscreening sluchového vnínotlivé dovednosti mání Pokračuje na další stránce
# 6.e
6.f 6.g 6.h 6.i
6.j
7 7.a
7.b
7.c
Tabulka B.1 – Požadavky na aplikaci pokračování z minulé stránky Požadavek Typ Priorita Verifikace Aplikace by měla obsaho- N Nutný Výstupní data z úloh vat úlohu zaměřenou na budou reflektovat jedscreening zrakového vnínotlivé dovednosti mání Úlohy by měly být vnitřně F Nutný Rozpis škálování obtížrozčleněny podle obtížnosti nosti Zadávání pravidel úkolu by F Nutný Kontrola zadávání zvumělo proběhnout slovně kem Úkol by mohl být předve- F Chtěný Kontrola nastínění ředen animací šení úkolu Během hraní by měla F Nutný Kontrola zvukového a být uživateli dána zpětná grafického zpracování vazba na jeho akce zvukem hry a graficky Průchod mezi jednotlivými F Chtěný Test postupného zpříúkoly by mohl být lineární stupňování úloh zpřístupní se další, až když je odehrána předchozí hra; „zpřístupnění“ nebude vázáno na úspěšnost ve hraní Měření za běhu aplikace Při běhu aplikace by měl F Nutný Test zobrazení celkobýt měřen celkový čas a vého času měl by jít zobrazit v rozhraní pro dospělé Během hraní konkrétního F Nutný Test zobrazení statistik úkolu by měl být měřen z hráčů čas, který uživatel potřeboval k jeho dokončení Během hraní konkrétního F Nutný Test zobrazení statistik úkolu by měla být zjištěna z hráčů procentuální úspěšnost po každém dokončení
91
Příloha
Scénář herní části aplikace C.1
Obecné
Poznámky • Oslovování hráče musí být genderově neutrální • Promluvy, které mohou být přehrány odděleně, je třeba oddělovat intonačně • Promluvy Malého prince jsou uvedeny v uvozovkách (nikdo jiný zatím přímou řeč v aplikaci nepoužívá)
Název Malý princ - Jsem připraven na školu?
Koncept Postava Malého prince provádí hráče po své planetce ve vesmíru, zadává mu úkoly.
Vybrané předměty vhodné do hry Autíčko, brýle, hrnek, jablko, kladivo, kočárek, koník, kytara, labuť, láhev, míč, mrkev, panenka, telefon, toaletní papír, tučňák, vláček
Abstraktní předměty Písmenka (A, B, . . . , Z), čísla (1, 2, . . . , 10) 93
C
C. Scénář herní části aplikace
Pozitivní zpětná vazba „Skvěle.“, „Moc dobře.“, „Výtečně.“, „Žůžo.“, „Perfekto.“, „Smekám.“, „To by šlo.“, „Valím oči.“, „Paráda.“
Negativní zpětná vazba „To nebylo dobře.“, „Tak ne, snad příště.“, „Ach, nééé!“, „Já bych na to šel jinak.“, „Nepodařilo se.“, „Já se picnu!“, „Nene, dneska nemáš svůj den.“, „Nene, ale nevzdávej to.“
Scéna Výběr uživatele Cílem je autentizace hráče, na výběr budou obrázky patřící k jednotlivým profilům. „Vyber svůj obrázek.“
C.2
Lineární příběh
Start na planetce Hráč se poprvé potkává s Malým princem, seznamují se. V pozadí Prince je připoutaná vzducholoď, vedle něj obraz Exupéryho na věšáku. „Zdravím, jsem moc rád, že ke mně někdo zavítal na planetku! Moc návštěv tu nemívám! Já jsem Malý princ a vymyslel mne pan Exupéry. Provedu tě tady kolem. Chceš? Dotkni se mne a pustíme se do toho.“ Čekání na dotek. (Eventuální opakování předchozího.) „Perfektní. Už se těším, jak ti to tady ukáži.“ Ukázka toho, že bude hráč dostávat za odměnu kapičky, pokud se mu bude dařit. „Tady máš lesklou kapičku do konývky. Nakonec tě vezmu za svou Růží a společně ji zalijeme.“
Vně připoutané vzducholodi Princ stojí na planetce pod vzducholodí. „Jednoho rána jsem viděl tuhle vzducholoď kroužit kolem mé planetky. Asi někomu uletěla. Pokud si pro ni původní majitel přijde, rád mu ji vrátím. Zatím tam mám pár svých věcí, pojďme je dovnitř prozkoumat!“
Uvnitř vzducholodi Pohled na Prince mezi věcmi v gondole. „Tady toho je. Ještě jsem to tu moc nepoklidil. Aspoň jsem začal srovnávat hračky a jiné věci na poličky. Ne vždy se mi to ale povedlo. Pomůžeš mi prosím?“ 94
C.2. Lineární příběh Hra Poličky Pohled na věci na poličce. „Shoď prstem z poličky tu věc, která se liší od ostatních. Já ji dole budu chytat.“
O cestování, kufr/vysavač Opět pohled na Prince v gondole. Vedle sebe má nově přístroj - napůl kufr, napůl vysavač. Vizuálně vypadá jako kufr s hadicí od luxu. „Díky moc. Na poličky si dávám i suvenýry z cest. Ohromně rád se vypravuji do okolí i dál do vesmíru. Jen nerad balím na cesty. Na to mám ale speciální vysavač. Nebo kufr? Koukej, ten dokáže vcucnout, co potřebuji.“
Hra Vysavač Herní scéna, kde jsou v místnosti různě rozmístěny předměty. „Řeknu ti přesně, kde svou věc hledám. Když se jí dotkneš, vysaje ji vysavač.“ „Najdi. . . “ . . . předmět (například „. . . telefon. . . “) . . . místo (například „. . . v krabici.“) Místa pro hru Vysavač Mezi kamny a hodinami, Mezi židlí a stolem, Na kamnech, Na židli, Nad hodinami, Nad knihami na polici, Pod oknem, Pod stolem, Před hodinami, Před radiem, V krabici, Ve vaně, Vedle vany, Vedle židle, Za květinou, Za lampou
Focení U Prince je otevřený kufr s nasátými věcmi. „Hele, co vše jsme vyluxovali, dobrá práce. Ještě si vzít foťák a mohl bych vyrazit na cesty. Rád fotím místa, kam se vypravím. I ze Země mám fotky. Mrkneme na ně a rovnou je pověsíme na zeď.“
Hra Galerie Na stěně jsou prázdné rámečky, pod nimi jsou fotky, které lze přetáhnout do rámečku. „Dej obrázky do rámečků. Seřaď je podle toho, jak po sobě následují - co bylo dříve a co později.“
Po hře Galerie V části gondoly, kde jsou za Princem pověšeny snímky v rámečcích. „Perfektní. Povedlo se nám udělat hotovou galerii. Půjdeme ven?“ 95
C. Scénář herní části aplikace
Na planetce V krajině planetky se na trávě pase Beránek. „Mého Beránka jsme ještě neviděli. Zrovna se pase. Když jej chci uspat, zpívám mu. Hmm. Zahrajeme si na bubínek a třeba spolu složíme písničku!“
Hra Muzika Stále na planetce, na displeji před hráčem je bubínek. Zácvičný příklad Blána bubnu se sama hýbe podle Princova komentáře. „Řeknu slovo a ty ho zkus vybubnovat. Hele, podívej takhle: ’tá- ta’. Ťukl jsem dvakrát, protože toto slovo má dvě slabiky. ‘Pes’. Ťukl jsem jednou, protože slovo má jednu slabiku. ‘Ba-bič-ka’. Ťukl jsem třikrát, protože to slovo mělo tři slabiky.“ Instrukce se zopakuje. „Řeknu slovo a ty ho zkus vybubnovat. Kolik slabik slovo má, tolikrát udeř na bubínek.“ Slova do hry Muzika Kůl, les, pes, míč, mrak, boty, kolo, máma, mouka, mrkev, pytel, žabka, autíčko, autobus, kočička, papírek, pokojík, korunka, telefon, kočárek, panenka, kobereček, slunečnice, televize, trpaslíček
U Beránka Malý princ pronáší slova šeptem. „Koukni, Beránek spí jako dudek. Nic ho teď nevzbudí. Tiše, půjdeme radši na druhou stranu planetky.“
Okolní asteroidy Malý princ stojí na planetce, nad ním je na nebi shluk asteroidů. „Už jsme tu. Moje planetka není moc velká. Co se mi sem nevejde, odkládám na okolní asteroidy. Asteroid je takový kus skály ve vesmíru. Ty máš doma poličky a skříňky a já mám místo toho právě tyto asteroidy. Pomůžeš mi prosím roztřídit mé věci na asteroidy, ať je v nich pořádek?“
Hra Planetky Různě veliké asteroidy se nachází ve středu obrazovky, kolem na orbitu jsou věci k třídění a řazení. Zadání podle typu podúkolu. „Dej věci na planetky. . . “ 96
C.2. Lineární příběh „. . . podle velikosti. Nejmenší věc na nejmenší asteroid. . . “ „. . . podle toho, kolik jich je. Čeho je nejvíc, na největší asteroid. . . “ „. . . a tak dál.“
U Růže Zakončení po všech hrách na planetce u Růže. Kromě Prince stojí vedle Růže konývka. „Dobrá práce. To je moje Růže - nádherná, že ano? Ví, že jsme jí přinesli vodu. Určitě má žízeň.“ Čekání na dotek dítěte na konvičku. Buď Růži zalije a ta rozkvete, nebo se zopakuje minulá promluva. „Díky za pomoc, moc jsem si hraní s tebou užil. “ Odlet kamery do vesmíru. Konec.
97
Příloha
Seznam použitých zkratek API Application programming interface GUI Graphical user interface IDE Integrated development environment IEEE Institute of Electrical and Electronics Engineers OS Operační systém RPG Role playing game SDK Software development kit UML Unified modeling language WYSIWYG What you see is what you get
99
D
Příloha
E
Seznam použité neautorské tvorby 2D artwork Profilové obrázky a kresby do hry Galerie vyhotovila grafička Štěpánka Jislová 3D Model Malého prince Základní model a animaci tleskání vytvořil Adam Dominec, mé jsou textury, dodatečná vylepšení a animace (mluvení, mrkání) Ambientní podkladová hudba Autorem je umělec se jménem Podington Bear (dostupné online http://freemusicarchive.org/music/Podingt on_Bear) Dabing Podle mého scénáře vytvořený hercem Jáchymem Sůrou Rozložení úkolů a podúkolů do relevantní posloupnosti Rozložení v jeho podobě při testování jsme určili společně s Mgr. Simonou Pekárkovou SVG obrázek A. de Saint-Exupéry Nahráno uživatelem Mendeleev (dostupné online http://artalbum.org.ua/en/item/show?id=157) Zvuk Beránka Autorem je Dobroide (dostupné online https://www.frees ound.org/people/dobroide/sounds/33640/) Zvuk povzdechu Růže Autorem je Plagasul (dostupné online https://www.f reesound.org/people/plagasul/sounds/106/) Zvuk vysavače Autorem je Jim Award (dostupné online https://www.fre esound.org/people/JimAward/sounds/60460/) Zvuk zvonku Autorem je Zabuhailo (dostupné online https://www.frees ound.org/people/Zabuhailo/sounds/145501/)
101
Příloha
Obsah přiloženého CD
readme.txt...................................stručný popis obsahu CD src thesis ...................... zdrojová forma práce ve formátu LATEX text ....................................................... text práce thesis.pdf ............................. text práce ve formátu PDF thesis.ps ................................ text práce ve formátu PS 103
F