Home Tutorials Blender 2.5 Tutorial Armature, ossa e loro animazioni in Blender 2.5 - Puntata 5 di 5: constraints (vincoli) e IK (Inverse Kinematics, Cinematica inversa)

Page Rank Check    





Tutorial Armature, ossa e loro animazioni in Blender 2.5 - Puntata 5 di 5: constraints (vincoli) e IK (Inverse Kinematics, Cinematica inversa)
Tutorials - Blender 2.5
Scritto da RedBaron85   
Mercoledì 31 Marzo 2010 16:10

Tutorial Armature, ossa e loro animazioni in Blender 2.5 - Puntata 5 di 5: constraints (vincoli) e IK (Inverse Kinematics, Cinematica inversa)

Links alle puntate di questa serie : 1 - 2 - 3 - 4 - 5

*          *          *

NOTA: clicca qui per vedere la versione VIDEO di questo tutorial

*          *          *

Questo è il quinto ed ultimo tutorial del ciclo dedicato alle armature e alle loro animazioni in Blender 2.5. In questa puntata parleremo un po' dei Constraints, i vincoli.

 

Ebook PRO

Cycles per

Cycles perBlender 3D 2.62 - 2.65

Ebook PRO di Francesco "RedBaron85" Milanese su "Cycles per Blender 3D"

 

I constraints (termine tradotto in italiano con “vincoli”, di solito) sono caratteristiche degli oggetti, siano essi mesh o ossa. Esistono constraints propri delle mesh, constraints propri delle ossa e constraints comuni ai due tipi.

 

Per questa panoramica utilizzeremo l'armatura visibile nell'immagine qui sotto, composta da due ossa uguali, non legate tra loro. Per inserire un vincolo Constraint per l'osso selezionato in Pose Mode, apriamo la scheda Bone Constraints nella Properties Windows e clicchiamo sul menù Add Constraint.

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Prima armatura da utilizzare

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Bone Constraints

Sono presenti diverse voci, suddivise per categorie; noi prenderemo in esame quelle principali, iniziando con Copy Location.

 

 

Copy Location serve, intuitivamente, ad assegnare una posizione ad un osso in base alla posizione di un altro osso, detto osso Target, bersaglio.

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Copy Location

La copia può essere fatta in riferimento sia allo spazio locale che globale del target e dell'osso provvisto di tale Constraint, con tutte le possibili combinazioni di tali valori.

E' possibile scegliere, poi, quale coordinata vincolare, ossia X, Y, Z o una loro combinazione; selezionando inoltre il pulsante col segno -, la copia sarà invertita.

L'osso target non è identificato da un unico punto, ma dalla classica struttura dell'osso, per cui dobbiamo decidere quale punto prendere come riferimento per effettuare la copia: inserendo il valore 0 in Head-Tail, prenderemo come punto di riferimento la testa, la radice dell'osso, mentre con 1 la coda; a valori intermedi corrisponderanno posizioni intermedie tra testa e coda.

 

Copy Rotation fa per le rotazioni delle ossa quello che Copy Location fa per le posizioni: in base ad un osso di riferimento, detto osso Target, modifica l'orientamento dell'osso provvisto di tale Constraint. Anche qui sono presenti XYZ, con lo stesso significato che hanno in Copy Location.

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Copy Rotation

Utilizzando l'opzione Local anziché Global, verrà copiata l'entità della rotazione, non l'orientamento generale dell'osso nella scena 3D.

 

Copy Scale è come Copy Location e Rotation, ma per lo scaling, il ridimensionamento di un osso... anche qui abbiamo il concetto di Target e XYZ, ma non quello di trasformazione locale o globale, perchè lo scaling è, in un certo senso, sempre locale; anzi, tutte le ossa hanno sempre la stessa dimensione, ossia 1,1,1, quando sono nella loro rest position: non importa se un osso è lungo il doppio di un altro, le sue dimensioni in posizione di riposo saranno sempre 1,1,1.

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Copy Scale

 

Limit Distance serve a posizionare un osso entro, oltre o ad una distanza esatta da un altro osso, l'osso Target. Il valore della distanza va inserito in Distance, da considerare come il raggio di una sfera centrata nell'osso Target.

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Limit Distance

Scegliendo per Clamp Region la voce Inside, l'osso provvisto di tale Constraint potrà muoversi soltanto all'interno della regione definita dal vincolo, mentre con Outside dovrà mantenersi, per così dire, ad una distanza minima dall'osso target (distanza espressa sempre mediante il campo Distance) e con l'opzione On Surface, per finire, potrà muoversi solo sulla superficie di questa ipotetica sfera centrata nell'osso target e avente raggio uguale al valore inserito in Distance.

 

Limit Location serve per confinare un osso all'interno di una certa regione di spazio, non necessariamente un parallelepipedo: anche una retta o una superficie o, ancora, un punto limite... il tutto dipende da quale casella, tra Min X, Min Y, Min Z e i relativi Max, selezioneremo, anche nessuna o tutte, e dai valori che inseriremo per ciascuna casella.

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Limit Location

 

Limit Rotation e Limit Scale fanno per le rotazioni e per lo scaling quello che Limit Location fa per la posizione: limitano le trasformazioni; nel caso di Limit Rotation, è possibile inserire dei valori Min e Max per la rotazione intorno a ciascuno dei tre assi di rotazione, X, Y e Z, mentre nel caso di Limit Scale questo discorso varrà per il ridimensionamento dell'oggetto su ciascun asse.

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Limit Rotation

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Limit Scale

 

E' interessante notare che, quando uno dei Constraint è attivo (ad esempio, Limit Location, ma il discorso vale in generale), Blender non visualizza l'effetto se andiamo “fuori scala”, per così dire, ad esempio se spostiamo un osso al di là dei limiti imposti da Limit Location, ma memorizza internamente i valori della trasformazione, trasformazione che verrà applicata istantaneamente se decideremo di eliminare il Constraint che la limitava.

 

 

TRACK TO consente di far puntare ad un osso un oggetto, sia esso un altro osso dell'armatura che una mesh a parte, ad esempio un cubo che si sposta nello spazio 3D.

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Track To

In Track To dovremo decidere, per ciascuna applicazione del Constraint, quale asse influenzare, cioè per quale direzione effettuare il “puntamento”, per così dire, e se svolgere il tutto in coordinate globali o locali, sia per il target che per l'osso provvisto di tale Constraint.

Qualora decidessimo di far seguire ad un osso una mesh, poi, dovremo anche specificare un vertex group della mesh (eventualmente, creandone uno ad hoc, se non presente).

 

STRETCH TO è molto simile a Track To, con la differenza che qui l'osso viene deformato in lunghezza, a seconda della distanza presente, nel corso dell'animazione, tra se stesso e l'oggetto puntato.

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Stretch To

ACTION serve per “mappare”, per applicare un'azione (definita anche per oggetti esterni) ad un canale di trasformazione (cioè posizione, rotazione e scaling, per ciascun asse X, Y o Z) dell'osso, per un certo lasso di tempo definito mediante i campi Start ed End di Action Length.

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Action

CHILD OF lega un osso ad un altro oggetto, anche una mesh a parte (che però dovrà essere provvista di almeno un Vertex Group, da creare eventualmente per questo scopo).

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Child of

Si tratta del Constraint da utilizzare per far sì che l'osso si comporti esattamente come l'oggetto target, ossia si sposti, ruoti e si ridimensioni in maniera locale seguendo le trasformazioni di un altro oggetto.

 

FLOOR serve per considerare degli oggetti mesh di tipo Planes come vincoli, ad esempio per creare soffitti, pavimenti o muri. L'oggetto Plane deve avere almeno un Vertex Group, per cui eventualmente bisognerà crearne uno per l'occasione.

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Floor

L'opzione Sticky è quella che consente di implementare meglio un pavimento, o meglio un ciclo di camminata lungo un pavimento, perchè rende l'oggetto immobile quando tocca il piano.

 

 

 

Per analizzare il Constraint Inverse Kinematics, ossia cinematica inversa, cancelliamo questa armatura dalla scena ed aggiungiamone una nuova, creando, a partire dal primo osso, un altro osso per estrusione e da questo un terzo osso, realizzando quindi una catena, come per le ossa del braccio o della gamba, ad esempio.

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - Armatura da utilizzare 2

Applichiamo questo Constraint all'ultimo osso creato.

Aggiungendo un Constraint di questo tipo ad un osso, tale osso -e i suoi genitori, lungo la catena- diventeranno parte della simulazione IK, una simulazione dove una trasformazione effettuata su un osso, ad esempio una rotazione, non ha effetti solo sull'osso, ma sulla sua catena.

Si tratta di simulazioni utili per realizzare animazioni, ad esempio, delle gambe.

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - IK, Inverse Kinematics, Cinematica inversa

Come Target, impostiamo l'armatura che contiene l'osso; a questo punto dovremo inserire anche il nome dell'osso target, che generalmente è l'osso stesso, ma può anche essere un altro osso, dipende dai casi... vi consiglio di fare varie prove per valutare i vari effetti.

 

Chain Length, ossia lunghezza della catena, di default ha valore 0, il che non significa che nessun osso fa parte della catena, anzi: significa che tutta la catena di ossa fa parte della catena IK, cosa che non sempre va bene (visto che, ad esempio, se dobbiamo alzare una mano non dobbiamo necessariamente girare la testa), per cui è meglio impostare un valore numerico maggiore di 0.

 

In genere l'osso è collegato al capostipite della catena con una linea tratteggiata che parte dalla coda dell'osso, ma possiamo impostare il collegamento per la testa deselezionando la casella Tail.

 

Selezionando Rotation, la simulazione della cinematica inversa terrà conto anche della rotazione delle ossa.

Tutorial Blender 3D 2.5 - Armature, ossa, animazioni - IK, esempio

 

Per questa puntata -e per questa serie di tutorial- è tutto.

Bye ! ;-)

Tags:     tutorial      blender 3d      blender 2.5      armature      ossa      animazioni      puntata 5      constraints      vincoli      ik      inverse kinematics      cinematica inversa
Ultimo aggiornamento Lunedì 23 Gennaio 2012 22:55
 

Ti è piaciuto questo articolo ? Condividilo !



RedBaron85.com Forum community banner

Non hai trovato quello che cercavi ?
Ricerca personalizzata
Copyright © 2012 RedBaron85.com: Informatica, CG 2D e 3D, Blender, Python, Java 2D e 3D, 3D Studio e altro ancora!. Tutti i diritti riservati.
Joomla! è un software libero rilasciato sotto licenza GNU/GPL.

Milanese Francesco - Partita IVA: 04950350878

AltroArticoliblog utentiBlueprintsContestenglishProgrammazioneModelliElencoNewsTexturesTutorialsVideotutorials