Crear realidad aumentada con Blender y exportar a Unity

Crear realidad aumentada con Blender y exportar a Unity. El contenido 3D estático y animado puede proporcionar experiencias de realidad aumentada (AR) móvil más realistas y atractivas. Sin embargo, crear objetos 3D no es tan sencillo como presentar capas realidad aumentada en videos y fotografías.

Para ayudarte, el artista Jānis Uzraugs y la plataforma Overly, han compartido una forma de usar Blender para crear contenido 3D para la aplicación Overly.

¿Por qué Blender?

Blender es un software de creación 3D gratuito y abierto y ofrece las mismas características que Cinema 4D, 3DS Max o Maya. A menos que ya tengas un software de pago, no hay beneficios notables en el uso de una alternativa de pago sobre Blender.

¿Dónde entra Unity3D?

La aplicación Overly se construye usando Unity3D. Por lo tanto, todos los objetos 3D deben estar preparados para que se integren con Unity.

Si estás creando objetos 3D estáticos, puedes exportar archivos en formato OBJ. Si necesitas crear escenas más complejas con animaciones, debes representarlas en formato FBX y preparar paquetes de activos para la aplicación Overly. Sin embargo, no te preocupes por familiarizarte con Unity. Una vez que envíes el archivo OBJ o FBX, el equipo interno de Overly integra tu proyecto con Unity para colocarlo en la aplicación Overly.

Polígonos Low Poly

Si bien no hay requisitos particulares en términos del número de polígonos necesarios para preparar modelos y escenas de realidad aumentada (AR), es bueno considerar que las personas usan varios dispositivos para recuperar este contenido. Algunos dispositivos móviles pueden ser bastante antiguos, por lo que siempre es mejor práctica mantener el número de polígonos bajo.

Si bien los dispositivos más actuales podrían procesar fácilmente de 300 a 400 mil polígonos, para mantenerse en el lado seguro es mejor mantener sus escenas en 250 mil polígonos, pensando en los dispositivos móviles. Si estás creando un objeto 3D independiente, no superes más de 100 polígonos.

Descripción de los polígonos

No queríamos reescribir los hechos y hemos tomado prestada alguna información de www.autodesk.com, ya que creemos que explican perfectamente cómo entender los polígonos.

Los polígonos son formas de lados rectos (3 o más lados), definidas por puntos tridimensionales (vértices) y las líneas rectas que los conectan (bordes). La región interior del polígono se denomina cara. Los vértices, aristas y caras son los componentes básicos de los polígonos. Los polígonos se seleccionan y modifican mediante estos componentes básicos.

Cuando se modela con polígonos, normalmente se utilizan polígonos de tres lados denominados triángulos o polígonos de cuatro lados denominados cuadriláteros (cuádruples). Autodesk Maya también admite la creación de polígonos con más de cuatro lados (n-gons), pero no son tan comúnmente utilizados para el modelado.

Un polígono individual se denomina comúnmente cara y se define como el área delimitada por tres o más vértices y sus aristas asociadas. Cuando muchas caras están conectadas entre sí, crean una red de caras llamada malla poligonal, también denominada poliestable u objeto poligonal. Tu creas tus modelos poligonales 3D utilizando mallas poligonales.

Formas de visualización

Simplemente agregando un resumen rápido con una visualización. Vértice es un punto donde dos o más curvas, líneas o aristas se encuentran. Como consecuencia de esta definición, el punto donde dos líneas se unen para formar un ángulo y las esquinas de polígonos y poliedros son vértices. Cara se refiere a una forma 2D en una malla que está definida por los vértices circundantes. Edge es el lugar donde dos caras se encuentran juntas.

Crear realidad aumentada con Blender y exportar a Unity.
Crear realidad aumentada con Blender y exportar a Unity.

Preparar las animaciones para crear realidad aumentada con Blender

Las animaciones se pueden preparar mediante la transformación de objetos, cambiando su ubicación, tamaño y rotación a través de las coordenadas de los ejes x,y,z. También puedes crear animaciones con el sistema de rigging de objetos. El rigging de objetos será útil en la animación, como humanos, animales, automóviles u otros dispositivos mecánicos que constan de más de una parte. En uno de nuestros proyectos recientes que se creó para un folleto de turismo del parque, se utilizó el sistema de rigging para crear una impresión de árboles que se balancean en el viento.

Crear realidad aumentada con Blender y exportar a Unity.
Crear realidad aumentada con Blender y exportar a Unity.

Todas las animaciones se preparan en la línea de tiempo, teniendo en cuenta los fotogramas clave en los que se producen cambios en el hueso o el esqueleto del objeto en el espacio X, Y, Z.

Cada objeto tiene su propia animación con un título único adjunto, por lo que es más fácil cuando los objetos y las animaciones se cargan en Unity. Como cualquier objeto puede tener más de una animación, el título debe tener en cuenta tanto el objeto para el que es como la animación que es. Esto es principalmente relevante para escenas con más de un objeto, por lo que los activos están organizados y no son confusos para el equipo de soporte de Overly que maneja la integración de Unity.

Crear realidad aumentada con Blender y exportar a Unity.
Crear realidad aumentada con Blender y exportar a Unity.

Las animaciones se crean en la línea de tiempo

Los títulos de animación y sus datos adjuntos a objetos específicos se agregan a una pestaña, a la que se puede acceder a través de la vista «Editor de acciones».

Objeto con una o varias capas separadas

Como en el ejemplo de parque presentado anteriormente, cualquier otro proyecto creado para la aplicación Overly debe exportarse como un solo archivo una vez que se complete el proyecto. El archivo único debe consistir en objetos categorizados, por lo que no habría problemas si hay una necesidad de cambiar algo una vez cargado en Unity3D. Todos los parámetros, como los materiales y las texturas, deben incluirse para cada objeto por separado.

Crear realidad aumentada con Blender y exportar a Unity.
Crear realidad aumentada con Blender y exportar a Unity.

El punto de origen de todos los elementos debe estar ubicado en el punto 0 (Cero) en los ejes X, Y, y Y, Z.

Punto de origen
Punto de origen

Texturas/materiales/colores, diferencias de color y luz: visualización renderizada vs realidad aumentada (AR).

Si un objeto solo tiene un color asignado, no es necesario crear texturas. Simplemente puedes elegir el material del objeto y darle un color específico.

Sin embargo, si deseas asignar más de un color a un objeto, por ejemplo, cambios de color, texturas, jeroglíficos, etc., deberás crear texturas.

Una opción es crear estas texturas en Blender y bakearlas en el objeto específico como JPG o PNG. Sin embargo, debes tener cuidado con un dos cosas: no debes bakear destellos o sombras de la escena, porque esto se verá mal junto con las luces del proyecto en Unity. Por lo tanto, debe elegir el tipo de bakear Difuso (el valor predeterminado es Combinado) y dejar activada solo la opción de color.

Antes de bakear la textura, debes comprobar si todo es correcto con las normales y si se encuentran en la dirección correcta. De lo contrario, los polígonos que se giran en la dirección equivocada se bakearán en negro dentro de las texturas y aparecerán negros o transparentes una vez importados a Unity.

En este caso, las normales se pueden torcer para que todas se enfrenten a la misma dirección.

Cuando las texturas se bakean, todo lo que necesitas hacer es asignarlas a objetos específicos y crear un nuevo material con una cierta textura adjunta.

Asignas texturas a objetos específicos
Asignas texturas a objetos específicos

Mapas UV para crear realidad aumentada con Blender

Antes de que los objetos sean texturizados, se debe crear un mapa de sistema de coordenadas UV para cada uno. Suena más complejo de lo que es.

En resumen, es una imagen bidimensional de donde aparecen diferentes texturas en el objeto 3D. Es lo mismo que crear un diseño para un cubo y luego cortarlo de un pedazo de papel, doblarlo y pegarlo.

Una vez que hayas creado diseños, puedes crear texturas para cada objeto que quieras importar a Unity.

Existen diferentes tipos de texturas, que se encargan de hacer que los materiales sean brillantes, transparentes, ásperos o similares. Cada una de estas texturas debe guardarse como JPG. Eso es muy útil para crear cosas tales como reflejos para ventanas o resaltar varios aspectos de la fachada de un edificio.

Como los archivos preparados se importan más tarde a Unity, no hay necesidad de crear luces y cámaras en Blender.

Bakeo.
Bakeo

Formato de archivo y tamaño para realidad aumentada

Una vez preparado el archivo animado, tiene que exportarse como un archivo FBX. Este formato de archivo te permite guardar texturas, objetos, animaciones y armatures.

Es importante resaltar solo la malla y el esqueleto al exportar. Cuando envías un archivo a Overly para subirlo a Unity, lo mejor es proporcionar un mapa con todas las texturas, solo para estar seguro.

Más información y comentarios en el foro, sigue leyendo…

Formatos de archivos
Formatos de archivos