Regresar   HardLimit > Hardware > Tarjetas Gráficas

Respuesta
 
Herramientas Estilo de vista
Antiguo 12-Apr-2007, 22:31:46   #1
krampak
Moderador
krampak es un diamante en brutokrampak es un diamante en brutokrampak es un diamante en bruto
 
Avatar de krampak
 
Registro: May-2002
Desde: Donde Heidi
Posts: 12,186
En qué consiste el antialiasing ?

Este texto es una mera aproximación al problema del aliasing y sus posibles soluciones. Es bastante probable que contenga errores, pero creo que puede aclarar algunos conceptos. Hay un hilo iniciado por Sergiman en el que se explica de forma resumida la generación de las imágenes.

ANTIALIASING

1.- ¿En qué consiste?

Por aliasing se conoce a un fallo en la representación de los gráficos debido a que la resolución final es finita. Existen diferentes tipos de aliasing visual, pero normalmente nos referimos al aliasing geométrico, efecto que consiste en la presencia de dientes de sierra en los bordes de los polígonos. El efecto de aliasing da a las imágenes una apariencia tosca, que reduce la inmersión en el juego debido a una sensación de irrealidad en los gráficos. Por antialiasing se conoce al efecto de filtrar la imagen para suavizar los bordes, y disimular los bordes de los polígonos, consiguiendo una apariencia mucho más realista.

2.- ¿Cómo se pasa de la geometría a los gráficos?

Este proceso se conoce como rasterizar. El primer paso que se realiza tras recibir un triángulo, que está situado en un mundo tridimensional, es realizar una proyección en el plano de la imagen, pasando a poseer únicamente dos coordenadas, X e Y.



Conocidos los tres vértices del triángulo, se determinan los tres lados. Para aplicar las texturas al triángulo, se calculan las coordenadas de cada pixel del interior del triángulo y se calcula que pixel de la textura corresponde a ese punto (aplicando corrección de perspectiva)



Así es como se ve un triángulo rasterizado. Como se puede comprobar, los fallos son inevitables. ¿Cómo se pueden limitar estos fallos?
Al rasterizar el triángulo, solo se ha tenido en cuenta si el punto central del pixel estaba dentro de él o no. Una consecuencia de este método es que aparece el típico error de diente de sierra o escalera, donde debería haber un borde suave. Para reducir este error se puede tener en cuenta que porcentaje del pixel está cubierto. La realidad es que esto no se puede calcular con precisión de manera rápida, por lo que las tarjetas gráficas realizan una aproximación.

3.- Supersampling ordenado.

El supersampling es una de las formas de antialiasing. Consiste en escalar la imagen multiplicando la resolución de los ejes X e Y por un número entero, y renderizarla a mayor tamaño del original. Tras realizar este proceso, se pasa al tamaño original mediante un filtro de reducción, por lo que varios píxeles de la imagen renderizada a mayor resolución se utilizan para calcular el valor de los píxeles de la resolución final. De este modo se consiguen transiciones más suaves.



2x2 supersampling: La resolución interna es cuatro veces el tamaño original.



Tras el filtro de reducción la imagen tiene transiciones más suaves. El valor de color se da en función del número de puntos centrales de los subpíxeles que quedan dentro del triángulo, en cada pixel.

4.- Supersampling rotado.

El supersampling rotado es una forma de supersampling en la cual se puede conseguir mejores resultados visuales que con el supersampling ordenado, pero con el mismo coste en rendimiento, mediante la elección de una mejor posición del punto de muestreo en los subpíxeles. Posteriormente se explicará el motivo por el cual un patrón rotado a la hora de elegir los subpíxeles es mejor que uno ordenado, con un ejemplo aplicado al multisampling.

5.- Multisampling.

La innovación que aporta el multisampling respecto al supersampling es que solo se calcula un valor de la textura por pixel, en vez de un valor por cada subpixel como en el supersampling. Mientras que en el supersampling se renderiza la imagen al completo a mayor resolución de la original, en el multisampling solo se hace para la geometría, no para las texturas. Esto ahorra tanto tasa de relleno como ancho de banda.
El ahorro es menor en ancho de banda debido a que aunque solo se genera un valor de color por pixel, lo que ahorra tasa de relleno, este valor debe ser almacenado por separado para cada subpixel.

6.- Patrón ordenado y patrón rotado.



A la hora de posicionar los subpíxeles, se puede elegir un patrón ordenado o un patrón rotado. La ventaja de un patrón rotado es que se obtienen gradientes de color más suaves, lo que permite una calidad muy superior con la misma pérdida de rendimiento. Un patrón 4x ordenado dobla la exactitud a la hora de realizar el muestreo en ambos ejes respecto a no utilizar antialiasing, mientras que con un patrón 4x rotado obtenemos cuatro veces la exactitud de muestreo de una imagen sin antialiasing.




Como se puede observar, con el patrón rotado se consigue una transición más suave, por lo que se obtiene una imagen de mayor calidad con el mismo consumo de recursos.



Con un patrón rotado 2x se consigue una exactitud de muestreo similar a la que se obtiene con un patrón ordenado 4x, pero tomando únicamente la mitad de muestras, lo que permite una calidad similar con mucho menor pérdida de rendimiento.

Las tarjetas nVidia anteriores a la gama 6 utilizaban un patrón ordenado, desde la gama 6 un patrón rotado. En el caso de las tarjetas de ATI, las tarjetas anteriores a la 9500 utilizaban un patrón ordenado, y desde la 9500 utilizan un patrón rotado.

7.- Ventajas e inconvenientes de cada técnica.

Una de las ventajas del supersampling es que realiza un filtrado de las texturas similar al del filtrado anisótropo, consiguiendo que las texturas tengan mayor definición. El filtrado anisótropo permite aumentar la calidad de las texturas con un descenso de rendimiento muy inferior, por lo que es preferible una combinación de multisampling y anisótropo, antes que un supersampling. El principal problema del multisampling es con las llamadas texturas alfa.

Al almacenar una textura, se guardan los tres canales de color (rojo, verde y azul) con otro canal llamado canal alfa. El canal alfa indica el valor de transparencia de un punto de la textura, y sirve para simular geometría. Un ejemplo claro es el de las rejas o las ramas de un árbol. Simulan ser geometría, pero únicamente es una textura con partes transparentes y partes opacas. Esto sirve para reducir la carga geométrica, consiguiendo acelerar el renderizado al limitar el número de polígonos.

Es una técnica muy utilizada en juegos antiguos, pero que se sigue utilizando en la actualidad. Un ejemplo claro de esta técnica es el de las rejas metálicas del Half Life 2, que no son más que un rectángulo con partes opacas (la reja) y partes transparentes (los huecos que dejan ver el fondo) En los bordes entre las partes opacas y las partes transparentes se produce aliasing. El supersampling suaviza estos bordes al realizar antialiasing en las texturas, pero el multisampling no al realizarlo sólo en la geometría.

8.- Antialiasing de texturas transparentes.

Para solucionar el problema del aliasing en las texturas transparentes, tanto nVidia como ATI han desarrollado técnicas de antialiasing mixtas, que realizan supersampling únicamente en las texturas alfa. Los llamados antialiasing transparente (en la gama 7 de las tarjetas GeForce) y el antialiasing adaptativo (En las tarjetas de ATI desde la 9500) realizan este proceso, con un consumo de tasa de relleno proporcional a la utilización de texturas transparentes en pantalla. A mayor utilización de texturas transparentes, mayor será la reducción de prestaciones que tendremos. La ventaja es que conseguimos una calidad de imagen muy similar a la del supersampling, pero con un rendimiento muy superior. Esto hace que en las tarjetas modernas se esté abandonando el supersampling debido a que la mejora en calidad visual no compensa la pérdida de rendimiento que conlleva esta técnica.



Imagen a la que se le ha aplicado multisampling. Como se puede observar, los bordes de los objetos geométricos si tienen transiciones suaves, pero los objetos realizados a base de texturas transparentes (las rejas de la pasarela en este caso) no están suavizados.



Imagen a la que se le ha aplicado multisampling con antialiasing de texturas transparentes. Como se puede observar, los bordes de los objetos realizados a base de texturas transparentes si están suavizados, con lo que la calidad de la imagen es muy superior.

PD: Existe un artículo en Elitebastards de la X1900 en el que viene un ejemplo muy clarito para ver la diferencia entre usar antialiasing de texturas transparentes y no utilizarlo. La animación es http://www.elitebastards.com/anipic....jpg&speed=2000

--------------------
[Core 2 Quad Q9550 @ 3.65Ghz] [4x2GB Corsair Dominator 8500] [Gigabyte P35DS3R] [HD4870X2 ] [ Gskill SSD 128GB 240/190 + 3xWD320GB SD + Hitachi 500GB]

[Antec TruePower Quattro 850][HP LP2475w H-IPS 24" + Dell 2005FPW 20"]

Editado por krampak en 18-Oct-2007 a las 18:17:48.
krampak is offline
Compartir  
Citar y responder
Enlaces patrocinados
Bienvenido a HardLimit

Actualmente estas viendo el foro como invitado, lo que limita tu acceso a ciertos aspectos del foro, enviar mensajes privados a otros usuarios, votar en encuestas, subir archivos adjuntos, etc... Registrarse es rápido, sencillo y gratuito, mejorará varios aspectos de la accesibilidad a los foros, entre ellas este recuadro con su publicidad desaparecerá. Entra en nuestra Comunidad

Si tienes problemas en el proceso de registro, contacta con nosotros.
Antiguo 12-Apr-2007, 22:31:58   #2
krampak
Moderador
krampak es un diamante en brutokrampak es un diamante en brutokrampak es un diamante en bruto
 
Avatar de krampak
 
Registro: May-2002
Desde: Donde Heidi
Posts: 12,186
Re: En qué consiste el antialiasing ?

9.- Benchmarks.

Para mostrar los resultados de las pruebas utilizaré histogramas. Considero que es la mejor manera de representar el rendimiento que se obtiene en cada momento, ya que un valor medio de frames puede ocurrir con muchos picos y muchos valles, o con valores mucho más constantes. Con medias de sesenta frames por segundo puedes encontrarte situaciones injugables, mientras que una media de treinta y cinco frames por segundo puede ser perfectamente jugable porque la tasa de frames sea muy constante.

Equipo de pruebas
CPU: AMD Athlon XP 2500+ @ 2500 MHz
Placa base: Abit KV7 VIA KT600
RAM: 1GB (2x512MB) Kingston Value RAM (400MHz 2-3-3-6)
Tarjeta de sonido: Integrada
Tarjeta gráfica: Radeon X800 PRO
Drivers: ATI Catalyst 5.10

Far Cry

Primero realizamos una prueba en el Far Cry. Éste es un juego que utiliza gran número de texturas alfa para la vegetación en los exteriores, por lo que es un buen ejemplo de la pérdida de rendimiento que puede traer el uso de antialiasing adaptativo. Hay que tener en cuenta que es un caso extremo, ya que en la mayoría de los juegos el uso de texturas alfa es mucho menor.

La prueba se realiza en la primera fase del juego, caminando desde el segundo punto de control (justo antes de entrar en la caseta donde coges los prismáticos) atravesando un trozo de selva, cruzando el río y llegando hasta la base enemiga. Para capturar los frames por segundo se utiliza el programa Fraps.



En esta tabla se compara el rendimiento con una resolución de 1280x1024 de diferentes modos de AA. Como se puede observar, la diferencia entre sin antialiasing y con 4xAA sin antialiasing adaptativo es mínima, indicando que en estas configuraciones estamos limitados por el procesador. Los otros dos modos si están limitados en gran parte por la potencia de la tarjeta gráfica, siendo un modo jugable (la configuración con 4xAA y 2xAAA) ya que siempre tenemos una tasa de frames por segundo superior a los treinta frames, mientras que la otra configuración, 4xAA 4xAAA, no sería jugable ya que durante periodos prolongados de tiempo tenemos tasas cercanas a los veinte frames por segundo.

La diferencia de calidad gráfica es apreciable, con el antialiasing adaptativo activado la vegetación no da sensación de movimiento cuando nos desplazamos, cosa que distrae mucho, y se integra mucho mejor con el fondo dando una sensación mucho más natural. En este caso yo jugaría con la configuración 4xAA 2xAAA, ya que es el mejor compromiso entre calidad de imagen y rendimiento.

Richard Burns Rally

El Richard Burns Rally es uno de los mejores simuladores de WRC que existen, y el más realista en su manejo. Para realizar el benchmark hemos bajado de www.gametimesonline.com la repetición del mejor tiempo en la primera etapa del rally de Francia. Para medir el número de frames por segundo, se utilizará como en el caso anterior el programa Fraps.



El uso de texturas alfa no es tan elevado como en el Far Cry, por lo que el uso de antialiasing adaptativo no supondrá una pérdida de rendimiento tan elevada como en el otro juego. Como podemos observar, con cada aumento del nivel de antialiasing obtenemos una pérdida notable de rendimiento, por lo que se puede deducir que en este caso no estamos limitados por el procesador, sino por la tarjeta gráfica. En un juego de coches no nos podemos permitir bajar de una tasa de frames mínima, en mi caso considero que un mínimo aceptable son los treinta frames por segundo. Los dos modos de mayor calidad visual que cumplen este requisito son la configuración 6xAA no AAA y la 4xAA 2xAAA. En un juego que utiliza texturas alfa como éste, siempre es recomendable utilizar si es posible algo de antialiasing adaptativo, por lo que yo escogería la configuración 4xAA 2xAAA para jugar a este juego.

F.e.a.r.

F.e.a.r. es uno de los juegos más esperados del año. Mezclando la acción del Half Life2 con la estética de las películas japonesas como The Ring, promete tener al jugador siempre en tensión. Tiene unos requisitos tremendamente elevados, por lo que hay que afinar mucho a la hora de configurar el juego, para poder jugarlo con el máximo de calidad posible con el equipo que tengamos.

Para esta prueba, hemos utilizado el principio de la parte jugable de la demo para un jugador de Fear. Volvemos a utilizar Fraps para realizar la medición. Las opciones aplicadas dentro del juego serían las predeterminadas para calidad media. Hay que tener en cuenta que es una versión beta, por lo que el rendimiento en el juego final debería ser mayor del obtenido con esta demo.



En este caso se ha utilizado una resolución de 1024x768 debido a que con la resolución de 1280x1024 no se podía jugar bien. La mayor parte del tiempo se estaba por debajo de los treinta frames por segundo, con valles en los quince, incluso sin aplicar antialiasing.

La aplicación de antialiasing adaptativo produce una bajada de rendimiento demasiado elevada, nos obligaría a bajar la resolución a 800x600, con lo que la calidad visual se vería muy mermada.

Como se puede observar en la gráfica, el modo con 4xAA tiene valles en los veinte frames, que ocurren en los momentos de más acción, momentos en los cuales no nos podemos permitir una pérdida de fluidez, ya que puede implicar no apuntar bien y que suponga la muerte. El modo 2x sin embargo se mantiene holgadamente por encima de la treintena de frames, por lo que sería el elegido.

10.- Conclusión.

El antialiasing es una de las diferentes maneras de mejorar la calidad visual. Cuando a nuestra tarjeta le sobra potencia, debido a que el monitor que tenemos no nos permite subir más la resolución, o porque preferimos un poco de antialiasing al posible aumento de un nivel de resolución, debemos utilizar estos filtros para obtener la mayor calidad visual con un rendimiento aceptable. No nos sirve de nada tener tasas de frames muy altas, ya que la sensación de suavidad no aumenta a partir de un punto, por lo que es mejor aumentar la calidad visual a costa de parte de ese rendimiento que nos sobra.

--------------------
[Core 2 Quad Q9550 @ 3.65Ghz] [4x2GB Corsair Dominator 8500] [Gigabyte P35DS3R] [HD4870X2 ] [ Gskill SSD 128GB 240/190 + 3xWD320GB SD + Hitachi 500GB]

[Antec TruePower Quattro 850][HP LP2475w H-IPS 24" + Dell 2005FPW 20"]

Editado por krampak en 18-Oct-2007 a las 18:18:10.
krampak is offline
 
Citar y responder
Antiguo 13-Apr-2007, 09:08:51   #3
PAPI GEORGE
Veteranos HL
PAPI GEORGE va por buen camino
 
Registro: March-2007
Desde: Cantabria
Posts: 235
Re: En qué consiste el antialiasing ?

Por fin se lo que significa!!!

JAJAJA lo veia en todos los juegos y no sabia porque cuando lo ponia me bajaba tanto el rendimiento (ahora ya no me pasa ).

Apuntate un tanto.

--------------------
Server: Gigabyte -EP45-DQ6, Intel Core 2 Quad Q6600, 4x2 Gb DDR2 800 Kingston HyperX, Asus EN7950GT, Maxtor 120GB, 5x1.5Tb Seagate sataII,2x1Tb Seagate sataII, Refrigeracion Liquida Swifttech, Tagan EasyCon 530W, Cooler Naster CM690.
Esperando los reyes para portatil o notebook
PAPI GEORGE is offline
 
Citar y responder
Antiguo 23-Jul-2007, 15:23:51   #4
DJTono
HL registered
DJTono ni fú, ni fá
 
Avatar de DJTono
 
Registro: October-2006
Desde: Lleida
Posts: 439
Re: En qué consiste el antialiasing ?

Buen tuto ahora ya se lo que es por fin!!

PD: Joder, hace tres meses de esto!!

salu2! ;-)
DJTono is offline
 
Citar y responder
Antiguo 23-Jul-2007, 15:57:57   #5
cram
Veteranos HL
cram será famoso pronto
 
Avatar de cram
 
Registro: September-2005
Desde: Sant Cugat (Catalunya)
Posts: 3,080
Re: En qué consiste el antialiasing ?

Hace bastante más de 3 meses, la redactó Kynes pero se ralló del foro, pero suerte de krampak que la tenia copiada y nos la resubió hace 3 meses.

--------------------
E6600 | P5B-Dlx| MicronD9 |XFX7600GTvf900 | ValueSmart560W | Antec P180 | X-Fi-Fatal1ty | Thermalright Ultra-120 | Philips190S | GD580| |G7 & G15 & G25 Racing Wheel |Steelsound-5H.V2.|
cram is offline
 
Citar y responder
Antiguo 23-Jul-2007, 19:10:52   #6
DJTono
HL registered
DJTono ni fú, ni fá
 
Avatar de DJTono
 
Registro: October-2006
Desde: Lleida
Posts: 439
Re: En qué consiste el antialiasing ?

A, pues gracias por la aclaración cram.

salu2! ;-)
DJTono is offline
 
Citar y responder
Antiguo 10-Aug-2007, 20:26:06   #7
X-BOX
HL registered
X-BOX va por buen camino
 
Avatar de X-BOX
 
Registro: July-2007
Desde: Argentina..
Posts: 21
Re: En qué consiste el antialiasing ?

Es buena información , Lo malo del antialiasing es que se relentisa demasiado los juegos (Depende la placa gráfica) Le da un efecto real a los juegos.
E jugado al Flight Simulator X con máximos gráficos y me tira 43 fps
Y es real real...
también la filtración de texturas son importantes.

--------------------
PC 1 .Intel Core 2 Extreme 2,6 ghz | Mother Asus Strike Extreme | 2X Hd Maxtor 500 gb 7200 RPm | X4 Kinqston DDR2 2GB 800MHz| 2X Geforce 8800 Ultra XXX Xfx|Fuente 800Wats | Gabinete con 6 coolers 2 delanteros 1 lateral ,2 traseros y 1 arriba|2X DVDRW LG Dual Layer 18x|
PC 2 Intel Celeron D 340 2,93@4,0Ghz (OC)|Mother foxconn 661fx4mr|Gf6200
X-BOX is offline
 
Citar y responder
Respuesta


Usuarios viendo esta discusión: 1 (0 usuario(s) y 1 invitado(s))
 
Herramientas
Estilo de vista

Normas del foro
no puedes iniciar un tema
no puedes responder a un tema
no puedes agregar archivos adjuntos
no puedes editar tus posts

El código vB está activado
Los emoticonos están activado
El código [IMG] está activado
El código HTML está desactivado
Ir a


Todas las horas son GMT +2. La hora actual es 19:25:58.

Usando: vBulletin Version 3.6.8
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
© 1999-2008 Entusiastas del Hardware C.B.