Está en la página 1de 3

Práctica 7 tura “cómoda”.

Un ejemplo de construcción
del modelo se muestra en la figura 2. Así, el
Introducción a los esqueletos esqueleto se situará de forma sencilla a lo
largo del eje X, siguiendo la geometría del

C on esta práctica nos introduciremos en brazo.


el uso de esqueletos (armatures) en
Blender. Partiendo de un modelo sencillo (un Recordemos que se pueden duplicar objetos
brazo robótico), aprenderemos a asociarle, a con Shift + D. Será útil definir todos los
cada sección, un hueso del esqueleto. Añadi- componentes del robot como mallas inde-
remos restricciones a los elementos y final- pendientes. Para ello, deberemos salirnos
mente generaremos un movimiento del ro- del modo de edición de vértices cada vez
bot mediante cinemática inversa. que añadamos una parte del robot a la es-
cena. Nombraremos cada componente del
Figura 2
Comenzaremos modelando las diferentes robot como se muestra en la figura 1. Será
piezas que formarán nuestro brazo. Debe- importante tener claros los nombres asigna- esqueleto, entramos en el modo de edición
mos obtener una geometría similar a la mos- dos a cada parte a la hora de gestionar la del objeto (TAB). El color rosa del esqueleto
trada en la figura 1. Antes de ponernos ma- jerarquía y las asignaciones de parentesco a seleccionado será más intenso. Selecciona-
nos a la obra, debemos tener en mente que cada hueso del esqueleto. Por tanto, se re- mos todos los huesos del modelo (tecla A),
al modelo deberá asociársele un esqueleto. comienda seguir el mismo convenio de nom- cambiando su color a amarillo. Vamos a los
Resultará mucho más sencillo realizar esta brado que se utiliza en este documento. botones de edición (F9) y cambiamos el
operación (y el propio modelado), si en la nombre de los huesos como se muestra en
construcción del objeto empleamos una pos- Una vez modelado el robot, y renombradas la figura 4. Al igual que antes, se recomien-
las piezas, añadiremos el esqueleto. Para da seguir el convenio en el nombrado de los
ello, pulsaremos Barra Espaciadora +
ADD + Armature. Cons-
truiremos un esqueleto
formado por 4 huesos,
centrado en el interior del
brazo robótico, tal y como
se muestra en la figura 3.
Los tres primeros están
ajustados a las articula-
ciones del brazo del robot
(hombro, codo y muñeca).
La última, muy pequeña,
se utilizará para gestionar
la cinemática inversa del
Figura 1 modelo. Una vez creado el Figura 3

Escuela Superior de Informática de Ciudad Real – Universidad de Castilla-La Mancha Animación para la Comunicación
Carlos González Morcillo · http://www.inf-cr.uclm.es/www/cglez · cglez@inf-cr.uclm.es Práctica 7 [ Página 1 de 1 ]
huesos. Pasamos a definir las jerarquías en- se realizan de forma simi-
tre elementos, y a conectar las diferentes lar. Primero seleccionamos Pedestal
Make Track
partes del robot con el esqueleto que hemos el hijo, y después el es-
creado. Todo el proceso que vamos a seguir queleto (completo). Pul- Base
a continuación, está resumido en el esque- samos Control + P + Use
ma de la figura 5. Las relaciones de paren- Bone y seleccionamos el
tesco (“es padre de”), están representadas hueso que corresponda en
Motor1 Esqueleto
por una flecha que va del padre al hijo. Los cada caso.
huesos del esqueleto están representados en
color azul. Los nodos hijo de la jerarquía, Añadiremos un objeto LatHomDer
Motor2
están representados por un rectángulo con Empty a la escena que Hombro
LatHomIzq
las esquinas sin redondear. Los elementos nombraremos EmptyIk.
LatCodDer
auxiliares (empty) que se han utilizado, apa- Este objeto nos servirá Copy Rotation
recen en color naranja. Por último, las res- para situar el extremo del Codo

tricciones entre elementos se representan robot y, por cinemática LatMunIzq LatCodIzq

con una flecha punteada, con una circunfe- inversa, Blender calculará
rencia negra en el origen. la rotación necesaria para LatMunDer Muñeca Motor3

cada articulación del robot.


Recordemos que para establecer una rela- Situaremos el puntero 3D MunAPin
ción de parentesco entre elementos, selec- cerca del hueso IkaNull y IkaNull EmptyRotBase
cionaremos siempre primero el elemento situaremos ahí el nuevo PinzaIzq PinzaDer Copy Location (x,y)
hijo, y después, con Shift pulsado, el pa- objeto Empty. Entraremos IK Solver

dre. Pulsaremos Control + P + Make Pa- en el modo de pose del


rent. En caso de equivocarnos, podremos esqueleto (que veremos EmptyIk

eliminar el parentesco con Alt + P. De esta con más profundidad en Figura 5


forma, seleccionaremos, por ejemplo, prime- próximas sesiones), que
ro el elemento Base, y después Pedestal y entre otras cosas nos permite seleccionar (IkaNull), que pasará a color verde claro.
realizaremos la jerarquía. Procederemos de individualmente cada hueso. Para cambiar a Vamos al menú de restricciones, pinchando
igual modo con Motor1 y Base, el Esqueleto modo de pose, con el esqueleto seleccionado en el botón . Añadimos una restricción
(completo) y la Base, y MunAPin (Muñeca a (en color rosa claro), pulsaremos Control + nueva (ADD). El tipo de restricción será IK
Pinza) con las dos partes de la pinza. Tabulador. También podemos acceder a Solver, sobre el nuevo Empty (tecleamos en
Las relaciones de parentesco con los huesos este modo pinchando en el icono de la el campo OB: EmptyIk).
cabecera de cualquier Hecho esto, podemos mover el EmptyIk por
ventana 3D. El esqueleto
pasará a color azul claro.

En este modo, selecciona-


Figura 4 remos el último hueso
Figura 6

Escuela Superior de Informática de Ciudad Real – Universidad de Castilla-La Mancha Animación para la Comunicación
Carlos González Morcillo · http://www.inf-cr.uclm.es/www/cglez · cglez@inf-cr.uclm.es Práctica 7 [ Página 2 de 2 ]
la escena, y el brazo seguirá el movimiento lamos el movimiento del brazo.
del mismo. Sin embargo, vemos que el bra- Para conseguir este efecto de
zo no se comporta correctamente. Las arti- “sombra”, añadiremos una res-
culaciones no realizan los giros de forma tricción de copiar la localización
realista, debido a que no tienen restricciones del EmptyIk, como se muestra en
de giro aplicadas. la figura 9. La localización se co-
piará respecto del eje X e Y. La
Seleccionamos, en modo pose, el hueso altura en el eje Z la mantendre-
“Codo” y añadimos una restricción para co- mos fija.
piar la rotación del hueso “Hombro”. Con
esto, conseguiremos parcialmente que los Hecho esto, añadiremos un se-
tres huesos giren a la vez. Como se muestra guimiento (Track) de la base res-
en la figura 7, tendremos que definir el obje- pecto del Empty. Para ello, re-
to que contiene al hueso llamado “Hombro” cordemos que habrá que selec-
(en nuestro caso, “Esqueleto”). Repetiremos cionar primero el objeto depen-
la misma operación con el hueso “Muñeca”. diente, y después el principal,
pulsando Control + T. Si hemos
seguido los pasos correctamente,
podemos mover el EmptyIk y el
Figura 8
resto de la geometría del robot
seguirá el movimiento. Añadiremos luces y texturas, e intentaremos
Figura 7 conseguir un movimiento similar al mostrado
Para animar el modelo, bastará con insertar en el vídeo resultado_p7.mpg. Este fichero
Crearemos un nuevo objeto vacío, al que frames clave que guarden la posición (Loc) tiene una curva IPO asociada que puede
llamaremos EmptyRotBase. Nos servirá para del objeto EmptyIk en el tiempo (Control + verse en la figura 10. Es muy importante
definir la rotación que se tiene que aplicar al I). La interpolación del movimiento de este finalizar correctamente esta práctica para
objeto Base (recordemos que es padre de objeto nos producirá (por cinemática inver- concluir con éxito futuras sesiones.
casi toda nuestra jerarquía), cuando mova- sa) el movimiento en el resto de articulacio-
mos EmptyIk. De esta forma, el robot siem- nes. Se puede ver el modo de trabajar de la
pre apuntará al objeto EmptyIk, y no ten- cinemática inversa en el fichero esquele-
dremos ninguna rotación extraña en las arti- to_p7.mpg.
culaciones. Situaremos el nuevo Empty, co-
mo se muestra en la figura 8, a la misma
altura que la base (para que al hacer el
Track entre ellos, la Base no se “incline”
hacia ningún lado; únicamente rote respecto
del eje Z).
La idea es hacer que este nuevo Empty sirva Figura 10
Figura 9
de “sombra” al EmptyIk con el que contro-
Escuela Superior de Informática de Ciudad Real – Universidad de Castilla-La Mancha Animación para la Comunicación
Carlos González Morcillo · http://www.inf-cr.uclm.es/www/cglez · cglez@inf-cr.uclm.es Práctica 7 [ Página 3 de 3 ]