Metlivi-bloggen

Så får du en riggad karaktär att röra sig längs en rak bana i stället för en automatisk båge

För att flytta en riggad karaktär i en rak linje animerar du dess förflyttningskontroll mellan två positioner, synkroniserar förflyttningens nycklar i tid och använder linjära tangenter i ett första test. Om karaktären fortfarande rör sig i en båge kontrollerar du dess överordnade transformeringar och eventuella kopplingar till rörelsebanor.

Den här guiden vänder sig till animatörer som har en fungerande karaktärsrigg men ser en oönskad båge mellan start- och slutposerna. Stegen visar hur du gör i Maya. Målet är att räta ut karaktärens förflyttning som helhet och samtidigt behålla den separata posanimeringen.

29 oktober 20267 min läsningAv Metlivi Editorial Team
Avsnitt 1

Ta reda på om problemet gäller banan eller hastigheten

En rak bana och konstant hastighet är två separata krav. En karaktär kan följa en rak linje och gradvis accelerera, eller följa en böjd bana med konstant hastighet. Adobes dokumentation skiljer uttryckligen mellan rumslig interpolering, som styr rörelsen genom rummet, och tidsmässig interpolering, som styr förändringar över tid. Den skillnaden hjälper dig att avgöra vilken del av animeringen som behöver justeras. Nyckelbildsinterpolering i After Effects

Välj först den punkt vars bana ska vara rak: förflyttningskontrollens origo, en rotled eller en annan tydligt definierad punkt på riggen. Följ just den punkten under hela rörelsen. En karaktär som roterar eller poserar kan ha böjda banor vid sina ytterpunkter även när förflyttningen som helhet är rak.

Använd den här felsökningsordningen innan du ändrar animeringen:

Det du ser Kontrollera först
Förflyttningspunkten böjer av från den avsedda linjen Förflyttningskurvor och mellanliggande nycklar
Banan är rak, men rörelsen går snabbare eller långsammare Tidsinställning och tangenternas lutning
Förflyttningskurvorna ser linjära ut, men punkten går ändå i en båge Överordnade transformeringar eller en annan styrande koppling
Förflyttningspunkten följer en rak bana, men andra delar går i bågar Lokal posanimering och riggens utvärdering
Avsnitt 2

Välj kontrollen som faktiskt flyttar hela karaktären

Börja med riggens avsedda förflyttningskontroll. Namn och funktion beror på riggen: en kontroll som kallas ”global” kan hantera placeringen, medan en annan kontroll styr den animerade förflyttningen. Testa den avsedda kontrollen med en liten tillfällig förflyttning, granska resultatet och ångra testet.

Bekräfta att karaktärens synliga delar och relevanta kontroller följer med tillsammans. Om några kontroller blir kvar ska du ta reda på hur riggen är tänkt att få dem att följa med innan du skapar förflyttningsnycklar. Om du redigerar en godtycklig led eller den synliga modellen blir testet svårare att tolka.

Granska också kontrollens överordnade hierarki. Maya-objekt kan ärva transformeringar från sina överordnade objekt. Därför kan en rak lokal förflyttning under ett animerat roterande överordnat objekt ge en böjd bana i världskoordinater. Det beror på att den ärvda transformeringen kombineras med den lokala animeringen. Maya-kommandot inheritTransform

Använd en förflyttningskontroll vars överordnade transformeringar är oförändrade under intervallet i det inledande testet. Arbeta i en sparad kopia om du tillfälligt behöver isolera befintlig animering. Anteckna de ursprungliga värdena i stället för att nollställa kontroller vars förskjutningar kan ingå i riggens inställningar.

Avsnitt 3

Skapa ett rent förflyttningstest med två nycklar

Använd två nycklar vid ändpunkterna för att se om den grundläggande förflyttningen fungerar som den ska. Följande värden är exempel på scenenheter och är inte mätningar från en viss karaktär. De förutsätter en redigerbar förflyttningskontroll i ett fast koordinatsystem, utan andra kopplingar som styr dess förflyttning.

Bildruta Förflyttning X Förflyttning Y Förflyttning Z
1 0 0 0
25 6 0 0

Gör testet i Maya så här:

  1. Markera förflyttningskontrollen och flytta tidsreglaget till bildruta 1.
  2. Ange startvärdena för förflyttningen i kanalrutan.
  3. Markera attributnamnen Translate X, Translate Y och Translate Z, högerklicka och välj Key Selected.
  4. Gå till bildruta 25 och ange målvärdena.
  5. Sätt nycklar på samma tre förflyttningsattribut igen.
  6. Kontrollera om det redan finns förflyttningsnycklar i intervallet. Ta i testkopian bara bort mellanliggande nycklar som står i konflikt med den avsedda förflyttningen, och bevara orelaterad posanimering.

Maya har stöd för att sätta nycklar på enskilda attribut eller markerade grupper av attribut via kanalrutan. Med Key Selected avgränsar du testet tydligt. Om kontrollen börjar på andra värden än noll behåller du dessa förskjutningar och lägger till den önskade förflyttningen på rätt axel. Sätt nycklar i kanalrutan

Avsnitt 4

Använd linjära tangenter för förflyttningsnycklarna

Öppna Mayas grafredigerare med förflyttningskontrollen markerad. Visa dess förflyttningskanaler, markera ändpunktsnycklarna i dessa kanaler och välj Tangents > Linear. Använd ändringen på alla förflyttningskanaler som ingår i rörelsen. Enligt Mayas dokumentation skapar linjära tangenter raka segment av animeringskurvan mellan nycklarna. Verktygsfältet i grafredigeraren, Snabbmenyn för nyckelbildstangenter

I exempelförflyttningen ska X öka jämnt medan Y och Z är oförändrade. Skumma igenom intervallet i stället för att bara kontrollera ändpunkterna. Karaktären kan nå rätt slutposition men ändå avvika från den avsedda banan däremellan.

Vid diagonal förflyttning ska alla förflyttningskanaler som ändras ha samma start- och slutbildruta. Om du till exempel flyttar från (0, 0, 0) till (6, 0, 3) med synkroniserad linjär interpolering blir banan en rak diagonal i det koordinatsystemet. Om X blir klart före Z ändrar den sammansatta banan riktning.

Använd linjära tangenter selektivt. Om du konverterar varje nyckel på riggen ändrar du även poseringens tidsinställning, som kanske inte behöver korrigeras. Autodesk skiljer mellan linjära, spline-, plana och andra tangenttyper eftersom de ger olika övergångar mellan nycklade värden. Snabbmenyn för nyckelbildstangenter

Avsnitt 5

Kontrollera resultatet med ett rörelsespår och en kontroll mitt i intervallet

Skapa ett rörelsespår på förflyttningskontrollen för att granska banan. Öppna Visualize > Open Motion Trail Editor i Mayas animationsmeny, välj ett lämpligt visningsintervall och klicka på Create Motion Trail med den animerade kontrollen markerad. Det dokumenterade arbetsflödet har ett visningsläge för före och efter som låter dig granska rörelsen runt den aktuella bildrutan. Skapa och redigera ett rörelsespår

Använd exempelvärdena för att göra en numerisk kontroll. Bildruta 13 ligger mitt emellan bildruta 1 och 25, så den förväntade förflyttningen är (3, 0, 0). I det diagonala exemplet är den (3, 0, 1.5). Det här är beräknade värden för synkroniserad linjär interpolering, inte rapporterade resultat från ett programvarutest.

Den allmänna kontrollen är P(u) = A + u × (B − A), där A är startpositionen, B är målpositionen och u anger förloppet från 0 till 1. Vid en fjärdedel av förloppet ska positionen ligga en fjärdedel längs segmentet. Det kontrollerar både riktning och avstånd.

Granska från fler än en fast vyvinkel så att djupförändringar syns. Kom ihåg att ett rörelsespår visar den resulterande rörelsen. Det skiljer sig från en rörelsebana som styr ett objekt längs en föreskriven väg. Förhandsgranska animering med rörelsespår

Avsnitt 6

Felsök en båge som finns kvar efter linjär interpolering

Om bågen finns kvar efter testet med två nycklar kontrollerar du vad som påverkar slutpositionen. Granska först den överordnade hierarkin under hela intervallet. Ett överordnat objekt kan rotera mellan ändpunkter med till synes identiska riktningar, så kontrollera även mellanliggande bildrutor. Använd riggens avsedda förflyttningsutrymme i stället för att ändra transformeringens ärvning utan att förstå inställningarna. Maya-kommandot inheritTransform

Kontrollera sedan om kontrollen är kopplad till en rörelsebana. Mayas bananimering flyttar ett objekt längs en definierad tredimensionell väg, och dokumentationen behandlar formändring av banan och ändring av rörelsehastigheten som separata åtgärder. Om själva banan är böjd rätar en ändring av tidsinställningen inte ut den. Ändra banan till ett rakt segment eller använd riggens avsedda arbetsflöde för direkt förflyttning. Bananimering

Jämför slutligen förflyttningskontrollens bana med den specifika led eller kontroll som ser ut att gå i en båge. Riggutvärdering kan ge olika mellanliggande resultat. Autodesk dokumenterar till exempel att HumanIK:s globala IK-effektorer och FK-effektorer som följer hierarkin inte interpoleras på samma sätt. En rak bana för förflyttningskontrollen innebär alltså inte att varje punkt på riggen följer samma väg. HumanIK-kontroller

Avsnitt 7

Lägg till mjuk inbromsning och acceleration utan att böja banan igen

När du har verifierat banan avgör du om karaktären ska hålla konstant hastighet eller mjukt accelerera in i och bromsa ut ur rörelsen. Om förflyttningen bara sker längs X håller du Y och Z fasta och justerar bara tidsinställningen för X. Så länge koordinatsystemet är fast skapar en ändring av förloppet längs den enda axeln ingen sidoförflyttning.

Vid diagonal förflyttning måste alla koordinater som ändras ha samma normaliserade förlopp. I uttrycket P(u) = A + u × (B − A) ändrar mjuk inbromsning och acceleration hur u utvecklas över tid. Om du redigerar varje koordinats inbromsning och acceleration oberoende av varandra kan förhållandet rubbas och banan böjas. Det här är ett geometriskt villkor som följer av ekvationen för en rät linje.

Avsluta med att kontrollera hela riggen med avsedd posanimering aktiverad. Bekräfta ändpunkterna, mellanliggande positioner och rörelsespåret under hela intervallet. Behåll den verifierade förflyttningen som referens medan du finjusterar karaktärens lokala rörelser.

Avsnitt 8

Källor

Relaterad läsning

Fortsätt utforska detta ämne