NVIDIA GeForce 8800 GTX & 8800 GTS

Publié le 08/11/2006 (Mise à jour le 12/02/2007) par
Imprimer
Antialiasing
Alors que les Radeon sont capables depuis longtemps de gérer un antialiasing de type multisample en 6x, les GeForce étaient limitées au 4x. Cette limite tombe avec les GeForce 8 qui supportent un MSAA 8x, et peuvent de plus coupler MSAA et HDR FP16 comme les Radeon X1x00 et contrairement aux GeForce 7.

Nvidia ne s’est pas arrêté là et a implémenté un nouveau mode d’antialiasing nommé coverage sample (CSAA). Ce mode consiste à améliorer la précision avec laquelle les samples de couleurs différentes sont mélangées pour former l’image finale. Par exemple si 2 triangles passent par un même pixel en MSAA 4x, ils peuvent recouvrir soit 25 et 75 % du pixel, 50 % chacun ou 75 et 25 %. Les couleurs sont mélangées dans ces proportions. Le coverage sample se base sur un buffer MSAA classique ainsi que sur un second buffer d’une résolution supérieure (8x ou 16x) mais qui ne retient pas de couleur, uniquement une valeur booléenne qui indique si le triangle couvre cette zone ou pas.

Cette technique a des limites puisqu’il n’est pas possible via le coverage sample buffer de connaître précisément les interactions entre de nombreux triangles ou entre des triangles qui se touchent ou se coupent. Etant donné que le Z-Buffer reste à la résolution standard, il n’est pas possible de savoir quel triangle est au-dessus de l’autre etc. Nvidia a donc dû restreindre l’utilisation de coverage sample buffer aux pixels qui représentent 2 triangles espacés. Si ce n’est pas le cas l’information du CS buffer est ignorée. Quand elle est utilisée, elle offre un résultat en théorie similaire à celui de sa résolution puisque le mélange des samples se fait dans cette résolution. En reprenant l’exemple précédant, un triangle qui couvre 30% du pixel n’aura lors du mélange en MSAA 4x que 25% de poids puisque c’est l’approximation la plus proche possible dans ce mode. En MSAA 4x + CSAA 16x, il pèsera alors pour 31% ce qui est une meilleure approximation.

Le CSAA ne profitera donc qu’à certaines arêtes mais en contrepartie il est beaucoup moins gourmand qu’un mode de MSAA supérieur vu qu’il consomme moins de bande passante et ne requiert jamais de calcul de couleur supplémentaire. En occupation mémoire, du MSAA4x occupe 256 bits par pixel. Si l’on y ajoute du CSAA 16x (soit 16 valeurs booléennes), on ne passe "que" à 272 bits.

Nous avons voulu voir le coût en pratique de ces nouvelles options :


L’impact sur les performances est de l’ordre de 15 à 20% ce qui reste raisonnable. Par contre la différence entre le CSAA 8x et 16x est minime, ce qui réduit l’intérêt du mode 8x.


Ce second test est identique si ce n’est que nous avons cette activé le Transparency AntiAliasing (Adaptive AntiAliasing chez ATI). Les performances chutent, surtout dans les modes de MSAA 6x et 8x qui entraînement le calcul de respectivement 6 et 8 samples de couleur pour les herbes et autres grillages.
Qualité de l’antialiasing (sans TAA / AAA)
  

GeForce 7 : Sans AA, 4x AA, 8xS AA

  

Radeon X1000 : Sans AA, 4x AA, 6x AA

     

GeForce 8 : Sans AA, 4x AA, 4x AA + 8x CSAA, 4x AA + 16x CSAA, 8x AA (8xQ), 8x AA + 16x CSAA
Qualité de l’antialiasing (avec TAA / AAA)
  

GeForce 7 : Sans AA, 4x AA, 8xS AA

  

Radeon X1000 : Sans AA, 4x AA, 6x AA

     

GeForce 8 : Sans AA, 4x AA, 4x AA + 8x CSAA, 4x AA + 16x CSAA, 8x AA (8xQ), 8x AA + 16x CSAA
Vos réactions

Top articles