Animaciones

Aprende cómo crear animaciones que se puedan incrustar en modelos 3D importados a Decentraland.

La animación es el arte de aportar vida a las cosas. Y no hay mejor manera de hacer que tu escena sea más animada que añadiendo algunas animaciones a tus modelos 3D.

Sin embargo, hay un par de formas de hacerlo: a través de animación de objeto o mediante un rig (animación esquelética).

Animación de objeto es mejor para modelos simples, como una pelota que rebota, un globo terráqueo giratorio o una silla flotante y no necesita un armature. Es importante mencionar que la animación de objeto es diferente de animación de vértices. En la animación de objeto, el modelo se animará como un todo, mientras que en la animación de vértices, como su nombre indica, cada vértice del objeto puede ser animado por separado (lo cual es muy útil para crear shape keys, por ejemplo). Aunque la animación de objeto está perfectamente bien para usar, la animación de vértices actualmente no es compatible con el engine de Decentraland.

Si tienes un modelo más complejo, como una persona, criatura o maquinaria, entonces necesitarás un rig. Un rig no es más que un esqueleto digital que moverá y deformará la malla. El proceso de vincular la malla al esqueleto se llama Skinning, donde defines qué hueso afectará a cada grupo de vértices y cuán fuerte será esa influencia, asegurándote de que el modelo se deforme de la mejor manera posible.

Para cualquiera de los métodos, sin embargo, todas las animaciones de un modelo 3D deben estar incrustadas dentro de su glTF archivo ya que no puedes referenciar animaciones en archivos separados.

Crear una animación

Así es como creas animaciones usando Blender.

Animación de objeto

  • Asegúrate de tener la Dope Sheet > Action Editor pestaña abierta y haz clic en Nuevo para añadir un clip de animación.

  • Renómbralo como creas conveniente y asegúrate de activar Fake User (el icono del escudo) para que tu animación se guarde.

  • Establece un fotograma clave en el primer fotograma seleccionando el objeto y presionando I. Luego mueve el objeto, rótalo o escálalo y, en otro fotograma en la línea de tiempo, presiona I de nuevo para establecer otro fotograma clave con las transformaciones actuales.

  • El fotograma final de la animación debe ser el mismo que el primero, así que simplemente copia el primer fotograma y pégalo en el último.



Crear un clip de animación y añadir fotogramas clave.

Animación con rig

Para una animación con rig, necesitarás un armature. Si quieres hacerlo tú mismo, consulta Crear un Rigarrow-up-right para instrucciones sobre cómo configurar un armature consistente.

Cuando el rigging esté terminado y el Skinning tenga buenas deformaciones, ¡estás listo para comenzar tu animación! El proceso es muy similar a la Animación de Objeto, pero en lugar de hacerlo en Object Mode, lo animarás en Pose Mode.

  • Ve a Pose Mode y asegúrate de tener la Dope Sheet > Action Editor pestaña abierta y haz clic en Nuevo para añadir un clip de animación.

  • Renómbralo como creas conveniente y asegúrate de activar Fake User (el icono del escudo) para que tu animación se guarde.

  • Con el ratón sobre el ViewportPulsa A para seleccionar todo y luego I para establecer un fotograma clave para todo el armature.

  • Muévete a un fotograma diferente en la línea de tiempo y manipula el hueso como quieras para obtener la pose deseada. Puedes cambiar la ubicación, rotación y escala de un hueso dependiendo de cómo hayas configurado tu rig.

  • Cuando tengas un buen resultado, establece otro fotograma clave para todo el armature. Sigue haciendo eso hasta terminar tu animación. Recuerda que el primer y último fotograma deben ser iguales si la animación va a repetirse en bucle.



Si eres nuevo en el proceso de animación, consulta este tutorial con algunos buenos consejos para principiantes:

Video Previewarrow-up-right

Animaciones skinned vs Animaciones de Transform

Las animaciones de Transform suelen ser mejores que las animaciones de malla skinned para el rendimiento porque implican menos sobrecarga en términos de recursos computacionales necesarios para mostrar la animación.

La animación de malla skinned implica usar una malla con un esqueleto de huesos que están ponderados a los vértices de la malla. El esqueleto se anima, lo que a su vez anima la malla. Este proceso puede ser bastante intensivo computacionalmente, especialmente cuando hay un gran número de vértices para animar.

Las animaciones de Transform, por otro lado, consisten en animar directamente las propiedades de transform del objeto (como su posición, rotación y escala). Esto se puede hacer con menos recursos computacionales que la animación de malla skinned, ya que típicamente hay menos propiedades de transform que animar que vértices en una malla.

Además, las animaciones de Transform a menudo pueden precalcularse y almacenarse en un formato más compacto, como datos de fotogramas clave, que pueden accederse y reproducirse rápidamente sin la necesidad de cálculos intensivos en tiempo real.

En general, aunque la animación de malla skinned puede producir animaciones más detalladas y realistas, las animaciones de Transform suelen preferirse para aplicaciones críticas en rendimiento, como los videojuegos.

Crear y exportar múltiples clips de animación

Puedes tener tantos clips de animación como quieras para tu modelo. Puedes consultar cómo crear, explorar y eliminar animaciones en esta sección aquíarrow-up-right.

En el video a continuación, aprenderás cómo exportar múltiples animaciones desde Blender en un solo archivo GLB.

Video Previewarrow-up-right

Exportar muchas animaciones como una sola

A diferencia de una animación esquelética, donde puedes riggear múltiples objetos y combinar sus animaciones en un solo clip de animación, en la animación de objeto no puedes hacer eso. Las animaciones se exportarán por separado y solo un objeto se reproducirá a la vez. Una solución para eso es fusionar muchas animaciones en una sola, de modo que tengas un clip de animación que haga que todos los objetos se muevan al mismo tiempo.

Para hacer eso, empuja hacia abajo a la Nonlinear Animation Track la animación de cada objeto, como se muestra abajo.



Empuja hacia abajo la animación de cada objeto a la NLA Track.

Una vez que todas las animaciones estén listadas en el NLA Editor, selecciona todos los objetos, ve a File > Export > glTF2.0. Expande Include y marca Selected Objects. Expande Animation, expande Animation de nuevo y desmarca Group by NLA Track. Puedes renombrar el clip de animación en Merged Animation Name y luego simplemente presiona Export glTF 2.0.



Ajustes para exportar múltiples animaciones como una sola.

Ten en cuenta que esto solo funcionará si los objetos tienen una sola animación cada uno. Si los objetos tienen múltiples clips de animación, es mejor exportarlos por separado.

circle-info

💡 Tip: En lugar de crear tus propias animaciones, también puedes descargar animaciones genéricas y aplicarlas a tu modelo. Por ejemplo, para personajes 3D con características humanoides, puedes descargar animaciones gratuitas o de pago desde Mixamoarrow-up-right.

Muestreo

A veces tu archivo de animación puede terminar siendo demasiado pesado debido a la cantidad de animaciones o la combinación de animación+modelo.

El muestreo es una buena forma de optimizar la animación. La tasa de muestreo definirá con qué frecuencia se horneará un keyframe en la animación. Por ejemplo, si la tasa de muestreo está configurada en 2, eso significa que se creará un keyframe cada dos fotogramas. Una tasa de muestreo de 3 horneará un keyframe cada tres fotogramas, y así sucesivamente. Cuanto mayor sea la tasa de muestreo, más ligero será el archivo.

La desventaja, sin embargo, es que la animación empezará a perder fluidez ya que se pierden algunos keyframes importantes (se distribuyen por la animación de forma desigual). También es importante notar que el muestreo NO está dividiendo el número de fotogramas de la animación por la tasa de muestreo.

Usualmente, una tasa de muestreo de 2 o 3 hará el truco. Esos números pueden optimizar la animación sin comprometer la calidad.

Puedes encontrar la Tasa de Muestreo en los ajustes de exportación, bajo Animation.


circle-info

💡 Tip: Si el número de fotogramas de la animación puede dividirse por la tasa de muestreo, ¡eso es algo bueno! Significa que el fotograma final se cocinará, preservando la transición del final al inicio de la animación.

Implementando animaciones

Este documento cubre cómo añadir animaciones a un modelo 3D. Consulta manejar animacionesarrow-up-right para instrucciones sobre cómo activar y manejar animaciones en una escena.

Mejores prácticas para animaciones

  • Mantén el armature lo más simple posible, crea huesos solo para las partes del modelo que pretendes animar. Los huesos pueden afectar al rendimiento, así que asegúrate de añadir solo lo que realmente sea necesario.

  • Si la animación va a repetirse en tu escena, asegúrate de que la pose final sea idéntica a la inicial para una mejor transición.

  • Nunca dejes a un personaje sin animación, incluso si no está haciendo nada en realidad. Crea una animación de “idle” para cuando el personaje esté quieto. El idle puede incluir movimientos sutiles como la respiración y quizás miradas ocasionales.

  • No dejes huesos sin posar, como manos, dedos, cabeza o cuello. Los detalles son realmente importantes en una buena animación y el movimiento rígido solo la hará menos creíble.

  • Evita demasiados fotogramas clave, a menos que sea extremadamente necesario. Cuantos más fotogramas clave añadas, mayores serán las probabilidades de obtener una mala interpolación y una animación más pesada.

  • Selecciona todos tus huesos (incluyendo los deformadores) y establece un fotograma clave en el primer y último fotograma de tu animación. Esto evitará tener huesos sin información, causando que una animación afecte a otra de forma no intencionada.

  • Asegúrate de que tu archivo solo tenga un armature cuando lo exportes. Al importar animaciones, también se importará un armature con ellas. Todas las animaciones deben ser ejecutadas por el mismo armature base, así que elimina todo lo que no necesites.

  • Siempre renombra tus huesos y animaciones. ¡Mantén todo organizado!

  • Al exportar el glTF modelo, confirma que estás exportando todos los objetos y animaciones. Algunos exportadores solo exportarán el currently selected por defecto.

  • Después de exportar el modelo, inspéctalo en Babylon Sandboxarrow-up-right y comprueba si todas las animaciones funcionan y están nombradas como esperas.

Última actualización