Veckoutmaning: Litet spel på IPhone (3/7) och (4/7)

14 juli 2009

sadDetta har hänt: igår försökte jag förgäves få igång enhetstestning mha. OCUnit på Mac:en. Detta visade sig vara pilligt som satan, och jag gav till slut upp. Det är väl en blandning av ovana vid Mac i allmänhet och XCode i synnerhet. [och fan vad jag är trött på grafiska gränssnitt med massa switchar och flaggor!! Att följa en instruktion steg-för-steg som nästan men bara nästan stämmer överrens med GUIt – XCodes konfigfönster – är bara lagom kul.]

Under kvällen igår och morgonen idag funderade jag över alternativ. Till slut kom jag fram till att Python+PyGame får bli miljön för denna gång. Det är lätt att installera, och jag kommer vidare istället för att vara låst.

Dock så är det stort frågetecken på om tidsplanen håller då jag nu tappat två dagar på grund av ”tekniska problem”. Jag jobbar på så gott jag kan, har åtminstone fått ihop enhetstestning på lagom nivå i Python denna fjärde dag. Hoppas kunna posta en liten screenshot ikväll eller imorgon.

En fördel med denna nya miljö är att jag kan släppa allt som öppen källkod när jag är färdig. Just nu håller jag på att lära mig Launchpad.net som används av Ubuntu community, det verkar riktigt bra för kollaborativa projekt.

Python IDLE efter lite lek med färgerna

Pythons IDLE-editor efter lite lek med färgerna

Taggar: , , , ,

Annonser

Veckoutmaning: Litet spel på IPhone (2/7)

12 juli 2009

(detta är del 2 av 7 i en serie om hur jag bygger ett litet spel till IPhone på en vecka. Läs del ett som beskriver spelidén och reglerna.)

Den här dagen har blivit lite av en ”reality check” för mig. Jag började med att sätta ihop en lång lista med ”items” jag behövde för att kunna bygga spelet. Den blev längre än jag trodde, och det är lätt att bli lite missmodig.

Här är valda delar från den listan, som beskriver det jag behöver lära/bygga/designa:

  • Grafik: teknik. Använda texturer eller bara trianglar? Om texturer: lär om hur läsa in bitmappar i Objective-C, implementera texturuppladdning till OpenGLES (GLES = Graphics Library Embedded Systems; en strippad version av vanliga OpenGL som används på ”små enheter” som mobiltelefoner)
  • Grafik: data. Oavsett metod, måste bilderna/triangelinformation skapas.
  • Ljud: teknik. Läs om hur man spelar upp ljud på IPhone., och hur man läser in samplingar i minnet/laddar upp till ljudkortet (eller hur det nu funkar på IPhone). Prototypa/implementera.
  • Ljud: data. Skapa samplingar, eller hitta på nätet.
  • TDD. Jag är såpass invand med TDD-tekniken att jag helst av allt vill ha vettiga enhetstestmöjligheter. Ja faktiskt har jag svårt att se hur jag skulle trivas med att utveckla någonting utan enhetstester nuförtiden.

Jag hittade en artikel som beskriver googles approach till TDD på IPhone, den har jag skummat plus en introduktion till OCTest som är ett enhetstestramverk för XCode.

Installation + första testet med OCTest blir en bra början imorgon tror jag!

Taggar: , , , ,


Veckoutmaning: Litet spel på IPhone (1/7)

11 juli 2009

Ganska långt ned i en tråd på OpenTK.com* skrev jag (du får gissa mitt alias själv!) att två erfarenheter jag dragit när det gäller att ”slutföra projekt” är följande:

  1. Skriv ned ”visionen” först av allt (typ spelregler i ett brädspel)
  2. Tidbegränsa! (aka time-boxing)

Och nu ska jag leva som jag lär! Jag utmanar mig själv att, på time-boxen en vecka, bygga ett litet spel till IPhone.

Så idag har jag tänkt ihop en liten spelidé som jag presenterar med bild & regelbeskrivning.

Skydda fortet!

Skydda fortet!

Så till spelreglerna:

  • Spelet går ut på att skydda fortet i mitten av skärmen
  • Fortet attackeras av små fartyg som kommer inseglande
  • Till skydd har man en ”slangbella-kanon”
  • Man drar i kulan, och släpper för att avfyra!
  • Efterhand kommer det fler och snabbare segelfartyg
  • Så fort ett fartyg nuddar vid ön fortet står på, är spelet slut

Om jag skulle skriva en hiscore-lista är det antalet sekunder man lyckas försvara fortet som gäller som ”poäng”.

* OpenTK är ett multimediabibliotek för .NET, opensource! Det wrappar OpenGL, OpenAL så man kan skriva plattformsoberoende grafik- och ljudaccelererade spel i C#/Visual Basic.

Taggar: , , , ,


%d bloggare gillar detta: