presentación de powerpointgc.scalahed.com/recursos/files/r161r/w21306w/presentation_content/... ·...
TRANSCRIPT
Pierre Sergei Zuppa Azúa
Texturas 3D
Producción de recursos gráficos
Texturas 3D
TEXTURA
Es una imagen que agrega
detalles a la malla de nuestros
modelos.
Tipos:
– Mapa de Bit
– Procedurales
Producción de recursos gráficos
Texturas 3D
TEXTURAS PROCEDURALES
Es una imagen generada por algún algoritmo matemático, con la intención de crear una representación realística de elementos naturales que, a pesar de su aparente aleatoriedad, siguen algún tipo de patrón y ofrece la posibilidad de crear texturas de cualquier tamaño y resolución en tiempo de ejecución, entre otras ventajas.
Normalmente el aspecto realista de estas texturas se consigue mediante el uso de ruido fractal y funciones de turbulencia que se utilizan como representación numérica de la 'aleatoriedad' que nos rodea pero también pueden basarse en simples patrones geométricos.
Ejemplo de ello serían la madera, el mármol, el granito, el metal o la piedra.
Tipos:
• Geométricos
• Fractales o aleatorios
Producción de recursos gráficos
Texturas 3D
PROCEDURALES
(MAPAS GEOMÉTRICOS)
Son, en teoría, fáciles de
sintetizar, hacen mucho uso de
la función matemática de
módulo o de operadores
binarios.
Producción de recursos gráficos
Texturas 3D
PROCEDURALES
(MAPAS ALEATORIOS Y FRACTALES)
Estas texturas son mucho más
complicadas de sintetizar y
también requieren más ciclos de
proceso. Suelen basarse en dos
algoritmos clave, el Cellular y el
Perlin Noise.
Producción de recursos gráficos
Texturas 3D
TEXTURAS MAPA DE BIT
Son imágenes digitales que representan una superficie, un material. Las puede generar un artista o diseñador utilizando un software de edición de mapa de bits.
Normalmente estas secuencias de píxeles que representan una imagen vienen encapsuladas en un formato gráfico (.bmp, .jpg, .png).
Tipos más comunes son: – Difusos(diffuse)
– Relieve(normal o bump)
– Reflejos(specular)
– Mapas de luces(ligth maps)
– Mapas de sombras (shadow maps)
– Mapas de ambiente (cube map ó enviroment map)
Producción de recursos gráficos
Texturas 3D
TEXTURA
(DIFUSA)
Viene siendo la textura principal, esta determina el color de la malla y sus detalles, lo más recomendable es que la imagen no tenga alguna luz direccional
Ejemplo:
Una foto a media mañana a la luz del sol de una pared que genere sombras en su relieve.
Producción de recursos gráficos
Texturas 3D
TEXTURA
(RELIEVE)
Cuando queremos conseguir un resultado realista o fotorrealista los detalles lo son todo, modelado high-poly, texturas de alta resolución, modelado de detalles por todos lados, sin embargo no podemos modelar todo, ya sea por tiempo o por cuestiones técnicas, la solución es usar un mapa de relieve el cual simula un relieve en la superficie sin aumentar el número de polígonos y hace cálculos de como se ilumina el área en base al ángulo de la fuente de luz y la cámara.
Tipos de mapas de relieve
• Bump maps
• Normal maps,
Producción de recursos gráficos
Texturas 3D
RELIEVE
(BUMP MAPS)
Son texturas en escala de grises
la cual representa la altura del
relieve en base a la intensidad,
es decir, blanco = 1, negro = -1.
Entre más oscuro esté una
región, más profundo en la malla
se marcará, mientras que entre
más claro mayor altura tendrá.
Producción de recursos gráficos
Texturas 3D
RELIEVES
(NORMAL MAPS)
Representan dirección, es decir, no solo representan la altura del relieve, si no también si se inclinan hacía algún lado en base a la mezcla de los 3 canales de color (RGB)
La intensidad:
Rojo (0 - 255) X (-1 a 1) Verde (0 - 255) Y (-1 a 1) Azul (0 - 255) Z (-1 a 1)
Usualmente se usan de una manera muy similar al bump map, por eso casi siempre el color azul es el que predomina.
Producción de recursos gráficos
Texturas 3D
TEXTURA
(REFLEJOS)
Funcionan como un filtro para agregar un efecto reflectivo a ciertas áreas del modelo, entre más clara sea el área más va a reflejar.
Ejemplo: una pieza de metal pintada pero que tiene desgaste o rayones en algunas zonas y en esas zonas refleja más, entonces con el specular map dibujamos sobre una imagen negra los rayones en color gris claro, entre más claro más va a reflejar.
Producción de recursos gráficos
Texturas 3D
TEXTURA
(MAPAS DE LUCES)
Es una máscara, es en blanco y
negro y entre más clara el área
más es la luz que emite,
dependiendo del motor de
render que usen realmente
emitirá luz o simplemente no se
verá afectado por las sombras,
lo cual da la sensación de que
emite luz.
Producción de recursos gráficos
Texturas 3D
PROCEDURALES SOBRE LOS MAPAS DE BIT
VENTAJAS Densas: se conoce el color en cada punto además,
podremos ver nuevos detalles mientras más nos
acerquemos.
Infinitas: están definidas para todo el espacio, es decir que la
textura no se repetirá en ningún momento.
Ocupan poco espacio: Una textura procedural son unas
pocas líneas de código a diferencia de un mapa de bits que
son datos. Posibilidad de Texturas 3D: Esta definida para todo el espacio, y lo que veamos sea un 'corte' de esta textura que ocupa todo un volumen. Parametrizables: al modificar los parámetro podemos crear una infinidad de texturas diferentes.
DESVENTAJAS
Computacionalmente costosas.
Difíciles de codificar y de debuggar:
Uno de los principales problemas con
las texturas procedurales es que no
se dibujan, se "inventan"!.
Aliasing
Producción de recursos gráficos
Texturas 3D
BILLBOARD
Es un gráfico en dos
dimensiones situado en un
mundo de tres dimensiones y
orientado de manera que mire
hacia la cámara y siempre se
vea de frente.
Tipos:
– Screen-aligned billboard
– World-oriented billboard
– Axial billboard
Producción de recursos gráficos
Texturas 3D
BILLBOARDS
Es un polígono con una textura y vector de orientación asociado. Cuando la posición y orientación de la cámara cambian, este vector de orientación cambiará. Para definir la orientación del polígono tiene:
Un vector normal n,
Un vector up u
Una posición p.
En ocasiones los vectores n y u no son perpendiculares, por lo que es necesario aplicar una serie de transformaciones para conseguirlos. Éstos no deberían ser paralelos puesto que es indeterminado el cálculo
perpendicular.
Producción de recursos gráficos
Texturas 3D
CÁLCULO DE BILLBOARDS
En caso de no ser perpendiculares es tomado uno de los vectores como fijo y se calcula el vector r mediante el producto cruz de los vectores n y u. El producto cruz nos garantizará que r será perpendicular a n y a u. r = n x u El siguiente paso es normalizarlo, puesto que será utilizado el vector canónico en nuestro sistema de coordenadas. r = r * |r| Si tomaste el vector n como el fijo, se calcula el nuevo vector u’ mediante: u’ = n x r Igualmente se necesita normalizar el vector u’. Finalmente creamos la matriz de rotación compuesta por los 3 vectores obtenidos: M = (r, u’, n)
Producción de recursos gráficos
Texturas 3D
SCREEN-ALIGNED BILLBOARD
Es el más simple de todos. Su vector u siempre coincide con el vector up de la cámara, mientras que el vector n se toma como el inverso del vector director de la cámara. Estos vectores son siempre perpendiculares por lo tanto no es necesario recalcular ningún otro.
Es útil para representar textos, ya que siempre estará alineado con la pantalla.
Producción de recursos gráficos
Texturas 3D
WORLD-ORIENTED BILLBOARD
El vector u se toma del vector up del objeto en coordenadas de mundo. El vector n será el mismo del caso anterior. A partir de estos dos vectores se deriva un nuevo vector ‘u.
Es útil para representar fenómenos como llamas, humo, explosiones y nubes. Una técnica es crear un conjunto de billboards y mezclarlos de manera ordenada.
Producción de recursos gráficos
Texturas 3D
AXIAL BILLBOARD
El objeto texturizado no está orientado directo al observador. Lo que se hace es rotar alrededor de algún eje fijo de coordenadas de mundo y alinearse a sí mismo.
Es utilizado para representar árboles lejanos, donde en vez de utilizar un mallado sólido se representa como un único billboard. En este caso el vector fijo es el vector u (como por ejemplo el vector del tronco del árbol) mientras que el vector n es recalculado. El problema con este tipo es que si el jugador sobrevuela por la escena y mira hacia abajo, se notan los árboles como figuras planas.
Producción de recursos gráficos
Texturas 3D
MAPA UV
Es una forma de asignar la parte
de una imagen a un polígono en
el modelo. Cada vértice del
polígono es asignado a un par
de coordenadas 2D que definen
que parte de la imagen es
mapeada.
Producción de recursos gráficos
Texturas 3D
UNWRAP
(DESPLIEGUE)
La operación de crear estos mapas UV se conoce también como "despliegue” debido a que todo ocurre como si la malla fuera desenvuelta o desplegada sobre un plano 2D y puede servir para objetos simples y regulares, sin embargo para mallas más complejas y de formas más orgánicas no da tan buenos resultados por si sola, para eso hay que marcar costuras (seams) en la malla para que el algoritmo las use como líneas de corte y pueda separar la malla con menor distorsión.
Con costuras
Sin costuras
Producción de recursos gráficos
Texturas 3D
TIPOS DE UNWRAP
• Smart
• Lightmap pack
• Follow active quads
• Cube projection
Producción de recursos gráficos
Texturas 3D
SMART UNWRAP
Esta opción da un mayor control sobre la automatización de la colocación de costuras y el desenvolvimiento basado en los ángulos de la malla. Este método es bueno para formas mecánicas y arquitectónicas tanto simples como complejas.
Las opciones que da este método son:
– Límite de ángulo (Angle limit)
– Margen de islas(Island margin)
– Peso del área (Area weight)
Producción de recursos gráficos
Texturas 3D
LIGHTMAP PACK
Toma cada cara del modelo, o seleccionada, y las acomoda en un mapa UV de manera separada cada una, es decir, cada cara es una isla. Esto es útil para motores de juego y de aplicaciones de renderizado en tiempo real ya que la información de la iluminación se guarda en una textura por separado mediante el método 'bake‘.
Las opciones que nos da este método son:
• Selección (Selected mesh object)
• Compartir espacio de textura (Share tex space).
• Nueva capa UV (New UV layer).
• Nueva imagen (New image).
• Tamaño de imagen (Image size): Ajusta el tamaño de las nueva imágenes.
• Calidad de empacado (Pack quality).
• Margen (margin).
Producción de recursos gráficos
Texturas 3D
FOLLOW ACTIVE QUADS
Toma las caras seleccionadas y las coloca siguiendo la continuidad de los ciclos de las caras (líneas de cara cuadradas una tras otra) incluso si la malla tiene forma irregular. Este método no respeta el tamaño de la imagen ni el área de UV por lo que muy probablemente haya que escalar y acomodar la malla UV.
Las opciones de Modo de longitud de la arista (Edge length mode) son:
• Uniforme (Even).
• Longitud (Length).
Producción de recursos gráficos
Texturas 3D
CUBE PROJECTION
Este método es de los más
básicos, proyecta la malla en 6
planos separados creando una
isla por cada uno, en el editor
UV aparecerán encimadas por
lo que se verá como solo una
isla, sin embargo pueden
moverse y escalarse para
acomodarlas.