Generalmente utilizo Zbrush, pero Mudbox en ocasiones, puede presentarse como buena alternativa, especialmente por ser gratuito (si eres propietario de Maya) y por estar disponible en Linux, sistema operativo presente en ¿todos? los VFX facilities.
Ya hemos hablado en numerosas ocasiones de como trabajar con UDIMs en diferentes software y para la realización de diferentes tareas (texturing, matte painting, re-projections,etc). Por supuesto, siempre trabajamos con UDIMs, y en algunas ocasiones, es posible que necesites no solo exportar UDIMs si no también, importarlos.

Un ejemplo muy común es crear fine displacement en Mudbox (explicaré como hacerlo en Zbrush otro día). Digamos que pintas un mapa de color con mucha resolución y con 16 bits de profundidad en Mari. No hay razón para no aprovechar esta información como punto de partida en tus displacement maps, y continuar a partir de ahí añadiendo detalle.

Exportar UDIMs desde Zbrush o Mudbox es tan sencillo como apretar un botón, pero importarlos quizás no sea tan evidente.

  • Antes de nada, este es el asset que necesito importar en Mudbox. En Mari tengo varios UDIMs listos para ser exportados.
  • En Mudbox podemos importar el asset como .obj
  • El siguiente paso es crear una capa de "paint" de al menos 16 bits, ya que se trata de un mapa de displacement.
  • Acto seguido voy a exportar este texture channel que acabo de crear, que obviamente esta vació, pero lo que me interesa ver es el naming convention que Mudbox utiliza para nombrar los UDIMs, ya que es distinto a Mari o Zbrush.
  • El siguiente paso, es volver a Mari y exportar las texturas, en caso de que no lo hubieras hecho antes.
  • Necesitamos renombrar las texturas exportadas desde Mari al naming convention de Mudbox. Como hemos exportado previamente las texturas vacías desde Mudbox, ya conocemos el naming convention.
  • Para hacerlo mas rápido, y no cometer errores, vamos a utilizar el script Maprenamer, creado por Jens Kafitz. Hay infinidad de scripts y herramientas que hacen tareas similares, basta con googlear un poco.
  • Descarga el script y colócalo en cualquier directorio. Desde ese directorio escribe "chmod +x maprename" para tener permiso para utilizar el script.
  • Desde el directorio donde has exportado las texturas de Mari escribe el siguiente comando.
  • "perl maprename -s [sourcefolder] [sourceconvention] [targetconvention] -nn [newname] -u -c -p"
  • Para una ayuda más detallada del script visita la pagina del autor.
  • Tras refrescar el listado de archivos, una carpeta se habrá creado llamada Mudbox, que contiene una copia de las texturas con el naming convention necesario para Mudbox.
  • De nuevo en Mudbox, basta con importar una nueva capa y seleccionar el primero de los UDIMs.

Este post es una traducción del original escrito en Septiembre del 2011 en el blog de Xuan Prada.

En ocasiones, tienes que texturizar un asset el cual ya tiene creado un displacement map. Así que probablemente sea una buena idea, importar en Mari el asset con el displacement aplicado, para poder pintar mejor todo tipo de detalles. 

Una práctica común que hago, es importar el asset mediante .obj en Mudbox, aplicarle los mapas de displacement creados en cualquier software y exportar de nuevo mediante .obj para importar posteriormente en Mari. 

El problema, es que Mudbox no trabaja muy bien con multi UDIMs, así que hay que hacer algunos apaños para poder importar assets com multi UDIMs. 

  • Chequea el UV mapping en tu software de 3D antes de empezar. 
  • Para este ejemplo, estoy utilizando estos mapas de displacement sencillos, uno para cada UDIM
  • Exporta el asset como .obj
  • Impórtalo en Mudbox y subdívidelo tanto como necesites. 
  • Vete al menú maps -> sculpt model using displacement map -> new operation 
  • Selecciona el mesh y el displacement map
  • Ya te habrás dado cuenta de que Mudbox no te permite elegir diferentes mapas para cada UDIM, es decir, Mudbox solo permite esculpir en el espacio UV X0 Y0
  • Para solucionar esto, tienes que mover todos tus UDIMs a la coordenada X0 Y0 antes de importar tu asset en Mudbox. 
  • Vuelve a Maya y abre el UV Texture Editor
  • Selecciona uno a uno cada UDIM que esta fuera del rango X0 Y0
  • Abre el Script Editor y escribe polyEditUV -u -1 -v 0 ; 
  • De esta forma moverás el UDIM exactamente una posición, así que si creas texturas en un software externo, siempre encajarán a la perfección cuando las traigas de vuelta en Maya.
  • Exporta de nuevo el .obj e impórtalo en Mudbox. 
  • Repite este proceso para cada UDIM. 
  • Estos son los comandos para mover UDIMs mediante posiciones exactas.

Izquierda -> polyEditUV -u -1 -v 0 ;

Derecha -> polyEditUV -u 1 -v 0 ;

Arriba -> polyEditUV -u 0 -v 1 ;

Abajo -> polyEditUV -u 0 -v -1 ;