En gráficos por computadora , la teselación es la división de conjuntos de datos de polígonos (a veces llamados conjuntos de vértices ) que presentan objetos en una escena en estructuras adecuadas para la representación . Especialmente para la representación en tiempo real , los datos se teselan en triángulos , por ejemplo en OpenGL 4.0 y Direct3D 11. [ 1] [2]
Una ventaja clave de la teselación para gráficos en tiempo real es que permite agregar y quitar detalles de manera dinámica de una malla poligonal 3D y sus bordes de silueta en función de parámetros de control (a menudo, la distancia de la cámara). En las técnicas en tiempo real líderes anteriormente, como el mapeo de paralaje y el mapeo de protuberancias , los detalles de la superficie se podían simular a nivel de píxel, pero el detalle de los bordes de la silueta estaba limitado fundamentalmente por la calidad del conjunto de datos original. [3]
En la canalización de Direct3D 11 (una parte de DirectX 11), la primitiva gráfica es el parche . [4] El teselador genera una teselación basada en triángulos del parche según parámetros de teselación como TessFactor , que controla el grado de finura de la malla . La teselación, junto con sombreadores como un sombreador Phong , permite producir superficies más suaves que las que generaría la malla original. [4] Al descargar el proceso de teselación en el hardware de la GPU , se puede realizar el suavizado en tiempo real. La teselación también se puede utilizar para implementar superficies de subdivisión , escalado de nivel de detalle y mapeo de desplazamiento fino . [5] OpenGL 4.0 utiliza una canalización similar, donde la teselación en triángulos está controlada por el sombreador de control de teselación y un conjunto de cuatro parámetros de teselación. [6]
En el diseño asistido por ordenador, el diseño construido se representa mediante un modelo topológico de representación de límites , donde las superficies y curvas 3D analíticas, limitadas a caras, aristas y vértices, constituyen un límite continuo de un cuerpo 3D. Los cuerpos 3D arbitrarios suelen ser demasiado complicados para analizarlos directamente, por lo que se aproximan (teselan) con una malla de piezas pequeñas y fáciles de analizar de volumen 3D, normalmente tetraedros irregulares o hexaedros irregulares . La malla se utiliza para el análisis de elementos finitos . [ cita requerida ]
La malla de una superficie se genera generalmente por caras y aristas individuales (aproximadas a polilíneas ) de modo que los vértices límite originales se incluyan en la malla. Para garantizar que la aproximación de la superficie original se adapte a las necesidades del procesamiento posterior, se suelen definir tres parámetros básicos para el generador de malla de superficie:
Un algoritmo que genera una malla normalmente está controlado por los tres parámetros anteriores y otros. Algunos tipos de análisis informáticos de un diseño construido requieren un refinamiento de malla adaptativo , que es una malla más fina (utilizando parámetros más fuertes) en regiones donde el análisis necesita más detalle. [1] [2]