Utgångspunkten för denna handledning är två Lego-klossar från en tidigare modelleringsworkshop. Ni hittar originalfilen i arbetsfilspaketet för denna handledning. Det finns egentligen inget fel med modelleringen av Lego-klossarna, men leksaker ser ännu mer autentiska ut om de också har användningsspår såsom små repor, slitna kanter och matta områden.
Justera Inverse AO-Shaders
Som nämnts tidigare är målet med Inverse Ambient Occlusion (IAO) att ge oss de platser som särskilt påverkas av användningsspåren. För att kunna bedöma shaderns arbete korrekt fokuserar vi först helt på IAO. Den gröna Lego-klossen är självklar att använda, varför vi tillfälligt avaktiverar alla aktiva materialkanaler på stens gröna material på Bas-sidan och istället aktiverar Ljus-kanalen.
I Ljus-kanalen på materialet öppnar vi Texture-menyn via knappen och väljer Ambient Occlusion-shader i undermenyn Effekter. Den inversa AO finns alltså inte som en separat shader, utan som en fin inställning i den vanliga Ambient Occlusion-shadern.
Efter att ha laddat Ambient Occlusion-shadern zoomar vi in mot Lego-klossen i redigeringsvyn och startar en första testrendering. Eftersom AO-shadern fungerar i vanligt läge får vi naturligtvis skuggområden för stunden på Lego-klossen.
För att tydliggöra skillnaden mellan de två arbetsmetoderna öppnar vi Ambient Occlusion-shadern genom att klicka på Shader-knappen eller expandera Texture-avsnittet och aktiverar först Omvänt ljus.
Vi startar en annan testrendering i redigeringsvyn och får nu Ambiente Occlusion som arbetar omvänt ljus. Som jämförelse mellan de två renderingarna visar, är IAO inte bara en omvänd AO, utan en helt annan arbetsmetod. Den erhållna IAO är ännu inte riktigt användbar för våra ändamål, varför vi nu ska justera finjusteringen.
Eftersom våra Lego-klossar framför allt ska bära sina användningsspår i hörnen och kanterna, stör de uttalade gråa områdena på ytan. Som första steg minskar vi därför Maximal strållängd till 30 cm.
För att bedöma effekten av denna ändring, genomför vi en annan testrendering i redigeringsvyn. De mörka områdena ligger nu önskvärt mycket närmare hörnen och kanterna på Lego-klossen, men de gråa områdena kunde gärna vara något mörkare.
Detta åtgärdar vi genom att använda den Färg-reglaget i Ambient Occlusion-shadern. Vi flyttar svartreglaget i gradienten något till höger för att målinriktat förstärka de mörka områdena.
Samtidigt aktiverar vi alternativet Endast self-shadowing. Eftersom den blå klossen ligger på den gröna klossen skulle detta påverka AO-beräkningen oönskat.
Som en ny testrendering visar har ändringarna haft önskad effekt, så att vi nu kan börja skapa användningsspåren med den färdiga Inversa AO-shadern.
Utöka shadern för användningsspår
Vi stannar för tillfället i Ljus-kanalen, eftersom det här visat sig vara en bra visning för att bedöma IAO-shadern. För att kunna behandla den färdiga IAO-shadern med extra shaders, kallar vi på en Plan-shader från Ambient Occlusion-shadern genom att använda Texture-knappen.
Efter att ha klickat på Shader-knappen på Plan-shadern hamnar vi i shaderns lagerhantering. Den färdiga IAO-shadern ligger redan där som ett lager. Genom knappen Shader… skapar vi ett andra lager med en Noise-shader.
Med Standard-Noise blir vi naturligtvis inte nöjda med våra användningsspår. Genom att klicka på den lilla skuggförhandsvisningen når vi inställningarna för Noise-shadern och väljer där ljudtypen Nutous, som passar mycket bättre. Vi använder 80% som global storlek, de återstående parametrarna lämnar vi på standardvärdena.
Genom att klicka på pilen som pekar uppåt i det övre högra hörnet, går vi tillbaka till lagerhanteringen och ser där att på grund av sin blandningsläge täcker Noise-shadern helt över Ambient Occlusion-shadern.
Men vi behöver egentligen Noise-shadern för att modifiera IAO-shadern kontrastfullt - detta åtgärdas åt oss av blandningsläget Levr.
Vilket exakt påverkar den inverta Ambient Occlusion-shadern, bestämmer vi oss för i en testrendering. Eftersom Noise-shadern verkar på IAO-shadern med 100% blir resultatet för kontrastrikt, det finns inga mellanton.
När vi återvänt till inställningsdialogen för Lager-shadern, är detta dock snabbt åtgärdat. Ett värde på 40% för blandningsläget Levr gör att tillräckligt med mellangråa områden kvarstår.
Med denna färdiga shadarkombination vill vi äntligen applicera användningsspår på våra 3D-Legobitar.
Eftersom vi för närvarande fortfarande är i Ljus-kanalen, men vill använda vår användningsspårsshader i andra materialkanaler, kopierar vi den via menyn Shadern/Bild kopieren i Textur--knappen.
Skapa användningsspår via alfa-kanalen
I Cinema 4D finns som bekant många vägar till målet. Vi skulle kunna använda vår användningsspårsshader på samma sätt i Färg--kanalen som ett Lager. I den här handledningen har jag valt Alfa-kanalen, så att vi genom att överlappa olika material också kan arbeta på ett flexibelt sätt.
På den Bas--sidan av det gröna Legobitens materialet inaktiverar vi den nu onödiga Ljus--kanalen och aktiverar istället Färg-- och Reflektions--kanalen. För båda Legobitsmaterialen aktiverar vi Alfa--kanalen för vår användningsspårsshader.
Eftersom vi vill använda användningsspårsshadern för båda Legobitarna, väljer vi båda Lego-materialen i Material--hanteraren för att kunna bearbeta dem samtidigt. I den aktiverade Alfa--kanalen lägger vi till vår användningsspårsshader via menyn Shadern/Bild einfügen i Textur--knappen.
Efter att ha lagt till användningsspårsshadern för båda materialen måste vi avaktivera alternativet Alfa-bild så att den som textur laddade Lager-shadern tolkas korrekt.
De huvudsakliga materialen för användningsspår på våra Legobitar är nu färdiga. Om vi nu startar en testrendering ser vi att det inte finns något material på våra Legobitar vid de exponerade platserna som bestämts av IAO, Detta skulle faktiskt vara tillräckligt för en trovärdig smutsapplicering.
Material för användningsspår
Men i den här handledningen handlar det om slitna fläckar och repor. Medan de två första Lego-materialen täcker den oskadade ytan, är det nu frågan om två ytterligare material att handla om användningsspår. Jag har redan förberett två något ljusare gröna respektive blå material i Material--hanteraren. För båda materialen avstår vi från ljusa reflektioner som genereras av Reflektions--kanalen för att understryka den matta, nötta looken.
Vi tilldelar båda Lego-materialen till de respektive Legostenarna genom att dra och släppa dem från Material--hanteraren till Objekt--hanteraren och ser till att taggordningen är korrekt. Eftersom det använda användningsspårsmaterialet skall ligga som ett lager under det oskadade Lego-materialet, är dess Texturtag till vänster i Objekt--hanteraren.
I nästa testrendering är det tydligt att vårt något ljusare Lego-material syns på alla exponerade platser. Nu ser inte våra Legobitar smutsiga ut, utan snarare som om de slitits av användning.
Nu har vi tagit hand om det plastslitage som orsakas av leken, men det kan hända att leksaker utsätts för grov hantering och blir deformerade och repade. Här hjälper oss den skapade shaderspåret.
Om shaderspåret inte längre finns i vår urklipp, kopierar vi det enkelt från alfa-kanalen i ett legobit-material genom kommandot Kopiera shaderbild från shadermenyn på texturknappen.
Därefter väljer vi de två ljusare materialen i den slitna materialversionen via materialhanteraren och aktiverar reliefskanalen på basinställningssidan för båda materialen.
Genom att använda kommandot Klistra in shaderbild från shadermenyn på texturknappen sätter vi in den kopierade shadern som textur i reliefskanalen för båda materialen.
Med hjälp av shadern för slitage kan vi enkelt skapa en variant för bucklor och repor som genereras via reliefskanalen. Vi vet hur blendningsläget 'Levr' fungerar, så vi bör öka kontrasten något för att minska reliefkartan som genereras på repor på detta sätt. Vi höjer nivån för layer 'Levr' till 60 %.
För att ytterligare individuellt markera reporna, öppnar vi inställningarna för noises shader och sätter klippet nedåt till 30 %. Som redan syns i förhandsvisningen, klipps de ljusare områdena av eller minskas målinriktat.
Den avsedda avgetningsshaders har redan ställts in för bucklor och repor, så vi behöver bara bestämma styrkan för reliefskanalen - jag har behållit standardinställningen på 20 %. De nya parallaxfunktionerna i Release 18 nämns bara för god ordning, det finns ingen synbar skillnad i kvalitet för detta användningsfall.
I detta tutorial vill jag inte plåga legobitarna ytterligare. Som närbilden visar, ger de små reporna och skivorna legobitarna den önskade sista 'touchen', ...
...vilket avsevärt ökar trovärdigheten hos vår slutliga rendering.