Etikettarkiv: XNA

Övergång till MonoGame

Efter en längre tids fundering så har jag nu påbörjat övergången från XNA till MonoGame. Anledningarna är självklara egentligen. MonoGame utvecklas och underhålls samt erbjuder många fler plattformar.

Sedan en tid tillbaka har MonoGame numera en egen Content-hantering vilket gör att man slipper vara beroende av att ha gamla XNA installerat parallellt.

Vi har påbörjat en ny artikel-kategori med artikeln: MonoGame – Snabbstart.

Tyvärr finns det saker som irriterar. Vi hade problem med klassen SoundEffect och fick inga ljudeffekter att spela upp! Musik gick bra (!?). Jag har spenderat ca 1 timme felsökning men det lutar åt en bugg i MonoGame 3.4 (i kombination med Windows 10/drivrutiner).

UPPDATERING #1: Testade på en stationär dator med exakt samma projekt. Då fungerar det givetvis. Gemensamma faktorer är Windows 10, Visual Studio 2015 Community Edition samt MonoGame 3.4. Saker som skiljer är hårdvara och därmed drivrutiner.

UPPDATERING #2: Lyckades lösa en problemet med att installera om DirectX! Även andra så problem, men även lösningar, har upptäcks. Läs om detta i den uppdaterade artikeln (länken ovan).

A* – Bästa vägen

Har precis avslutat en artikel om en sökalgoritm som de flesta spelintresserade känner till.  Implementationen är mest gjord för att kunna visualisera resultatet och beräkningarna.

Lite undersökning visar att även de som sitter med Unity3D kan ha nytta av detta. Verkar inte som det finns någon A* out-of-the-box för enklare spel. Jag kan ha fel.

Denna artikel kan du läsa här. Jag fundera på vilken kategori som passar bäst: spel eller sökalgoritmer. Tillämpningen är ju nästan alltid spel men algoritmen handlar ju om sökning, därav sökning. Något för de intresserade inom Programmering 1 som ska lära sig sök-algoritmer. Nu är just denna algoritm i svåraste laget kanske men varför inte bredda horisonten lite?

 

Quad Tree

Jag har precis avslutat en artikel om Quad Tree. Ett ganska bra verktyg för att kunna hantera fler objekt i ett spel. Lagom svår att förstå för en gymnasieelev.

Ett användningsområde är kollisionshantering men även en server skulle ha nytta av detta. En server behöver bara skicka uppdateringar till klienterna på de objekt som befinner sig nära klienten. Alla andra objekt i världen är inte av intresse.

En kort demonstration finns i klippet nedan.

Läs mer i artikeln.

Vart tog Silverlight vägen?

Kanske ingen bra rubrik. Ni tänker såklart HTML 5 of course! Jag håller helt med. HTML 5 + javaScript är framtiden.

Jag saknar dock Silverlight av flera anledningar. Den främsta är ju att du kan koda C# på klientsidan tillsammans med XAML! Hur kan man inte älska den ”Databinding” som finns i XAML? För att inte tala om alla trevliga .NET-ramverk som även fungerar på Silverlight.

Skapar man större affärssystem så skulle jag fortfarande rekommendera Silverlight 5 + RIA Services. Sysslar man vanligtvis med MVVM och t.ex. WPF så måste tanken att använda EXAKT samma designmönster och verktyg vara lockande.

Silverlight lever fortfarande vidare inom Windows Phone 8-utveckling samt Windows 8/8.1 Metro Apps.

Själv tänker jag ta upp ett utdöende spår och undersöka Silverlight 5 + XNA. Detta mest för att kunna ha live-exempel på hemsidan över t.ex spel och spelidéer. Googlar man på ”Silverlight + XNA” så hittar men en del exempel men alla verkar vara daterade till ca. år 2011 samt begränsade till Visual Studio 2010. Så behöver det inte vara! Dags att ta tag i det! Något jag borde gjort redan 2011…

Cloudball

Känner du till cloudball (sidan verkar nere just nu)? Det är en fotbollssimulator som släpptes 2012 av Giraff i samarbete med Microsoft.

Tanken med Cloudball är att man skall lära sig programmera genom att utveckla AI för fotboll. Det låter kanske avancerat men det är faktiskt enkelt! Provspela mot andras AI:n i ett slags ligaspel eller utmana någon arbetskamrat i lite AI kodning i C#. Man kodar ihop ett ”lag” på några minuter. Kanske inget bra sådant men ändå.. 🙂

Man kan alltså leka lite ”lokalt” eller skicka in sitt alster för att  mäta sig mot andra lag som skickats in. Just nu tror jag att tävlingen är lagd på is. Här en match med två bra lag:

Cloudball erbjuder ett ramverk (i C# och XNA) där du står för AI:n. I simulatorn kan du ladda in två lag och simulera en match.

Varför skriver jag om detta? Jo jag har lekt en del med Cloudball för något år sedan och tyckte att det var en fantastisk idé som man skulle kunna använda i klassrummet. Elever skulle kunna jobba själva eller i lag för att ta fram ett Cloudball-lag. Träningsmatcher skulle kunna hållas regelbundet, svagheter förbättras tills det är dags för finalen! På finaldagen kan en vinnare sedan koras!

Det roligaste med Cloudball är att man kan göra AI:n hur avancerad (eller enkel) som helst. Det är alltså ”högt till tak” för lärande.

Det ska bli en artikel om ämnet snart med lite mer konkreta exempel.

Flappy Nyan Cat v.1.1

Ny version!

Jag vill först tacka ”MICROSOFT” med sina 99999999 poäng. Du gav mig inspiration till att förbättra hanteringen av High Score. Trodde faktiskt det skulle ta lite längre tid, så bra jobbat!

Det som är nytt är just att du kan visa en ”replay” på de Topp 10 bästa resultaten. När du sparar din High Score så sparas ”hela spelet” så att säga så att man kan njuta av att spela upp det igen. Knapparna F1-F10 startar en ”replay”.

OBS: Ladda hem en ny version av spelet för att ta dig in på High Score! Den gamla listan är borta…

Mindre ändringar är att laddningen av Topp 20 i spelet sker asynkront.

Flappy Nyan Cat v.1.0

Flappy Nyan Cat v.1.0 ser dagens ljus!

UPPDATERING: Ladda hem Flappy Nyan Cat v.1.0

Spela och ta dig in på TOP 50 listan på hemsidan!  I spelet visas en top 20 lista.

Bara EN knapp att trycka på; SPACE! Du kan också växla fullskärm med ”F” i spelet.

Det tog lite tid att få till installern så att den kontrollerar rätt .NET-version (4.0) och laddar hem den vid behov. Installern installerar även de bibliotek som krävs för XNA 4.0.

Katten flyger igen!

… eller ”flappar” kanske det heter numera? Styrningen är ändrad till flappy-bird-styrning. Se ny preview!

Det som lagts till de senaste timmarna är:

  • ”Game states”, startskärm, spel, slutskärm
  • Ljudeffekter
  • Meteoriter
  • Pipes a la Flappy Bird
  • Power Ups i form av godis
  • Speltestning för att få det balanserat

Vad är kvar? Jag hade tänkt mig att lägga till så att high score kan postas till en speciell sida på csharpskolan. Sedan skall spelet publiceras i diverse app stores, främst Windows 8 och Windows Phone 8 hade jag tänkt.

Ser det skoj ut?

UPPDATERING: Ladda hem Flappy Nyan Cat v.1.0

 

Spring katt! Spring!

Har tankar på att göra ett enkelt nyan-cat-inspirerat spel. Fick en släng av inspiration gjorde följande utkast på 2 timmar:

Det tog lite tid att få till grafiken så att den ser så lik ut originalet som möjligt.

Spelidén är inte riktigt färdig. Troligtvis kommer jag att lägga upp allt som artiklar på csharpskolan som vanligt. Kanske det denna gång blir en app till Windows 8/Windows Phone också.

Skapade ett YouTube-konto för att kunna slänga upp lite ”slask”-video. Det är ingen kanal som jag hade tänkt använda till artiklar eller så annars.

 UPPDATERING: Ladda hem Flappy Nyan Cat v.1.0