El mapeo de desplazamiento es una técnica alternativa de gráficos por computadora en contraste con el mapeo de relieve , el mapeo normal y el mapeo de paralaje , que utiliza un mapa de textura o altura (de procedimiento ) para causar un efecto en el que se desplaza la posición geométrica real de los puntos sobre la superficie texturizada . a menudo a lo largo de la normal de la superficie local , de acuerdo con el valor que evalúa la función de textura en cada punto de la superficie. Da a las superficies una gran sensación de profundidad y detalle, permitiendo en particular la auto oclusión, el auto sombreado. y siluetas; por otro lado, es la más costosa de esta clase de técnicas debido a la gran cantidad de geometría adicional.
Durante años, el mapeo de desplazamiento fue una peculiaridad de los sistemas de renderizado de alta gama como PhotoRealistic RenderMan , mientras que las API en tiempo real , como OpenGL y DirectX , solo estaban comenzando a usar esta función. Una de las razones de esto es que la implementación original del mapeo de desplazamiento requería una teselación adaptativa de la superficie para obtener suficientes micropolígonos cuyo tamaño coincidiera con el tamaño de un píxel en la pantalla. [ cita requerida ]
Significado del término en diferentes contextos
El mapeo de desplazamiento incluye el término mapeo que se refiere a un mapa de textura que se utiliza para modular la fuerza del desplazamiento. La dirección de desplazamiento suele ser la normal de la superficie local. Hoy en día, muchos renderizadores permiten el sombreado programable que puede crear texturas y patrones procedimentales de alta calidad (multidimensionales) a frecuencias arbitrariamente altas. Entonces, el uso del término mapeo se vuelve discutible, ya que ya no se trata de un mapa de textura. Por lo tanto, el término más amplio de desplazamiento se usa a menudo hoy en día para referirse a un superconcepto que también incluye el desplazamiento basado en un mapa de textura.
Los renderizadores que utilizan el algoritmo REYES , o enfoques similares basados en micropolígonos , han permitido el mapeo de desplazamiento a frecuencias arbitrarias altas desde que estuvieron disponibles hace casi 20 años.
El renderizador primera disponible en el mercado para implementar un enfoque de mapeo micropolígono desplazamiento a través de REYES era Pixar 's fotorrealista RenderMan . Los renderizadores de micropolígono suelen teselar la geometría ellos mismos con una granularidad adecuada para la imagen que se está renderizando. Es decir: la aplicación de modelado entrega primitivas de alto nivel al renderizador. Los ejemplos incluyen verdaderas NURBS - o superficies de subdivisión . Luego, el renderizador tesela esta geometría en micropolígonos en el tiempo de renderizado utilizando restricciones basadas en la vista derivadas de la imagen que se está renderizando.
Otros renderizadores que requieren que la aplicación de modelado entregue objetos previamente teselados en polígonos arbitrarios o incluso triángulos han definido el término mapeo de desplazamiento como el movimiento de los vértices de estos polígonos. A menudo, la dirección del desplazamiento también se limita a la normal de la superficie en el vértice. Aunque conceptualmente similares, esos polígonos suelen ser mucho más grandes que los micropolígonos. La calidad lograda con este enfoque está, por lo tanto, limitada por la densidad de teselación de la geometría mucho tiempo antes de que el renderizador tenga acceso a ella.
Esta diferencia entre el mapeo de desplazamiento en renderizadores de micropolígono y el mapeo de desplazamiento en renderizadores de polígono no teselado (macro) a menudo puede generar confusión en las conversaciones entre personas cuya exposición a cada tecnología o implementación es limitada. Más aún, como en los últimos años, muchos renderizadores que no son de micropolígono han agregado la capacidad de realizar un mapeo de desplazamiento de una calidad similar a la que un renderizador de micropolígonos puede entregar de forma natural. Para distinguir entre el desplazamiento burdo basado en la teselación previa que estos renderizadores hacían antes, se introdujo el término desplazamiento de subpíxeles para describir esta característica. [ cita requerida ]
El desplazamiento de subpíxeles comúnmente se refiere a una nueva teselación más fina de la geometría que ya estaba teselada en polígonos. Esta nueva teselación da como resultado micropolígonos o, a menudo, microtriángulos. Los vértices de estos luego se mueven a lo largo de sus normales para lograr el mapeo de desplazamiento.
Los verdaderos renderizadores de micropolígono siempre han sido capaces de hacer lo que el desplazamiento de subpíxeles logró recientemente, pero con una calidad superior y en direcciones de desplazamiento arbitrarias.
Los desarrollos recientes parecen indicar que algunos de los renderizadores que usan el desplazamiento de subpíxeles también se mueven hacia el soporte de geometría de nivel superior. Como es probable que los proveedores de estos renderizadores sigan utilizando el término desplazamiento de subpíxeles, esto probablemente conducirá a una mayor ofuscación de lo que realmente significa el mapeo de desplazamiento en los gráficos por computadora en 3D .
En referencia al lenguaje de sombreado de alto nivel patentado por Microsoft , el mapeo de desplazamiento se puede interpretar como una especie de "mapeo de textura de vértice" donde los valores del mapa de textura no alteran los colores de los píxeles (como es mucho más común), sino que cambian la posición de vértices. A diferencia del mapeo de relieve, normal y de paralaje, de los cuales se puede decir que "simulan" el comportamiento del mapeo de desplazamiento, de esta manera se puede producir una superficie genuinamente rugosa a partir de una textura. Debe utilizarse junto con técnicas de teselación adaptativa (que aumentan el número de polígonos renderizados según la configuración de visualización actual) para producir mallas muy detalladas. [ cita requerida ]
Ver también
Otras lecturas
- Mapeo de desplazamiento de licuadora
- Sitio web de Relief Texture Mapping
- Mapeo de oclusión de paralaje en GLSL en sunandblackcat.com
- Mapeo de relieve en tiempo real en papel de superficies poligonales arbitrarias
- Papel de mapeo de relieve de detalles de superficies de campo sin altura
- Estado del arte del mapeo de desplazamiento en papel gpu