C-UPPSATS. Miljöer för spel



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

EXAMENSARBETE. Tekniker för optimering av modellering och texturering av spelmodeller. Anders Lorentzen. Teknologie kandidatexamen Datorgrafik

Skapande av en modifikation till Crysis

Spelutveckling 3d-grafik och modellering. Grunder för 3d-grafik Blender Animering

C-UPPSATS. Revitalize classic art using realtime game technology

C-UPPSATS. Bakningslösningar för nästa generationens texturer

Effektivt arbetsflöde för att skapa en CG karaktär för film och reklam

The Awakening Short Film

Universe Engine Rapport

BACHELOR THESIS. Efficient Optimizations Inside the Digital Advertise Production Pipeline. Michal Marcinkowski Mehmet Özdemir

Tentamen TNM061, 3D-grafik och animering för MT2. Tisdag 3/ kl 8-12 TP51, TP52, TP54, TP56, TP41, TP43. Inga hjälpmedel

Bézierkurvor och parametriska objektrepresentationer

Tentamen TNM061, 3D-grafik och animering för MT2. Onsdag 20/ kl SP71. Inga hjälpmedel

Grafik raytracing. Mattias Axblom.

Procedurell grottgenerator och eld i GLSL. Marcus Widegren

BANVERKTYGET. Verktygen

Kort introduktion till POV-Ray, del 1

Kv. Ogräset. Martin Stenmarck,

Autodesk 3ds Max Design Som nämnts tidigare kan du ändra storlek i tre olika steg genom att klicka på den lilla svarta pilen.

Game-art for Dummies

Vad är ZOOM? Så är det dock inte!

Tentamen. 2D4135 vt 2004 Objektorienterad programmering, design och analys med Java Torsdagen den 3 juni 2004 kl

Grafiska pipelinen. Edvin Fischer

Robin Wahlstedt Datavetenskap / Spel Vetenskapsmetodik rwt07001@student.mdh.se. Datorgrafik i spel

bilder för användning

Mobil streckkodsavläsare

PROCEDUELL TERRÄNG. Proceduella metoder för bilder (TNM084) Jimmy Liikala Institutionen för teknik och naturvetenskap

Inledning. Kapitel Bakgrund. 1.2 Syfte

Tor Sterner-Johansson Thomas Johansson Daniel Henriksson

1.1 Verktygslådan översikt

C-UPPSATS. Matte painting with fysical models

Bildredigering i EPiServer & Gimp

QosmioEngine För avancerad video

3D skulptering Cinema4D

Arbeta med bilder. Lathund kring hur du fixar till bilder från digitalkamera eller Internet så att de går att använda i ett kommunikationsprogram.

DIGITALA RESURSER MANUAL FÖR. Arbeta med video i Windows Live Movie Maker

Ladibug Bildbehandlingsprogram Bruksanvisning

Juha Kaukoniemi Kent Lindberg PHOTOSHOP ELEMENTS 5. digital bildbehandling

C-UPPSATS. Titelscenen till filmen Pyramiden

Programmering = modellering

C-UPPSATS. Realistisk modellering för film

ENKLARE ANSIKTSRETUSCH

Koordinatsystem och Navigation

Filformat / bildformat

Här är ett väldigt bra tidpunkt att spara scenen. Jag har valt att bygga ett litet pyramidtorn.

Ansiktsigenkänning med MATLAB

Försättsblad till skriftlig tentamen vid Linköpings Universitet

NYHETER I INVENTOR 2012

Strömsholmen. Mårten Svensson, Peter Zhu, Andreas Wetteborn,

Färger. Matthew Woehlke Översättare: Stefan Asserhäll

After Effects Lathund

En jämförande studie mellan Mental Ray och V-Ray

C-UPPSATS. Cinematic Animation in a Production Pipeline

Texturerade 3D-modeller

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

Synkronisering av kalenderdata

Bemästra verktyget TriBall

Bemästra verktyget TriBall

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

Procedurell renderingsmotor i Javascript och HTML5

Grafiska pipelinens funktion

Grundredigering i Photoshop Elements. Innehåll. Lennart Elg Grundredigering i Elements Version 2, uppdaterad

Avalanche Studios. OpenGL. Vår teknik. Våra spel. Lite inspiration... Stora, öppna spelvärldar. Sandbox-gameplay. Hög audiovisuell standard

EXAMENSARBETE. Modellering inom reklam. Sandra Isaksson. Teknologie kandidatexamen Datorgrafik

Adobe. Photoshop CS3. Fortsättningskurs.

Configura 9.0 Release notes 18 april 2016

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

Kapitel 7 Skorsten, trappa och inredning... 3

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

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

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

Energieffektiv GUI design

C-UPPSATS. Modellering och texturering för filmproduktion

L-Advantage Solutions AB. WinMore Systems Hippo PC & MAC Start

PixlrGuiden - av AlizonWeb PIXLRGUIDEN. av AlizonWeb. Copyright Notice: Copyright AlizonWeb, All rights reserved. Sida 1

För installationen av SPECTRUM 4.0 och det fortsatta arbetet med programvaran måste följande systemkrav vara uppfyllda:

Procedurell Terräng med LOD i OpenGL 4

VISUELLA FÖRHÅLLANDEN

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.

Dynamic Review for Models ProjectWise Navigator

EXAMENSARBETE. Tekniker för fotorealistisk rendering. Christoffer Lindvall. Teknologie kandidatexamen Datorgrafik

Fordonsgrafiker på EA DICE

Exempel på hur man kan bygga enkla former i Illustrator

Migrering av applikationen AMM till molnet

Digital bildhantering

Fotorealism, animering, SW resurser

Bruksanvisning. Elektronisktförstoringsglas. Snow 7 HD. Artikelnummer: I-0045

Färger. Matthew Woehlke Översättare: Stefan Asserhäll

Photoshop - Banverktyget

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

C-UPPSATS. Animation för spel

Gudie för OptiWay GIS Online

RAPPORT ÅSELLSHUSET TEKNIKTEST AV VISUALISERINGSTEKNIK LEIF REHNSTRÖM, HELLO FUTURE, 19 NOVEMBER 2012,

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

Tentamen TNM077, 3D datorgrafik och animering

DGI/SUDOA Den historiska utvecklingen. Globala - lokala belysningsmodeller. Lokala belysningsmodeller. Rendering equation

Din idé Vår verklighet VIRTUELLT

Utförliga regler för TRAX

Modellering. Gustav Taxén

Transkript:

C-UPPSATS 2009:238 Miljöer för spel Magnus Hertzberg Luleå tekniska universitet C-uppsats Datorgrafik Institutionen för Avdelningen för Fritid och Underhållning 2009:238 - ISSN: 1402-1773 - ISRN: LTU-CUPP--09/238--SE

C-UPPSATS Miljöer för spel Detaljering och optimering av assets för realtidsgrafik Magnus Hertzberg Luleå Tekniska Universitet C-Uppsats Datorgrafik Institutionen för Avdelningen för Fritid och Underhållning

Förord Detta examensarbete utfördes av Magnus Hertzberg under 10 veckor på uppdrag av spelutvecklarföretaget Frictional Games. Examensarbetet avslutar en treårig Datorgrafisk utbildning på Luleå Tekniska universitet. Då undertecknad har erfarenhet och nischning mot att arbeta med miljöer för spel kontaktades Frictional Games angående ämnet. Det visade sig att företaget erbjöd ett examensarbete i och med utvecklandet av flera assets, det vill säga virtuella rekvisitaobjekt, till spelprojektet Unknown. Objekten skulle ha låga polygonantal, men samtidigt hålla en hög detaljnivå texturmässigt och inte ge sken för den tredimensionella geometriska enkelheten. Stort tack till Thomas Grip på Frictional Games för allt stöd och vägledning under arbetet. Sammanfattning Denna uppsats behandlar hur lågpolygonobjekt kan detaljeras och optimeras för visning i HPL2, Frictional Games egenutvecklade motor. Uppsatsen jämför arbetsflödet för texturutveckling i applikationerna Zbrush och Mudbox och behandlar både modellering och tekniska aspekter av texturering. Abstract This essay handles how low-polygon items can be detailed and optimized for rendering in HPL2, Frictional game s real-time graphics engine. The essay compares the workflow of texture development in the applications Zbrush and Mudbox and treats technical aspects of both texturing and modeling.

Innehållsförteckning Motivering till ämnesval 1 Syfte 1 Termer och förtydliganden 2 Normalmap 2 Ambient Occlusion 2 Zbrush 3 Mudbox 4 Frictional Games 5 H2LP 5 Xnormal 6 Fallstudier 7 Fågel 7 Hund 8 Arbete 9 Kubtest 9 Grundmodellering, Maya 10 Minskad polygonåtgång genom boxmodellering 11 Arbetsflöde, Zbrush 12 Arbetsflöde, Mudbox 13 Resultat 14 Generering av ambient occlusions och normalmaps 14 Resultat, Kubtest 16 Visuellt resultat, fågel 17 Visuellt resultat, hund 18 Diskussion 19 Förslag till vidare efterforskningar 20 Referenser 21 Riktlinjer för programanvändning 21 Övriga källor 21

Magnus Hertzberg Miljöer för Spel Sida 1 Motivering till ämnesval Under en längre tid har realtidsgrafik legat långt efter den förrenderade grafik som används i film vad gäller detaljrikedom och realism. Skälet till detta är givetvis att bilderna i en realtidsprodukt måste renderas och uppdateras samtidigt som de upplevs och att kravet på renderingstider nedåt en hundradels sekund tvingar bort mer avancerade renderingstekniker. Under senare delen av 2000talet har dock denna trend börjat vända i och med bakningslösningar som normalmaps, reflectionmaps, smartare modellering etcetera. Grafiken blir vassare, men problematiken kvarstår; dagens realtidsgrafik behöver vara högst realistisk och detaljerad, i samma veva som snabb bilduppdatering är ett krav. Dessa element går sällan hand i hand. Syfte Frictional Games ville veta hur programmen Zbrush och Mudbox är tillämpliga och smidiga för den workflow som används på företaget, inför en eventuell investering i licenser. Syftet med examensarbetet är att presentera och jämföra tekniska lösningar för texturering i de bägge skulpteringsprogrammen och modellering av lågpolygonobjekt. Objekten i uppsatsen har optimerats för Frictional Games motor HLP2, men majoriteten av teknikerna är generella och kan användas i andra sammanhang.

Magnus Hertzberg Miljöer för Spel Sida 2 Termer och förtydliganden Normalmap En normalmap är en textur med syftet att per pixel manipulera hur ljus faller och skapar skuggor på en yta och på så vis ge sken av en tredimensionell form. En normalmap Figur 1: Höguplöst mesh, förenklad mesh och normalmap. använder de tre färgkanalerna röd grön blå för att indikera förskjutning i x-, y- eller z-led, vilket i de flesta fall ligger till grund för hur ljuset ska tolkas på ytan. 1 Figur 1 ovan är tagen från Wikipedia commons och visar en modell på fyra miljoner trianglar till vänster, en förenklad version på femhundra trianglar i mitten och slutligen den förenklade versionen med normalmap applicerad på till höger. Ambient Occlusion Ambient occlusion är en metod för att skapa skuggor på objekt, oberoende av det faktiska ljus som träffar dem. Metoden avgör en ytas ljushet på en skala från vitt till svart, genom att mäta ytans avstånd till närliggande ytor. 2 Figur 2 visar en rendering av ambient occlusion. I bilden finns inget Figur 2: Rendering av ambient occlusion ljus och skuggorna avgörs endast genom ytornas fysiska närhet eller avstånd till varandra. Ambient occlusion är inte en korrekt beräkning av faktiskt ljus, men är effektiv att tillämpa för att förstärka former och detaljer. 3

Magnus Hertzberg Miljöer för Spel Sida 3 Zbrush Figur 3: Zbrush användargränsnitt Zbrush är ett program för digital skulptering och introducerades på marknaden av företaget Pixologic år 1999. 4 Zbrush har verktyg för grundläggande modellering men är främst känt för sin möjlighet att hantera modeller uppåt flera miljoner polygoner, utan kravet på mycket avancerad hårdvara (se Figur 3). Detta är möjligt genom att geometrin lagras i s.k. pixols. Pixols är en typ av 3dpixlar som förutom färg och position i höjd- och breddled på skärmen även kan lagra ett djupledsvärde (z) och ett materialvärde som bedömer hur ljus upptas och reflekteras. 5 Zbrush har bland flera funktioner ett verktyg för posering av modeller, möjligheten till modellering i lager i oberoende hierarki och avancerade penselverktyg som bland annat kan simulera gravitationens inverkan på skulpturen. 6

Magnus Hertzberg Miljöer för Spel Sida 4 Mudbox Figur 4: Mudbox användargränsnitt Mudbox är liksom Zbrush ett verktyg för digital skulptering och började utvecklas 2004 av företaget Skymatter, för att senare köpas upp av Autodesk år 2007 7. Mudbox skapades som en intern kombination av flera arbetslösningar bland grafiker vid produktionen av Sagan om ringen filmerna, men utvecklades under 2005 till ett fristående program. Det användes för första gången officiellt under produktionen av Peter Jacksons King-Kong. 8 I likhet med Zbrush möjliggör Mudbox skulptering av objekt tekniskt sätt utan begränsningar i detaljnivå. Mudbox erbjuder också en möjlighet att skulptera modellen i geometrilager, oberoende av hierarki, penslar mönstrade via alfakanaler (så kallade stamps, se figur 4) och möjligheten att genom penseldrag projicera en förgjord 2dtextur på en yta. 7 Den vanligaste arbetsmetoden i både Mudbox och Zbrush vad gäller spel är att polygonantalet på ett objekt multipliceras upp, vilket möjliggör detaljering och hög kontroll över utseendet i 3d. De högpolygonantaliga detaljerna bakas sedan ut till tvådimensionella texturer och appliceras på det ursprungliga objektet.

Magnus Hertzberg Miljöer för Spel Sida 5 Frictional Games Frictional Games är ett litet spelföretag baserat i Helsingborg. Företaget grundades år 2001 9 och har sedan dess släppt tre titlar till kommersiell försäljning; Penumbra: Overture under 2007, uppföljaren Penumbra: Black Plague under 2008 och slutligen expansionen Penumbra: Requiem samma år. 10 Företaget är känt för att utveckla sin egen teknologi, bland annat är motorn HPL (se nedanstående stycke) från början en teknisk renderingsdemonstrering och helt egenutvecklad. 11 Företagets spel har belönats i flera sammanhang, bland annat av Svenska Spelinstitutet, på Dataspelsgalan 2009 och på Valve Softwares spelcommunity Steam. 12 HPL2 Frictional Games spelmotor. Motorn använder deferred shading och har verktyg för skapande av enheter, banor och partikelsystem. 11 Den simulerade fysikmotorn Newton Game dynamics finns också implementerad. 10 Texturpass som stöds i motorn är bland andra normalmap, diffuse och specular. Motorn började utvecklas på företaget inför spelet Penumbra Overture, som släpptes år 2007, har därefter använts i spelets två uppföljare och nu även i spelet Unknown, som är under utveckling. 11

Magnus Hertzberg Miljöer för Spel Sida 6 Xnormal Figur 5: Användargränssnittet i Xnormal Programmet Xnormal används för generering av olika texturpass, i det här fallet normalmaps och ambient occlusion, som ses förkryssade i den nedre rutan till vänster i figur 5. Bilden visar även alternativ för texturstorlek, antialising och renderare. Xnormal är amatörutvecklat av Santiago Orgaz och distribueras gratis. Applikationen bygger på att texturer generas från en högpolygonversion av ett objekt till en textur, baserat på uvkoordinaterna från samma objekt i lågpolygonversion. Texturen appliceras därefter på lågpolygonobjektet, ofta för att ge intryck av en komplex tredimensionell form. I arbetet denna uppsats beskriver används Xnormal till att generera ambient occlusions och normalmaps utifrån de högpolygonobjekt som skulpterats fram i Zbrush och Mudbox.

Magnus Hertzberg Miljöer för Spel Sida 7 Fallstudier Det kan framstå som att följande två objekt, med 1054 respektive 1444 trianglar inte är att klassa som lågpolygonobjekt. I hänsyn får tas att bägge dessa föremål är varelser, som generellt brukar ha betydligt högre polygonåtgång och i det här fallet även är storskaliga och betydelsefulla assets. Bägge objekt har modellerats och texturerats efter de specifikationer som Frictional Games ställt upp och arbetsflödet för att skapa dem har också fungerat utmärkt till objekt med lägre polygonantal eller texturupplösning. Det kan även ha tyckts rättvisare att jämföra samma objekt i bägge programmen, då modellerna skiljer sig både i polygonantal och utformning (se figur 6 resp. figur 7). Emellertid är syftet med uppsatsen att testa funktioner och påvisa skillnader programmen emellan, snarare än att utröna vilket av programmen som skulle vara bäst överlag att använda. Bägge objekt har också samma texturupplösning och jämförs vid samma texturpass. Subdivisionsnivåerna är godtyckliga och har valts efter vad som varit smidigt. För en teknisk jämförelse, se avsnittet Kubtest(Sid9). Fågel, Zbrush Polygonantal, slutprodukt: 1054 trianglar Högsta subdivision i Zbrush: 988 164 trianglar Texturupplösning: 512*512 pixlar Figur 6. Fågelns tredimensionella form och polygonuppbyggnad Texturpass: diffus, normalmap, specular, alfagenomskinlighet Utvecklingstid: 36 timmar (4 ½ arbetsdag)

Magnus Hertzberg Miljöer för Spel Sida 8 Hund, Mudbox Polygonantal, slutprodukt: 1444 trianglar Högsta subdivision i Mudbox: 1 429 504 trianglar Texturupplösning: 512*512 pixlar Texturpass: Figur 7. Hundens tredimensionella form och polygonuppbyggnad diffus, normalmap, specular Utvecklingstid: 36 timmar (4 ½ arbetsdag)

Magnus Hertzberg Miljöer för Spel Sida 9 Arbete Förutom nedanstående applikationer användes Photoshop för den övergripande layouten på texturer och Bodypaint 3d för att måla över skarvar. Simplare occlusionmaps renderades också i Maya för att stryka under den grundläggande geometrin, men uppsatsen dokumenterar främst modellering, digital skulptering och skapandet av texturer i Mudbox och Zbrush. Kubtest Ett test utfördes för att beräkna programmens respektive stabilitet under extremt höga polygonantal. En och samma kub importerades i bägge programmen från formatet obj och började därefter subdivideras och skulpteras slumpmässigt. Bägge programmens standardpenslar användes, utan alfa, stamp eller övriga programfunktioner. Figur 8. Kubtest med olika subdivisionsnivåer, ovan i Mudbox, nedan i Zbrush Testet utfördes på en Dell XPS M1530 dator, med en tvåkärnig 32bits Intel 2 Core Duo T7250 processor på 2 gigahertz, 2 gigabyte RAM-minne och grafikkortet Geforce 8600 M GT med 256 megabyte dedikerat grafikminne. Operativsystemet som användes var Windows Vista Home Premium. Inför testet stängdes samtliga program, utom det aktuella skulpteringsprogrammet och en textfil för anteckningar. Då testet gjorts klart i Mudbox, startades datorn om innan samma process gjordes om i Zbrush. Testets utdelning redogörs i avsnittet Resultat (sid14).

Magnus Hertzberg Miljöer för Spel Sida 10 Grundmodellering av objekt, Maya Bägge assets modellerades efter bildreferenser, hunden via en spegelvänd instans och fågeln genom att helt enkelt extrudera ett plan matchande dess grundform. Bägge modeller konstruerades även från början med ¼ av sitt slutgiltiga polygonantal, för att fånga in modellens grundform och en bra disponering av edgeloops, varvid en smooth applicerades och geometriska detaljer lades till. Då texturerna för modellerna var relativt lågupplösta, disponerades UV-mappar så att bålen och i synnerhet huvudet på figurerna fick mest utrymme, då de utgör fokuspunkter. Edgeloops som inte utgjorde någon direkt geometrisk form reducerades bort, till förmån för detaljer som spikarna i Figur 9. Grundmodelering av assets i Maya. fågeln och tänderna på hunden. Nedan i figur 10 visas modellernas uv-koordinater, hunden till vänster, fågeln till höger. Figur 10. Disponering av uv koordinater.

Magnus Hertzberg Miljöer för Spel Sida 11 Minskad polygonåtgång genom primitivmodellering Så kallad primitivmodellering tillämpades för att ytterligare reducera onödig polygonåtgång. I exemplet nedan gestaltas detta på en av spikarna genom fågelns vingar. Polygonåtgång sparas in genom att spiken utgörs av två geometriska former som löper in i varanndra, istället för en enda extruderad form. Reduceringsmetoden är främst tillämpbar på icke-organiska modeller, men är mycket effektiv då den geometriska formen är identisk och inte blir lidande. Reduceringen kan i det här fallet tyckas vara en petitess, men är mycket effektiv i de fall då primitivgeometrin är mer detaljerad. Nedan visar figur 11 och 12 hur primitivmodellering appliceras för att reducera polygonantal. Figur 11. Spikhuvud skapat genom extrudering, 48 trianglar Figur 12. Spikhuvud skapat genom primitivmodellering, 36 trianglar

Magnus Hertzberg Miljöer för Spel Sida 12 Arbetsflöde, Zbrush Efter en brant inlärningskurva på grund av Zbrush annorlunda gränssnitt började arbetet med att detaljera fågeln. Gränssnittet lämpar sig ypperligt för ritplatta, i det här fallet en Wacom Intuos 3. Till en början användes standardpenseln som verktyg. Fågeln subdividerades ned gradvis då anatomiska detaljer tillkom. Figur 13. Zbrush skulptering med alfa applicerad. Vid skapandet av fågelns fjäderdräkt användes penselverktyget snakehook i kombination med en pålagd alfa på penselverktyget. Alfan gjorde det möjligt att dra flera stråk i samma penseldrag, se figur 13. Zbrush har även funktionen att känna av riktningen på ett penseldrag, vilket underlättade drastiskt vid skulpteringen. Vid tidigare nämnda 988 164 trianglar flöt programmet fortfarande problemfritt, om än själva divisionen tog en stund att beräkna. Arbetet med modellen gick snabbt och överlag effektivt, om än det upplevdes att endast ett fåtal av programmets funktioner testades. Zbrush kraschade ett par gånger innan ramminnesallokering ställts in och det uppdagats att programmet körde stabilare då knappen save tool användes istället för snabbkommandot ctrl + s.

Magnus Hertzberg Miljöer för Spel Sida 13 Arbetsflöde, Mudbox Hundmodellen importerades i Mudbox via formatet obj. Emellertid hade modellen av misstag en femhörnig polygon i sin edgeflow, vilken orsakade att Mudbox kontinuerligt kraschade på andra subdivisionen. Efter en del felsökning identifierades problemet och arbetet kunde återupptas. Figur 14. Mudbox skulptering. Mudbox interface är enkelt och liknar det som finns i Maya. Således var programmets grunder relativt lätta att lära. Programmet konfigurerades med viss svårighet till ritplattan och verktygen sculpt och smooth användes för att forma ut geometrin. Verktyget grab utnyttjades för att posera den något statiskt uppställda modellen och öppna munnen mer, se figur 14. Modellen dividerades ned fem nivåer till 1 429 504 trianglar. Lägligt på plats var även penselverktyget contrast, som användes för att förstärka kontrasten i de geometriska förskjutningarna. Därvid utnyttjades verktyget sculpt med en stämpel (alfa) applicerad för att skapa hundens päls. Det uppmärksammades vid det här laget att Mudbox inte känner av penseldragets riktning lika exakt som Zbrush, vilket skapade vissa svårigheter i skulpteringen av pälsen (se figur 15). Att notera i bilden är de hårda vinkelbrotten i penseldraget. Förutom de första problemen med subdivision körde Mudbox smidigt och kraschade aldrig. Verktyget för Figur 15. Mudbox skulptering med stamp (alfa). symmetrisk skulptering sågs som mycket smidigt och lättanvänt och snabbade på arbetet väsentligt.

Magnus Hertzberg Miljöer för Spel Sida 14 Resultat Generering av ambient occlusions och normalmaps För enkelhetens skull och för att jämförningen skulle bli rättvis, bakades normalmaps och ambient occlusion för bägge modellerna via det fristående Xnormal. Ambient occlusion och normalmap på vardera 512*512 pixlar tog cirka 45 sekunder vardera att generera i bägge fallen. På grund av den låga texturupplösningen gick en viss del av detaljrikedomen förlorad. Under genereringen av hundens texturer uppstod dock vissa artefakter; occlusiontexturen fick fläckar på tre ställen och normalmapen genererades underligt på hundens bägge framben, villket visas nedan i figur 16. Dessa artefakter fick korrigeras och målas över i efterhand. Figur 16. Artefakter på ambient occlusion.

Magnus Hertzberg Miljöer för Spel Sida 15 I fallet med normalmappen (se figur 17-18) användes programmet Crazybump för att snabbt genera en enkel kompletterande normalmap på hundens ben. Benets nya normalmap fick sedan interpoleras in i den ursprungliga från Xnormal via Photoshop. Figur 17. Normalmap med artefakt. Figur 18. Normalmap med artefakt applicerad på modell.

Magnus Hertzberg Miljöer för Spel Sida 16 Resultat, kubtest För enkelhetens skull kallar tabellen ursprungsnivån på kuben för nivå 1, precis som Zbrush. I Mudbox anges ursprungsnivån som nivå 0. Nivå 1 i tabellen motsvarar alltså nivå 0 i Mudbox och så vidare. Namnbytet är ovidkommande för tabellens innehåll. Färgerna i tabellen indikerar vad som är optimalt att arbeta med på det aktuella systemet. En grön färg visar optimal prestanda, en gul färg visar att filen är svår att arbeta med och en röd att fortsatt arbete är omöjligt. Nivå Trianglar Filstorlek Kommentarer 1 12 MUDBOX: 0,012 Mb ZBRUSH: 0,017 Mb MUDBOX: Ursprunglig kub 2 48 0,015 Mb 0,019 Mb 3 192 0,021 Mb 0,020 Mb 4 768 0,044 Mb 0,021 Mb 5 3 072 0,131 Mb 0,022 Mb 6 12 288 0,474 Mb 0,035 Mb 7 49 152 1,79 Mb 0,074 Mb 8 196 608 7,14 Mb 0,095 Mb 9 786 432 28,5Mb 3,56 Mb 10 3 145 728 114 Mb 13,9 Mb Svag fördröjning vid skulptering och kamerarotation. 11 12 582 912 456 Mb 51,5 Mb Hackig skulptering, fördröjda kamerarörelser. Långa filsparningstider. 12 (50 331 648) Mudbox hindrar subdivision på grund av ramminesbrist ZBRUSH: Ursprunglig kub Svag fördröjning vid kamerarotation. Zbrush varnar då den förinställda gränsen för högsta polygonantal är nådd. Inställningen ökas till högsta värde och testet fortsätter. Lång beräkningstid för division. Felfri skulptering, förutom jämna avbrott vid tung minnesallokering och långa filsparningstider. Zbrush hindrar subdivision på grund av ramminnesbrist

Magnus Hertzberg Miljöer för Spel Sida 17 Visuellt resultat, fågel Normalmap och ambient occlusion är tagna direkt ifrån Xnormal, förutom att bodypaint 3d har använts för att måla över skarvar, i det här fallet inga synliga på bilden. I det färdiga resultatet, figur 19, visas förutom diffus och de kombinerade passen också ett alfapass, som skapar den tvådimensionella genomskinligheten på fågelns fjädrar. Figur 19. Fågelns 3dgeometri, texturpassen som skapades i Zbrush och det färdiga resultatet.

Magnus Hertzberg Miljöer för Spel Sida 18 Visuellt resultat, hund Liksom på fågeln är ambient occlusion och normalmap tagna direkt från Xnormal, förutom en viss justering av fläckar i occlusionmapen och redigering av hundens ena ben till följd av den artefakt som uppstod (se generering av ambient occlusions och normalmaps, sid14). Figur 19. Hundens 3dgeometri, texturpassen som skapades i Mudbox och det färdiga resultatet.

Magnus Hertzberg Miljöer för Spel Sida 19 Diskussion Det är svårt att dra en entydig slutsats av efterforskningarna. Användarvänligheten i programmen har i stor mån att göra med vad användaren själv tidigare arbetat med. Frågan kvarstår också om de bägge programmens hantering av polygoner med fler hörn än fyra. Zbrush upptäcker direkt en femhörnig polygon i en modell och erbjuder att dividera polygonen i samband med att den aktuella filen öppnas, medan Mudbox endast reagerar genom att krascha vid andra subdivisionen. Mudbox ställer också högre krav på modellens edgeflow, vilket i sig givetvis är bra, men kan lura ovana användare till att t.ex triangulera sin modell innan importering i programmet, vilket leder till en oöverskådlig polygonuppbyggnad vid subdivision. Mudbox användargränssnitt får dock betraktas som lättare att ta till sig än det som används i Zbrush, då programmet har betydligt enklare menyer och tydligare uppbyggnad. Zbrush framstår gärna som svåröverskådligt och bara en sådan sak som att programmet räknar med att användaren skalar upp modellen istället för att zooma in kameran ställer krav på att tänka i nya banor. Till Zbrush gränssnitts försvar får dock sägas att det är välanpassat till användning av ritplatta. Av kubtestet att döma ska det också sägas att skulpteringen i Zbrush är mer komplex än den i Mudbox. Tack vare det välutvecklade systemet med pixols kan en modell skulpteras mycket mjukt, även på låga subdivisioner, där Mudbox å sin sida helt förlitar sig på högt polygonantal för vid mjuka former. Zbrush hanterade också den elfte subdivisionsnivån på 12 582 912 polygoner betydligt smidigare än sin konkurrent; i Zbrush var kuben var fortfarande smidig att arbeta med, trotts de återkommande avbrotten för minnesallokering och de oerhört långa spartiderna. Programmet skrev dessutom avsevärt mycket mindre filer än Mudbox. Av användargränssnittet att döma upplevdes också att Zbrush har en komplexitet och en oerhörd mängd funktioner som inte han utforskas. Som tidigare nämnt har Zbrush en bättre förmåga att känna igen penseldragets riktning och på programmets hemsida skryts det även friskt om funktioner som dynamisk simulering och gravitationsinverkan i skulpteringsverktyget. Även om sådana funktioner kan tyckas överflödiga, ska det inte stickas under stol med att Zbrush penselverktyg var betydligt enklare att skapa effekter av fjädrar och fjun med, än de som återfanns i Mudbox för att skapa hundens päls. Tidigare modeller under examensarbetet har även krävt päls av

Magnus Hertzberg Miljöer för Spel Sida 20 fluffigare och mer volumetrisk karaktär och denna effekt var mycket svår att uppnå i Mudbox, med det fåtal penselverktyg programmet har att erbjuda. Zbrush är en tyngre applikation som varit i utveckling under mycket lång tid, medan Mudbox bara funnits på marknaden i ett fåtal år men har ett vänligt gränssnitt som är lätt att ta till sig. Av detta kan dras slutsatsen att Mudbox är bra för den som vill göra arbete av enklare karaktär och har kortare tid på sig, medan Zbrush finns där för den som vill utforska programmet grundligt och har gott om tid att lära sig invecklade tekniker. Förslag till vidare forskning I bägge programmen framstår det som att det finns mycket att lära, i synnerhet kring möjligheten att måla den digitala skulpturen via 2,5dimensionell projicering. Funktionen finns tillgänglig i både Zbrush och Mudbox och det fanns inte utrymme att behandla den i denna uppsats. Funktionerna kring polygonmålning är dock en aspekt som hade varit intressant att ta med i bedömningen. Källförteckning Riktlinjer för programmanvändning: Southern, 2005, Get into Zbrush, KURV Studios, B000XPKPAM Robson, 2007, Mudbox: A Practical Guide, KURV Studios, B000OVLA9A Övriga källor: 1 Wikipedia, 2009, Normal Mapping http://en.wikipedia.org/wiki/normal_mapping

Magnus Hertzberg Miljöer för Spel Sida 21 2 Rothelius, 2008, Bakningslösningar för nästa generations texturer, Luleå Tekniska Universitet 3 Wikipedia, 2009, Ambient Occlusion http://en.wikipedia.org/wiki/ambient_occlusion 4 Wikipedia, 2009, Zbrush http://en.wikipedia.org/wiki/zbrush 5 ZbrushCentral, 2002, Newbie lesson two 2.5D Painting http://www.zbrushcentral.com/zbc/showthread.php?t=11861 6 Pixologic, 2009, Zbrush Features, 3D Brushes http://www.pixologic.com/zbrush/features/07_brushes/ 7 Wikipedia, 2009, Mudbox http://en.wikipedia.org/wiki/mudbox 8 Rahul Pawar, 2007, History of Mudbox http://www.cgtantra.com/forums/showthread.php?t=7230 9 Wikipedia, 2009, Frictional Games http://en.wikipedia.org/wiki/frictional_games 10 Frictional Games, 2008, About http://frictionalgames.com/site/about 11 2009, Samtal med Thomas Grip

Magnus Hertzberg Miljöer för Spel Sida 22 12 Frictional Games, 2009, Penumbra: Black Plague Awarded & Steam http://frictionalgames.com/site/node/87