Institutionen för datavetenskapliu.diva-portal.org/smash/get/diva2:826619/FULLTEXT01.pdf · Google...
Transcript of Institutionen för datavetenskapliu.diva-portal.org/smash/get/diva2:826619/FULLTEXT01.pdf · Google...
Institutionen för datavetenskap Department of Computer and Information Science
Examensarbete
Google Maps som spelmotor för mobila
plattformar
av
Ante Wall
LIU-IDA/LITH-EX-G—15/047--SE
2015-06-25
Linköpings universitet
SE-581 83 Linköping, Sweden
Linköpings universitet
581 83 Linköping
Linköpings universitet
Institutionen för datavetenskap
Examensarbete
Google Maps som spelmotor för mobila
plattformar
av
Ante Wall
LIU-IDA/LITH-EX-G—15/047--SE
2015-06-25
Handledare: Erik Berglund, Anders Fröberg
Examinator: Johan Åberg
Google Maps som spelmotor for mobila plattformar
Ante [email protected]
SAMMANFATTNINGSpel kan utvecklas pa flera olika satt med flera olika utma-ningar. I detta arbete undersokts det hur lampligt det ar attutveckla och implementera ett spel tillsammans med Goog-le Maps. Undersokningen testar hur det gar att implemen-tera vanliga element som forekommer i spel tillsammansmed Google Maps. Dessutom undersoks hur mycket da-taanvandning som Google Maps anvander for olika typer avkartor som den erbjuder. Detta har genomforts genom att im-plementera ett spel baserat pa Google Maps som grundmo-ment i spelet och undersoker dar ifran resultatet av imple-mentationen.
Aven forflyttning over kartan undersokts och hur mer tradi-tionella spelanspassade kontroller som joysticks anpassar sigtill Google Maps jamfort med dess normala interaktion un-dersoks. Undersokningen resulterar i att Google Maps erbju-der goda mojligheter att tillampa vanliga spelelement. Dess-utom visar undersokningen av datanvandingen att den norma-la kartypen ar mest effektivast medans terrangkartan anvandersig av mest natversdata. Google Maps vanliga touchinterak-tion visas lampas sig mest for precisionforflyttningar och geranvandare lattare att forsta interaktionen men andra typer avkartforflyttningar kan ocksa tillampas.
INLEDNINGDen storsta tiden man spenderar pa smartphones ar med attspela mobilspel. Hela 32 % [10] av den totala tiden somanvandare sitter vid telefonen spelar dem nagot slags spel.Detta har gjort mobilspelsindustrin till en stor marknad de se-naste aren.
Nya spel anvander sig ofta av en redan fardig spelmotor foratt gora det enkelt att implementera spel. Men ibland kan detvara intressant att skriva en egen spelmotor ifall den behoverfunktioner som inte andra spelmotorer klarar av eller om manbehover fa tillgang till data fran andra tjanster.
Problemet med spel som anvander sig av data som maste lad-das ner till telefonen under korning ar att det kan paverka pre-standan for mobilen samt att data inte kan hamtas och lasas itid vilket leder till att anvandarens upplevelse paverkas.
De flesta spel anvander sig ofta av samma kontroller avenover flera plattformar, kontroller som D-pad och joysticks harvarit populara de senaste femton aren och aven forts over imanga spel aven pa de mobila plattformarna. Detta visar dockinte pa att det ar de basta losningarna pa spelkontroller formobila plattformar utan kan finnas metoder som ar battre.
Denna rapport kommer att undersoka om det ar mojlig attdesigna och utveckla ett spel for Android med Google Maps
som en spelmotor for ett dar utmaningar i spelet ar baserat paanvandarens geografiska position dar forflyttning och kontrollav spelaren ar viktigt.
Google Maps ar en kart och satellitfototjanst fran Google somanvands i manga kartapplikationer och ar aven standardkartai Android enheter.
SyfteMalet med examensarbetet ar att undersoka hur det fungeraratt designa och implementera ett action/pusselspel for Andro-id enheter med Google Maps som spelmotor.
Resultatet i arbetet ska kunna ge kunskap till vidareutvecklingav spelet som utvecklats i arbetet men aven ge informationangaende implementation av spel tillsammans med GoogleMaps for framtida arbeten.
Spelet ska vara korbart pa flera Android enheter dar prestan-da ar viktigt for att skapa en bra upplevelse for anvandarenunder spelets gang oavsett vilken typ av enhet man kor spelarpa eller vilken typ av internetanslutning anvandaren har. Menaven spelaren interaktion ar viktig gentemot kartan, kan mandesigna egna rorelsemetoder tillsammans med Google Mapseller ska man anvanda sig av Google Maps fardiga touchme-toder.
Spelet ska aven uppmuntra social delning mellan vanner viaturbaserade utmaningar mellan varandra.
Det har examensarbetet kommer anvanda sig av Google MapsAPI 1 for att hamta data till spelet.
FragestallningVad for fordelar eller nackdelar finns det med att designa ettaction/pussel spel med hjalp av Google Maps som spelmotormed avseende pa:
• Design och implementation av spelkomponenter i eller till-sammans med Google Maps
Dar huvudfokus ligger i att testa och utvardera en implemen-tation av en virtuell joystick kontra Google Maps inbyggdatouchinteratktion.
• Mata och utvardera dataanvanding av Google Maps for detimplementerade spelet
AvgransningarDetta examensarbete ska inte visa det optimala sattet somman kan implementera Google Maps som en spelmotor eller1Google Maps API http://developers.google.com/maps/2015-02-24
1
komponenter tillsammans med det utan mer som ett exempelpa hur det kan implementeras. Inte heller ska det ses som detmest optimala sattet att fa ut data fran Google Maps utan tarupp viktiga aspekter att tanka pa samt satt som det gar att losaproblemen pa.
Enheterna kommer aven att begransas till Android enheter darapporten har valt att endast implementera applikationen tillAndroid i nulaget
Google Maps touchinteratktionI denna rapport kommer orden Google Maps touchinteraktionatt anvandas mycket. Detta syftar pa de rorelsefunktioner somfinns inbyggda och aktiverade fran borjan i Google Maps forAndroid. Det vill saga de vanliga interakionerna for zoom,forflyttning med hjalp av pinch och fingerrorelse.
TEORI
SpeletSpelet som ska utvecklats ar ett aventyrs/actionspel. Speletgar ut pa att man valjer en bana som man vill kora, sedankommer banan att laddats. Man kommer da fa en positionman ska ta sig till, tex Linkoping eller London. Nar man artillrackligt nara inom en specifikt satt radie raknas punktensom traffad och man far en ny plats att ta sig till sa snabbtsom mojligt. Spelet ar slut nar man har tagit alla punkternapa ett bana. Utover detta ska man kunna utmana vanner ochbekanta pa att fa basta tiden pa banor i spelet.
Application Programming InterfaceEtt Application Programming Interface aven kallat API ar ettgranssnitt som kan anvandas for att kommunicera med annanprogramvara. Det ar ett granssnitt mellan tva olika system, of-tast via webbtjanster. API anvands for att fa tillgang till datafran andra tjanster pa ett smidigt satt genom anrop till olikafunktioner som returnerar data som sedan kan anvandas foratt visa anvandaren eller for att kalla pa andra funktioner be-roende pa datatypen. [11]
Google Maps APIGoogle Maps har ett antal olika API:er att valja mellan [12]for att latt kunna erbjuda olika tjanster. Nagra exempel ar APIfor att ta reda pa snabbaste turer mellan olika positioner, enannan hur man kan andra utseende pa markorer och andraobjekt som finns i Google Maps.
I Google Maps kan man tillexempel stalla ut en forbestamdvag, detta kan implementeras i spel som spelkomponen-ter da ifall man foljer vagen far man bonusar men detkanske inte alltid ar den snabbaste vagen, detta ger spelarenvalmojligheter och replay value vilket ar nagonting som arviktig inom speldesign [4].
Google Maps Style API ger en friheten att andra stilar ochutseende pa markorer och andra komponenter i Google Maps.Det kan anvandas for att skapa egna komponenter i spelet somsaker som ger spelaren bonusar eller annat som kan paverkaspelaren och spelet i sig.
Den har rapporten kommer att anvanda sig mestadels avGoogle Maps Android API v2 2 Det ar API:et som ar byggdatt anvandas med Android for att latt implementera GoogleMaps komponenter i egna applikationer pa Android enheter.Den ger full tillgang till Android grafiska bibliotek och avenandra tjanster sasom GPS och GSM for att kunna komma atenhetens nuvarande position [7].
Det ar dock viktigt att notera att aven om Google Maps ar gra-tis att anvanda sa har de en maxgrans pa 100 000 request pertjugofyra timmar. 3. Vill man utoka gransen kravs speciellttillgang fran Google som i sa fall kostar pengar.
Design av spel och mobilspelDet finns flera olika saker man bor tanka pa nar man designaroch utvecklar ett mobilspel eller spel i allmanhet. Att kun-na definiera vad spelet ska kategoriseras som kan vara vik-tigt da personer som gillar vissa typer av spel som action,aventyrsspel eller pusselspel gillar olika saker i sina spel. Det-ta kommer aven hjalpa att utveckla mot sin malgrupp menaven for att kunna forbattra designen och spelkanslan for spe-larna [6].
Studier visar att det ar viktigt att spelaren kanner att man harkontroll over spelet samt att gora viktiga funktioner i speletlatta att anvanda okar chansen att spelaren fortsatter att spelaspelet [2]. Detta riktar sig mycket mot kontrollen av spelareni spelet.
Det finns aven flera olika saker som gor mobila spel popularaoch okar chansen att anvandare spelar dem. Bland det vanli-gaste ar att mobilspel ar ofta sociala och okar ofta forsaljningoch antalet anvandare som spelar spelet ifall den har soci-ala aspekter i sig [1, 4]. Man kan se att manga av de spelsom ligger hogst upp pa nerladdningslistorna har nagon soci-al funktion som att man kan utmana sina vanner eller be domom hjalp. Aven topplistor ar en viktig komponent i mangaav dessa spel [4] da det ger en mer utmaning at spelarna ochreplay value.
Design av spelmotorDet ar viktigt att definiera och planera hur man bor desig-na sin spelmotor, detta kan leda till stora forbattringar pa deomraden man fokuserar pa som till exempel att reducera min-nesanvandning eller batterianvandning [8].
Viktiga aspekter att kolla pa ar hur utvecklaren ska anvandasig av motorn samt hur man latt paketerar ner och skickardata inom sin motor. Prestanda, minnesanvandning och batte-rianvandning ar ocksa viktiga aspekter inom mobilspel samthur spelet och spelmotorn kan anpassa sig till olika enhetermed olika storlekar da Android har stod manga olika enheter.
Mobil natverkstraffikDen mobila natverkstrafiken har blivit en stor del av varldensnatverkstraffik, bara 2014 okade den mobila natverkstrafikenmed 69% fran tidigare ar. Dessutom finns nastan en halv2Google Maps Android API v2 http://developers.google.com/maps/documentation/android/ 2015-02-103Google API Quota, 2015-05-12 https://developers.google.com/maps/documentation/business/webservices/quota
2
miljard mobila enheter som har tillgang till internet. Darforkan mobila natverk ses som en nodvandighet for de flestaanvandare.
Mobil natverksdata ar nagot som har vaxt och kommerfortsatta vaxa, redan 2019 raknas en normal smartphone attanvanda sig av upp till fyra gigabyte av data i manaden, detar en okning pa 500%. Nya tjanster som 4G visar aven pa entrend av okande natverkstraffik jamfort med likande tjanster.
Darfor ar det viktigt att forsoka att undvika att oka mangdendata i onodan da manga datacenter och annan utrustningmaste uppgraderas for att kunna klara den typen av da-tamangd och antalet mobila enheter som ar uppkopplade tilldem. De kommande aren kommer darmed att vara kritiska forden mobila marknaden[3].
Navigering och RorelseTidigare forskning har gjorts pa rorelse for kartor dar mananvant en joystick som kan rora sig i fyra led. Upp,ner hogeroch vanster och visar att en fordel med joysticks nar det kom-mer till kraft, smidighet och noggrannhet nar man forsoker attnavigera till punkter pa en digital karta. [9]
Andra kallor visar att nar man utvecklar mobila applikatio-ner vill spelare ofta ha nya unika spel men samtidigt va-ra valkanda i formen, detta galler aven for navigering ochrorelse i vanliga anvanda applikationer som Google Maps.Ifall man andrar for mycket i vad anvandare ar vana attanvanda sig av kan det vara negativt for spelet.
Dessutom visar en trend pa att den traditionella D-padden arpa vag att forsvinna da man hellre vill anvanda de interaktivakontrollerna pa mobila enheter som accelerometern, gyrosko-pet eller vanliga touchfuntioner som finns pa dagens smartp-hones.[1]
Man har aven observerat att nar man utforskar okandaomraden man tidigare inte ar bekant med forsoker man of-ta hitta landmarken eller vagar for att kunna orientera sigkring.[9] Det ar da viktigt att forsoka leda spelarna ratt i speletmed hjalp av spelupplagget.
METOD
AndroidAndroid4 ar ett operativsystem utvecklat av Google somframst ar inriktad pa mobila enheter sasom smartphones ochtablets. Android kan till skillnad fran till exempel iOS utveck-las pa flera olika operativsystem sasom Windows, Mac OSoch Linux vilket ger den lite fordelar jamtemot iOS [5].
Android applikationer utvecklas oftast i Java med AndroidsSDK5 som latt ger dig tillgang till alla funktioner i Andro-id operativsystem som till exempel GPS, internet och deninbyggda kameran. Andra alternativet ar att anvanda NativeAndroid som kodas i C/C++. Google Maps SDK fungerardock inte lika smidigt med Native Android. Det ar dessutomlatt att implementera fa tillgang till Google Maps och dess4Android http://www.android.com 2015-02-095Android SDK http://developers.android.com/sdk/ 2015-02-09
versioner i Android som man kan se i kodexempel 1. Darforkommer denna rapport anvanda sig av Android SDK.
OnMapReadyCallback {@Override
protected void onCreate(BundlesavedInstanceState) {
super.onCreate(savedInstanceState);setContentView(R.layout.map_activity);MapFragment mapFragment = (MapFragment)
getFragmentManager().findFragmentById(R.id.map);
mapFragment.getMapAsync(this);}@Overridepublic void onMapReady(GoogleMap map) {}
}
UtvecklingsplattformDet finns en mangd olika utvecklingsplattformar att anvandasig av. Eclipse, Netbeans, Intellij ar nagra av de storsta.
Google erbjuder en utvecklingsplattform som heter AndroidStudio som ar byggd pa Intellij. Android Studio ar designadav Google och for att latt och smidigt kunna utveckla emotAndroid med hjalp av Android SDK. Android Studio komdarmed att anvandas som utvecklingsplattform i denna rap-port.
ImplementationArbetet utfordes Agilt, dock med inslag utifran kundensonskemal. En gang i veckan planerades ett mote med kunddar vi gick igenom den nuvarande builden av applikationensamt diskuterade framtida forandringar och tillagg till appli-kationen. Tillsammans med kund tog vi fram ett antal kompo-nenter som ska implementeras in i spelet och Google Maps.Dessa punkter forandrades under arbetets gang. Funktioneroch komponenterna valdes ut av kund i forsta hand som skul-le implementeras baserat pa deras tankar runt spelet. Forslagoch forandringar diskuterades gentemellan parterna for att faett bra resultat. Nedanfor visas en lista pa de saker som valdessom prioriterade och implementerades i spelet.
Spelkomponenterna som skulle implementeras som togs framtillsammans med kund var foljande:
• Banor placerade pa olika platser och hojdnivaer
• Testning av joystickforflyttning eller Google Mapstouchinteraktion
• Achievements
• Turbaserade utmaningar mellan spelare
• Leaderboards med basta tiderna
Utifran dessa punkter undersoktes det hur komponenternaskulle kunna tankas implementeras pa basta satt i ett spel samtvad Google Maps har for alternativ for att latt och smidigtkunna implementera det. Forst undersoktes det ifall det fannskomponenter inbyggt i Google Maps som gar att anvanda foratt implementera uppgiften. Antingen en komponent som gar
3
Figur 1. Bild pa den virtuella joysticken under korning i applikationen.
att direkt anvanda eller modifiera. Sedan kollades det upphur det skulle ga att implementera sjalv in i Google Maps.Ifall ingen bra losning hittades undersoktes det ifall det fannsAndroid komponenter som gick att implementeras tillsam-mans med Google Maps.
EnheterDe Androidenheterna som anvands for testning ar:
• LG Google Nexus 5
• Samsung Galaxy Tab 3 10.1
KartforflyttningGoogle Maps inbyggda system for rorelse anvander zoom,pitch och fingerprecision for att rora kartan. I en mer traditio-nell spelmiljo brukar en Gamepad eller joystick anvandas foratt forflytta spelaren omkring i spelvarlden.
Genom att skapa en virtuell joystick i Android kan viutvardera och analysera hur det fungerar gentemot GoogleMaps interation.
Joysticken byggdes med hjalp av ett fardig JoystickView skri-ven av Aj Alves6. Rorelsen over kartan forflyttas i pixlar ex-ponentiellt gentemot hur mycket man drar i joysticken, fran0 pixlar upp till 400 pixlar. Joysticken kommer fram dar mansatter ner fingret pa kartan och forflyttar sig i den riktning-en som man drar fingret at efter den ursprungliga positionen.Detta gjordes for att fungera pa personer med olika storlekarav hander samt pa bade hoger och vansterhanta. Se figur 1 foren visuell presentation.
Zoomfunktion lades till for joysticken genom att klicka engang pa kartan sa zoomar den in, ar den inzoomad kan manklicka igen for att zooma ut.
Tva rorelsealternativ kom att utvarderas genom att lata entestgrupp pa tio personer testa spelet. Fem personer fick testaatt anvanda sig av Google Maps vanliga rorelse och touchin-teraktioner. De resterande fem personerna fick anvanda sigav den virtuella joysticken som byggdes i arbetet. De fick6JoystickView, 2015-05-08 https://github.com/zerokol/JoystickView
inga instruktioner om hur spelet fungerade eller vilket malspelet hade. Inte heller fick de nagon information angaendehur rorelsen i spelet fungerade. Efter de hade fatt kora spe-let i ca fem till tio minuter fick de efterat svara svara pa 5fragor angaende vad de ansag sig tycka om rorelsen i spe-let. Fragorna togs fram av forfattaren av arbetet dar fragornavar indirekt avsedda att fa kommentarer pa vad folk tyck-te var svart i spelet och sedan mer direkta fragor angaendeforflyttning over kartan. Detta kom sedan att evalueras foratt fa fram vilket satt som passar bast till spelet. Detta un-dersoktes da det ar viktigt att spelaren ska kanna att den harkontroll over spelet vilket ar viktigt i design av spel [2].
TestgruppTestgruppen togs ut slumpmassigt av personer som var in-tresserade och tillgangliga att testa applikationen. Testgrup-pen bestod av bade man och kvinnor i aldern 20-49 dar ma-joriteten var studenter inom nagot typ av datavetenskap, menaven nagra frivilliga fran andra grupper. Sammanlagt testa-de tio personer rorelsen i applikationen. Se tabell 1 for merdetaljerad information.
Alder Kon Sysselsattning27 Man Studerande22 Man Studernade22 Man Studerande24 Man Studerande21 Man Studerande20 Man Studerande25 Man Snickare24 Kvinna Studerande25 Kvinna Grafisk Designer49 Kvinna Ekonomiassistent
Table 1. Testgrupp for rorelseinteration
Spelets rutterBanorna i spelets fick komma att kalla sig Routes under im-plementation. Dessa ar ett antal olika koordinater specificeradmed langitude och longitude samt en radie pa hur nara en spe-lare kan vara punkten for att den ska godkannas som traffad.
For att latt kunna testa olika typer av Routes for att undersokaspelvardet samt datahamtning skrevs en latt editor i Rubyon Rails tillsammans med Angular som kopplats ihop medGoogle Maps Javascript API v37. Med editorn kan man lattsatta ut startposition, olika mal och decoys samt stalla in desstraffradie och spara rutten for testning.
DatanvandningFor att kunna mata datan som anvands av Google maps sakopplades Android enheterna ihop med Android Device Ma-nager, ett program som inkluderas tillsammans med AndroidStudio dar man kan mata olika typer av data ifran den in-kopplade enheten, antingen via hela enheten eller specifikaapplikationer. Android Device Manager har en funktion som
7Google Maps Javascript API v3, 2015-05-13 https://developers.google.com/maps/documentation/javascript/
4
Figur 2. Editorn med en rutt utsatt inklusive start punkt, mal och decoys
later en mata antalet bytes som skickas och tas emot av pro-grammet som kors pa enheten samt antalet paket som skickasover natverket for den givna applikationen.
Ett test sattes upp pa tva olika Routes som hade olika langderoch olika inzoomningsnivaer pa kartan. Test nummer ett varuppsatt over en liten stad med sex stycken stopplatser. Andratestet var installt pa att hitta fem stycken huvudstader. Datamattes sedan pa de olika banorna under korning. Dessutommattes olika kartyper, Google Maps tillater fem olika typerav kartyper 8.
• Normal - Grundlaggande kartan
• Hybrid - Satellit kartor med en genomskinligt lager mednamn av stora gator eller stader.
• None - Inga kartrutor
• Satellit - Satellit kartor utan markningar
• Terrang - Terrang kartor.
For varje test gjordes aven fyra tester per karttyp. Forsta testetgjordes med att rensa cachen i Android applikationen och se-dan kora Routen. Andra testet kordes direkt efter forsta utanatt rensa cachen. Tredje testet rensades aven cachen pa appli-kationen, dock sa zoomande man in sa mycket det gick narman kom fram till en stopplats och sedan zoomade ut efteratfor att kunna mata datan ifall datan okade nar man vaxlademellan olika inzoomningslagen. Fjarde testet utfordes precisefter tredje testet och gjordes pa samma satt som test nummertre dock utan att rensa cachen mellan korningen. Datan sam-manstalldes sedan for att se vilken karttyp som sammanlagtanvande mest natverksdata under alla fyra testen.
Dessa tester utfordes endast pa Samsung Galaxy Tab 3 10.1
RESULTAT
Implementation av spelkomponenterNedan kommer resultat pa hur de olika komponenterna somtogs fram av kund implementerades i spelet.
8Google Maps kartyper, 2015-05-06https://developers.google.com/maps/documentation/android/map#map_types
RoutesRoutes valdes banorna i spelet att kallas under implemen-tationen och implementerades med hjalp av Google Mapsmarkorer. Markorerna kan sattas ner pa en plats baserat palongitude och latitude. Darefter beraknas avstandet mellanspelarens position och markorer. Ifall spelaren ar tillrackligtnara en radie representeras av en cirkel som ar en klass iGoogle Maps API. Med hjalp av denna radie raknas spelarensom att han har traffat positionen ifall han ar inom cirkeln.
Google Maps har mycket funktioner for att representera vi-suell data pa sina kartor som fungerar aven vid andring avzoomdjup.
Turbaserade utmaningar och AchievementsGoogle Maps ar inte byggt for spel och har darmed inte eg-na losningar for system som utmaningar och Achivements.Google erbjuder dock andra tjanster till Android som erbju-der dessa typer av tjanster och ar skapat for att kunna koras ibakgrunden av alla typer av Android applikationer.
Turbaserade utmaningar och Achivements blev darmed im-plementerat med hjalp av Google Game Service9 som ligger ibakgrunden av applikationen. Detta valdes for att slippa byg-ga en bakomliggande service men aven for att det ar byggtfor att implementeras i Android spel och har stod for badeturbaserade utmaningar och Achievements.
Ett flertal problem uppstod dock under implementationen avGoogle Game Service da viss felhantering var problematisktatt undersoka. Dessutom maste all data skickas som en bytearray vilket gjorde att man var tvungen att skapa speciellaklasser som man tillat att serialisera.
LeaderboardsGoogle Game Service har stods for Leaderboards och disku-terades att anvandas men valdes bort da maxantalet leader-boards man far skapa ar 70 stycken. Spelet som utveckladestill detta arbetet ska ha stod for fler an 70 Routes vilket gjordeatt andra metoder undersoktes.
Leaderboards implementerades tillslut med hjalp av SQLite3vilket har inbyggt stod i Android SDK. Leaderboards imple-menterades bara lokalt da det inte fanns tid att skapa en bac-kendtjanst for att spara datan inom arbetets tidsram.
Google Game Services visade sig vara mycket bra lampad fordessa andamal och fungerade bra tillsammans med GoogleMaps.
RorelseinteraktionJoystickJoysticken gick igenom flera stadier av utveckling under ar-betet innan den testades pa folk. Forst forflyttade den meden fast satt hastighet over kartan och saktades ner nar mankom nara sitt mal. Detta valdes sedan att tas bort och ersattesistallet med att exponentiellt oka hastigheten pa joysticken juhogre som anvandaren drar i joysticken for att kunna ge merprecision over kontrollerna. Sista som lades till var att flytta
9Google Game Serivce, 2015-08-12, https://developers.google.com/games/services/
5
fran en statisk position av joystickens placering till att utgaifran punkten dar spelaren satter ner sitt finger.
For att testa den basta rorelseinteraktionen med spelet gjordestester med tio personer vilket gav foljande resultat.
Testare - JoystickPersonerna som blev utvalda att testa joystick implementatio-nen kande att de hade mer utmaningar an de som anvanderGoogle maps touchinteraktion. Utover att de tyckte att detvar en utmaning i spelet att hitta positionerna var det aven enutmaning att kontrollera spelaren i spelet. Manga hade dess-utom svart att forsta vad joysticken var for nagonting ellerhur den fungerade. Ett flertal ville kunna anvanda sig av pitchfunktion och vanliga rorelser och blev forvirrade och irritera-de pa joysticken. Nagra tyckte aven att det var svart i borjanav spelet att anvanda joysticken med blev lattare med tidenoch att det var att frustation och forvirring var pagrund avovanhet med den typen av kontroll for Google Maps som varproblemet.
Observationer under kornings visade aven pa att joystickengjorde det svarare att traffa sina mal da spelarna ofta akteforbi malen for de rorde sig for snabbt.
Desto langre tid spelarna spelade spelet desto mer precisa ochlattare kunde de manipulera rorelsen och ta sig runt pa kartan.Detta visar pa att folk lar sig sjalva hur de ska klara av utma-ningarna med rorelsen och att uteslutande av denna typ avrorelse inte aktuell utan fortfarande fungerar.
Testare - Google Maps touchinteraktionDe personer som testade med Google maps touchinteraktiontyckte att den enda utmaningen var att det var svart att hittaplatser som man inte hort talas om innan. Ingen klagade parorelsen utan kande att dom redan fran start hade full kontrollover inzoomning, rorelse och precision.
Datan visar darmed att anvandare som far anvanda sig avGoogle Maps inbygga rorelse har lattare att satta sig in i hurrorelsen i spelet fungerar och fokuserar darmed mer pa utma-ningen i spelet.
DataanvandingResultatet visar pa att for en Route anvander sig Google Mapsnagonstans mellan 0,5 megabyte upp till 17 megabyte bero-ende pa rutt, kartyp och mangden inzoomningar. Cacheningutfors dock automatiskt och reducerar antalet megabytes tillmellan cirka 0,05 - 4,5 megabytes. Se bilagor for mer detal-jerad data.
Karttyp - NormalDen normala kartypen gav minst dataanvanding och verkadevara mest optimerat aven nar det gallde dataanvanding.
Karttyp - NoneTrots att denna kartyp inte renderar nagon data sa skickar denungefar lika mycket data som den normala kartypen.
Karttyp - Satellit & HybridResultatet mellan dessa tva kartyper var mycket lika varand-ra. Satellit anvande sig dock av mer data under test tva
Normal Hybrid None Satellit Terrang
0
5
10
15
20
1.56
12.73
2.77
13.6
19.23
0.21 0.5 0.2 0.53 0.69
Meg
abyt
es
Route Test 1
Mottaget Skickat
Figur 3. Sammanlagda dataanvanden for alla tester per kartyp underRoute test nummer ett, se bilagor for mer detaljerad data
Normal Hybrid None Satellit Terrang
0
10
20
10.18
17.01
10.01
22.8324.2
0.28 0.56 0.3 0.72 0.48
Meg
abyt
es
Route Test 2
Mottaget Skickat
Figur 4. Sammanlagda dataanvanden for alla tester per kartyp underRoute test nummer tva, se bilagor for mer detaljerad data
6
nar zoomningen testades mycket. Bade karttyperna gav sto-ra forbattringar nar cachening hade gjorts av Google Mapsoch reducerade dataanvandningen marginellt. Se figur 5.
Karttyp - TerrangDenna kartyp anvande sig av mest data under bada testerna.Testningen av hamtning under zoomning gav stora resultatpa test tva medans under test ett lade den sag nara Sattelitkartypen. Aven under korning verkade kartan ta langre tid attladda fardig relativt till de andra kartyper.
CacheningGoogle Maps anvandaravtal sager att man inte far cachea da-tan som kommer fran Google Maps. Dock visar resultatet avtestningen att cachning anvands automatiskt av Google Mapsoch darmed reducerade marginellt antalet bytes som skicka-des ifall man korde samma Route en gang till vid samma in-zoomningsdjup. Se figur 5
DISKUSSION
MethodImplementation gick ut pa att skapa ett spel for Android medhjalp av Google Maps. Undersoka hur man kunde implemen-tera vanliga losningar som anvands i spel och se vilka typ avverktyg som redan fanns i Google Maps for att implementeranagot liknande.
Mycket av designvalen i spelet diskuterades med kund di-rekt efter implementation och evaluerades och itererades fle-ra ganger. Dessutom kom manga av punkterna som imple-menterades upp under sjalva arbetet med spelet. Detta leddeaven till att koden blev valdigt ostrukturerat ett flertal gangeroch behovdes omstruktureras vilket tog mycket tid. Dessutomandrades mycket av prioriteringen mellan de olika kompo-nenterna under implementationen da nya ideer kom och blevaktuellt att undersokas. Tidigare forskning visar att planeringav spelmotorn ar viktigt [8] och kunde ha planerats battre in-nan och under arbetets gang.
Vad som kunde ha forbattras ar att striktare och mer noggrantanvant sig av Scrum liknande metod for implementationen.Mycket andrades i planeringen under arbetes gang vilket bi-drog. Detta for att vid olika tidpunkter kunde arbetet bli liteostrukturerat.
Arbetet gick tillslut ihop pa ett bra och smidigt satt menforbattringar i struktureringen av arbetet kunde ha gjorts.
SpelkomponenterFor att implementera de olika spelkomponenterna valdes iforsta hand losningar som fanns i Google Maps API sasommarkorer, cirklar och annat. Google Maps har mycket somgor att man kan manipulera kartan och dess utseende menkomponenter som behovs utover det har den valdigt lite av.
Komponenter som UI och annat valdes darfor att implemen-teras med hjalp av sa mycket Android inspirerat som mojligt.Eftersom Google Maps ar ett fragment i Android sa tillaterSDK att man implementerar alla andra Androidfunktionerover fragmentet om det onskas vilket gav mycket hjalp. UI
och menyer skapades darmed med hjalp av vanliga imple-mentationer som anvands i Android. I detta arbete implemen-terades menyn med hjalp av en navigation drawer som kom-mer ut fran hoger sida over kartan for att inte fa bort spelarenfran spelupplevelsen.
Google Game Service blev ett klar fordel nar det kom till im-plementation av Turbaserade utmaningar och Achievementsda den gav mycket gratis.
Dock gav de manga smaproblem da det var smaklurigt attimplementera pa ett bra satt sa den fortsatte vara med i fleraolika aktiviteter samt att det inte fanns mycket hjalp utoverdokumentationen av den. Felhanteringen var inte optimal frantjansten och manga krascher skapades vilket tog mycket tidav arbetet pa grund av detta. Delvis for att satta upp API atttillatas att anvandas i applikationen men aven nar request ochinloggning skulle goras emot tjansten.
Aven lite problem uppstod med att spara datan da man vartvungen att gora om datan till bytesarrays vilket gjorde im-plementationen lite krangligare. Detta lostes med att gora tvaklasser som inneholl datan som skulle skickas och serialiseraden nar den skulle skickas och deserialisera den nar den togsemot.
Dessutom gav vissa objekt fran Google Game Services iblandlackage vilket krashade applikationen nar man laste datan.Det fanns ingen dokumenterat att man var tvungen att stangavissa buffers som anvandes. Nar detta dock var lost fungera-de det felfritt och forenklade implementationen av dessa delaravsevart.
Google Game Service erbjuder aven Realtime multiplayersom diskuterades att anvanda under implementationen av spe-let. Detta prioriterades dock ner och lades tillslut pa hyllanpagrund av tidsbegransning.
Leaderboards skulle varit smidigt att kunna implementera till-sammans med Google Game Service da den har stod for detsamt att det skulle vara smidigt att anvanda det fullt ut. Docksa var maxantalet 70st leaderboards per applikation vilket dainte blev aktuellt for applikationen som byggdes for arbetetmen kan vara intressant att kolla upp mot andra spel som kankommas att implementera Google Maps. I detta arbetet val-des darfor att implementera en egen lokal databas i Androidapplikationen da det fanns stod for det redan i Android SDKsamt att det gick snabbt och smidigt.
Google Game Services ar ett bra verktyg i allmanhet for spel-design i Android och limiteras inte till Google Maps. Do-kumentation och felhantering kan utvecklas men detta kankomma att losa sig med tiden ifall fler anvandare borjar attanvanda sig av tjansten och information och guider blir fleroch lattare att hitta.
JoystickJoystickimplementationen grundades pa ett redan skrivit pro-gram och underlattade mycket implementationen av den.Dock var det en mycket enkel implementation av en joys-tick och gav darmed inte mycket utrymme till andring. Pro-blem uppstod nar man skulle fa joysticken att utga franutgangspunkten dar fingret satts pa skarmen. Kartan och joys-
7
Normal Hybrid None Satellit Terrang
0
2
4
6
8
10
0.96
7.94
1.5
8.91
7.13
8 · 10−20.76
8 · 10−2
1.99
3.29
Meg
abyt
es
Route Test 1 - Cachening
Test 3 Test 4 (Cachat)
Figur 5. Resultat for test 3 och 4 for varje rutt for att visa cacheningen effekt under Route test 1
ticken ar varsin aktivitet och hade problem med att skicka vi-dare touch eventent mellan dem. Slutligen loste det sig docksa ar den inte helt centrerat utan ligger cirka 1-2 centime-ter over fingrets position. Detta kan paverkat hur anvandaretyckte om joysticken da den inte ger full den effekt som manforvantar sig av en joystick.
Joysticken blev inte helt felfritt fungerade och tappade iblandtoucheventen som gjordes ifall spelaren inte var sa tydlig medrorelsen over skarmen, aven zoomfunktionaliteten fungeradeinte helt felfritt under testningen och kan darmed ocksa hapaverkat resultatet. Mer effektiva metoder for implementationfor joystick tillsammans med Google maps bor finnas sominte ger samma typ av negativa effekter.
Testning av DataanvandningTesterna utfordes av ett och samma program vilket gor attresultatet mellan de olika kartyperna bor bli liknande ochinget annat paverkas av programmet. Dock utfordes testernaforhand med forsok att replikera tidigare rorelser mellan tes-terna, detta pagrund av tidsbrist. Det ar dock omojligt att goraexakt lika rorelser forhand mellan de olika testerna och datankan darmed blivit smatt fel mellan de olika testerna. For attkunna fa mer tillforlitlig data bade mer tester goras samt merexakta tester mellan varandra. Mojligtvis genom att en datornforflyttar sig da man latt kan replikera detta da mellan tester-na, dessutom skulle man kunde kora fler tester pa en kortaretid och darmed fa mer specifik data.
Resultat - Rorelseinteraktion
TestningDatan fran testningen av rorelseinteraktionen visar pa att mestprecision hade anvandarna som anvande sig av Google Mapstouchinteraktion och inte personerna som anvande joystick.Nagra tyckte att joysticksrorelsen blev lattare desto langre despelare men kande aldrig att de hade full kontroll over sin
rorelse. De som anvande Google Maps inbyggda system tyck-te dock att de hade full kontroll och fokuserade endast pa attforsoka snabbast hitta de platser som de sokte efter.
Datan visar tydligt pa att folk tycker det ar battre med attanvanda sig av kontroller som de ar vana att anvanda vilketdet finns tidigare studier pa.[1]. Det blir svart och krangligtmed att anvanda en joystick och ger personerna mer utma-ningar i spelet an vad som kan vara tankt. Manga personerhade problem med att anvanda sig av pitch zoom tillsammansmed joystick samt att de holl inte enheten som det var ut-vecklat for utan ofta lade enheten i knat och spelade med ettfinger. Google Maps tillater att man kan spela pa bada sattenmed joysticken har en fordel om man haller den upp och spe-lar med tummarna som implementationen var tankt.
Dock kunde man se att desto langre tid som folk satt medjoysticken desto mer larde de sig att kontrollera sig. Man kanda dra slutsatsen att joystick ar ett alternativ som absolut kanfungera till Google maps ifall sjalva utmaningen i spelet skul-le vara rorelsen. Spelet som utvecklades i arbetet var dock ut-maningen inte rorelsen och valdes darmed bort som alternativoch vidareutvecklas med Google maps inbygga rorelse. Dettafor att det ar viktigt att spelare har kontroll over spelet ochspelaren[2].
TestgruppTestningen av rorelseinterationen over kartorna gjordes pa tiopersoner utan tidigare erfarenhet av spelet. Gruppen har enmajoritet pa folk i tjugoarsaldern och som laser datavetenska-liga amnen. Detta kan ha paverkat hur de interakterar medimplementationen och en storre testgrupp borde nog goras pafler personer och med personer med mer olika bakgrunder ochaldrar. Barn och aldre personer kan anvanda smartphones paannorlunda satt som kan ge annorlunda resultat vilket ocksabor undersokas. Detta skulle da kunna visa pa att andra me-
8
toder ar battre riktade mot olika aldersgrupper vilket inte tasupp i denna rapport.
Resultat - DataanvandingDataanvandingen mellan de olika kartyperna i Google Mapsgav intressant resultat. Normala karttypen visade sig anvandasig av minst data under korning nagonting som forvantades dahypotesen var att minst data anvands nar ingen karta anvandssom i kartypen None. Detta beror antagligen pa hur Goog-le Maps API ar implementerat och antagligen sa returnerarden samma data som Normala kartypen fast gommer kartanistallet for att rendera den, detta antagande togs da resulta-tet var mycket nara varandra. Mer tester skulle behovas un-dersokas for att kunna dra en slutsats angaende amnet. Avvi-kelser mellan datan pa dessa kartyper kan ocksa bero pa hurtesterna kordes.
Hogst data visades Terrang kartypen ge vilket innan var hypo-tesen att Satellit kartypen skulle anvanda sig av mest data daden hamtar ner riktiga fotobilder. Men eftersom Terrangtypenvisar hojdskillnader pa kartan kan detta bero pa att det skickardata i tre olika riktningar, bade x,y och z for att kunna skapaen hojdskillnad pa kartan.
Hybridlaget gav aven mindre data an sattelitlaget men var itest ett valdigt nara varandra och kan darmed bero pa hur test-ningen utfordes som paverkat resultatet.
Speltiden for de olika testerna varierade men hade en genom-snitttid pa ungefar 20 till 30 sekunder. Under denna tid kundeGoogle Maps ladda ner uppmot 20 megabytes av data beroen-de pa kartyp. Detta kan medfora stora mangder natverksdata.Mobil natverksdata ar ofta begransad till en viss mangd bero-ende pa abonnemang och anvandare bor darfor kanske varnasvid anvandning av spel med Google maps om mangden datasom kan komma att anvands och darmed rekommendera attkora spelet over WiFi istallet for mobila natverk.
ReplikerbarhetRapporten har noggrant gatt igenom de olika spelkompenen-terna som implementerades tillsammans med Google Mapssamt hur de implementerades for att underlatta replikerbarhe-ten for studien. Android enheter har specificeras for att kunnareplikera datan pa de olika enheterna.
Testerna har forklarats hur de fungerade och bilagor finnsover resultatet och ruttinformation for att latt kunna aterskapaoch replikera natverkstesterna.
Pa det stora hela anses undersokningen vara replikerbar,forfattaren har forsokt att dela med sig av forhallande somkom under arbetets gang.
ReliabilitetStudiens palitlighet varierar pa olika omraden. I allmanhetanses den var hog och viktiga slutsatser och jamforelser hargjorts. Dataanvandsningstesterna som tidigare namnds i rap-porten har brister och noggrannare tester bor goras for attkunna fa mer allman och specifik data. Dock anses den va-ra tillrackligt utford for att kunna se relevanta skillnader ochjamforelser. Mojligheten for liknande resultat ar fortfarandehog for fa liknande resultatet vid replikering av testerna.
ValiditetSom tidigare namnt vore en testmiljo med datastyrdaforflyttningar over kartan varit optimalt testning for da-taanvandingen, darmed har inte dataanvandningen mellan deolika kartyperna kunnat jamforas optimalt dels av praktiskaskal. Resulatet ska dock vara tillrackligt applicerbart for attse jamforbara skillnader mellan kartyper.
Etiska konsekvenserOm spel skulle borja anvanda sig av mycket data fran tjanstersom Google Maps kan de paverka samhallets datakonsum-tion. Mangden data som anvands vid denna typ av spel armycket mer an mer traditionella spel till mobilplattformen darnerladdningen gors en gang oftast och sedan ar fardig.
Mangden data som skickas och redovisas i rapporten ser manen stor okning jamfort med traditionella spel. Data overfort pamobila natverk dar fasta granser for mangen mobildata somfar tas emot och skickas kan paverkas negativt av detta. Dettamedfor till okade kostnader for konsumenter och kan leda tillokade abonnemangskostnader fran natverksleverantorerna dabehovet av datamangden som behovs skickas okas.
Datatrafiken i det svenska mobilnatet ar ungefor 901 terraby-tes om dagen10. En anvandarbas pa 100 000 anvandare somspelar ett likande spel som utvecklasts i det har arbetet darmangden data som tas emot och skickas pa en dag ar 100 mbper anvandare skulle oka datatrafiken dagligen i Sverige medungefar 10 Terrabyte. Siffran kan se marginell ut med vadsom den totala datatrafiken om dagen ar men skulle utgoraatt ett spel motsvaras av cirka 1.1% av den totala mobildatansom skickas i Sverige vilket har en negativ effekt for konsu-menter och natverksleverantorer, detta tillsammans med denokade mangden data som skickas over mobila enheter[3].
KallkritikDe kallor som anvands i rapporten har valts ut till kanda ochval utvalda kallor som Google officiella kallor samt valkandakonferenser och artiklar. Det ar svart att verifiera alla kallormen arbetet har forsokt att anvanda sig av information som artagen ifran mer an en kalla.
SLUTSATSSyftet med arbetet var att undersoka vad det finns for nackde-lar eller fordelar att anvanda Google Maps for att skapa speli, vilket arbetet har gjort.
Google Maps ar ett intressant API med mycket anvandbarhetoch tillater att man kan modifiera mycket i den befintliga ko-den. Detta ar en klar fordel och hjalper mycket for att im-plementera egna moment och komponenter tillsammans meddet. Detta ar bade viktigt och bra da det ska anvandas somspelmotor.
Rekommenderad kartyp att anvanda ar den forinstallda kar-typen da minst data anvands ifall applikationen inte behoveranvanda annan kartyp. Ifall Google oppnar upp mer i Goog-le Maps API och tillater som exempel cachening av datakan pa ett battre och snyggare reducera datanvandingen for
10Statistikportalen - PTS, 2015-05-12 http://statistik.pts.se/pts1h2014/
9
anvandarna. Mangden data som anvands av vissa kartyperkan bli mycket hoga i vissa fall och bor tankas pa under im-plementation av spel tillsammans med Google Maps. Flerametoder finns att reducera mangden data som anvands genomatt till exempel anvanda sig av ratt typer av kartor som mankan se i detta arbete.
Android och Google Maps tillater att man modifierar mycketoch gor Google Maps till en lampligt system att utveckla speli om man ar villig att modifiera och komma pa intressantalosningar pa saker man vill implementera. Saker som Achie-vemtents, Leaderboards och andra vanliga implementationeri spel finns inget direkt i Google Maps som gar att anvandamen med hjalp av Android SDK och flexibiliteten av GoogleMaps gar det latt att anvanda sig av Androids vanliga element,funktionaliteten samt andra tjanster tillsammans for att kun-na implementera dem tillsammans med Google Maps som dainteragerar smidigt med varandra.
Med hjalp av den modifikation som finns i Google Maps finnsdet aven mojlighet att utveckla andra rorelsemotoder for attstyra kartan. Google Maps touchinteraktion ger mycket braprecision och personer har det latt att direkt satta sig in ochforsta hur kartan manipulerats tack vare detta och visar pa attfolk garna vill ha likande koncept dom ar vana vid [1]. Det-ta ar en klar fordel att anvanda sig av, dock uteslutar dockinte att andra roreslemetoder ar samre, arbetet visar att ifallanvandaren far anvanda sig av en joystick kan den lara sig attmanipulera kartan ocksa. Detta utgor dock fler utmaningar ispelet och spelets huvudfokus kan da forsvinna i en sadan im-plementation. Darfor ar det viktigt att undersoka vad man villatt utmaningen i sin speldesign ska vara vid implementationav andra rorelsemetoder i Google Maps.
Framtida arbetenRorelseinteraktionVidare forskning pa rorelse i Google Maps kan vara intressantda den virtuella joysticken gick att implementera och anvandasig av i Google Maps. Anvandare som anvande sig av denvar negativa i borjan men larde sig relativt fort hur de skulleanpassa sig. Vidare forskning kan goras med andra typer avrorelse som rorelse med till exempel gyroskop.
DataanvandingEftersom datamatningen fran Google Maps gav intressantaresultat kan det vara intressant att noggrannare mata datansom skickas for att kunna fa en noggrannare bild pa vad somskickas och tas emot for att fa en noggrannare bild pa vad. Ardet intressant aven hur detta paverkas av cacheningen?
REFERENCES1. Au, W. J. Game Design Secrets. John Wiley & Sons Inc,
2012.
2. Chou, J., Hung, C., and Hung, Y. Design factors ofmobile game for increasing gamer’s flow experience. InManagement of Innovation and Technology (ICMIT),2014 IEEE International Conference on (Sept 2014),137–139.
3. Cisco Visual Networking Index: Global Mobile DataTraffic Forecast Update, 2014–2019. https://www.cisco.com/c/en/us/solutions/collateral/service-provider/visual-networking-index-vni/white_paper_c11-520862.pdf, 2015-05-15.
4. Filho, V., Moreira, A., and Ramalho, G. Deepening theunderstanding of mobile game. In Computer Games andDigital Entertainment (SBGAMES), 2014 BrazilianSymposium on (Nov 2014), 183–192.
5. Goadrich, M. H., and Rogers, M. P. Smart smartphonedevelopment: Ios versus android. In Proceedings of the42Nd ACM Technical Symposium on Computer ScienceEducation, SIGCSE ’11, ACM (New York, NY, USA,2011), 607–612.
6. Hunicke, R., Leblanc, M., and Zubek, R. Mda: A formalapproach to game design and game research. In InProceedings of the Challenges in Games AI Workshop,Nineteenth National Conference of ArtificialIntelligence, Press (2004), 1–5.
7. Kumar, S., Qadeer, M., and Gupta, A. Location basedservices using android (lbsoid). In Internet MultimediaServices Architecture and Applications (IMSAA), 2009IEEE International Conference on (Dec 2009), 1–5.
8. Peker, A., and Can, T. A design goal and design patternbased approach for development of game engines formobile platforms. In Computer Games (CGAMES),2011 16th International Conference on (July 2011),114–120.
9. Rohs, M., Schoning, J., Raubal, M., Essl, G., andKruger, A. Map navigation with mobile devices: Virtualversus physical movement with and without visualcontext. In Proceedings of the 9th InternationalConference on Multimodal Interfaces, ICMI ’07, ACM(New York, NY, USA, 2007), 146–153.
10. State of Mobile 2013. http://supermonitoring.com/blog/state-of-mobile-2013, 2015-01-27.
11. What is an API? http://www.3scale.net/wp-content/uploads/2012/06/What-is-an-API-1.0.pdf,2015-03-13.
12. Which API do I Need? - Google Developers.http://developers.google.com/maps/documentation/api-picker, 2015-02-10.
10
Rut
t:LK
PG
Tes
tP
lats
erD
efau
lt zo
om in
18D
efau
lt zo
om12
Map
Type
:R
X B
ytes
RX
Meg
abyt
esR
X p
acke
tsTX
Byt
esTX
Pac
kets
Tim
e (s
econ
dsC
ache
Cle
ar?
Zoom
ing
Tota
l RX
Dat
a1,
5620
0122
8M
B
Test
1N
orm
al48
0218
0,45
7971
5729
390
4122
40,
0393
1427
002
366
18,6
Yes
No
Tota
l TX
Dat
a0,
2109
1556
55M
B
Test
2N
orm
al65
850
0,06
2799
4537
454
5152
0,00
4913
3300
7855
16,6
No
No
Tota
l Dat
a us
ed1,
7729
1679
4M
B
Test
3N
orm
al10
0822
50,
9615
1828
7784
513
9039
0,13
2597
9233
725
25,6
Yes
Yes
Gen
Tid
20,9
25
Test
4N
orm
al83
584
0,07
9711
9140
610
435
746
0,03
4090
0421
112
622
,9Y
esY
es
Map
Type
:R
X B
ytes
RX
Meg
abyt
esR
X p
acke
tsTX
Byt
esTX
Pac
kets
Tim
eC
ache
Cle
ar?
Zoom
ing
Tota
l RX
Dat
a12
,733
3536
1M
B
Test
1H
ybrid
3549
186
3,38
4767
532
2649
1599
300,
1525
2113
3416
7215
,1Y
esN
oTo
tal T
X D
ata
0,50
2676
8551
MB
Test
2H
ybrid
6722
220,
6410
8085
6349
424
377
0,02
3247
7188
124
714
,5N
oN
oTo
tal D
ata
used
13,2
3603
047
MB
Test
3H
ybrid
8328
853
7,94
3013
191
6112
3427
530,
3268
7473
332
3829
Yes
Yes
Avg
Tid
20,1
75
Test
4H
ybrid
8016
280,
7644
9203
4958
834
,886
0,00
0033
2698
822
318
22,1
No
Yes
Map
Type
:R
X B
ytes
RX
Meg
abyt
esR
X p
acke
tsTX
Byt
esTX
Pac
kets
Tim
eC
ache
Cle
ar?
Zoom
ing
Tota
l RX
Dat
a2,
7736
0153
2M
B
Test
1N
one
1202
262
1,14
6566
391
898
6112
50,
0582
9334
259
666
16,4
Yes
No
Tota
l TX
Dat
a0,
2071
6571
81M
B
Test
2N
one
5547
00,
0529
0031
433
4643
770,
0041
7423
2483
3913
,2N
oN
oTo
tal D
ata
used
2,98
0767
25M
B
Test
3N
one
1567
893
1,49
5259
285
1253
1289
740,
1229
9919
1399
930
,7ye
sY
esA
vg T
id20
,05
Test
4N
one
8270
70,
0788
7554
169
9222
753
0,02
1698
9517
210
619
,9N
oY
es
Map
Type
:R
X B
ytes
RX
Meg
abyt
esR
X p
acke
tsTX
Byt
esTX
Pac
kets
Tim
eC
ache
Cle
ar?
Zoom
ing
Tota
l RX
Dat
a13
,597
5685
1M
B
Test
1S
atel
lite
2711
569
2,58
5953
712
2014
1211
680,
1155
5480
9611
9315
,2Y
esN
oTo
tal T
X D
ata
0,52
8655
0522
MB
Test
2S
atel
lite
1039
460,
0991
3063
049
8610
234
0,00
9759
9029
5478
13,7
No
No
Tota
l Dat
a us
ed14
,126
2235
6M
B
Test
3S
atel
lite
9350
331
8,91
7170
525
6835
3606
630,
3439
5504
3548
28,2
Yes
Yes
Avg
Tid
20,7
Test
4S
atel
lite
2092
238
1,99
5313
644
1525
6227
00,
0593
8529
968
538
25,7
No
Yes
Map
Type
:R
X B
ytes
RX
Meg
abyt
esR
X p
acke
tsTX
Byt
esTX
Pac
kets
Tim
eC
ache
Cle
ar?
Zoom
ing
Tota
l RX
Dat
a19
,230
7682
MB
Test
1Te
rrän
g73
4243
57,
0022
9167
954
1728
0639
0,26
7638
2065
2914
17,9
Yes
No
Tota
l TX
Dat
a0,
6895
5230
71M
B
Test
2Te
rrän
g18
9677
01,
8089
0083
313
6469
731
0,06
6500
6637
688
513
,6N
oN
oTo
tal D
ata
used
19,9
2032
051
MB
Test
3Te
rrän
g74
7575
57,
1294
3553
954
9729
3849
0,28
0236
2442
2823
26,1
Yes
Yes
Avg
Tid
19,7
Test
4Te
rrän
g34
4996
23,
2901
4015
224
8578
829
0,07
5177
1926
971
621
,2N
oY
es
Link
öpin
g C
ity A
irpor
t, E
khol
men
Cen
trum
, US
Lin
köpi
ng, U
nive
rsite
tet,
Ryd
s he
rrgå
rd, a
nd M
järd
evi S
cien
ce P
ark
BILAGA 1
Rut
tC
apita
lsP
lats
erD
efau
lt zo
om in
16D
efau
lt zo
om o
ut4
Map
Type
:R
X B
ytes
RX
Meg
abyt
esR
X p
acke
tsTX
Byt
esTX
Pac
kets
Tim
e (s
econ
dsC
ache
Cle
ar?
Zoom
ing
Tota
l RX
Dat
a10
,184
2756
3M
B
Test
1N
orm
al24
4637
92,
3330
4882
1808
8979
30,
0856
3327
789
990
27Y
esN
oTo
tal T
X D
ata
0,27
8713
2263
MB
Test
2N
orm
al57
330,
0054
6741
485
2018
430,
0017
5762
1765
2323
,1N
oN
oTo
tal D
ata
use
10,4
6298
885
MB
Test
3N
orm
al68
8885
46,
5697
2312
949
7616
1540
0,15
4056
5491
1716
32Y
esY
esG
en T
id27
,55
Test
4N
orm
al13
3802
11,
2760
3626
397
039
076
0,03
7265
7775
937
028
,1N
oY
es
Map
Type
:R
X B
ytes
RX
Meg
abyt
esR
X p
acke
tsTX
Byt
esTX
Pac
kets
Tim
eC
ache
Cle
ar?
Zoom
ing
Tota
l RX
Dat
a17
,006
1464
3M
B
Test
1H
ybrid
1811
504
1,72
7584
839
1362
7385
50,
0704
3361
664
685
26,7
Yes
No
Tota
l TX
Dat
a0,
5577
3639
68M
B
Test
2H
ybrid
4862
520,
4637
2604
3735
721
565
0,02
0565
9866
320
024
,5N
oN
oTo
tal D
ata
use
17,5
6388
283
MB
Test
3H
ybrid
1120
5607
10,6
8649
9681
9234
4569
0,32
8606
6055
3633
34,6
Yes
Yes
Avg
Tid
29,5
75
Test
4H
ybrid
4328
874
4,12
8335
953
3153
1448
400,
1381
3018
815
5332
,5N
oY
es
Map
Type
:R
X B
ytes
RX
Meg
abyt
esR
X p
acke
tsTX
Byt
esTX
Pac
kets
Tim
eC
ache
Cle
ar?
Zoom
ing
Tota
l RX
Dat
a10
,013
2694
2M
B
Test
1N
one
2576
438
2,45
7082
748
1875
9998
70,
0953
5503
387
1149
20,6
Yes
No
Tota
l TX
Dat
a0,
2976
3031
01M
B
Test
2N
one
9585
10,
0914
1063
6989
5157
0,00
4918
0984
552
20,1
No
No
Tota
l Dat
a us
e10
,310
8997
3M
B
Test
3N
one
6927
511
6,60
6589
317
4897
1681
640,
1603
7368
7718
6631
,5Y
esY
esA
vg T
id24
,025
Test
4N
one
8998
740,
8581
8672
1867
038
780
0,03
6983
4899
932
923
,9N
oY
es
Map
Type
:R
X B
ytes
RX
Meg
abyt
esR
X p
acke
tsTX
Byt
esTX
Pac
kets
Tim
eC
ache
Cle
ar?
Zoom
ing
Tota
l RX
Dat
a22
,828
6008
8M
B
Test
1S
atel
lite
4092
900
3,90
3293
6130
9718
7150
0,17
8480
1483
1905
18,4
Yes
No
Tota
l TX
Dat
a0,
7212
4958
04M
B
Test
2S
atel
lite
8702
130,
8298
9978
7962
622
447
0,02
1407
1273
823
118
,9N
oN
oTo
tal D
ata
use
23,5
4985
046
MB
Test
3S
atel
lite
1399
1458
13,3
4329
414
1015
941
9099
0,39
9683
9523
4354
38,1
Yes
Yes
Avg
Tid
25,9
Test
4S
atel
lite
4982
952
4,75
2113
342
3599
1275
890,
1216
7835
2413
0928
,2N
oY
es
Map
Type
:R
X B
ytes
RX
Meg
abyt
esR
X p
acke
tsTX
Byt
esTX
Pac
kets
Tim
eC
ache
Cle
ar?
Zoom
ing
Tota
l RX
Dat
a24
,196
2299
3M
B
Test
1Te
rrän
g43
0554
04,
1060
8291
630
9996
855
0,09
2368
1259
211
0520
,3Y
esN
oTo
tal T
X D
ata
0,48
1162
0712
MB
Test
2Te
rrän
g50
879
0,04
8521
9955
443
3919
0,00
3737
4496
4636
17,2
No
No
Tota
l Dat
a us
e24
,677
3920
1M
B
Test
3Te
rrän
g18
3734
4417
,522
2816
513
123
3451
960,
3292
0455
9342
1236
,1Y
esY
esA
vg T
id26
,95
Test
4Te
rrän
g26
4172
32,
5193
4337
618
9758
565
0,05
5851
9363
465
334
,2N
oY
es
Sto
ckho
lm, L
ondo
n, P
aris
, Am
ster
dam
, and
Ber
lin
BILAGA 2
Frågeformulär
1. Vad ansåg du var utmaningen eller utmaningarna i spelet?
2. Vad gjorde du för att komma över utmaningen eller utmaningarna?
3. Vad var det svåraste att göra?
4. På en skala ett till tio, hur svårt var det att förflytta sig över kartan.
5. Vilket var det största problemet med förflyttningen över kartan.
BILAGA3
På svenska
Detta dokument hålls tillgängligt på Internet – eller dess framtida ersättare –
under en längre tid från publiceringsdatum under förutsättning att inga extra-
ordinära omständigheter uppstår.
Tillgång till dokumentet innebär tillstånd för var och en att läsa, ladda ner,
skriva ut enstaka kopior för enskilt bruk och att använda det oförändrat för
ickekommersiell forskning och för undervisning. Överföring av upphovsrätten
vid en senare tidpunkt kan inte upphäva detta tillstånd. All annan användning av
dokumentet kräver upphovsmannens medgivande. För att garantera äktheten,
säkerheten och tillgängligheten finns det lösningar av teknisk och administrativ
art.
Upphovsmannens ideella rätt innefattar rätt att bli nämnd som upphovsman i
den omfattning som god sed kräver vid användning av dokumentet på ovan
beskrivna sätt samt skydd mot att dokumentet ändras eller presenteras i sådan
form eller i sådant sammanhang som är kränkande för upphovsmannens litterära
eller konstnärliga anseende eller egenart.
För ytterligare information om Linköping University Electronic Press se
förlagets hemsida http://www.ep.liu.se/
In English
The publishers will keep this document online on the Internet - or its possible
replacement - for a considerable time from the date of publication barring
exceptional circumstances.
The online availability of the document implies a permanent permission for
anyone to read, to download, to print out single copies for your own use and to
use it unchanged for any non-commercial research and educational purpose.
Subsequent transfers of copyright cannot revoke this permission. All other uses
of the document are conditional on the consent of the copyright owner. The
publisher has taken technical and administrative measures to assure authenticity,
security and accessibility.
According to intellectual property law the author has the right to be
mentioned when his/her work is accessed as described above and to be protected
against infringement.
For additional information about the Linköping University Electronic Press
and its procedures for publication and for assurance of document integrity,
please refer to its WWW home page: http://www.ep.liu.se/
© Ante Wall