Mucho hemos oído y leído sobre tessellation o teselado, un nuevo concepto que NVidia dio mucha importancia en la presentación de sus últimas GTX 480 y 470. Ahora bien, ¿sabemos lo que es tessellation?.
Hoy os vamos a mostrar qué es tessellation y para qué sirve, con unos cuantos ejemplos que hemos tomado de diferentes benchmarks y que muestran muy claramente la diferencia entre teselado activado y no activado. Se trata de una nueva tecnología que incluye DirectX 11, y que seguro será de vital importancia de cara al futuro.
Teselado: introducción
Aunque en esta entrada nos vamos a centrar en lo que al teselado virtual se refiere, es decir, al generado por una máquina en un entorno, el teselado proviene del mundo real. Ésto es algo nimio, pues la enorme mayoría de creaciones tecnológicas son así.
Teselado proviene de tesela, palabra que según la R.A.E. significa lo siguiente
tesela.(Del lat. tessella).
1. f. Cada una de las piezas con que se forma un mosaico.
Con lo que la definición de teselado (la mejor traducción del original inglés tessellation) parece ya bastante clara:
teselado, da.(Del lat. tessellātus).
1. adj. Formado con teselas. U. t. c. s. m.
Más concretamente, en wikipedia se define teselado como “una partición del plano mediante polígonos idénticos, o a un polígono o grupo de polígonos idénticos que convenientemente agrupados recubren enteramente el plano”.
En otras palabras, el teselado en el mundo real se refiere a superficies que a su vez están formadas por pequeños polígonos. Algunos ejemplos de ello pueden ser una pared formada por ladrillos, un puzle o un suelo empedrado. ¿Alguna duda hasta ahora?
Teselado en el mundo digital
Lógicamente, en el ámbito de la tecnología también se da el problema de la tessellation: en la actualidad manejamos entornos 3D en los que siempre se dan determinadas superficies teseladas. Por ejemplo, un suelo empedrado.
Antaño, este tipo de texturas eran totalmente planas, sin ningún tipo de reborde ni saliente. Sin embargo, a medida que la tecnología y los ordenadores han ido evolucionando también se exige que todo sea más real, y es por ésto por lo que la tessellation empieza a jugar un papel fundamental.
Ahora no miréis las letras rojas de la siguiente imagen:

Aquí arriba se muestra la misma captura de un benchmark (Unigine) con y sin tessellation activado. ¿Adivináis cual es cada una?
Efectivamente, la imagen de arriba lo tiene activado. Tessellation es una de las novedades de DirectX 11, que incluye algoritmos que permiten crear texturas como esa de ahí arriba. O esta otra que os dejamos a continuación.

Lógicamente, se trata de algoritmos muy complejos que lo único que intentan es darle un mayor realismo a una imagen 3D. Aunque claro, eso hay que pagarlo de alguna forma, y eso es con rendimiento.
Tessellation reduce la tasa de imágenes por segundo (fps) de una forma muy notable, ya que la GPU tiene que operar mucho más para crear la nueva textura, mucho más compleja que la natural y con un mayor número de polígonos. Dependiendo del número de elementos y polígonos de una imagen, una secuencia de vídeo 3D puede ser hasta 3 o 4 veces más lenta con el teselado activado, o ninguna en determinados casos muy puntuales.
Os invito a que os descarguéis el Unigine Heaven Benchmark para que así comprobéis la diferencia en rendimiento, lo mucho que se resiente la tarjeta y el equipo completo. Para ello, arrancad el programa e iniciad el benchmark. Una vez dentro, pulsad F3 cada poco tiempo, y contemplad los cambios.
Teselado digital: ¿sí o no? Conclusiones

Es un paso que tarde o temprano vamos a terminar dando. Sobre teselado o tessellation ha empezado a hablarse cada vez más y más desde que NVidia lo introdujo en su presentación de productos, como una de las principales ventajas de sus nuevos modelos de gráficas respecto de la competencia.

Sin embargo, es muy pronto aún. Ni los videojuegos soportan DirectX 11 ni tessellation de forma nativa, con lo que a día de hoy no es una característica vital. En un futuro sí, lo será y además de una forma imprescindible. De hecho, cualquier nueva tecnología que aporte un plus al realismo será fundamental.
En el ámbito doméstico, el teselado afecta principalmente a los videojuegos, ya que es el único campo en donde utilizamos imágenes 3D. Sin embargo, en el ámbito profesional la cosa es bastante más importante: renderizados 3D o edición de películas 3D son tan solo un par de los muchos ejemplos que se pueden dar.
Ya para finalizar, os dejo con un vídeo en el que se van alternando las imágenes con teselado activado y sin activar. La diferencia es, ahora, más que clara.
Y algunas imágenes comparativas capturadas por nosotros mismos:
En Xataka | Tarjeta gráfica.
Ver 37 comentarios
37 comentarios
morbea
No me creo que lo que he leído en este articulo. No solo ya esta falta de información de manera alarmante sino que no has dado pie con bola. Con todos mis respetos, pero si vas a escribrir sobre algo que supera tus conocimientos técnicos, mejor no lo hagas ya que quedaras retratado una y otra vez.
Para ser exactos, la tecnología de teselación existe desde hace ya un par de años y esta fue creada por ati. Es una tecnologia que se usa de manera continua en la peliculas de pixar,dreamworks y otras tantas. Lo que se consigue con la teselación no es más que una desfragmentación de un poligono en cientos o miles de copias diminutas del mismo poligono original. La diferencia entre esta tecnologia o el aplicar a una pared miles de poligonos para obtener algo realista es que la diferencia entre el rendimiento entre una y otra es abismal. Cuando usamos la teselacion, por poner un ejemplo, en el pelo de un personaje, cuando la vista de juego esta lejana, la tarjeta grafica no tiene que calcular los millones de poligonos para renderizar el pelo ya que al estar a una cierta distancia, no se va a notar la calidad del acabado poligonal. Si usasemos la tecnologia actual, bien a distancia lejanas o cercanas, la tarjeta grafica estaría SIEMPRE calculando la misma cantidad de poligonos y por tanto, restaría rendimiento para otras necesidades a la vez de memoria para otro tipo de texturas ya que hay que recordar que los poligonos llevan consigo texturas.
Hoy en día, como las tarjetas no son lo suficientemente complejas para llevar una carga poligonal tan alta, lo que los desarrolladores suelen usar es la tecnica de parallax mapping. El parallax mapping no es más que darle volumen a una textura plana. A pesar de darle este volumen y sombreado, el poligono siempre sera plano. Si lo ves de frente dara el efecto de complejidad poligonal pero si lo ves desde la prespectiva del poligono (Digamos una pared viendola desde un lado) veras que esa profundidad no existe ya que el poligono es plano. Por tanto, el autor se equivoca al decir que la teselación de mayor complejidad a la textura. La teselacion no tiene nada que ver con la TEXTURA sino con el poligono en si. Además, lo bueno de la teselación, es que el propio desarrollador puede configurar la proporción de desfragmentación del poligono en la relación que quiera 1/100, 1/500.....Asi controlar el rendimiento.
El resultado final es un mundo mucho más realista sin la necesidad de un gran rendimientos. Es el futuro y la base en la siguiente generación de consolas. En Pc no le sacaran mucho jugo pues todos los desarrolladores ven el mercado en el mundo consolero. SI han conseguido barbaridades como GOWIII, ALan WAke, GT5... en consolas de hace 4 años (tarjeta 7900 gt que lleva la ps3) imaginaros con lo que vendrá y ademas sumando esta tecnología. Agarraros los machos porque el verdadero salto vendrá en la siguiente generación.
PERDON POR LAS FALTAS.
yonmacklein
bueno la teselación más que cosa de Nvidia debe ser cosa de Microsoft y el mencionado DX11, supongo que una Ati con soporte completo de DX11 debe de ser capaz de lo mismo.
el tema de la teselación en si misma, es algo curioso, se intentó otras veces (la ATI 8500 tenia un modo similar en cierto sentido, pero solo funcionaba parcheando juegos, al no formar parte de DirectX), supongo que ahora de un modo más eficiente (aunque total, acabas perdiendo rendimiento también, pero bueno). Yo personalmente, pienso que debieron tirar por otras cosas más necesarias que multiplicar poligonos, ya sea potenciando mucho más todo el tema de iluminación (aunque algún tipo de soporte para radiosidad se ve que debe existir, pues el nuevo CryEngine lo demostraba en un video demo).
pero en el fondo no es malo, para hacer teselación necesitas potencia bruta, y con potencia bruta la teselación es simplemente un añadido colateral, para renderizar juegos en 3D (3D de gafas y eso digo) esa potencia bruta vendrá de perlas (aunque jugar a un juego 3D y con teselación, posiblemente, sea inviable), o simplemente, por el hecho de tener más potencia para ejecutar cualquier juego (Crysis, ejem... aunque Crysis2 se ve que no requerirá tanto al ser una pequeña actualización del motor sin dar ningún salto importante como de FarCry a Crysis, tal vez Crysis3).
jmrobles
En mis tiempos de 3D Studio, Tessellation era el proceso de subdivision de triángulos. La primera vez que lo "ví", se aplicaba al realizar operaciones "booleanas" entre objetos. Luego creo que también se aplica al renderizar una superficie NURBS (ya que todo se convierte en triángulos). Creo que este concepto tambíen se emplea para la Global Illumination.
Yo esto de nVidia tesellation lo conozco como bump mapping o displacement. Característica que venia de serie en renderes fotorealisticos como el Pixar renderman o 3DS Max.
Independientemente del nombre que le quieran dar, conseguir esto en tiempo real es un logro.
Lo que está claro es que en cuestión de marketing, lo que menos importa es lo que signifique (o que lleve ya tiempo inventado).
Salu2!
xator
Pues esta tecnología está bastante bien, en cuanto a realismo se refiere.
Pero como simpre viene pasando con el tema de las gráficas, no es aceptable ahora mismo. Es algo que siempre me ha "picado" con respecto a estas cosas. Por ejemplo, llevamos al menos 12 años con filtros tales como Antialising y Anisotrópico, y es ahora, al cabo de esos 10 - 12 años cuando las tarjétas parece que pueden cargarlo sin morir en el intento ( al menos a x2 o x4 ) manteniendo una tasa de FPS aceptable.
Tanto nVidia como ATi deberían pensar en optimizar los filtros que tienen ya en mercado, para hacerlos más leves para la carga del GPU, y en el caso del teselado, más de lo mismo. Da mucha rabia que te compres un pepino de gráfica, dejandote unos 250-300 eurazos ( sé que hay más caras, pero vamos, el sentimiento es el mismo, comprobado ) y luego te pongas a jugar a un juego, le subas los filtros, y ramplonee.
La verdad, eso es Unigine, pero, no me imagino un Crysis 2 con teselación activada, filtro aniso y antialias a x4 y corriendo a una resolución de más de 720p ( que es bastante poquita cosa, la verdad ) con unos 30 FPS constantes.
A ver si no sacan tantas cosas tan rápido, y a medio hacer. Ganaríamos todos.
nazanis
FPS: 28.8 Scores: 726 Min FPS: 15.5 Max FPS: 63.6
Hardware
Binary: Windows 32bit Visual C++ 1500 Release Mar 7 2010 Operating system: Windows 7 (build 7600) 64bit CPU model: AMD Phenom(tm) II X4 965 Processor CPU flags: 3411MHz MMX+ 3DNow!+ SSE SSE2 SSE3 SSE4A HTT GPU model: ATI Radeon HD 5800 Series 8.712.0.0 1024Mb (es la 5870)
Settings
Render: direct3d11 Mode: 1920x1080 4xAA fullscreen Shaders: high Textures: high Filter: trilinear Anisotropy: 4x Occlusion: enabled Refraction: enabled Volumetric: enabled Replication: disabled Tessellation: normal
Y estos son los resultados en mi equipo (me hacía ilusión mostrarlo)
Miguel Arévalo Nogales
No voy a explicar el tema una vez más, creo que ya lo han hecho muy bien más arriba.
Si apuntar que efectivamente ATI fue la primera en soportar esta tecnología con la serie 8XXX (hace ya unos añitos), aunque todavía era más una prueba de concepto que algo real. Es más la serie 5XXX de ATI soporta este método de forma nativa (forma parte de DirectX 11), y la diferencia de rendimiento respecto a Fermi no es tan acusada (depende del SW).
Otro apunte, si hay juegos que soporten la tecnología, no todos los juegos con DirectX 11 hacen uso de ella, pero el STALKER Call Of Prypiat parece ser que si hace (o puede hacer) uso de la misma. No he investigado mucho el tema aunque estoy jugando a ese juego en concreto. No se si es necesario activar algo específico (aparte de DirectX 11 y subir todos los detalles al máximo) o parchear algo, pero en principio si utiliza esta tecnología. Cuando pueda haré una prueba e intentaré comentar diferencias.
Pablo Espeso
Veamos a ver: esta entrada no pretende ser un compendio de cuál es la mejor tecnología de procesamiento de imágenes o cuál es la peor, ni de cómo se aplica una u otra. Simplemente, con esta entrada y sus ejemplos quería mostrar cuáles son las diferencias al aplicar Tessellation.
Además de ésto, en ningún momento he explicado que sea una invención de NVidia, pero sí que últimamente NVidia pone mucho empeño en hablar de Tessellation, porque según este fabricante sus modelos de gráficas trabajan mucho mejor que los productos de la competencia al aplicar el teselado.
Que es un invento antiguo es algo claro, pero simplemente me gustaría resaltar que en los últimos meses se ha venido hablando más y más sobre Tessellation, en parte por el interés de NVidia.
Y por supuesto, algo que espero que nadie dude, es que aquí las dudas son siempre bien recibidas ;-)
sarlacc
Por lo que veo aun faltan siglos para poder ver un videojuego tan real como ver una pelicula comun y corriente. Pero bueno algo es algo
alefon
Me recuerda muchísimo a las texturas del videojuego Killzone 2 (Guerrila)...el suelo, paredes...etc.....tienen un gran efecto que me recuerda a la imagen que he visto en DX11...Es impresionante que ya lo utilicen pero con otro nombre que desconocemos...
shootingmonkeys
El futuro está aquí amigos! Cada vez que pienso en como eran los videojuegos cuando empecé a jugarlos y veo como son ahora y como sigo jugándolos y disfrutando de sus avances pienso que es increíble. Y más increíble me resulta pensar como serán dentro de 10 años. Obviamente estaré ahí para jugarlos.
Y no solo los videojuegos.. sino todo lo que a multimedia hace referencia. En fin, lo dicho: INCREÍBLE!
Hikaru
Como comentan por arriba, el nombre habitual es map displacement, y lo que hace, a partir de una textura, modifica la malla, para darle "volúmen real" y no simulado por iluminación como en un bump map o un normal map.
También suscribo el hecho de que me suena cantidad que Ati ya lo publicitó hace tiempo, por lo que me extraña verlo como buque insignia de los adelantos de las nuevas Fermi.
Aunque es bestial la potencia de cálculo que dan estas para trabajos profesionales :)
Por otro lado, las capturas de muestra son un poco como el antés y el despues en los anuncios. Lucen mejor, aparte de por el teselado, porque hay sutiles diferencias, como algo de blooming aplicado y una profundidad de color superior... total para que parezca el tesellation hace más de lo que hace... además de que no creo que lleven normals o un bump muy pronunciado... que si el angulo de visualización no es muy oblicuo, dan el pego bastante... o eso, o se está muy cerca, la silueta es muy acusada bruto y el displacement muy bruto.
El tema de la optimización según la distancia es un puntazo y es un detalle buenisimo, incluso para los motores de render fotorrealísticos.
Grojnak
Lo que hace el marketing. Ahora la gente creerá que esto ha sido cosa de nVidia. En fin, algo tienen que hacer para vender sus nuevas gráficas (que han llegado tardísimo y son son para tanto).
josealb
Siento ser borde pero creo que o os habeis explicado muy mal o el que ha escrito el artículo no entendía de que iba el tema.. Las texturas siempre han tenido poligonos, la diferencia está en esta optimización que comenta "elalex" y leyendo el artículo no queda claro para nada.
Reimous
Encuentro muy interesante todo esto... a ver si hablan de una proxima generacion por asi decirlo de nvidia un tanto mas interesante que las 4xx y sus problemas y decepciones que nos han traido. O sino las ATI 6xxx que realmente podrian ser muy buenas teniendo en cuenta como estan funcionando las 5xxx.
spaik
Un par de apuntes: Esta tecnología llamada teselación poligonal, no es nada nuevo. Se usa desde los 80 o principios de los 90 en aplicaciones 3D para multiplicar la densidad de la malla a fin de resolver varias situaciones, como bien han apuntado con operaciones booleanas o con mapas de desplazamiento.
Por otro lado bump, normal o parallax mapping son técnicas basadas en la deformación de las normales de las superficies, algo así como engañas a la vista para que parezca que tiene relieve cuando en realidad no lo tiene. Y no tienen que ver con la teselación, ya que ésta crea y destruye polígonos en tiempo real, lo que da una idea de la potencia requerida.
Usuario desactivado
hace un tiempo, años la verdad.... lei en la Micromania, una nueva tecnologia de creacion de imagenes basado en la creacion de los objetos gracias a la incidencia de rayos de luz... ray "no se que" desde entonces no he vuelto a escuchar ni leer nada del tema. alguien sabe algo?? y de seguir adelante este proyecto, podria ser equiparable el tesselado al ray "no se que"??
metroiddarks
En realidad es de intel la patente...de un mexicano para ser exacto
ram5es
Y que diferencia hay de esto?? con el Parallax Mapping? yo lo veo igual y nada como una nueva tecnologia.
Ruben Gomez Radioboy FB
en los ejemplos me parece mucho más interesante, realista e intenso SIN que CON
:S