BACHELOR THESIS. Realistic Character Animation For Games. Rickard Paulsson. Luleå University of Technology

Relevanta dokument
C-UPPSATS. Animation för spel

C-UPPSATS. Cinematic Animation in a Production Pipeline

C-UPPSATS. Revitalizing classic art using real-time game technology

Programmering. Scratch - grundövningar

Jämförelse av animationslager och trax-editor

C-UPPSATS. Realistisk modellering för film

Filma Basic Editing A OBS System settings, Välj mapp för scratch disk. Kryssa samtliga möjliga rutor. B

Post Mortem för Get The Treasure!

Portfolio Johan Brink

tjejit en studie av kvinnors låga deltagande vid Karlstads Universitets IT-utbildningar

LANDING ZONE II (v1.0, uppgift 2 av 4) för 3D Animering B 1112

Interaktiva applikationer för dator (WPF) och web (Silverlight) Grafisk utvecklingsmiljö. Hela produktioner: design, layout, animationer, skins, etc.

Projektrapport EDA095

SLUTRAPPORT: TEXAS HOLDEM 4 FRIENDS

Din idé Vår verklighet VIRTUELLT

Anvisningar för din ansökan Följande handlingar ska alltid bifogas din ansökan. Personbevis från Skattemyndigheten Betyg Arbestprover

The Awakening Short Film

Space Invaders - Slutrapport

Spelutveckling - Gameplay. Design och produktion

Microsoft Expression Blend + Sketch Flow

Gränssnitt för FakeGranska. Lars Mattsson

Manual Produktion av presentationssynkar med PowerPoint och Producer

Slutrapport. Super Mario klon. Tomas Wallin tw222bv WP

Lär dig imovie Kom igång med videoredigering

Character creation for web based games

Game of 40. Regler och om sidan är in princip samma sak. Det som skiljer dem åt är att de inte har samma text.

Utrymningshissar och utrymningsplatser utifrån de utrymmandes perspektiv. kristin andrée

Introduktion till After Effects

1. ActiveGPS 2.00 by TJ

HAND TRACKING MED DJUPKAMERA

4. lägg in övergångar

Department of Information Technology Digitala projekt. SuperKull. Daniel Öhman Alexander Persson

Starta din försäljning med hjälp av sociala medier

Labbrapport - LEGO NXT Robot

Programmeringsappar. Av Alex

Chalmers tekniska högskola EDA390 Datakommunikation och Distribuerade system

Hem Resurser. SpinFire Professional. Partnerlogin. Deutsch 简 体 中 文 English. Centro. ActifyInsight. 1 av :35

Curriculum Vitae Erik Benerdal

Design is not just what it looks like and feels like. Design is how it works. Steve Jobs

TUTORIAL 3: ATT STARTA ETT NYTT PROJEKT, IMPORTERA ELLER DIGITALISERA MATERIAL, SAMT SORTERA DET.

Systemvetenskap. Spelblog. Game Jams

Få dina bilder att tala

SCRATCH är ett nytt programmeringsspråk som gör att du kan skapa dina egna interaktiv historier, animationer, spel, musik och konst.

Tor Sterner-Johansson Thomas Johansson Daniel Henriksson

Laboration i datateknik

Projektdokument för Twisted Metal. Gäller för spelprojekt 2. Martin Jonsson Gamemaker Remaker

7. PANELEN MONITOR. Tidskodens standardinställning. Du kan ändra visning till enbart bildrutor med menykommandot

Spela in och exportera din PowerPoint som en film via Premiere Elements

New Media. De nya praktikerna och kontexter för den nya praktiken

Överenskommelse gällande verksamhetsförlagd utbildning för digitala media programmet på högskolan Väst

Slutrapport Get it going contracts

Slutrapport för JMDB.COM. Johan Wibjer

USB styrt DMX gränssnitt

EXAMENSARBETE. Grafik för reklam. Karolina Hardinger. Teknologie kandidatexamen Datorgrafik

Labrapport över Rumbokningssytemet Grupp:1

Visualisering med Rhino/Vray/Photoshop av modell som skapats i Revit. AADA15 Revit Workshop 2017 LTH Ludvig Hofsten

Skapande av en modifikation till Crysis

JavaRats. Kravspecifikation. Version 1.1. Gustav Skoglund Marcus Widblom Senast ändrad: 13 / 05 / 08

Skriv ned namn på alla i gruppen:

FIRST LEGO League. Stockholm

Deltagarnas utvärdering av 23 saker

Kravspecifikation. Sammanfattning. Fyra i rad Javaprojekt inom TDDC32. Version 2.0. Datum Dokumentnummer

Reklamfilm. Coola Connect

RAPPORT ÖVER SOCIALA WEBBEN. Webbdesign för sociala interaktioner Josefine Holmberg

PowerPoint Online Versi on 1.0 Skolkontoret

Smartare kamera. - iphone-app med det lilla extra LAJKA-GUIDE

SolidWork Composer competence

25 knep för att hålla koll på din tid

Skapande av animationer för interaktiv spelmedia genom motion capture Kakee Lau

Laboration i datateknik

Startmeny i Windows 8

Sociala medier. Enkätundersökning för Länsförsäkringar

Västra City. Sammanfattning. Byggvisualisering Projekt TNBI48 LiTH, Campus Norrköping 2009

Vilken skillnad gör det var du placerar det? Prova båda.

C-UPPSATS. En jämförelse mellan ett spelutvecklingsföretag och ett postproduktionsföretag

Styra olika typer av objekt som animering, video, ljud och Flashfilm

5 TIPS FÖR ATT HEMSIDAN SKA ÖKA DIN FÖRSÄLJNING

Sociala medier. Enkätundersökning för Länsförsäkringar

Vi är alla i gruppen väldigt intresserade av spel och vill lära oss mer om hur man skapar ett helt spel från idé till slutprodukt.


Webbserie och diskussionsmaterial om hur sociala medier påverkar vår självkänsla.

Arv. Fundamental objekt-orienterad teknik. arv i Java modifieraren protected Lägga till och modifiera metoder med hjälp av arv Klass hierarkier

Projektredovisning- Animationstest, Stopmotion och 3D skrivare Jacob Petersson, Cristoffer Ålund, Jakob Arevärn

Luftförvärmare. Vår idé och design. Mohammed Muhsin. För dig som gillar att återvinna och bygga!

INNOVATION OCH UTVECKLING MED HJÄLP AV LNU:S STUDENTER STUDENTER 100 UTBILDNINGSOMRÅDEN TVÄRVETENSKAPLIGA TEAM

TDP005 Projekt: Objektorienterat system

Brädspelet Mulan. Håkan Berggren, Magnus Ellisson, Lars Kristiansson, Cheng-Huei Kuo, Eva Ljunggren, Joakim Viker. Göteborg 1999.

DESIGNSTUDIO SPEL TEAM TONTOY. Patrik Lundin : : XXXX HÖGSKOLAN I HALMSTAD Digital Design och Innovation

C-UPPSATS. Regissör och animatörs interaktion

Rune Tennesmed. Oskar Norling 1DV430. Individuellt Mjukvaruutvecklingsprojekt 1DV430 Webbprogrammerare H12 Oskar Norling

Av: Sven & Andrew 9E

Big Data i spelbranchen

Viewers i alla former.

Lägg till foton - modul 7

Laboration 3 i kursen Produktion för tryckta medier och webb: Webbplatsproduktion med ett publiceringssystem

GRATIS FÖR PRENUMERANTER

TDDC74 - Projektspecifikation

Swedish Translations of Brad Yates Videos

Högskolan i Halmstad Multimedia och visuell kommunikation Övning 1 Adobe Flash, grundfunktioner & interpolering. Efter övningen förväntas du kunna:

Upptäck 7 trick som förvandlar ditt nyhetsbrev till en kassako

Transkript:

BACHELOR THESIS 2008:004 Realistic Character Animation For Games Rickard Paulsson Luleå University of Technology Bachelor thesis Computer graphics Skellefteå Campus Division of Leisure and Entertainment 2008:004 - ISSN: 1402-1773 - ISRN: LTU-CUPP--08/004--SE

10 Januari 2008 Examensarbete Realistic character animation for games ISI782 Final Thesis/Examensarbete Luleå Tekniska Universitet Grin AB

FÖRORD Detta examensarbete utfördes på spelföretaget Grin i Stockholm från den 22:a Mars till den 30:e maj. Tanken med examensarbetet är att kunna ge en inblick i hur det fungerar att vara animatör på ett större spelföretag. Jag vill tacka animatörerna Lars Bonde, Anders Westin och Anders De Geer för deras stöd under hela exjobbet.

SAMMANFATTNING Grin är ett företag med nästan 100 anställda. I nuläget är tre av dem animatörer. Detta examensarbete är ämnat att förklara dessa animatörers arbetsuppgifter samt beskriva hela animationspipelinen.

Abstract Grin is a video game company with almost 100 employees. At this time three of them are animators. This master thesis is meant to explain the animators tasks and the animation pipeline at Grin.

INNEHÅLLSFÖRTECKNING Inledning... 1 Animationsprocessen på Grin... 2 MotionBuilder... 2 Modeller och Riggar... 2 Motion Capture... 3 Planering av animationer... 3 Så hamnar animationen i spelet... 4 Gameplay Programmerarna... 4 SVN (Subversion)... 4 Kritik och Feedback... 5 Designer kan ändras... 5 Animationsteknik... 6 Triggers och Beats... 7 Begränsningar i spelanimationer... 7 Utvärdering/Resultat... 8 Diskussion... 9 Appendix... 10 Referenser... 11

Inledning En animatör arbetar med att ge rörelse till karaktärer och objekt i rörlig media. Animatörer behövs inom både film och spelbranschen. Spelbranschen växer kraftigt i Sverige just nu och flera spelföretag vill gärna anställa skickliga animatörer. Syftet med exjobbet är att ta reda på hur det fungerar att jobba som animatör på ett spelföretag. Min målsättning med arbetet var att: * ta reda på vilka uppgifter en professionell animatör har. * ta reda på hur animationspipelinen på Grin fungerar. * skaffa mig en bättre förståelse för den realistiska animation som oftast används i spel. 1

Animationsprocessen på Grin MotionBuilder Som animatör på Grin har man självklart som huvuduppgift att animera. Till det används Autodesks Motionbuilder. Ett program som till skillnad från Maya och 3D Studio Max är helt fokuserat på animation. Några fördelar med motionbuilder som är värda att nämna är exempelvis att animation enkelt kan flyttas mellan olika riggar. Justering av mocap data är dessutom mycket enkel då man i motionbuilder kan använda sig av olika lager. En till fördel med motionbuilder är att det går att spela upp sina animationer i realtid. Man behöver alltså inte på något sätt rendera ut animationen för att kolla på den utan att uppspelningshastigheten sjunker. Modeller och riggar För att animatörerna ska kunna animera så behövs färdigriggade karaktärer. Modellerarna bygger karaktärerna som sedan lämnas över till två game designers som bl.a. sköter om riggandet. Oftast görs en första rigg på en mycket simpel mockup modell som inte hamnar i slutversionen av spelet. En av motionbuilders styrkor är som sagt att det är mycket enkelt att föra över animationer mellan olika riggar. Detta betyder att animatörerna ofta animerar karaktärer vars utseende kommer att ändras flera gånger under projektets gång. 2

Motion Capture Själva animationen på Grin är en blandning mellan vanlig keyframe animation och motion capture. Motion capture används för att återskapa realistiska rörelser som vi är vana vid att se. Till exempel walkcycles och runcycles. Motion capture används även i stora delar av filmsekvenserna i spelet. Grin spelar in sin motion capture-data hos företaget Northern Light Studios i Uppsala. Motion capture-datan är dock aldrig perfekt från början och blir därför rensad från felaktig data av samma företag. För att animationen sedan ska passa in i spelet krävs oftast att den finjusteras ännu mer av animatörerna på Grin. I motionbuilder har man möjlighet att sätta keys på olika lager vilket gör det möjligt att justera mocap data på ett helt nytt lager. Planering av animationer Vilka animationer som ska användas i spelet bestäms på möten mellan animation leads, gameplay leads, creative directorn och en del game designers. Sedan kan en animatör i efterhand be att få ändra animationerna så de passar vissa ändamål bättre. Om det skulle finnas tid över för en animatör har han även total frihet att animera rörelser som han tror skulle passa in i spelet. 3

Så hamnar animationen i spelet Om animationen är bra nog exporteras den med hjälp av en exportör som programmerarna på Grin har skapat. Den sparas då i ett format som gameplay programmerarna kan använda i spelmotorn. Gameplay-programmerarna Gameplay-programmerarna är ansvariga för hur animationerna implementeras i spelet. De är ansvariga för att animationen spelas upp vid rätt tillfälle och på rätt sätt. Vissa animationer är mer komplexa än andra och spelas inte från början till slut. T.ex. finns animationer som kan spelas både baklänges och framlänges, animationer som spelas i olika hastigheter och animationer som bara får avbrytas vid speciella tillfällen. SVN (Subversion) SVN är ett program som används på Grin för att alla på ett smidigt sätt ska kunna ta del av allt material som skapas. Med hjälp av svn är det enkelt att skicka de filer man jobbat med till en server där alla på Grin kan ta del av dem. När en animation ska läggas in i spelet använder animatörerna svn till att göra animationerna tillgängliga för gameplay-programmerarna. Gameplay programmerarna lägger sedan in animationen i en testversion av spelet. När de gjort det kan animatörerna uppdatera sin version av spelet genom svn och sedan testköra det för att se hur animationen fungerar i spelet. När animationen implementerats i testversionen av spelet en första gång räcker det sedan att animatören uppdaterar sin version av spelet lokalt för att se förändringar han gjort. Det betyder att man kan exportera en animation ur motionbuilder och sedan en minut senare se hur den nya animationen fungerar i spelet. Detta är mycket praktiskt eftersom det blir lättare att få till rätt känsla i animationen när man ser hur den ser ut i sitt sammanhang. 4

Kritik och Feedback Alla animatörer sitter nära varandra vilket gör det möjligt att be varandra om hjälp eller kritik när det behövs. Lars Bonde och Anders De Gere som är animation leads godkänner animationen om de tycker att den fungerar eller så nämner de vad som behöver ändras. Alla på Grin har självklart tillgång till svn-servern. Detta betyder att vem som helst kan komma med förslag på vad som bör ändras i en animation. Oftast är det dock animatörerna och gameplay programmerarna som diskuterar vad de tycker fungerar och inte fungerar. När de är nöjda med animationerna visas de för creative directorn som är som är den siste i ledet innan milestonen levereras till förläggaren. Förläggaren har sista ordet vad gäller animationerna och resten av innehållet i spelet. Designer kan ändras Ofta anpassas animationerna efter vilka objekt och karaktärer som finns i spelet. Men om en animation är svår att genomföra på ett snyggt sätt kan animatören be en game designer att ändra designen på ett objekt. Till exempel kan en dörr vara för liten eller trappstegen i en trappa vara för stora för att karaktärens interaktion med objektet ska kännas naturlig. 5

Animationsteknik Det är självklart viktigt att använda sig av bra referensmaterial då man ska animera realistiskt. Många gånger använder sig animatörerna av en filmkamera för att spela in eget referensmaterial. Det finns en madrass att tillgå då man behöver filma någon som ramlar eller kastar sig på marken. Det finns såklart mycket referensmaterial på Internet. Tyvärr kan det ta tid att hitta något som passar just den animation man tänkt animera. foton tagna av Eadward Muybridge. Mycket bra Referensmaterial. För att en animation ska se intressant ut är det viktigt att tänka på poserna i animationen. Nästan jämt överdriver animatören poserna i en animation för att göra den mer intressant. En populär animationsteknik är pose to pose animation vilket innebär att man börjar med att sätta ut de viktigaste poserna för en karaktär. När de är klara fyller man sedan i animationen mellan dessa poser. På detta sätt vet man tidigt att poserna i animationen kommer att bli starka. 6

Triggers och Beats För att gameplay-programmerarna ska veta var i animationen de ska lägga in t.ex. ljudeffekter och partikeleffekter lägger animatörerna in triggers. Triggers är data som föklarar på vilken frame en viss effekt ska spelas. Beats fungerar ungefär som triggers men används istället till att bestämma när en animation ska blendas till en ny. Begränsningar i spelanimationer I en filmsekvens kan man använda sig av anticipation* och followthrough* på ett helt annat sätt eftersom det är förutbestämt vad som kommer att hända. I ett spel däremot är det viktigt att tänka på att animationerna till spelarens karaktär inte innehåller pauser innan handlingen utförs. Det betyder t.ex. att karaktären inte får ta sats innan han hoppar. På Grin vill man nämligen att handlingarna ska utföras så fort spelaren trycker på knappen. Om karaktären springer och spelaren trycker på hopp knappen ska alltså karaktären hoppa omedelbart utan att animationen ska kännas konstig. Många animationer måste sluta i speciella poser som används ofta i spelet. En fiende kan t.ex. ha 10 olika rörelser som ska kunna spelas från en viss pose och de rörelserna måste i sin tur sluta i en ny pose från vilken ett flertal nya animationer kan spelas. Det ligger en viss utmaning i att hitta ett naturligt sätt att flytta karaktären till en sådan pose efter så många olika rörelser. I många spel kommer dödsanimationerna att sluta i en ragdollsimulation. En ragdollsimulation är när man låter fysikmotorn ta över karaktärens fall för att få den döda kroppen att studsa realistiskt mot olika objekt. Fysikmotorn använder sig dock av grövre utblockade modeller då den kollar kollisoner. Detta betyder att en dödsanimation måste sluta i ett läge där mycket fri luft finns kring karaktären. Vid vissa tillfällen går det inte att avgöra hur länge an animation ska spelas. Detta resulterar i att många animationer i spel är loopade och kan avbrytas när som helst utan att det ser konstigt ut. Då karaktären hoppar så måste hoppet kunna avbrytas extra tidigt, om karaktären skulle landa på ett objekt högre upp än marknivå. Hoppanimationen måste även kunna spelas en längre tid utifall karaktären hoppar ut för en avsats och fallet blir längre än vanligt. 7

Utvärdering/Resultat Animationerna jag producerat under tiden jag gjort mitt exjobb på Grin har blivit skapligt bra. Det är för tidigt att säga om något av det jag gjort kommer att hamna i slutversionen av spelet. Just nu används flera av mina animationer som placeholders i testversionen av spelet. 8

Diskussion Att animera på Grin har varit kul och lärorikt. Det som skiljt sig mest från vad jag är van vid är typen av animation som använts. Innan jag började göra exjobbet på Grin var jag inte van vid begränsningarna som existerar då man animerar till spel. Det har dock gått fort att komma in i och det är mycket intressant att lära sig hur man tar sig runt begränsningarna. Det jag lärt mig mest av är de andra animatörernas råd och kritik Det har varit till stor hjälp att kunna be om råd så fort jag undrat över något. 9

Appendix Key frame En key frame är namnet på den frame (bild) där animatören bestämmer en viss pose för karaktären. Datorn fyller sedan i bilderna mellan alla key frames. Rigg En rigg är ett sorts skellett som animatören flyttar på för att få en karaktär att röra på sig. Anticipation - Anticipation kallas den rörelse som gör det tydligt för åskådaren hur nästa stora rörelse kommer att se ut. I ett hårt slag är rörelsen där handen förs bakåt och slaget laddas upp vad som kallas för anticipation. Followthrough Followthrough är den motsatta rörelse som följer en större rörelse. Detta använder man sig av för att få ett mjukt avslut på en rörelse. 10

Referenser Bilden på sidan 11. The human figure in motion av Eadward Muybridge. Publisher: Dover Publications (June 1, 1955) ISBN-10: 0486202046 11