Escala y coordenadas en UDK

Aquí muestro cómo hacer un poco de sentido sobre el sistema de unidades de UDK.

Al trabajar en programas tridimensionales es importante estandarizar la escala de los modelos, de lo contrario, ensamblar un nivel con varios personajes y artículos de diferentes tamaños es mucho más difícil.
El plugin ActorX transforma una unidad de Maya en una unidad Unreal en el editor, es decir, si en Maya trabajamos con centímetros, una unidad en la grilla representa un centímetro. En el editor, una unidad es algo más grande que un centímetro, pero depende del juego. En la documentación de UDN se aconseja modelar personajes para Unreal Tournament de menos de 100 unidades de altura. Para Gears of War, un personaje debe medir alrededor de unas 180 unidades. Estos estándares tienen que ver con el modo de operar de cada juego, ya que los modelos personalizados dependerían de otros modelos que ya estaban en el juego. Para hacer machinima, si estás usando solo modelos originales, puedes implementar tu propia escala. Por ejemplo, define que una unidad en Maya y en el editor representarán 1 centímetro. Así, si en por diseño un personaje debe medir 1,40m, el modelo en Maya tendrá 140 unidades de altura, y al exportarlo se mantiene esta relación en el editor. Al trabajar con tus propios modelos no hay problema, pero si quisieras usar un modelo de los que vienen incluidos en Unreal Tournament 3, los modelos personalizados se verían gigantescos en comparación.

Trabajar con la grilla

Modelo con el origen en una esquina

Por otra parte, si planeas trabajar usando la grilla (que es lo recomendado), debes usar una escala que use potencias de 2. Así, puedes crear por ejemplo segmentos de paredes de 256×256, y te aseguras que van a coincidir en el editor, además de ser más fáciles de usar gracias a la grilla. El pivote del modelo en UnrealEd será el punto de origen (0, 0, 0) de tu aplicación 3D.

Se recomienda que en UnrealEd tengas la opción de snapping activada, y con buena razón.

Sistema de coordenadas

El sistema de coordenadas de Maya es un “Y up”, que significa que el eje Y es el que apunta hacia arriba. Recordemos que en las tres dimensiones existen tres ejes: X, Y y Z, cada uno apuntando hacia una de las tres direcciones. X siempre define el ancho, Y la altura y Z la profundidad. Algunas aplicaciones como 3DS Max y Unreal Editor, trabajan con sistemas de coordenadas “Z up”, donde el eje Z y el Y se intercambian.

Chequear al importar Skeletal Meshes desde Maya

Para los modelos estáticos no hay que hacer ninguna conversión, pero al importar un modelo esquelético (Skeletal Mesh) hay que chequear la opción bAssumeMayaCoordinates al momento de importarlo, que hará que el personaje aparezca erguido en vez de acostado en el suelo. Si no se hace esto al importar se puede modificar en el AnimsetViewer de UnrealEd.