Mesh trees explained

Transcripción

Mesh trees explained
Explicación de los Mesh trees, (Arbol de Meshes)
Creado por Michiel
Traducido por Pemon
En el TRLE, la mayoría de los objetos animados están creados a base de múltiples meshes. Estos meshes están unidos entre sí usando un árbol de meshes
para tener 1 solo objeto. Estos pueden compararse con tus huesos, si mueves tu brazo, tu mano también se moverá. Pero moviendo tan solo tu mano no
quiere decir que muevas tu brazo.
El MeshTree puede ser editado en el WADMerger Animation Editor. En la parte inferior del editor hay un botón del MeshTree Editor. El programa
WADMerger 1.97 Beta o posterior debe ser usado para editar el árbol de meshes.
Root mesh (Mesh Raíz)
Los objetos animados del TRLE funcionan también como un conjunto de huesos. Tienes 1 root mesh, todos los otros meshes están directa o indirectamente
conectados al root mesh. Debido a esto, todos los otros meses en el objeto girarán en la misma dirección. El root mesh también puede ser movido a una
posición diferente durante la animación. Esto es único para el root mesh, todos los otros meshes solo pueden ser girados pero no movidos. Si el root mesh es
movido, todos los otros meses se moverán en la misma dirección.
Bones (Huesos)
Como se ha mencionado, todos los otros meshes en el objeto están encadenados a otro mesh. Esto bien puede ser el root mesh, o
uno de los otros meshes que aparecen antes de este.
Vamos a mirar el árbol de meshes del objeto LARA_SKIN para ver cómo funciona esto. En la parte de arriba puedes ver el Mesh
0, mejor conocido como el root mesh. En el caso de Lara el root mesh son sus caderas. Mesh 1, 2 y 3 son las 3 partes de su pierna
izquierda. Mesh 4, 5 y 6 son su otra pierna.
En el árbol puedes ver que ambas piernas están unidas directamente a sus caderas. La parte inferior de su pierna está conectada a la
parte superior, y el pie está conectado a la parte inferior de la pierna. Esto quiere decir, que si giras las caderas, ambas piernas
girarán también. Si solo giras la parte superior de la pierna derecha, toda la pierna derecha también girará, pero la pierna izquierda y
la cadera no lo harán y se mantendrán en el mismo lugar.
Este árbol puede verse dentro del WADMerger Animation Editor bajo el botón del mesh tree. Con él puedes averiguar que si giras
un mesh, que otros meshes lo harán también. Solo sigue las líneas, los meshes conectados al que estás girando lo harán con él.
Making the mesh tree (Crear el árbol de meshes)
Comprender el árbol de meshes es probablemente más fácil que crearte uno propio. Si solo añades los meshes, podrás ver que cada
mesh se unirá al anterior. Así que cada mesh (excepto el último) tiene 1 mesh unido directamente al anterior. Para la mayoría de los
objetos, eso no funciona. Por ejemplo, si creas un humano y tiene las caderas como raíz (root), tienes que tener 3 meshes unidos a la
raíz (ambas piernas y el cuerpo).
Esto puede hacerse usando los comandos push y pop. El comando push añade un nuevo grupo (layer) al árbol. En la imagen de la
izquierda se muestran estos grupos enmarcados en verde. Como puedes ver el Mesh 0, 7 y 14 están fuera de los grupos. Si sigues las
líneas también puedes ver que el mesh 7 está directamente unido a la raíz (root), y el 14 al 7. Eso es lo que ocurre al no hacer uso de
grupos, cada mesh es conectado al anterior.
Dentro de estos grupos, los meshes también son conectados al anterior. Aunque, una vez que los grupos están cerrados vuelves al
mesh antes de que el grupo haya sido abierto. Para abrir un grupo, usa en un mesh el comando push. El grupo se abrirá antes de que el
mesh actual sea conectado. El comando pop es usado para cerrar un grupo. Lo de cerrar también ocurre antes de que el mesh sea
conectado. En el ejemplo de LARA_SKIN, puedes ver de que con el mesh 4 el antiguo grupo está cerrado y uno nuevo es abierto. Esto
se hace asignando a este mesh ambos comandos push y pop. Cuando ambos son asignados, el antiguo grupo es cerrado y el Nuevo se
abre, permitiéndote comenzar otro árbol basado en el mismo mesh raíz (root)
.
Nester Layers
En un arbol de meshes es posible usar grupos anidados (nester). Un ejemplo de esto es el objeto SAS. En este
objeto, el cuerpo, cabeza y brazos son añadidos antes que las piernas. Ya que estos 5 grupos son necesarios,
incluido los grupos anidados. En la imagen de la izquierda, el Mesh 1 es el cuerpo, 2 a 7 son los brazos, 8 es la
cabeza y de 9 a 14 son ambas piernas El Mesh 1 empieza con un nuevo grupo para el cuerpo. Dentro de este
grupo, 2 grupos más son usados para ambos brazos. Después de estos 2 grupos la cabeza es colocada dentro del
grupo mayor. A partir de ahí se cierra el grupo del cuerpo y vienen 2 nuevos grupos para las piernas.
Los grupos Anidados son creados de la misma manera que los grupos normales. Al estar dentro de un grupo,
abre otro usando el comando push. Solamente has de tener una cosa en cuenta. Solo es posible abrir o cerrar un
grupo a la vez. Así que si la cabeza no existiese, no podrías cerrar al mismo tiempo el grupo de los brazos
derechos y el grupo del cuerpo.
Aunque, con esta norma no te ves con limitado, ya que si la cabeza no existiese, no sería necesario añadir un
grupo para el brazo derecho. Solo has de abrirlo si necesitas añadir más meshes al mismo mesh raíz (root). Si la
cabeza no existiese, puedes crearlo como el de la imagen de la derecha. Así que no estás limitado, solo has de
tenerlo en cuenta cuando vayas a crear un árbol de meshes.

Documentos relacionados