From BlenderWiki

Jump to: navigation, search

[edit] De basis van Rigging

Heb je er al eens over nagedacht hoe je een animatie zou maken voor een karikatuur? Je moet er niet aan denken om iedere vertex te verplaatsen, frame na frame. In plaats daarvan gaan we een skelet creëren, compleet met botten en vervolgens de botten verplaatsen om de karikatuur te laten bewegen. Dit proces heet rigging.

In Blender heet een skelet een Armature. Het idee hierachter is:

  • Een Armature bestaat uit verschillende botten (Bones).
  • Aan ieder bot kunnen vertices vastgekoppeld worden.
  • Als je een bot beweegt, bewegen de vertices die aan dat bot gekoppeld zijn mee en de overige vertices blijven stil staan.
  • Het doel is om de botten in de Armature zo op te zetten dat de naastgelegen botten de naastgelegen vertices glad en natuurlijk laten bewegen.

We gaan eerst de Armature voor het bovenlichaam creëren en als dat klaar is gaan we naar het onderlichaam. Benen en voeten vergen iets meer werk om het goed te doen, maar hopelijk heb je dan voordeel van de ervaring die je hebt opgedaan tijdens het creëren van het bovenlichaam.

[edit] Echte Armatures . . .

Dit is een ontwerp dat bestaat uit een eenvoudige Armature om de basisprincipes te demonstreren. Als je wilt weten hoe je een figuur makkelijker kunt laten bewegen, kijk dan eens bij Rigging BSoD project (Engelstalig). Daar vind je veel informatie over "rigs" die geschikt zijn voor veeleisende applicaties (toepassingen). Hier maken we een eenvoudige "rig" om de mogelijkheden van Blender te laten zien.

[edit] De Mirror Modifier toepassen

Tot nu toe hebben we slechts aan een zijde van de mesh gewerkt; de andere zijde is automatisch bijgewerkt door de Mirror Modifier. De Mirror Modifier heeft virtuele vertices gecreëerd aan de andere kant van de mesh. (Helen: virtueel betekent dat je het wel kunt zien maar dat het niet tastbaar is.) Voordat we een Armature kunnen maken moeten de gespiegelde vertices door Blender gezien worden als "echte" vertices.
Belangrijk: Controleer nog een keer of de mesh van jouw figuur eruit ziet zoals jij dat wilt. We gaan de Mirror Modifier achter ons laten. Je kunt de mesh natuurlijk altijd later nog aanpassen, maar dan is het niet meer zo eenvoudig omdat je dan twee kanten moet wijzigen.

De Mirror Modifier toepassen om de vertices "echt" te maken
  • Met de mesh van het figuur geselecteerd ga je naar de Edit buttons.
  • In de Mirror Modifier, klik je op Apply (toepassen. De Mirror Modifier toepassen om de vertices "echt" te maken)


"Modifer is not first" waarschuwing
  • Mogelijk krijg je een waarschuwing in beeld met de tekst: "Modifier is not first" ("Modifer is not first"). Dat wordt veroorzaakt door de volgorde van de Modifiers in het Modifier overzicht; klik op de tekst, dan wordt de Mirror Modifier automatisch bovenaan geplaatst in het Modifier overzicht.


Tweede waarschuwing als de Mirror Modifier wordt toegepast
  • De volgende melding die je te zien krijgt is "Applying will delete mesh sticky, keys, and vertex groups" (Tweede waarschuwing). Klik op de tekst om het te accepteren. We hebben nog geen vertexgroepen, e.d. gemaakt, dus is het oké. We gaan wel zo beginnen met het maken van VEEL vertexgroepen -- daarom passen we de Mirror Modifier nu toe en niet later!!!


[edit] Een Armature toevoegen

Het is tijd om de Armature toe te voegen. Om op een praktische manier gebruik te maken van de symmetrische modelleer gereedschappen (tools), willen we dat het midden van de Armature de middelijn van onze mesh is. Om dat te realiseren:

3D Cursor op de middellijn van de mesh
  • Selecteer de mesh en ga naar de Edit Mode.
  • Selecteer de vertex op de middellijn van de mesh, zoals afgebeeld.
  • Shift S voor het Snap Menu.
  • Selecteer Cursor to Selection om de cursor op de geselecteerde vertex te plaatsen.
  • De cursor staat nu op de middellijn (3D Cursor op de middellijn van de mesh).


3D Cursor op de middellijn van de mesh
  • Wissel naar de Object Mode en vooraanzicht (NumPad 1).
  • Voeg een Armature object toe met SPACE>>Add>>Armature.



BELANGRIJK: Om de meeste Armature tools (gereedschappen) te kunnen gebruiken moet het Armature Object ingesteld zijn op Rotatie (0,0,0) voor de X-, Y- en Z-as. Afhankelijk van de schermweergave waarin je de Armature hebt toegevoegd, is het mogelijk dat de Armature in een andere rotatie is vastgelegd of op een andere lokatie staat. Om de Armature correct weer te geven, voer je de volgende acties uit:

  • Ga terug naar de Armature Object Mode.
  • Gebruik Alt R om de rotatie van het Armature Object te verwijderen.
  • Ga nu weer terug naar de Armature's Edit Mode. Eventuele volgende rotaties en verplaatsingen moeten in Edit Mode worden uitgevoerd.


We hebben nu een Armature toegevoegd en dat bestaat uit een enkel bot. Net zoals meshes hebben Armatures een Object en een Edit Mode en als je een Armature toevoegt kom je automatisch in de Edit Mode. Je weet dat je in de Edit Mode zit als je gele (geselecteerde) en lila (ongeselecteerde) eindpunten ziet.

Anatomie van een Bot
  • Ieder bot heeft een beginpunt, de ROOT en een eindpunt, de TIP (het puntige deel), zie: Anatomie van een Bot. Tenminste, zo worden ze voorgesteld in het standaard achtvlakkige tekentype. We gaan later andere tekentypes gebruiken en dan is het niet meer zo duidelijk wat de root is en wat de tip is.


We gaan eerst enkele instellingen (settings) wijzigen voordat we verder gaan met het bouwen van de "rig". Met de Armature nog steeds geselecteerd, kunnen we de instellingen zien in de Edit buttons.

Bot weergave-instellingen
  • Belangrijk: Controleer in het Armature paneel onder de Edit buttons of de X-Axis Mirror geselecteerd is. Daarmee gaan we de botten symmetrisch (gelijkzijdig) extruderen om een skelet te maken.
  • Controleer ook of X-Ray geselecteerd is. "X-Ray" zorgt ervoor dat je de botten door de mesh heen kunt zien en daardoor kun je makkelijker wijzigen - we hoeven niet te wisselen naar het draadwerk (wireframe) om de botten in het lichaam te kunnen zien (Bot weergave-instellingen).


[edit] De ruggengraat extruderen

  • Selecteer het bot dat je hebt toegevoegd. Je kunt een bot compleet selecteren door te klikken op het midden van een bot. Een andere manier is om de "root" te selecteren en dan, met Shift ingedrukt, de "tip" te selecteren.
Bot verplaatst naar de heupen
  • Wissel naar zij-aanzicht en verplaats het bot meer naar de heupen en in het midden van het lichaam, ongeveer uitgelijnd met de nek.


Het ruggengraatbot verlengen
  • Selecter alleen de "tip".
  • Grab (grijp) de tip en verplaats het een beetje omhoog over de Z-as (G en Z), zoals te zien in Het ruggengraatbot verlengen. Omdat we de botten later namen gaan geven, voeren we weer een Engelse kreet in: ruggengraat is "SPINE".


De spine 1 extruderen
  • Met de tip nog steeds geselecteerd maak je een extrude over de Z-as met E,Z om het tweede bot van de keten te maken (De spine 1 extruderen).


Geëxtrudeerde spine
  • Maak nog drie rechtlijnige extrudes over de Z-as, zodat je totaal 5 spine-botten hebt (Geëxtrudeerde spine). In een menselijk lichaan kunnen de ribben niet buigen, deze ruggengraat is dus iets flexibeler dan dat van een mens.


Nek bot
Hoofd bot
  • Extrudeer een nek (neck) en een hoofd (head) bot. Je ziet op de afbeelding dat het hoofd bot een beetje uitsteekt. Dat is handig als we dit bot willen selecteren, ook als de X-ray van de Armature is gedeactiveerd.


We gaan deze botten (bones) namen geven. De namen worden zichtbaar in andere weergaves; het is belangrijk om ze duidelijke namen te geven, zodat er later geen verwarring kan ontstaan en je wordt hopelijk nog verrast door de ongekende uitwerking van het benoemen van de botten.

Armature Bones paneel in de Edit Buttons
  • Met een geselecteerd bot, kun je de naam wijzigen in het Edit buttons Armature Bones paneel (Armature Bones paneel in de Edit buttons). Ik heb het onderste bot geselecteerd en de naam gewijzigd in spine1.
Benoemde spine bones
  • Selecteer ieder bot van de spine en geef het een betekenisvolle naam. Ik heb ze, van onder naar boven, als volgt benoemd: spine1, spine2, spine3, spine4, spine5, neck, en head. Als ze allemaal geselecteerd zijn, worden ze allemaal getoond in de Edit buttons (Benoemde spine bones).


[edit] De armen symmetrisch extruderen

Symmetrische extrusie van de schouderbotten (shoulder bones) met Shift E
  • Ga terug naar het vooraanzicht met (NumPad 1).
  • Selecteer de tip van spine4.
  • Iets nieuws: Shift E om symmetrisch (gelijkzijdig) te extruderen en een schouderbot te creëren, zoals in: Symmetrische extrusie van de schouderbotten. Symmetrische extrusie werkt alleen als de X-As Mirror Edit Mode geactiveerd is en dat hebben we (gemakshalve) een paar stappen terug al gedaan.


Symmetrische extrusie van de bovenarmbotten
  • Met de tip van de schouder geselecteerd, doe je nog een Shift E symmetrische extrusie om het bovenarmbot (upper arm bone) te maken (Symmetrische extrusie van de bovenarmbotten).


Symmetrische extrusie van de onderarmbotten
  • Ga verder met symmetrische extrusies om de onderarm (lower arm) te maken . . .


Symmetrische extrusie van de handbotten
  • . . .het handbot . . .


Symmetrische extrusie van de vingerbotten (1)
Symmetrische extrusie van de vingerbotten (2)
  • . . .en twee vinger (finger) botten.


We hebben alle armbotten gemaakt en gaan ze nu beter positioneren. Dat is het makkelijkst als we kunnen zien waar de vertices van de mesh ongeveer staan. Omdat we in de Armature's Edit Mode werken, kunnen we de vertices in de Edit Mode van de mesh niet zien. Daarom:

  • verlaten we de Edit Mode met: TAB.
  • Selecteer de mesh van het karakter.
Schakel Subsurf uit in het 3D scherm
  • Schakel in de Subsurf Modifer "Subsurf in het 3D scherm" uit. Hierdoor kunnen we door de echte basismesh heenkijken en de botten uitlijnen (probeer de Wireframe Mode maar eens uit, zonder de bovenstaande stap, om te zien wat ik bedoel).


De elleboog aanpassen, in vooraanzicht
  • Wissel naar Wireframe weergave met Z.
  • Selecteer de Armature weer en ga naar Edit Mode (TAB).
  • Pas de elleboog aan zodat die binnen de drie elleboog vertexringen van de mesh vallen (De elleboog aanpassen, in vooraanzicht)


De elleboog aanpassen, in bovenaanzicht
  • Doe hetzelfde in bovenaanzicht (De elleboog aanpassen, in bovenaanzicht).


Beeld van de armbotten in bovenaanzicht
  • Terwijl je in bovenaanzicht werkt kun je meteen controleren of alle botten binnen de mesh vallen. (Beeld van de armbotten in bovenaanzicht).
  • TAB, selecteer de mesh van het karakter, schakel Subsurf weer in en druk op Z om de beklede mesh weer te tonen.
  • Selecteer de Armature weer en ga naar Edit Mode.


[edit] De botten benoemen

We gaan ook deze botten namen geven. Dit is echt erg belangrijk!


[edit] Afspraken over botnamen

Blender heeft fantastische X-As Mirror gereedschappen (tools) en om die te kunnen gebruiken moeten we symmetrische botten namen geven zoals bijvoorbeeld "bone.L" voor een linkerbot en "bone.R" voor het overeenkomende rechterbot.

Je kunt ook "bone.l" en "bone.r" gebruiken of "Left.Bone" en "Right.Bone" . . . de symmetrische gereedschappen zijn ALLEEN behoorlijk slim als je voor symmetrische botten dezelfde naamafspraken (conventions) hanteert.

Om consequent te blijven, gebruik ik:

  • alleen kleine letters voor de botnamen met "l" voor het linkerbot en "r" voor het rechterbot.
  • bot namen die bestaan uit twee woorden worden gescheiden door een "underscore", zoals in: upper_arm.l
  • De LINKERKANT is de LINKERKANT van het karakter. In vooraanzicht moet je misschien even nadenken welke kant links is en welke kant rechts.
  • Wijzig de namen van de botten in namen die duidelijk zijn. Kijk goed of de linker- en de rechterbotten symmetrisch zijn. Onder de Edit buttons (het Armature paneel waar je de X-Ray en de X-axis Mirror hebt geactiveerd) kun je ook Draw Names activeren. De namen van de botten komen in beeld en dat kan handig zijn om te controleren of er namen ontbreken en voor eventuele typefouten.

Botnamen, hieronder, is een schermafbeelding met de namen die ik heb gebruikt. Je kunt op de afbeelding klikken om de grotere versie te zien, met de botnamen. Vanuit deze hoek zijn alle namen goed te zien. (Helen: om het eenvoudig te houden zie je hieronder alleen de Engelse namen, die hierboven al genoemd zijn.) De namen die ik heb gebruikt, zijn::

Botnamen van het bovenlichaam
  • shoulder.l
  • upper_arm.l
  • lower_arm.l
  • hand.l
  • finger1.l
  • finger2.l

en

  • shoulder.r
  • upper_arm.r
  • lower_arm.r
  • hand.r
  • finger1.r
  • finger2.r


[edit] De rig testen en de armen aanpassen

Je bent inmiddels bekend met Object Mode en Edit Mode. We gaan een nieuwe Mode gebruiken, specifiek voor Armatures: de Pose Mode.


  • Met de Armature geselecteerd, druk je op Ctrl TAB. Hierdoor vervang je de Object Mode door Pose Mode. Met andere woorden, je kunt nu op de TAB drukken en wisselen tussen Pose Mode en Edit Mode. Als je weer terug moet naar de Object Mode, druk je weer op Ctrl TAB en kun je met de TAB weer wisselen tussen Object en Edit Mode. Je weet dat je in de Pose Mode zit als je een bot selecteert dat lichtblauwe randen heeft.
upper_arm.l geselecteerd in Edit Mode
upper_arm.l geselecteerd in Pose Mode
Armature geselecteerd in Object Mode (individuele botten kunnen niet geselecteerd worden in Object Mode)


Bij Armaturen wordt de Edit Mode gebruikt om de Armature te construeren. Met de Object Mode kun je de Armature als geheel verplaatsen en de Pose Mode wordt gebruikt om poses te maken. In de Pose Mode kun je ieder bot apart "grabben", schalen en roteren.

upper_arm.l geroteerd in vooraanzicht
  • Selecteer de "upper arm" in Pose Mode en roteer het in vooraanzicht. Je ziet dat alle botten die daarna zijn aangemaakt, ook meedraaien.


lower_arm.l geroteerd
  • Selecteer nu de onderarm (lower arm) en roteer het in vooraanzicht. De bovenarm beweegt niet maar de onderarm en volgende botten roteren wel. Dit komt door het zg. parenting. Parents zijn ouders.

De bovenarm is de parent van de onderarm en de onderarm is de "parent" van het handbot. Je kunt natuurlijk ook zeggen dat de hand het kind is van de onderarm. Deze ouder-kind relaties (parent-child relationships) zijn automatisch gecreëerd door het extruderen van de botten. De geëxtrudeerde botten worden het kind van het bot van waaruit het geëxtrudeerd is. Dat is de reden dat we met de onderste spine zijn begonnen en naar boven hebben uitgebreid, net zo als dat we van de schouders naar de vingers zijn gegaan.

Verwijder de rotatie van alle botten in de Armature
  • Verwijder de rotatie van alle botten door de A twee maal in te drukken om alle botten te selecteren en vervolgens met de Alt R de rotatie te verwijderen (Clear rotation). De botten staan nu weer in de oorspronkelijke positie. Deze opdracht gaan we vaker gebruiken, samen met de gerelateerde opdracht Alt G, waarmee je een lokatie ongedaan maakt.


Auto IK activeren in het Armature paneel
  • Activeer Auto IK in het Armature paneel, onder de Edit buttons.


finger2.l verplaatst met Auto IK.
  • Selecteer de tip van de arm en beweeg het metG. Je ziet dat de beweging nu heel anders gaat!


De verklaring: Voorwaartse bewegingen (Forward Kinematics) of kortweg FK is een methode om botten te bewegen zoals we dat als eerste hebben gedaan. Je roteert de bovenarm en de kinderen (en de kinds-kinderen) gaan mee. Het tegenovergestelde van FK is de tegengestelde beweging (Inverse Kinematics - IK). We verplaatsen het kind en de ouders volgen. In werkelijkheid worden er op de achtergrond nogal heftige wiskundige berekeningen uitgevoerd die proberen de ketting van botten naar het doel te laten wijzen. Wat is het doel? Bij Auto-IK is dat het bot dat je geselecteerd hebt, in dit geval dus het finger2.l bot. Wat is de ketting? Dat is de complete rij van botten die helemaal teruggaat tot aan de groot-groot-groot-(etc.)grootouder.

Toen we het vingerbot van de Armature bewogen, probeerden alle botten in de ketting te wijzen naar waar we het vingerbot verplaatsten. Er verschijnt een oranje lijn in beeld die het finger2.l bot verbindt met het spine1 bot. De oranje lijn wijst naar de bron (root) van de ketting; spine1 is de hoogste ouder (parent) van finger2.l en de ketting bevat alle botten tussen spine1 en finger2.l.

Het zou wel prettig zijn als de spine niet zoveel beweegt als we de arm verplaatsen. Dat gaan we repareren door de IK ketting bij de schouder te verbreken, zodat alleen de arm beweegt en de spine stil blijft staan.

Selecteer de upper_arm.l in Edit Mode
  • Ga naar de Edit Mode van de Armature met TAB. Je ziet dat, ongeacht of je net botten hebt verplaatst in de Pose Mode, alle botten de oorspronkelijke positie hebben in Edit Mode. In de Edit Mode zie je de botten in de Rest position (de ruststand) en als je weer naar de Pose Mode gaat, krijg je de geposeerde stand weer in beeld.
  • Selecteer het upper_arm.l bot in Edit Mode.


Deselecteer de "Con" button om de verbinding tussen de upper_arm.l en de shoulder.l te verbreken.
  • In het Armature Bones paneel onder de Edit buttons deselecteer je de Con button. In dit paneel geeft het veld na child of: aan dat dit bot, de upper_arm.l, een kind van de shoulder.l is. We willen deze relatie behouden, maar we willen wel de bewegingsverbinding tussen de upper_arm.l en de shoulder.l verbreken. . . . en daarvoor verbreken we de IK-ketting (chain). Con staat voor Connected (verbonden). Door deze knop te deselecteren verbreken we de verbinding tussen het upper_arm.l bot en het shoulder.l bot.


Het finger2.l bot verplaatsen na het verbreken van de IK-kettingverbinding van de upper_arm.l
  • Om de nieuwe instelling te testen gaan we naar de Pose mode met (TAB).
  • Herstel het Armature door tweemaal op Ate drukken om alle botten te selecteren en Alt G om de posities van de botten naar de originele stand terug te zetten en Alt R om de rotaties ongedaan te maken.
  • Beweeg nu het finger2.l bot weer. Een groot verschil! De oranje lijn wijst nu naar de bron (root) van de ketting en dat is het upper_arm.l bot.


We konden de botten symmetrisch extruderen, maar de instellingen van de botten moeten we apart wijzigen. Om de verbinding tussen het upper_arm.r bot en de shoulder.r op dezelfde manier te verbreken:

  • Ga naar de Armature's Edit Mode.
  • Selecteer de upper_arm.r.
  • Deselecteer de Con button.
  • Test de Armature.


[edit] De Armature Modifier toepassen op de Mesh

De naam van de Armature controleren (selecteer het en controleer de naam die hier verschijnt)
Voer de naam van het Armature object in bij de Armature Modifier en zorg ervoor dat alleen "Vertex Groups" geselecteerd is (Envelopes mag niet geselecteerd zijn)

Nu we een Armature hebben, wordt het tijd om deze aan de mesh te bevestigen. Daarvoor hebben we een Armature Modifier nodig.

  • Selecteer de mesh van het karakter in Object Mode.
  • In de Edit Buttons klik je op Add Modifier>>Armature
  • In de Ob: tekstbox voer je de naam van het Armature object in (Voer de naam van het Armature object in bij de Armature Modifier). De standaardnaam is, vanzelfsprekend, "Armature". Om de naam van de Armature nog een keer te controleren, selecteer je de Armature en zoek je de OB: tekstbox op in de Edit buttons, zoals te zien in: De naam van de Armature controleren.
  • In de Armature Modifier controleer je of alleen de Vert. Groups button geselecteerd is. De Envelopes gaan we in deze handleiding niet gebruiken.

Blender weet nu dat wij willen dat de Armature de mesh van het karakter beïnvloedt. De volgende stap is om Blender te vertellen welke vertices verplaatst moeten worden als we bijvoorbeeld de upper_arm.l bewegen.

Samenvatting
We hebben een Armature object toegevoegd en vervolgens botten geëxtrudeerd om een Armature voor het bovenlichaam te maken. We hebben wijzigingen doorgevoerd om de Auto-IK functie te kunnen gebruiken, als we dat naderhand willen. Het volgende deel is: weight painting!


Vertaald door: --Helen23 18:07, 3 December 2006 (CET)

Volgende: Bovenlichaam: Weight painting

Vorige: Bekleding en structuur

Terug naar de Index