Spelutvecklingsanalys - Del 1: Placering av fötter

Blogg - Azogh - sön 28 juli 2013, kl 16.11

En detalj i spel som kan skjuta upplevelsen i sank är en dåligt animerad huvudkaraktär. Det spelar mindre roll hur fiender som man ser på håll är animerade (inom rimliga gränser naturligtvis) men karaktären man spelar är den del av spelets visuella element som vi som spelare konstant kommer att titta på, och den tar upp en god procent av skärmen dessutom. Oftast är animationer välgjorda i dagens spel. Man har nyttjat dyr motion capture och dessutom anlitat ett gäng animatörer att städa upp dessa rörelser till mjuka och trovärdiga flöden i karaktärens rörelsemönster. Men även bland nya spel, som spenderat massor med tid och pengar på att få dessa rörelser vackra och trovärdiga, så hittar man exemplar där man missat småsaker. En av dessa detaljer är hur karaktären placerar sina fötter på lutande och ojämnt underlag.

Som exempel för att illustrera vad jag menar kan vi tänka oss en stillastående animationsloop för en karaktär, en så kallad Idle. Karaktären står stilla, men rör sig litegranna hela tiden så att den ser levande ut. En sådan pose animeras bara en gång, på plan mark, och så långt är ju allting bra. Men vad händer då om vi traskar halvvägs upp för en slänt och stannar där och vrider oss 90 grader i sidled? Om man bara lämnar karaktären med sin Idle-pose så kommer ena foten att vara begravd i marken och den andra kommer att stå ute i luften, någonting som direkt blir ett moment som sticker mig i ögonen. Jag har alltid haft överseende med detta, då jag inte haft koll på hur saker fungerar, men när jag nu sitter med min egen huvudkaraktär och justerar animationer så har jag insett att det är busenkelt att göra, och funktionen finns redan där på grund av andra saker som ska beräknas utifrån vad mark som finns under karaktären.

Olika material man vandrar på ska ge olika fotstegsljud och lämna olika fotavtryck, så vad spelmotorn gör är att kasta en så kallad Raycast rakt ner i backen och hämta diverse information från det föremål som den stöter på, oftast ett landskap eller ett golv. Från denna raycast kan man bland annat läsa ut objektets material och fysiska attribut men med informationen kommer också objektets lutning och position i 3d-rymd. Så informationen finns redan där, fotsteg för fotsteg, och det krävs (i Unreal Engine) exakt 2 rader kod för att justera karaktärens animation för att fötterna ska ställas på fast mark.

En korrekt fotplacering är lika viktigt som resterande animationer, och med tanke på att det tog mig fyra timmar från att ha noll koll på hur jag skulle gå till väga till att få min karaktär att korrekt följa marken, så ser jag det som oförlåterligt att stora studios låter en sådan detalj gå ogjord.

Med det avklarat gräver jag mig djupare ner i Unreal Development Kit och ser vad mer detaljer jag kan hitta som kommer att förstöra framtida spelupplevelser för mig. På återseende.

Skriv ny kommentar

Innehållet i detta fält är privat och kommer inte att visas publikt.
CAPTCHA
Fyll i texten från bilden för att bevisa att du inte är en maskin.
Copyright Skillpoint™     Chefredaktör: Sebastian Magnusson
Inget material på sajten får kopieras utan tillstånd.