Spelprogrammering med XNA och MonoGame Tutorial, Programmering 2 Johan Hällgren, Thoren Innovation School SAMMANFATTNING Detta är en hjälp för att genomföra bokens tutorial. Allt från specifika tips för att göra övningen i OS X/Xamarin till att hitta lösningar på problem i boken och egna alternativa lösningar.
Innehållsförteckning Skapa utvecklingsmiljö... 1 Steg 1 installera XCode... 1 Steg 2 installera Xamarin... 1 Steg 3 installera Mono MDK och Mono MRE... 1 Steg 4 installera mpack... 1 Skapa ditt första projekt... 2 Stöd till boken... 3 Mac... 3 Infoga bilder till projektet... 3 Skriva ut text i MonoGame, sid 68... 4 ToList(), error i Xamarin på sid 77... 5 Resurser... 5 Problem med XML, sid 133 ff... 6 Xmldokumentets placering... 6
Spelprogrammering med XNA och MonoGame 1 Skapa utvecklingsmiljö Detta är en kort guide för hur du installerar Xamarin och det spelramverk som behövs för att kunna följa bokens 1 tutorial. Steg 1 installera XCode I skrivande stund så finns en stabil version av Xcode 6.1.1 men det kräver OS X 10.10 för att fungera. Beroende på vilken version av OS X du har så kanske du är tvungen att installera Xcode 5.1.1 istället. Den går att hitta här; http://downloads.tomsguide.com/xcode- 4,0301-46197.html Filen är på ca 2.3GB, installationen tar ytterligare några GB så se till att du har utrymme på hårddisken. När du har installerat Xcode, starta programmet så att det konfigureras och att alla inställningar är klara, detta behövs för att kunna köra resten av installationen. Steg 2 installera Xamarin Hämta Xamarin (5.7 är senaste stabila versionen när denna guide skrivs) och installera programmet. http://www.monodevelop.com/download/ Om du startar programmet kommer du tvingas klicka på en knapp som leder dig direkt till steg 3. Steg 3 installera Mono MDK och Mono MRE Ladda ner och installera paketen för MonoMDK och Mono MRE. http://www.mono- project.com/download/ Steg 4 installera mpack Hämta ner filen MonoDevelop.MonoGame_3.2.0.2 från följande adress; https://github.com/stebyrne04/monogame_templates/blob/master/monodevelop.mo nogame_3.2.0.2.mpack I menyvalet Xamarin Studio - > Tilläggshanterare skall du välja att installera MonoDevelop.MonoGame_3.2.0.2.mpack via knappen Install from file Nu skall du ha en fungerande miljö, på nästa sida testar vi att skapa ett nytt projekt. 1 Programmering 2 C#. Spelprogrammering med XNA och MonoGame, Thelins Läromedel, Krister Trangius (2013)
Spelprogrammering med XNA och MonoGame 2 Skapa ditt första projekt I Xamarin väljer du Arkiv - > New - > Solution och väljer sedan att skapa ett MonoGame- projekt för MacOS. Ge projektet ett namn och bestäm var det skall ligga i filstrukturen. Det skapas då ett nästan tomt projekt. Kör Nu skapas ett nästan tomt projekt som går att köra och som visar en bild på en blå bakgrund. Välj att klicka på playknappen uppe i högra hörnet och då kompileras programmet och sedan skall en blå ruta visas upp med en bild i. Om detta händer så har du en fungerande miljö som du nu kan börja programmera spel i.
Spelprogrammering med XNA och MonoGame 3 Stöd till boken Alla böcker som handlar om programvaror för datorer kommer förr eller senare att bli inaktuella när programvaror uppdateras eller något annat förändras. Vi skall heller inte glömma möjligheten att någon faktiskt har skrivit fel, det har ju trots allt inträffat. Till boken hör en packad fil med exempelkod och lite annat, bl.a. bilderna för att följa författarens tutorial och skapa ett identiskt spel. http://www.trangius.se/downloads/csharp2/csharp2exempel.zip Mac Bokens tutorial och exempel baserar sig på Windowsmiljö och Visual Studio. När vi kör Mac så använder vi Xamarin, och vissa menyval och exakt hantering av applikationen skiljer sig åt. Här tänker jag mig att vi listar saker som avviker så mycket att det behövs ett stöd för att göra på rätt sätt. Infoga bilder till projektet På sidan 183 i boken visar författaren hur bildfiler läggs till i projektet. Det stämmer dåligt överens med Xamarin. Gör istället så här. 1. Lägg bildfilen fysiskt i mappen Assets via Finder. 2. I ditt projekt i Xamarin, klicka på den lilla knappen vid sidan av Assets, välj Add, och sedan Add Files From Folder
Skriva ut text i MonoGame, sid 68 För att skriva ut text i MonoGame gör du så här. 1. Du behöver en font av typen xnb. Sök på nätet, det går också att skapa egna. I Progress ligger det tre fonter som jag skapat, plain, bold och italic, dessa är ok att använda. 2. Lägg in fonten under Assets och döp eventuellt om fonten. 3. Markera fonten och välj egenskaper, sätt build action till content. 4. Deklarera en font av typen SpriteFont. [rad 34] 5. Ladda fonten. [rad 73] 6. Skriv ut texten med funktionen DrawString [rad 104] Spelprogrammering med XNA och MonoGame 4
Spelprogrammering med XNA och MonoGame 5 ToList(), error i Xamarin på sid 77 När du skriver raden foreach (Enemy e in enemies.tolist()) får du ett error, det löser du på följande sätt; ü Högerklicka på ToList och sedan Resolve - > using System.Linq Lösning av Ludvig Forsberg. Resurser raven67854: 2D MonoGame Micro Tutorial Series Tutorial https://www.youtube.com/watch?v=exzb_myzrkm
Spelprogrammering med XNA och MonoGame 6 Problem med XML, sid 133 ff Om det uppstår ett problem med att System.Xml inte kan läsas in så beror det på att detta måste läggas till i Xamarin, Det gör du lätt genom att välja Edit References under References i projektet. Och sedan kryssa i rutan för System.Xml. Nu skall ovanstående error försvinna. Xmldokumentets placering Nästa sak som kan skapa problem är var Xml- dokumentet skall placeras. Denna fil skall placeras ända nere i projektets Debug- mapp (som ligger i bin- mappen) ihop med den exe- filen som skapas när du kompilerar programmet. Exefilen är ju den fil som anropas när programmet körs. Om du vill samla många filer i en egen mapp så måste denna ligga i under debug - mappen och du måste också ändra koden för funktionen xmldoc.load() för att tala om dokumentets plats.