Recreación virtual en 3D de personajes históricos

En la actualidad, las reconstrucciones y las recreaciones virtuales en 3D se han convertido en unas de las herramientas más importantes para acercar el pasado al presente, creando ventanas que nos permitan entender de forma gráfica lo que fuimos: museos, documentales, videojuegos, libros, revistas… todos ellos solicitan este tipo de recurso divulgativo.

Para que su eficacia sea plena, se hace necesario, en muchas ocasiones, incluir personajes que nos permitan crear empatía con los contextos humanos del pasado que reconstruimos (reconstrucción virtual). Estos personajes forman parte de la recreación virtual y nos permiten entender los usos y la significación cultural del ambiente reconstruido (para entender mejor las diferencias entre reconstrucción y recreación virtual, conviene tener presentes los Principios de Sevilla).

Banner_1

En este artículo mostraremos el proceso de trabajo que se ha seguido para la creación de varios hoplitas de las guerras médicas (490-478 a.C.) que podrían ambientar una reconstrucción virtual. A lo largo del mismo hemos utilizado tres software diferentes: Make Human, Blender y Substance Painter. Finalmente, para la representación interactiva en 3D nos hemos servido de Sketchfab. Se nos muestra de este modo una de las claves que resulta fundamental para obtener un buen resultado de nuestro trabajo: combinar el uso de distintos software según nuestras necesidades y aprovechando sus puntos fuertes.

Paso 1: Documentación histórica y gráfica

Como en toda reconstrucción o recreación virtual, el primer paso debe ser de forma inexcusable un proceso de documentación histórica (además de arqueológica e histórico-artística, si fuera necesario) que cimente las bases de lo que queremos recrear. Tendremos que buscar, también, imágenes de referencia fiables sobre vestimentas, adornos, peinados, etc., y construirnos una biblioteca de documentación (textual y gráfica) que nos permita dar forma a la imagen básica del personaje. Esto es fundamental ya que a la hora de llevar a cabo la recreación tendremos que dar forma “física” a todos los detalles: desde la hebilla de un cinturón a la cimera de un casco, y tendremos que intentar hacerlo con el mayor grado de rigor histórico posible.

IMG_20171113_104253867
Algunos de los libros especializados utilizados a la hora de documentar la recreación virtual de los hoplitas griegos.

Paso 2: Obtención del modelo humano básico en Make Human

A la hora de recrear un personaje histórico en 3D necesitamos, en segundo lugar, un modelo humano básico que se adapte a las características fisionómicas del personaje en cuestión. Podríamos crear el modelo 3D del hombre o mujer en el que vamos a trabajar directamente en Blender desde cero pero sería una pérdida de tiempo inútil: en la actualidad existen software que nos permiten obtener modelos humanos prediseñados con múltiples opciones y que nos ayudarán a agilizar el trabajo y obtener un resultado de más calidad. Es el caso de MakeHuman: un software libre y gratuito que nos permite obtener de forma muy sencilla e intuitiva personajes en 3D editando sus características fisionómicas (edad, sexo, estatura, corpulencia, tamaño de extremidades, tipo de rostro, etc., etc.). Gracias al uso de este software podemos obtener el modelo humano que necesitamos y exportarlo en formato .obj para importarlo a Blender. Además, la comunidad de usuarios de Make Human pone de vez en cuando a disposición pública nuevos elementos predeterminados (como, por ejemplo, barbas) que pueden venir bien para ser añadidos al software original y completar así nuestros modelos humanos.

capt1
Captura de pantalla del trabajo en Make Human para crear el cuerpo básico para un hoplita.

Paso 3: Modelado de vestimentas, adornos, panoplia u otros elementos

Una vez disponemos del modelo básico humano es el momento de llevar a cabo el modelado de las ropas, correajes, armas, armaduras, adornos, herramientas y otros elementos que van a determinar la adscripción a un periodo histórico de nuestro personaje. Para llevar a cabo este proceso utilizamos el software libre y gratuito de diseño 3D Blender y llevamos a cabo todos elementos con modelado 3D desde cero (a menos que ya dispongamos de modelos reutilizables realizados previamente para otros proyectos). El nivel de detalle -tanto en geometría como, posteriormente, en textura-dependerá de las características de nuestro producto final (ya sea una ilustración, un vídeo o una aplicación): por ejemplo, si vamos a modelar personajes que van a verse muy pequeños en una ilustración no será necesario trabajarlos demasiado pero si, en cambio, estamos diseñando el personaje principal de una infografía y éste va a verse a gran tamaño, será muy importante cuidar hasta el mínimo detalle para que el resultado sea convincente, realista y didáctico. Así mismo, hay aplicaciones que no soportarán personajes de un número muy elevado de polígonos o de texturas de altísima calidad, por lo que siempre podremos ahorrar tiempo (y dinero) adaptando la creación de nuestro modelo al fin para el que esté pensado.

capt2
Captura de pantalla del trabajo de modelado 3D de las armaduras de un hoplita griego.

En este sentido, es muy importante trabajar desde el principio y en todos los elementos con geometrías de bajo nivel de polígonos (low poly) y topología (disposición de los polígonos) muy cuidada. Si trabajamos con pocos polígonos y, más adelante, queremos un nivel de detalle superior siempre podremos aumentar de forma sencilla la densidad de la geometría y si la topología es buena el proceso de creación de los mapas UV será mucho más sencillo y la disposición de las texturas sobre el modelo mucho más clara y correcta, evitando posibles errores.

render_2v2
Modelado 3D básico sin texturizar de un hoplita griego con su panoplia.

Paso 4: Creación de los materiales y texturas

Ahora llega el momento de dar color a nuestro modelo 3D y de configurar cómo va a afectar la luz a cada una de las partes del mismo para que podamos diferenciar los distintos materiales (piel humana, metal, cuero, tela, madera, etc.). Para ello, antes de nada debemos crear los mapeados UV en Blender de cada uno de los objetos que queramos texturizar. Dependiendo del nivel de optimización y detalle de cada uno de los elementos que componen el modelo 3D de nuestro personaje elegiremos unificar o no los distintos objetos: por ejemplo, podemos unificar todo el personaje (cuerpo, ropas, armaduras) en un solo objeto 3D y crear un único mapeado UV para todo el personaje, esto aligerará el peso de las texturas pero también nos ofrecerá un nivel de detalle menor; o podemos separar por partes nuestro personaje (cuerpo por un lado, ropas por otro, armaduras por otro) y así tendremos distintos mapeados UV para cada zona, aumentando el peso del modelo en número de texturas pero también su definición. Todo depende del proyecto en el que estemos trabajando y de la finalidad del personaje que queremos crear, como ya hemos indicado en el apartado anterior.

Llegados a este punto tenemos varias opciones: podemos trabajar las texturas directamente en Blender o exportar el modelo (por ejemplo en formato .obj) para crear las texturas en Substance Painter. Para modelos sencillos que van a verse muy pequeños en nuestras reconstrucciones virtuales quizás sea más rápida y versátil la primera opción, sin embargo, si queremos que la calidad de nuestras texturas y el nivel de fotorrealismo sean muy altos vamos a trabajar más rápido y de forma más precisa, obteniendo mejores resultados, en Substance Painter, un software comercial cargado de herramientas para crear impresionantes materiales y texturas.

capt3
Captura del proceso de trabajo de texturizado y creación de materiales en Substance Painter.

Para el ejemplo que mostramos en esta entrada -un hoplita griego- hemos utilizado Substance Painter, obteniendo texturas PBR para los distintos objetos que componen nuestra recreación y, con ello, unos resultados de alta calidad. La integración entre Blender y Substance Painter es excelente, en especial gracias al Addon Hedgehog que nos permite trabajar en Substance Painter y ver los cambios en nuestro archivo de Blender en tiempo (casi)real.

render_4_2
Texturizado 3D básico de un hoplita griego en Substance Painter.

El proceso de texturizado se intercala y entremezcla con el siguiente paso -dedicado al riggeado y la animación del personaje- ya que es normal hacer modificaciones de la textura y los materiales, así como añadir detalles (como arañazos, cicatrices, suciedad, etc.) una vez tenemos ya el personaje colocado en la posición o escena que estemos recreando.

Paso 5: Rigging y animación del personaje

De nuevo volvemos a Blender donde debemos configurar todas las texturas creadas en Substance Painter -si es que no lo hemos hecho ya antes, tras la obtención de las texturas básicas-. En ese punto llega el momento de riggear nuestro personaje. El rigging es un proceso mediante el cual creamos un “esqueleto” o “armadura” (armature) que nos permitirá animar nuestro personaje y relacionamos cada una de las partes del modelo 3D de nuestro personaje con uno de los huesos (bones) de ese esqueleto por un sistema de pesos (weights). Este proceso es complejo y hay que dedicarle mucho tiempo para que, posteriormente, la animación salga correctamente. Como el proceso de texturizado, el rigging podrá ser revisado o refinado más adelante si así lo consideramos necesario.

capt4
Captura de pantalla de Blender durante el proceso de rigging del modelo 3D.

Una vez tenemos realizado el rigging podemos comenzar la fase de animación, que será también necesaria para imágenes estáticas (y no solo para vídeos) ya que nos permitirá disponer nuestro personaje en la pose que nos interese. Esta pose también dependerá del contexto histórico-cultural ya que estará determinada por la acción que esté desempeñando el personaje y ésta se relacionará con lo usos y costumbres de la época.

capt5
Captura de pantalla de Blender durante el proceso de animación del modelo 3D.
render_11
Distintas vistas de una misma pose del modelo 3D final de un hoplita griego.

Paso 6: Renderizado

Finalmente, llevaremos a cabo en Blender el proceso de renderizado que nos permitirá obtener las imágenes finales de nuestro personaje, ya sea inserto o no en una reconstrucción virtual determinada.

En este punto podemos indicar que una vez disponemos de un personaje es sencillo obtener personajes similares cambiando en cierta medida las texturas y algunos detalles de la geometría. Esto nos va a permitir hacer varios personajes de forma más rápida y con muy buenos resultados de conjunto para nuestras reconstrucciones virtuales. Por ejemplo, a partir de un solo hoplita puede obtenerse rápidamente otro creando distintos packs de texturas y cambiando algunos de los elementos de su panoplia.

Aquí tenéis los renderizados finales del ejemplo que nos ha acompañado durante toda esta entrada:

render_18_2render_19_2render_20_2

Paso 7: Optimización y subida al visor 3D de Sketchfab

Otra posibilidad es compartir el modelo 3D de nuestro personaje en un visor 3D como puede ser Sketchfab. Para ello es probable que sea necesario llevar a cabo un proceso previo de optimización (que puede incluir acciones como reducir el peso de la geometría, reducir la resolución de los mapas de texturas o, incluso, bakear los distintos mapas de texturas en uno solo para reducir su peso). El resultado, sin embargo, es altamente evocador y nos permite crear, llegado el caso, visitas guiadas gracias al sistema de marcadores de la plataforma o utilizar el modelo en Realidad Virtual y Realidad Aumentada. Las posibilidades son infinitas.

Os dejamos el visor 3D de uno de estos hoplitas:

Esperamos que os haya gustado nuestro trabajo y que os resulte útil la explicación del mismo. ¡Nos vemos pronto con otros proyectos! 😉

P.D.: Una parte de este flujo de trabajo está basada en las explicaciones del maestro británico Rob Marshall sobre su propio trabajo, que podéis conocer aquí.

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s