Rincondeldisenodetita
jueves, 2 de octubre de 2014
miércoles, 17 de septiembre de 2014
viernes, 12 de septiembre de 2014
martes, 2 de septiembre de 2014
GET STARTED IN 3D (THE FUNDAMENTALS OF USING UV)
LOS FUNDAMENTOS DEL USO DE MAPAS UV
¿Qué son
los UV?
Los UV son
dos coordenadas que se asignan a cada uno de los vértices de un modelo. Así
como un vértice tiene tres coordenadas X, Y y Z, referentes a su posición en el
espacio, también tienen dos coordenadas más que determinan su posición en un
plano bidimensional que representa la textura. Se puede pensar en los UV como
puntos escondidos que solo pueden manipularse en un espacio 2D.
A
diferencia de los vértices, los UV pueden estar separados de sus caras, lo que
permite crear patrones para aplicar las texturas luego.
¿Para qué
sirven los UV?
Los UV
determinan cómo va a proyectarse una textura sobre el modelo. Al crear
primitivos como cubos, cilindros y esferas, estos vienen con sus UVs
predefinidas. Si se aplica una textura directamente sobre un primitivo, no va a
haber gran deformación de la imagen. Por el contrario, con un modelo complejo,
los UV tienen que estar definidos manualmente, para evitar el stretching de la
textura. Para eso se tienen que crear shells de uvs, que
representen un lado del modelo a la vez.
El proceso
Para crear
los UVs de un modelo en Maya, primero hay que tener un modelo listo y aplicarle
una textura. Al asignar UVs es mejor usar una imagen cuadriculada de guía como
la que muestro en el ejemplo, así es evidente cuando una textura está deformada
por una mala proyección. Si no tienes una imagen de referencia, usa el mapa
procedural checkers de Maya. Recuerda activar la vista texturizada
en Maya para ver los resultados.
Primero
abre la ventana de edición de UVs (Window → UV Texture
Editor) para que veas
los UV actuales del modelo. Seguramente sea un enrredo de líneas, pero al fondo
se verá la imagen de tu textura. Esta área cuadriculada es el territorio UV. Todos
los UV que se encuentren dentro del rango 0 a 1 tanto vertical como
horizontalmente serán válidos. Más allá de ese rango la textura se empieza a
repetir. Esto es útil para crear modelos que usen tiling, pero no nos sirve
mucho por ahora. Prueba mover algunos puntos en el área UV y fíjate como va
cambiando la proyección de la textura sobre el modelo.
Si quieres
empezar con un lienzo en blanco, en la ventana del editor de Uvs
selecciona Polygons → Delete UVs. El modelo sin textura quedará con un
shading especial, para llamar la atención de que las caras no tienen UVs
asignadas.
Ahora, en
la vista 3D, selecciona todas las caras que representen un área más o menos
plana, y ve a Create UVs → Planar Mapping → Opciones. En Fit Projection
To déjalo en Best Fit, y en Project From, déjalo
en Camera. Con esto creas una proyección de la textura sobre las
caras seleccionadas y les asignas los UVs correspondientes. Verás el
manipulador de la proyección en la vista 3D. Si lo mueves, puedes afectar la
manera en que se proyecta la textura.
Por ahora
no hagas nada y abre el Attribute Editor. Estará el nodo PolyPlanarProjN,
y ahí estarán los atributos de esa proyección. Puedes ajustar el origen, juega
con la rotación de la proyección y ve viendo los resultados en tiempo real en
las vistas 3D y en el editor de UVs. Uno de los objetivos de los UVs es que las
texturas no se deformen, por lo tanto debe haber una relación lo más cercana
posible a 1:1 entre el área de las caras seleccionadas y el área de las caras
en el editor de UVs. Obviamente con modelos orgánicos esto es difícil de
conseguir, pero imagina que estás envolviendo el modelo con la textura, y
realiza los cortes adecuadamente. Para asegurarte de mantener las proporciones
de los UVs para todo el modelo, escribe un número en ProjectionWidth y
ProjectionHeight y mantenlo de ahora en adelante.
Y lo
repito porque es importante: siempre mantén el mismo número para que todas las
proyecciones sean del mismo tamaño.
Con
modelos orgánicos es difícil crear proyecciones satisfactorias. Por un lado,
puedes crear shells que cubran gran parte del modelo, pero la
textura quedará deformada según el ángulo de la proyección, o por otro lado,
puedes crear shells pequeños, que no deformarán la textura pero
dejarán muchos seams visibles. Una técnica es recordar cómo están
construídos los muñecos de peluche, es la misma idea: envolver un objeto
tridimensional con un plano bidimensional. Imagina que desarmas un oso de
peluche y estiras las piezas de las que está compuesto, así debería verse un
mapa UV. En zonas complejas, como la cabeza de un personaje, hay que hacer un
compromiso entre la facilidad para editar la textura y el grado de deformación
que tendrá. Usualmente yo uso un mapeado cilíndrico para envolver rostros. La
mayor parte de la cara queda bien, excepto la parte inferior de la mandíbula,
pero es una zona relativamente poco visible, así que no es tan grave que la
textura se deforme ahí.
El
problema de los seams
Los seams
son los bordes de cada shell de un modelo, y son problemáticos
porque es difícil esconderlos al pintar una textura.
Hay
diferentes maneras de solucionar estos problemas, pero la principal es evitar
crear seams en zonas muy visibles del modelo. Es mejor hacer las divisiones en
lugares poco accesibles, como la parte interior de las piernas, la parte
inferior de los brazos, etc. En otro tutorial enseñaré cómo librarse de los
seams de otra forma.
Si
trabajas con normal maps, es indispensable que los seams estén más escondidos
aún, ya que por la dirección de los vectores de los normales, los seams se
hacen mucho más notorios.
El Layout
Por ahora
tienes múltiples shells, todas de una escala uniforme. Ahora hay que ordenarlas
dentro del rango 0,1 de las coordenadas UV. La idea es utilizar la mayor parte
de la textura posible, así que hay que ordenar las shells como un rompecabeza,
tratando de no desperdiciar espacio en la textura. Para empezar, selecciona
todos los shells y pulsa el botón LAYOUT. Los shells quedarán bastante
bien ordenados en el espacio UV, pero quizás no sea óptimo. Recuerda que hasta
este minuto todos los shells tienen una escala uniforme; si quieres puedes
darle más prioridad en el layout (y por lo tanto, mayor resolución de pixeles
de textura) a las partes más importantes del modelo. Por ejemplo, si estás
haciendo un personaje, le darías más espacio a la cara y menos espacio a los
pies. Con algo de práctica y paciencia, puedes hacer mapeados UV bastante
eficientes.
En mi
experiencia, al trabajar con normal maps es mejor mantener una escala uniforme.
Exportación
Ahora que el
mapeado UV está listo, puede ser exportado como un template sobre el que puedes
pintar la textura. Selecciona el modelo, en la ventana de edición de UVs elige
la opción UV Snapshot, y en las opciones elige el formato de imagen
y la resolución a la que la vas a exportar. Yo usualmente exporto al doble de
la resolución de la textura que voy a trabajar, para tener líneas más limpias
(es importante si tu modelo tiene muchos polígonos). Luego presiona Export
(la imagen quedará en la carpeta Images de tu proyecto de Maya). En
Photoshop, añade la imagen como una capa en modo Screen, y pinta en
las capas inferiores usándola como guía
Referencias:
Suscribirse a:
Entradas (Atom)