Emparentado de Objetos¶
Al modelar un objeto complejo, tal como un reloj, pueden modelarse las distintas partes como objetos separados. Para hacer que todas las partes se muevan como un todo («el reloj»), se puede designar un objeto como padre de todas las demás partes. Estas otras partes se convierten en sus hijos, y cualquier traslación, rotación o escalado del padre afectará también a sus hijos.
Al contrario que la mayoría de formas de vida biológica, cada Objeto o hueso en Blender tiene como mucho un padre. Si un objeto tiene ya un objeto padre y se le da otro padre, Blender eliminará la relación parental anterior. Cuando se utilice el plural «padres» en este capítulo, hará referencia a la jerarquía de padres, es decir, el padre, abuelo, bisabuelo, etc. de un objeto.
Make Parent (Emparentar)¶
Referencia
- Modo
Modo Objeto
- Menú
- Atajo
Ctrl-P
Para emparentar objetos, hay que seleccionar al menos dos objetos (primero los objetos hijo y por último el objeto padre), y presionar Ctrl-P. Aparecerá el menú emergente Set Parent To (Emparentar A) que permitirá seleccionar entre distintos tipos de emparentado posibles. Seleccionar alguna de las entradas de Set Parent To confirma la acción, y se crea la relación hijo(s) a padre. Los objetos seleccionados tendrán como nuevo «padre» al objeto activo, y en consecuencia serán «hermanos».
El menú emergente Set Parent To es sensible al contexto, lo cual significa que la cantidad de entradas que muestra puede cambiar dependiendo de qué objetos están seleccionados cuando se usa el atajo Ctrl-P.
Mover, rotar o escalar el padre transformará también el hijo (o hijos) normalmente. Pero transformar el hijo (o hijos) no afectará al padre. En otras palabras, la dirección de influencia es de padre a hijo y no de hijo a padre.
Truco
You can «move» a child object back to its parent by clearing its origin.
- Type
Blender supports many different types of parenting, listed below. Besides parenting the selected objects, some types add a Modifier or Constraint to the child objects, with the parent as the target object or activates a parent property i.e. Follow Path.
Object (Objeto)
Bone (Hueso)
Vertex (Vértice)
Vertex (Triangle) (Triángulo de Vértices)
- Keep Transform
Se calculan las transformaciones globales actuales del objeto (o sea sus localización/rotación/escala absolutas en el mundo). Se establece el nuevo padre, y entonces la Parent Inverse se calcula de tal modo que tras establecerse el nuevo padre, el objeto permanece en su transformación global previa.
Consejo
Utilice el Outliner
Existe otro modo de ver las relaciones padre-hijo en grupos, y es mediante la vista Outliner del editor Outliner.
Parent Inverse (Inversa del Padre)¶
Blender puede asignar un padre sin mover el objeto hijo. Esto se consigue a través de una matriz oculta llamada Parent Inverse, que se coloca entre la transformación del padre y la del hijo.
Cuando se emparentan objetos con Ctrl-P, la matriz Parent Inverse se actualiza. Dependiendo de la elección en el menú Set Parent, también se actualiza la localización, rotación y escala del objeto. Para más detalles, véase Emparentado a Objeto.
La matriz Parent Inverse puede ser limpiada usando Clear Parent Inverse.
Nota
Al emparentar a través del panel Object Properties, la matriz Parent Inverse es siempre restaurada (limpiada). Esto puede causar un salto inesperado en la posición del objeto. Para evitarlo, se debe usar Ctrl-P para establecer un nuevo padre.
Emparentado a Objeto¶
Un Padre Objeto es la forma de emparentado más general que soporta Blender. Esto toma los objetos seleccionados y convierte al objeto activo en el objeto padre de todos los objetos seleccionados. Cada objeto hijo heredará las transformaciones del padre. El objeto padre puede ser de cualquier tipo.
If the object has a pre-existing parent, that is cleared first. This moves the object to its own location, rotation and scale, without its parent’s influence.
There are three operators that allow you to set an object parent. They differ in the way they compute the Parent Inverse matrix and the local Transform of the object.
Example: Object Parent (Keep Transform)¶
Object Parent with Keep Transform will keep any previous transformations applied to them from the previous parent object.
Asumamos que tenemos una escena que consta de tres objetos, siendo estos dos objetos empty llamados «EmptyA» y «EmptyB», y un objeto Mono. La figura Escena sin emparentado. muestra los tres objetos sin relaciones de emparentado activas en ellos.
Seleccionamos el objeto Mono mediante clic con LMB y luego clic con Shift-LMB en «EmptyA»; luego presionamos Ctrl-P y seleccionamos Object del menú emergente Set Parent To. Esto resultará en el objeto «EmptyA» siendo el objeto padre del objeto Mono. Con únicamente «EmptyA» seleccionado, rotarlo, escalarlo o moverlo causará que el objeto Mono se vea alterado en consecuencia.
Escalamos el objeto «EmptyA», de tal manera que el Mono se vuelva más pequeño y se mueva a la izquierda un poco.
Si seleccionamos solo el objeto mono con clic LMB, luego clic Shift-LMB en «EmptyB», presionamos Ctrl-P y seleccionamos Object en el menú emergente Set Parent To, resultará en el objeto «EmptyB» siendo el objeto padre del objeto mono. Nótese que cuando cambiamos de padre al mono, la escala del mono cambia.
Esto sucede porque el objeto Mono nunca ha alterado su escala directamente, el cambio venía del hecho de ser hijo de «EmptyA» el cual tenía su escala alterada. Cambiar el padre del Mono a «EmptyB» resultó en la desaparición de aquellos cambios indirectos en la escala, ya que «EmptyB» no ha sufrido alteración alguna en su escala.
This is often the required behavior, but it is also sometimes useful that if you change your parent object that the child object keep any previous transformations it got from the old parent object; If instead when changing the parent object of the Monkey from «EmptyA» to «EmptyB» we had chosen parenting type Object and enable Keep Transform, the Monkey would keep its scale information it obtained from the old parent «EmptyA» when it is assigned to the new parent «EmptyB».
If you want to follow along with the above description here is the blend-file:
Emparentado a Hueso¶
El emparentado a Hueso permite hacer que un cierto hueso de un esqueleto sea el objeto padre de otro objeto. Esto significa que al transformar un esqueleto, el objeto hijo solamente se moverá si el hueso específico del que es hijo se mueve.
Véase la figura Tres imágenes de esqueletos con cuatro Huesos., con el segundo hueso siendo el padre hueso del objeto cubo hijo. El cubo solo se transforma cuando el primer o segundo hueso lo hacen. Nótese que alterar el tercer y cuarto hueso no tiene ningún efecto sobre el cubo.
Para usar el emparentado a hueso, primero hay que seleccionar todos los objeto hijo que deseen emparentarse a un hueso específico de esqueleto, luego seleccionar el objeto esqueleto con Shift-LMB y pasar a Modo Pose; luego seleccionar el hueso específico que se desea que se convierta en el hueso padre, mediante LMB. Una vez hecho esto, se debe presionar Ctrl-P y seleccionar Bone del menú emergente Set Parent To.
Ahora transformar ese hueso en el Modo Pose resultará en la transformación de los objetos hijo.
Emparentado Relativo¶
El emparentado relativo a hueso es una opción que se puede activar para cada hueso. Esto funciona igual que el emparentado a hueso con una diferencia.
Con emparentado a hueso, si se ha emparentado un hueso a algún objeto hijo, se selecciona ese hueso, luego se cambia a Modo Edición y se mueve ese hueso, al volver a Modo Pose, el objeto hijo que estaba emparentado al hueso saltará a la nueva posición definida por el hueso en Modo Pose.
En la figura Esqueleto con un solo hueso que tiene un objeto hijo cubo emparentado a él usando emparentado a hueso., la primera imagen muestra la posición del cubo y el esqueleto antes de que el hueso sea movido en Modo Edición. La segunda imagen muestra la posición del cubo y el esqueleto después de que el hueso fuera seleccionado en Modo Edición, movido y vuelto al Modo Pose. Nótese que el objeto hijo se mueve a la nueva localización que marca el hueso.
El emparentado relativo a hueso funciona de forma diferente. Si se mueve un hueso padre en Modo Edición, al volver a Modo Pose, los objetos hijo no se moverán a la nueva ubicación del Modo Pose.
En la figura Hueso único con emparentado relativo a hueso sobre un cubo. la primera imagen muestra la posición del cubo y el esqueleto antes de que el hueso sea movido en Modo Edición. La segunda imagen muestra la posición del cubo y el esqueleto después de que el hueso haya sido seleccionado en Modo Edición, movido y vuelto a Modo Pose. Nótese que el objeto hijo no se mueve a la nueva ubicación de la pose del hueso.
Nota
Al usar Ctrl-P para establecer padres, seleccionar Bone o Bone Relative desactivará y activará respectivamente la opción Relative Parenting (Emparentado Relativo) del hueso. Puesto que el emparentado relativo es una opción establecida para cada hueso, esto influencia a todos los objetos hijo de ese hueso a la vez.
Emparentado a Vértice¶
En objetos de tipo curva, superficie, malla o enrejado (lattice), existe la posibilidad de usar uno de sus vértices o puntos como padres de otros objetos. Se puede emparentar un objeto a un simple vértice o también a un grupo de tres vértices; de ese modo, el hijo (o hijos) se moverá(n) cuando la malla padre sea deformada.
Emparentado a Vértice en Modo Edición¶
En Modo Objeto, se seleccionan los objetos hijo y luego el objeto padre. Mediante Tab se ingresa a Modo Edición, y en el objeto padre se selecciona un vértice que defina un punto, o tres vértices que definan un área (los tres vértices no necesitan conformar una cara completa; pueden ser tres vértices cualesquiera del objeto padre). Luego hay que presionar Ctrl-P y confirmar.
En este punto, si se ha seleccionado un único vértice, se dibujará una línea de relación/emparentado desde el vértice hasta el objeto (u objetos) hijo. Si se han seleccionado tres vértices, entonces se dibujará una línea de relación/emparentado desde el centro promedio de los tres puntos (del objeto padre) hasta el objeto (u objetos) hijo. Ahora, a medida que se deforma la malla padre y los vértices padre elegidos se mueven, el objeto (u objetos) hijo también se moverá(n).
Emparentado a Vértice en Modo Objeto¶
El emparentado a vértice se puede realizar desde Modo Objeto. Esto se hace como los demás emparentados, usando Ctrl-P en el Modo Objeto y seleccionando Vertex o Vertex (Triangle).
Se usarán los vértices más cercanos de cada objeto, que es lo que normalmente se querrá que suceda.
El elemento del menú contextual del padre facilita que se puedan establecer rápidamente una gran cantidad de relaciones de vértices padre, y evitar el tedioso esfuerzo de establecer cada relación de vértice padre-hijo separadamente.
Nota
Es, de hecho, una especie de hook (gancho) «inverso».
Make Parent without Inverse¶
Referencia
- Modo
Modo Objeto
- Menú
Establece el padre, y luego restablece (limpia) la matriz Parent Inverse y la localización local del objeto. Como resultado, el objeto se desplazará a la localización del padre, pero mantendrá su rotación y escala.
Clear Parent (Limpiar Padre)¶
Referencia
- Modo
Modo Objeto
- Menú
- Atajo
Alt-P
Se puede eliminar una relación padre-hijo mediante Alt-P.
- Clear Parent (Limpiar Padre)
Si está seleccionado el padre del grupo no sucede nada. Si está seleccionado un hijo o hijos, estos son desvinculados del padre, o liberados, y estos vuelven a su ubicación, rotación y escala originales.
- Clear and Keep Transformation (Limpiar y mantener transformación)
Libera a los hijos del padre, y mantiene la ubicación, rotación y escala que les diera su padre.
Véase Escalado No Uniforme, de aplicación aquí.
- Clear Parent Inverse (Limpiar Parent Inverse)
En lugar de eliminar la relación jerárquica padre-hijo, esto limpia la matriz Parent Inverse (Inversa del Padre) de los objetos seleccionados. Con una matriz vacía, las propiedades de localización, rotación y escala de los hijos son interpretadas en el espacio de coordenadas del padre.
Limitaciones Conocidas¶
Escalado No Uniforme¶
Un padre con un escalado y rotación no uniformes en relación a su hijo puede causar un efecto de corte (shear).
Si bien esto es soportado por el emparentado, este shear se pierde al limpiar el emparentado, pues no puede representarse mediante localización, rotación y escala.
Si Clear and Keep Transformation mueve el objeto, la causa más probable es un escalado no uniforme.