Animering kan vara en mardröm om du inte har en lättanvänd, välgjord rigg att arbeta med, och i denna handledning visar Donato Marotta oss hur man skapar just det med hjälp av leder, lokalisatorer, anpassade attribut, uppsatta drivna nycklar, uttryck och begränsningar i Maya!
Handledningen beskrivs enligt följande:
Obs! Klicka på bilder för att få tillgång till högupplösta versioner.
Skapa en ny scen och importera flaskan med stopp. Välj stoppet och håll sedan ned flytta och välj flaskan. Tryck P till förälderstoppet till flaskan.
Vi behöver flytta flaskans pivotpunkt, så välj flaskan i framsidan och tryck på ins på ditt tangentbord. Detta gör det möjligt för oss att flytta objektets pivot med hjälp av transformationsgizmo. Flytta pivoten till botten av flaskan och när du är nöjd med den positionen trycker du på ins igen. Slutligen trycker du på W och flytta flaskan så att den vilar på Y = 0 som visat.
Tryck R och skala flaskan proportionellt så att den är åtta enheter hög, som visat.
Med vår flaska på plats, välj Frys transformationer från Ändra meny.
När flaskan och stopparen väljs, skapa ett nytt lager och byt namn på det till Bottle_Layer. Lägg sedan till de valda objekten i vårt nya lager genom att klicka på knappen som visas.
Klicka på mittfältet på Bottle_Layer att mallar flaskan, vilket gör att vi kan se den, men inte välja den.
I Animering meny klicka på Skelett / gemensamt verktyg.
Tryck på håll X för att aktivera rutnät och skapa åtta gemensamma från botten till toppen av flaskan - en på var och en av våra rutnät. När du är glad, tryck på Stiga på att släppa verktyget.
I Skapa meny välj NURBS Primitives> Circle.
Skapa en cirkel med en Radie av 15.
Tryck Ctrl + A för att aktivera Attributredigerare för objektet, och gå sedan till Objektdisplay> Ritningsöverlagringar> Aktivera överklaganden och välj Röd Färg.
Nu ska vi ändra cirkeln lite! Högerklicka på den och välj Kontroll Vertex. Ta nu taggarna en efter en och flytta dem på plats (du kan skapa vilken form du vill!) När du är klar, byt namn på cirkeln som Ctrl_Bottle.
Skapa nu en annan nurbs-cirkel i mitten av axeln, med a Radie av 10. Gå sedan till Attributredigerare och gör det gult.
Flytta den senast skapade cirkeln till 8 på Y-axeln, och byt namn på den som Ctrl_Spine1.
Duplicera Ctrl_Spine1 två gånger, och flytta den första till 16 och den andra till 24 på Y-axeln.
Välj menyn Skapa> Locator.
Skala den nya sökaren proportionellt till 8, flytta den till 16 på Y-axeln och byt namn på den till locator1.
Duplicera locatorn och flytta duplicatet till 24 på Y-axeln för att matcha cirkelns position. Byt namn på den till locator2.
Välj nu Ctrl_Spine3, duplicera det och skala det proportionellt till 0,5.
Färg den sista duplicerade Cirkel för att matcha färgen på det är lokaliserare och byta namn på den locator_circle.
Välj nu alla skapade kontroller bortsett från locator1 och locator2, och gå till Modify> Freeze Transformation (Options). Välj alternativen i alternativen Översätt Rotera Skala och klicka sedan på Frys Transform.
Välj Ctrl_Spine3, och håll ned Skift välj locator_circle. Tryck nu på P att förälder dem tillsammans.
Välj locator_circle, och håll ner Skift välj igen locator2. Tryck P att förälder dem tillsammans.
Mer föräldraskap! Välj Ctrl_Spine2, håll skift och välj locator1 och tryck sedan på P till föräldern.
Välj nu locator2, håll skift och välj locator1, Ctrl_Spine1 och Ctrl_Bottle. Med alla 4 markerade trycker du på P till föräldern. Om du öppnar Hypergraph ska den se mycket ut som bilden nedan.
Nu med våra kontroller på plats och uppställning börjar vi arbeta på lederna. Välj joint1, håll skift och välj Ctrl_Bottle och tryck på P till förälder alla leder till huvudkontrollen, Ctrl_Bottle.
Välj Joint4 och i Kanalbox Välj Rotera Y och på toppen av Kanalbox gå till Redigera> Uttryck för att öppna Expression Editor.
Lägg till följande uttryck i rotateY och klicka sedan på Skapa :
joint4.rotateY = joint3.rotateY;
Välj nu rotateZ i Expression Editor och lägg till / skapa detta uttryck:
joint4.rotateZ = joint3.rotateZ;
Välj joint2, och välj sedan rotateY i Expression Editor. Lägg till / skapa detta uttryck:
joint2.rotateY = Ctrl_Spine1.rotateX / 4;
Välj rotateZ och lägg till / skapa detta uttryck:
joint2.rotateZ = -Ctrl_Spine1.rotateZ / 4;
Välj Ctrl_Spine1 och skift välj joint3. I Animering meny välj Begränsnings / Orient.
Som du kan se till bilden nedan roterar du Ctrl_Spine1 roterar fogarna ordentligt. Nu är det dags att upprepa processen för de andra kontrollerna.
Välj joint6 och välj sedan Rotera Y i Kanalbox, öppna upp Expression Editor som tidigare, och lägg till detta uttryck till rotateY, kom ihåg att träffa Skapa när du är klar :
joint6.rotateY = joint5.rotateY;
Välj rotateZ i Expression Editor och lägg till / skapa detta uttryck:
joint6.rotateZ = joint5.rotateZ;
Välj locator1 och sedan i Expression Editor Välj rotateX och lägg till / skapa detta uttryck:
locator1.rotateX = Ctrl_Spine1.rotateX * 3;
Välj rotateZ och lägg till / skapa detta uttryck:
locator1.rotateZ = Ctrl_Spine1.rotateZ * 3;
Välj Ctrl_Spine2, skift välj joint5 och välj Begränsnings / Orient från Animering meny.
Välj joint5, skift välj locator1 och välj Begränsning / Punkt (Alternativ) från samma meny.
I Punktbegränsningsalternativ, Välj Upprätthålla förskjutning och Begränsningsaxlar (alla) och klicka på Lägg till.
Som du kan se i bilden nedan kan vi nu rotera Ctrl_Spine1 och Ctrl_Spine2 separat, även om den andra påverkas av den första.
Välj nu joint8, ta upp Expression Editor, Välj rotateY och lägg till / skapa detta uttryck:
joint8.rotateY = joint7.rotateY;
Välj rotateZ och lägg till / skapa detta uttryck:
joint8.rotateZ = joint7.rotateZ;
Välj Ctrl_Spine3, skift välj joint7 och välj Begränsnings / Orient från animationsmenyn.
Välj locator2, öppna Expression Editor, Välj rotateX och lägg till detta uttryck:
locator2.rotateX = Ctrl_Spine1.rotateX * 5;
Välj locator2, sedan rotateZ i Expression Editor och lägg till / skapa detta uttryck:
locator2.rotateZ = Ctrl_Spine1.rotateZ * 5;
Välj locator_circle, och lägg till detta uttryck till rotera X :
locator_circle.rotateX = Ctrl_Spine2.rotateX * 3;
Välj rotateZ och lägg till detta uttryck:
locator_circle.rotateZ = Ctrl_Spine2.rotateZ * 3;
Välj joint7, shift shift locator2 och välj Constrain / Point från Animering meny.
Välj locator1 och öppna Attributredigerare (Ctrl + A). I Objektskärm Stäng av Synlighet. Gör nu samma sak för locator2 och den circle_locator.
I Lagredigerare, klicka två gånger på mellanskrinan på vår BottleLayer gör att flaskan kan väljas.
Välj flaskan och se till att du tittar på Animering menyer, gå till Skapa deformatorer> Nonlinear> Squash.
Välj Ctrl_Bottle och i Kanalbox klicka på Redigera> Lägg till attribut.
I Lägg till attribut dialog för Långt namn skriva Stretch Squash, i Data typ välja Flyta, i Numeriska attributegenskaper sätt in a Minimum av -10 och a Maximal av 10, och slutligen lägga till en Standard av 0. Klicka på ok för att lägga till vårt nya attribut.
Nu har vi vårt nya attribut, vi måste göra det göra någonting! I Kanalbox Välj Stretch Squash och gå till Edit> Set Driven Key.
Välj Ctrl_Bottle och i Kanalbox klicka på vårt nya Stretch Squash attribut. I Ange Driven nyckel fönster klick Ladda drivrutin att lägga till vår Ctrl_Bottle som vårt drivande objekt. I den nu befolkade Förare rutan välj Ctrl_Bottle och då Stretch Squash.
Nu måste vi välja det drivna objektet. Välj så Flaska och i Kanalbox Välj squash i INGÅNGAR sektion. Klicka nu Lastdriven i Ange Driven nyckel fönster för att fylla den drivna sektionen. Klicka på squash i driven Fält och välj sedan Faktor. Med vår drivrutin och drivna attributter kan vi nu klicka Nyckel för att skapa vår första anslutning.
Välj nu Ctrl_Bottle och ställa in Stretch Squash attribut till 10. Välj squash i RESULTAT del av Kanalbox och ändra Faktor värdet till 0,7. Tillbaka i Ange Driven nyckel fönster, klicka på Nyckel för att skapa en annan anslutning.
Ställ in Ctrl_Bottle's Stretch Squash attribut till -10, välj squash i RESULTAT avsnitt och ändra Faktor värdet till -1,3. Skapa nu vår sista nyckel genom att klicka Nyckel i Ange Driven nyckel fönster.
Ställ in Stretch Squash Skriv tillbaka till 0 och stäng Ange Driven nyckel fönster. Gå till Fönster> Animationsredigerare> Grafredigerare.
Välj squash i RESULTAT avsnitt av Ctrl_Bottle att uppdatera Grafredigerare. Välj alla animeringsknappar och tryck på F att släta dem som du kan se i bilden nedan.
Med det gjort, välj nu bara mellannyckeln i Grafredigerare och med hjälp av de bezier handlarna som sticker ut ur nyckeln själv, justera animeringskurvan för att jämföra saker helt ut som du kan se nedan. Stäng Grafredigerare.
Välj squashHandle och tryck Ctrl + H för att dölja den.
Med vår rigg på plats, och vår squash / stretch komplett, behöver vi nu ansluta riggen upp till själva flaskgenometrin. Gå till framsidan och tryck på 4 för att växla till wireframe-visning. Välj joint1 och skift välj flaskan.
I Animering menyn klickar på Skin> Bind Skin> Smooth Bind (alternativ).
I Jämna bindningsalternativ windows set Bind till till Gemensam hierarki, Max påverkan till 5, och klicka sedan på Binda huden. Välj slutligen Ctrl_Spine1, i Kanalbox, Högerklicka Rotera Y Välj Lås vald för att inaktivera redigering för den här kanalen, eftersom den kommer att påverkas av vår rigg. Upprepa detta lås för Ctrl_Spine2 och Ctrl_Spine3.
Och det är det, du är redo att animera! Spela runt med riggen och se vad du kan komma med! Jag hoppas att du tyckte om handledningen, och om du har några frågor, låt mig bara veta i kommentarerna.