Sanna Nomark

MASH är ett kraftfullt verktyg som underlättar arbetet med med animation, 3D-modellering och motion graphics. Med detta procedurella verktyg kan du minska arbetsbördan och skapa visuellt intressanta verk. Under min praktik har jag upplevt att tiden arbetet tar är avgörande för ett projekt. Det är viktigt att inte överstiga budgeten men samtidigt vill jag leverera en så bra slutprodukt som möjligt. Det kan gå att lösa med hjälp av MASH som möjliggör skapandet av komplexa 3D-miljöer på kortare tid.

Jag kommer beskriva hur MASH kan effektivisera arbetet i Maya. Målet är att du ska lära dig lite av grunderna och vilka fördelar som finns jämfört med alternativa metoder. Jag kommer lägga mest fokus på användningen av Placer-noden men också introducera möjligheter med andra noder. Exempelvis kan MASH också hantera dynamiska simuleringar samt kopplas samman med Mayas nParticles. 

Fördelar med ett procedurellt verktyg

Sedan 2016 ingår MASH i Maya som ett plug-in. Sophie Berry (2017) berättar i sin artikel att det har blivit ett alltmer populärt verktyg för att skapa motion graphics. MASH innehåller procedurella verktyg för bland annat animation, modellering, instanser och dynamiska simuleringar. Procedurell animation innebär att du behöver inte sätta keyframes för varje rörelse utan istället kan kontrollera animationen med hjälp av system genom att justera parametrar. Med procedurell modellering behöver du inte skapa eller placera varje objekt för hand. Genom att skapa system med nätverk och noder i MASH kan arbetet delvis automatiseras. Tack vare detta kan bra resultat nås snabbare, som Berry (2017) beskriver det kan mycket tid sparas i arbetsflödet. Hon förklarar också att det blir lätt att experimentera och skapa mer unika uttryck eftersom MASH fungerar på detta sättet. Det blir även enklare att hantera komplexa scener med många objekt eftersom MASH har lättillgängliga inställningar för nätverken som styr objekt och instanserna. MASH är särskilt lämpligt att använda vid modellering när upprepning av geometri sker. Berry (2017) tar upp en kullerstensgata som exempel då den består av en stort antal objekt som ska förhålla sig till varandra.

Genom att automatisera enformigt arbete i så stor utsträckning som möjligt kan skaparen få mer tid till att fokusera på mer kreativt krävande utmaningar i arbetet, förklarar Reyer (2018). Han tycker att MASH löser den här typen av uppgifter smidigt och han visar ett exempel i sin video där han modellerar en turbin med hjälp av MASH. Under min praktik upptäckte jag att MASH var användbart i en scen där jag skulle modellera och placera ut många träd i skogsdungar på ett markplan med byggnader.

Många möjligheter

Det finns bra förutsättningar att göra intressant grafik och animation med MASH. Du kan exempelvis skapa abstrakt geometri vars rörelser synkas till musik med hjälp av Audio-noden. Se Mainframes inspirerande video som kort visar en variation av exempel.

MASH består av många noder och jag kommer ta upp ett exempel på hur man kan använda Placer-noden. Läs artikeln från YellowDog (2018) för att ta del av fler enkla exempel som visar hur man kan arbeta med kombinationer av noderna: Distribute, Random, Transform, Dynamics, Flight, Merge och Color.

Strategi för att skapa en skog

Vid återgivning av naturliga miljöer i 3D behöver man ha hänsyn till den komplexa verkligheten. Den innehåller många detaljer som ofta inte är ordnat efter tydliga mönster. Till exempel står inte träd i en skog naturligt på rad och de ser verkligen inte likadana ut. För att det inte ska se ut som en planterad skog behöves slumpmässighet för att undvika att växterna placeras enligt synliga mönster. Vi behöver använda flera olika modeller som används i olika skala med varierad rotation för att inte varje träd ska se likadant ut. En naturlig skog kan jag uppleva som ganska slumpmässig även fast den självklart har logiska anledningar för växternas placering och utseende. Eftersom jag vill skapa en förenklad och stiliserad skog så behövs inte en simulering av äkta framväxande träd.

En anledning att vi inte bör placera ut skogen helt för hand är att människan har svårt att skapa något slumpmässigt eftersom vi dras till mönster. Burnett (2006) förklarar att människor sällan skapar något slumpmässigt eftersom vi råkar forma mönster även när vi försöker undvika att göra synliga mönster. Som exempel beskriver han att man ger någon i uppgift att sprida ut mynt slumpmässigt på ett bord. Som resultat kommer vi troligtvis kunna se vissa mönster, som att många av myten kan ha samma avstånd mellan sig även fast de inte ligger i raka rader. En dator kan hjälpa oss att skapa en mer slumpmässighet även fast den inte kan uppnå något som är fullständigt slumpartad. Men det räcker gott och väl för vår skog.

Alternativa lösningar

Det finns flera alternativ i Maya för att placera ut ett stort antal objekt mer eller mindre slumpmässigt. Det första sättet jag överväger är att placera ut allt för hand men det tar mycket tid eftersom det är många objekt och de riskerar då att följa omedvetet skapade mönster. Ett alternativ till är att använda Duplicate Special. Då kan vi få objekt placerade i rader, i en båge eller med gradvis ändrad rotation och skala. Det skulle inte se ut som en naturlig skog vilket skulle kräva mer manuellt arbete med varje objekt. Fler alternativ finns som dessutom kan ta hänsyn till markplanets form. XGen (finns i Maya) kan användas för att placera ut flera olika objekt som instanser slumpmässigt på valda ytor eller objekt. Man kan måla masker (Ptex-maps) för att markera var objekten ska eller inte ska synas. När man målar fram instanserna behöver man uppdatera render-vyn ofta. Objekten som används måste sparas ut i Archive-format och sedan läsas in igen. För att variera rotation och skala med slump behöver man skriva expressions. XGen kräver alltså fler steg än MASH för att uppnå önskat resultat.

Maya Bonus Tools är en samling med flera plug-in och skript som inkluderar verktyget Paint Duplicate Objects. Med detta kan man måla ut kopior av ett objekt på en yta. Denna samling ingår inte i Maya så man får ladda ner den själv och det ser inte ut som att man kan måla ut flera olika objekt slumpat. Med Mayas nParticles kan man sprida ut flera olika objekt på en yta med instanser. Det går att göra det helt slumpmässigt eller genom att måla ut dem. Däremot behöver man skriva expressions för att generera slumpmässig storlek och rotation. Det kräver även flera steg med inställningar för att få flera olika objekt att skickas ut slumpmässigt.

MASH kvarstår alltså som det enklaste och mest lämpliga alternativet för denna situationen. Vi kan enkelt placera ut objekt mer eller mindre slumpmässigt på en yta måla med bland annat Distribute-noden men mest lämpligt i det här fallet är Placer-noden, enligt mig. Den gör att man enkelt kan måla fram objekten på olika sätt med hjälp av lättillgängliga inställningar. Detta ger mig samtidigt lagom mycket konstnärlig kontroll.

En annan nod i MASH som kan ge ett mer naturtroget resultat om man vill täcka ett större område med väldigt många växter är World-noden. Den kan ta hänsyn till markens lutning och enbart placera objekt på tillräckligt plana ytor. Man kan måla en karta för var växter ska finnas och inte finnas. Den kan simulera ett ekosystem för olika träd med känslighet för bland annat: ålder, temperatur, fuktighet och tillväxthastighet. Den här noden är dock mer avancerad än nödvändigt för min skog.

En klar fördel med MASH gentemot de andra alternativen är att det verktyget är smidigt att använda. YellowDog (2018), vars artikel jag nämnde tidigare, beskriver hur enkelt det är att komma igång med några exempel på olika arbetsflöden i MASH. De poängterar att det är ett mycket brett verktyg som möjliggör ett kul experimenterande. Att noderna i MASH kan sammankopplas i kedjor gör att man smidigt kan skapa olika effekter. Flera nätverk kan också blandas med varandra på olika sätt.

Skapa en egen skogsmiljö med MASH i MayaNu är det dags att testa MASH själv. Börja med att hitta inspiration och utforma en stil för miljön som du ska bygga. Bestäm hur naturtrogen eller stiliserad skogen ska vara. Jag valde att göra en skog med stiliserade enkla low-poly träd i en relativt gles skog. Modellera sen det som ska placeras ut exempelvis: träd, buskar, stenar eller blommor. Kombinera ihop varje växt till ett objekt (Mesh -> Combine). Modellera även ett markplan och tilldela texturer för objekten.

Markera växterna som ska användas, se till att du har valt FX(1) som meny-uppsättning. I den översta menyraden väljer du: MASH -> Create MASH network(2). Varje valt objekt får nu ett ID i nätverket.

Öppna Attribute Editor för att se MASH-noderna. Under Distribute-noden(3) ändra Number of Points till noll för att ta bort en rad med objekt som automatiskt dyker upp.

I Attribute Editor under MASH Waiter-noden välj Placer-noden och klicka på: Add Placer Node(4).

I Placer-noden, öka Brush Spacing(5)-värdet för att objekten ska placeras med mer avstånd mellan varandra.

Bocka i Scatter(6) för att sprida ut objekten mer slumpartat och öka Scatter Density till önskad täthet av objekt.

Välj Collide(7) vid parametern: Collide on Create. Det gör att objekten inte hamnar i eller på varandra.

Justera Lean Amount(8) till noll för att träden ska vara lodräta, annars lutar de (vid värdet 1) enligt markplanets normaler.

Ändra värdet i Random Scale(9) till exempelvis 0.5 och 1.5 för att få en slumpmässig variation i objektens minimum- och maxstorlek.

Ändra värdet under Random Rotation(10) till 360 i Y-fältet (i mitten) för slumpmässig rotation.

Id Mode justeras till Random(11) för att alla våra träd-objekt ska synas. Under Random Id: skriv in objektens högsta id-nummer i den högra rutan(12), jag har 5 objekt då används id-nummer: 0 till 4.

Dra in markplanet (mittenklicka) under Paint Meshes(13) för att enbart kunna måla på den valda geometrin. Annars kan man måla på alla objekt och då kan t.ex. träd staplas ovanpå varandra.

Det finns olika penslar(14) att använda i Placer-noden. Välj Add-penseln och måla ut objekten på markplanet. Välj Collide-penseln och måla på objekt som skär in i varandra så de separeras. Delete-penseln tar bort objekt och Id-penseln byter mellan objekten i nätverket via deras id-nummer. Justera nu verktygets parametrar samt lägg till och ta bort objekt tills det passar stilen du vill ha.

Se gärna videon nedan om du vill se mer om hur Placer-noden och dess parametrar kan användas. Det ges också en hel del bra tips och förklaringar om fler aspekter av verktyget. Eftersom det finns många olika sätt att jobba med noderna i MASH har jag upplevt att det är givande att se hur andra arbetar.

Med MASH kan du skapa fler detaljer i 3D-miljön, exempelvis ett stenras eller högar med löv med hjälp av dynamiska simuleringar i MASH. Om du vill lära dig mer om detta så har Mainframe (de som har utvecklat MASH) har många bra video-tutorials på sin Vimeo-sida.

Referenser

Berry, S. (2017-08-30). Do the Mash – The Maya MASH! [Elektronisk] Tillgänglig: https://knowledge.autodesk.com/support/maya/getting-started/caas/simplecontent/content/do-the-mash-the-maya-mash.html [2019-01-29]

Burnett, M. (2006). Perfect Password: Selection, Protection, Authentication. [Elektronisk] Rockland, MA: Syngress Publishing, Inc. Tillgänglig: Google Books [2019-01-28]

Mainframe (North). MASH Tutorials. Tillgänglig: https://vimeo.com/album/4046248 [2019-01-29]

Mainframe (North). Mainframe’s MASH Reel. Tillgänglig: https://vimeo.com/album/4046248 [2019-01-30]

Reyer, R. (2018-08-15). Procedural Modelling With MASH. [Elektronisk] Tillgänglig: https://knowledge.autodesk.com/support/maya/learn-explore/caas/simplecontent/content/procedural-modelling-mash.html [2019-01-30]

YellowDog (2018-01-25). The procedural monster, MASH. [Elektronisk] Tillgänglig: https://yellowdog.co/2018/01/25/the-procedural-monster-mash/ [2019-01-29]