Héctor Sanz D’Ors nos ha hablado sobre el workflow que llevó a cabo para éste proyecto en el que nos ha hablado sobre Zbrush, hacer las proyecciones correctamente en Substance Designer y como renderizar el resultado final en Marmoset Toolbag
Introducción
Mi nombre es Héctor Sanz D’Ors, soy un artista de personajes 3D de España.
Tuve la oportunidad de estudiar Bellas Artes en la universidad, donde me concentré en aprender sobre anatomía y técnicas de escultura clásica. He estado trabajando creando personajes, armas y accesorios para videojuegos desde 2015 y tuve la oportunidad de trabajar en algunas experiencias de RV con FutureLighthouse y Digital Domain, participar como freelance en algunos proyectos increíbles y ahora ser parte de Mercury Steam.
Casco Sci-Fi: Inicio del proyecto
Desde que empecé a estudiar el workflow adecuado para la escultura en 3D, me he centrado mucho en el apartado orgánico. Crear personajes, monstruos y criaturas ha sido siempre mi principal obsesión, así que, al principio, dejé de lado el modelado de superficies duras. Con el tiempo, he estado tratando de resolver eso estudiando e investigando nuevas formas de crear modelos de superficies duras más eficientemente. En mi tiempo libre, decidí crear una pequeña pieza tratando de encontrar el mejor workflow para mí desde el principio hasta el final de un activo del juego.
El reto era crear el modelo completo en una semana en mis pausas para comer, así que la planificación tenía que ser uno de los puntos principales de este miniproyecto.
Concept
Estaba claro que tenía que encontrar un buen diseño como punto de partida. Así que la sesión de Pinterest era casi obligatoria para encontrar conceptos interesantes. Descubrí el increíble trabajo de Soufinae Idrassi, diseñador conceptual de Ubisoft. Las formas del diseño del casco son tan pulidas que me encantó el contraste entre las curvas, las líneas y las partes extruidas.
Lo primero que hice para estudiar el concepto fue separar los diferentes materiales y formas principales en Photoshop. Sobrepinté el concepto para tener una visión más clara del casco y asigné diferentes colores a cada parte, luego empecé a bosquejar los volúmenes principales en ZBrush.
Primer Modelado
Cuando trabajaba en ZBrush, presté mucha atención a todas las vistas del casco pero mucho más al contorno, porque era la única referencia que tenía.
Además, traté de pensar en todos los problemas que descubrí mientras esculpía el primer boceto. Trabajar con Dynamesh me permite hacer correcciones rápidas y tomar decisiones en el camino muy rápidamente. Por ejemplo, decidí no hacer todos los tubos de la parte posterior del cuello porque el proyecto era hacer sólo el casco. Quería tener una pieza coherente, los tubos tenían que estar pegados en alguna parte y no trabajaría en más partes aparte de la cabeza. Lo mismo pasó con el mástil, trabajando con el Dynamesh hice esta parte como el concepto, pero no era un mástil realmente funcional. Me preguntaba acerca de los materiales en el concepto – ¿era metal o algún material plástico? Si hubiera querido mover el casco sobre un cuerpo no sería de esa manera, por eso empecé de nuevo a investigar en internet y a esbozar algunas soluciones hasta encontrar el camino.
En el momento en que terminé el sketch tuve que tomar algunas decisiones sobre el flujo de trabajo. El objetivo principal de este casco era mejorar mis habilidades con la superficie dura y aprender nuevas formas de crear volúmenes nítidos y limpios. Y aquí empezaron los problemas.
Trabajar en 3ds Max
Los principales volúmenes y las formas más simples se realizaron directamente en 3ds Max. Trabajando con polígonos editables, creé la forma base y asigné diferentes grupos de alisado para crear los bordes duros.
Luego apliqué dos modificadores Turbosmooth: el primero con 3 ó 4 niveles de subdivisión y con la jaula de grupo de alisamiento marcada. Así es como podemos crear fácilmente el borde duro. Y finalmente, el otro Turbosmooth para hacer más suave toda la pieza.
Flujos de trabajo de ZBrush
El siguiente paso fue enviar la pieza a ZBrush, pulir y detallar el modelo allí.
Esta forma de trabajar es muy efectiva, pero quería intentar algo más rápido que este método y si fuera posible, sin la necesidad de usar más de un software.
Una de las opciones era crear la pieza individual en ZBrush con Dynamesh. Cuando estaba contento con el resultado, simplemente intentaba pulir la superficie con pinceles H Polish haciendo un «Pulido de arcilla» o incluso un Zremesh en una herramienta clonada, creando diferentes polígonos y aplicando un «Crease PG» que crea un borde alrededor de los polígonos y luego subdividir la herramienta.
Pero para mí, la mejor manera de trabajar era extraer las diferentes piezas del casco creando máscaras sobre el boceto. Luego Dynamesh la pieza, limpia todas las imperfecciones que puedan aparecer, Zremesh y con cuidado con Hpolish crea las superficies limpias. Otra variación si no quieres extraer la malla y tener más control sobre la forma es enmascarar la parte que te interesa y dividirla con puntos enmascarados. Luego, con la nueva sub-herramienta, vaya al menú Geometría y haga un bucle en el Panel. De esta manera obtendrá una herramienta suave y limpia con el volumen extruido.
Mientras tenía todas las piezas del casco listas en ZBrush, traté de ser muy cuidadoso con el flujo y la conexión entre cada parte. Todos ellos deben estar conectados al siguiente, creando esa sensación de compacidad. Tendrías que ser capaz de ver cada pieza del casco, pero tienes la sensación de que es sólo una forma fuerte.
Detallar
Después de todo este proceso, es hora del trabajo de detallado: usar alfas y algunos pinceles para dañar un poco la superficie y crear los detalles más grandes – los más pequeños se crearían en el proceso de textura. Las líneas del panel fueron creadas con el cepillo DamStandard con el ratón perezoso activado y las áreas extruidas con alfas. Los tornillos se añadieron con cepillos IMM. Cada vez que creo una pieza con los pinceles IMM, los separo para tener todas esas pequeñas piezas juntas en una sub-herramienta separada, de modo que pueda aplicarles fácilmente un polígrafo específico.
Decimación y Retopo
Cuando tenga todo el alto contenido de polietileno listo, es el momento de diezmar el modelo y adjuntar las diferentes partes pensando en el proceso de cocción. Apliqué un color de identificación diferente a cada parte del casco para poder hornear un mapa de identificación más tarde antes de fusionar las herramientas y tener el FBX final con el High Poly listo para hornear. Para ese casco, sólo creo tres sub-herramientas diferentes cuidadosamente nombradas: la cabeza, llamada «retopo», los volúmenes extruidos en la parte posterior de la cabeza, llamada «Celulas», y el «cuello».
Pasando a 3ds Max, he importado la versión diezmada del casco y he iniciado el proceso de retopología. Trabajé con las «Herramientas de grafito» para polímeros editables: comencé a crear un único plano, convertí en polímeros editables y, utilizando la opción «Dibujar sobre la superficie», seleccioné la herramienta sobre el casco y comencé a crear la nueva topología con la herramienta Step Build.
Proyección (Baking)
Finalmente, creé los UVs, los empaqué en UVLayout y preparé el modelo para el proceso de cocción en Substance Designer. En este punto, es muy importante tener las mismas piezas separadas que en el modelo alto: el casco, las células y el mástil con el mismo nombre.
Substance Designer me permite crear todos los pasteles que necesito al mismo tiempo con casi un solo clic, sólo tengo que configurar todos los parámetros correctamente. He importado ambos modelos en Designer, el alto y bajo poliéster. Seleccionando el modelo de baja poligonal puedo hornear todos los detalles (clic derecho, información del modelo de baja poligonal) y configurar todos los parámetros que desee.
La razón por la que nombramos el polietileno bajo y alto de la misma manera es porque Designer permite hornear las piezas con el mismo nombre individualmente, por lo que no tendríamos problemas con las partes del cuello que estaban muy cerca de las partes de la cabeza que causarían algunos artefactos en todos los horneados y hornear al mismo tiempo todas las piezas juntas para obtener, por ejemplo, un mapa de AO auto-oclusionado.
Materiales
Después de hornear todos los mapas, normalmente los limpio con Photoshop y luego comienzo el trabajo de texturas en Substance Painter.
Uno de los mantras que siempre trato de seguir es mantener las cosas simples. Substance Painter es un potente software para texturizar y tiene muchas posibilidades, pero es muy fácil perder el foco en él y terminar con un modelo con demasiados detalles y ruido. He intentado organizar todas las capas en grupos, una para cada material.
Aquí tenéis algunos ejemplos de como he organizado los materiales:
Siempre trabajo con una capa base y empiezo a añadir detalles con capas de relleno a las que les aplico una máscara inteligente y algunos filtros si es necesario. Para los detalles finales, he tratado de poner el desgaste en la última capa para empujar el detalle en los bordes y un generador de Sharpen. Para las partes metálicas, me parece interesante modificar los valores especulares individualmente en una capa específica, controlando los valores con un generador de niveles en una máscara o incluso cambiando los colores del canal especular para crear algún efecto iridiscente en algunas áreas.
Cristal del casco
En cuanto a cómo se creó el cristal del casco, primero añadí una capa base negra con mucho brillo. Después añadí una capa para hacer más aparentes los biseles en las líneas del panel con la curvatura enmascarada y un generador de desenfoque, luego generé algo de suciedad alrededor de la esquina del vidrio con una máscara inteligente, otra capa de suciedad con altos valores de brillo y finalmente, las líneas amarillas con un canal emisivo activado.
Los mensajes en el casco fueron creados en una capa aparte con un canal emisivo de textura simple y el texto enmascarado con las líneas. Todas las partes emisivas del vidrio y el texto se exportarían como una única textura emisiva para utilizarla en Marmoset como mapa térmico.
Por supuesto, cada capa se incluyó en una carpeta principal, enmascarada con una selección de pintura, modificada con la selección de identificación de color y horneada en Designer.
Renderización en Marmoset
Ahora es el momento de renderizar en Marmoset. Puedes crear una escena en pocos minutos y obtener resultados realmente fantásticos con unas pocas luces en el plató. Creo que es una de las soluciones de software de render en tiempo real más efectivas en este momento. Me da casi todas las facilidades para crear una buena imagen para mi portafolio y el flujo de trabajo para la textura. El sombreado es absolutamente el mismo que en otros motores en tiempo real, por lo que puede migrar todo el trabajo, por ejemplo, a Unreal o Unity sin hacer ningún cambio (casi cualquier cambio).
Una de las primeras cosas que me acerco cuando creo una escena de Marmoset es afinar la configuración de la luz de render y crear un captador de sombras para poder crear una gran atmósfera con un suelo invisible que proyecte sombras y permita un comportamiento más realista para las sombras y los reflejos de luz.
Textura
Con el modelo importado, sólo se trata de crear materiales diferentes.
Era bastante simple para la parte del casco: Simplemente dejé caer la textura correcta en la ranura pertinente, añadí un canal de oclusión y uno emisivo con la opción de calor más la textura emisiva para las partes amarillas del vidrio del casco (así es como pude controlar la intensidad de esta área sin cambiar otros parámetros del vidrio). Además, la intensidad del calor permite crear algunos gradientes agradables).
Para los mensajes de «Danger» en el casco, dupliqué el mensaje en el cristal y creé un material específico para éste con una textura de color base, la textura alfa para la transparencia y el mapa de calor anterior sin las líneas de contorno para poder controlar individualmente la intensidad de ambas emisoras. Para crear el efecto de paralaje del texto sólo tenía que mover la geometría duplicada para separarla del casco. También creé una geometría extra para el vidrio del Casco para hacer los reflejos más dramáticos con el HDR de Marmoset. Aunque sólo lo activo en algunos de los presets del cielo. Para las versiones finales de los renders, por ejemplo, se ocultaba esta geometría.
Iluminación
Trabajando en el montaje de la luz, empecé con tres luces clásicas y sencillas: una luz principal, una luz de relleno y una luz de llanta para el contorno trasero del modelo. El siguiente paso sería crear más luces adicionales haciendo clic en la miniatura de la vista previa del IDH sólo para llenar algunas áreas específicas del modelo, algunas luces de llanta y también eliminar algunas sombras que podrían ser molestas. Me había acostumbrado a agrupar todas las luces dentro de la capa de cielo, así que cuando rote el HDR en la escena, toda la luz hará lo mismo. Es una manera fácil de probar la configuración de algunas luces diferentes muy rápidamente.
Para la toma final, configuré los presets de la cámara usando un campo de visión entre 25.0 – 50.0 mm, añadí algo de distorsión y efectos para conseguir un poco de aberración cromática, tocando la fuerza de agudización y añadiendo algo de efecto de viñeta.
Conclusión
Espero que hayan disfrutado de esta pequeña crisis. Si tienes alguna pregunta, por favor, no dudes en comentar aquí o preguntarme en mi perfil de ArtStation o en Twitter! Muchas gracias por leer!