Mole Munch – Dev log 1

Vi är en grupp på 6 personer som tillsammans utvecklar ”Mole munch”. ”Mole munch” är ett projekt i kursen Spelutveckling i samband med Spelprogrammering 2. Jag går i rolen av ”Lead Code” och lägger därför mycket av mitt fokus på att programmera. Vad jag har valt att fokusera på denna veckan är vad som kallas en entitetslista. Detta är en lista skapad för att samla alla objekt i spelet. Varför man vill samla alla objekt i en lista är för att det underlättar för flera olika områden. Om man till exempel vill uppdatera alla objekt i spelet så kan man kalla på listan som kollar om objekten är aktiva, är de det så uppdateras dem. Detta underlättar då man istället bara kallar på listan istället för att kalla på varje entitet var för sig.

I projektet från Spelprogrammering 1 så använde vi oss av en liknande lista, vad som skiljer denna åt är att listan innehåller en funktion för att kolla vilka objekt som är under eller över marken. Detta skapades för att spelet har en mekanik då spelaren kan gräva sig ner under marken. När spelaren är under marken så ska inte objekt som är ovanpå marken ritas ut och tvärtom. När denna funktionen inte fanns så skapades många problem så som att objekt på ovansidan kunde reagera med objekt som var på samma position fast under marken.

Nedan är en bild som visar olika entiteter. Varje jordgubbsplanta är individuella entiteter, men använder sig av samma klass, detta gör att de kan reagera olika och ha olika positioner, samtidigt som de använder sig av samma textur. Om jordgubbsplantorna inte skulle läggas in i en lista skulle det vara mycket svårare att hålla isär vilken planta som är vilken. Mullvaden längst ner på bilden är också en entitet med samma funktionalitet som de andra entiteterna. Fast än spelaren är med i listan så har den funktioner som inte kan kallas via listan utan måste kallas genom spelaren. Detta är för att spelaren har funktionalitet för att till exempel reagera till knapptryckningar. Funktioner som måste kallas genom spelaren är funktioner som inte behövs i andra entiteter. Alla entiteter i listan använder sig av de funktioner som listan håller i. Blog#1

Det här spelet skulle gå att programmera utan att skapa en entitetslista, men struktur tycker jag är väldigt viktigt i programmering. Strukturen blir ännu viktigare när man är fler än en programmerare, det är också bra övning för framtida projekt som säkerligen kommer vara större och mera avancerade.

1 tanke på “Mole Munch – Dev log 1

  1. Marcus

    Bra post, förklarar riktigt väl vad som menas med en entitetslista, men jag skulle vilja veta lite mer om hur den fungerar. En extra bild på listan med förklaring på hur koden kallas in tror jag skulle hjälpa mig förstå, även om jag som grafiker inte har riktigt samma kunskap om kod som ni. Det är klart för mig varför listan har skapats och jag håller med om att struktur är viktigt. Jag har ett par frågor om sakerna som nämns i texten: Hur fungerar klasserna? Innebär en klass att samma egenskap överförs till andra objekt av samma sort eller har jag helt fel? Jag är inte helt säker på om det var tydligt i texten. Vilka funktioner aktiveras av entitetslistan och vilka kan aktiveras av spelaren? I vilka områden underlättar det att ha listan? Utöver de frågorna har jag inte mycket att tillägga. Efter att ha sett spelet på pre-alphan tycker jag absolut att spelet är ett av de mest färdigställda projekten. Jag är inte helt säker på om vår grupp använder en entitetslista, men det skulle troligen var till stor användning för oss också. Hur som helst, en bra post, och jag önskar er lycka till med projektet.

    Gilla

    Svara

Lämna en kommentar