3dfx Voodoo5 5500 AGP

Publié le 03/08/2000 par
Imprimer

My name is Buffer, T-Buffer

La Voodoo5 5500 supporte, du fait de la présence de deux VSA-100, une nouvelle technologie propriétaire à 3dfx, le T-Buffer. Le T-Buffer est en fait un dérivé de l´Accumulation Buffer, une technologie que l´on doit à des ingénieurs de Silicon Graphics et qui permet de stocker plusieurs rendus légèrement différents d´une même scène afin de les combiner de différentes manières afin d´effectuer divers effets spéciaux.

tbuffer.gif (8359 octets)

Les effets pouvant être crées par le T-Buffer sont divers, et nous aborderons un peu plus loin sur le FSAA (Full Scene Anti Aliasing), fonction qui mérite plus d´attention qu´un simple paragraphe.

Pour le reste, le T-Buffer permet notamment d´effectuer un Motion Blur, littéralement flou cinématique. Cet effet permet en fait de recréer une scène telle qu´elle sera enregistrée avec une simple caméra : un objet en mouvement est flou et laisse une ´trace´ derrière lui, ce qui permet d´améliorer la fluidité d´une scène à fps égale lorsqu´on active cet effet.

Le Depth of Field, ou effet de focale, permet d´insister sur un objet en le faisant apparaître très net. Ainsi, si l´objet visé par la caméra est au premier plan les objets situés a l´arrière plan seront flou, et inversement bien sur. Le T-Buffer permet également de rendre plus réaliste le reflet d´on objet sur certains matériaux via le Reflectance Blur (plus l´objet est éloigné de la surface réfléchissante plus la réflexion est floue) ou les ombres portées, via le Soft Shadows (de même).

Toutefois, mêmes si ces effets sont intéressants, ils ne constituent pas le principal intérêt du T-Buffer.

Le Full Scene Anti Aliasing

C´est en effet le Full Scene Anti Aliasing qui est l´effet issu du T-Buffer le plus intéressant, d´une part parce qu´il comble un réel besoin, et d´autre part parce qu´il fonctionne d´office sur tous les jeux existants, ce qui n´est pas le cas des autres effets.

L´aliasing, qu´est ce que c´est ? Au sens général du terme, il s´agit de tout les défauts visuels liés d´une image qui font qu´elle n´est pas photo réaliste, du fait de limites techniques. Dans une scène 3D, ces limitations viennent notamment du nombre de pixels restreint dont on dispose pour rendre l´image. Les deux défauts usuels dus à l´Aliasing sont les effets d´escalier et le pixel popping.

grilleduo.gif (2507 octets)

Ce graphique illustre l´effet d´escalier sur une image 3D. A gauche, la courbe telle qu´elle devrait être représentée, a droite, la courbe telle qu´elle sera représenté sur 10x10 pixels (chaque carré correspondant à un pixel). Le pixel (contraction de Picture Element), est un point d´une image informatique. Il est indivisible, et dans le cas ci dessus sera donc soit noir, soit blanc. De ce fait, il est donc impossible de représenter exactement la forme de gauche ... il faudra faire une approximation pixel par pixel ... ce qui nous donne l´image de droite. Bien entendu, l´effet est ici complètement exagéré, chaque pixel étant représenté par une case de 18*17 pixel.

pixelpopping.gif (14644 octets)

Ce nouveau graphique, issu d´un datasheet de 3dfx, illustre pour sa part le Pixel Popping (ou Polygon Popping), un phénomène qui apparaît lorsque l´on utilise des objets assez petits, comme des lignes électriques ou des poteaux dans des jeux de ´oitures : au fur et à mesure que l´on avance, certaines parties de ces objets sont visibles, invisibles, visibles, invisibles (etc. ...).

Afin de réduire ces défauts, on utilise l´anti-aliasing. Plusieurs techniques d´anti aliasing sont utilisées pour arriver à ce but, à savoir l´over-sampling pour les Radeon et les GeForce, et le multi-sampling pour la Voodoo 5 via son T-Buffer.

spatialaliasing.gif (7782 octets)

La technique de l´over-sampling est assez simple, et peut être en théorie implémentée sur toute carte graphique digne de ce nom. Il s´agit en fait d´effectuer le rendu de l´image dans une résolution plus haute que celle demandée, puis de revenir à la résolution de base en appliquant un bon vieux bilinear filtering.

Le multi-sampling de 3dfx est différent, puisque cette fois ci l´image est rendue en double ou en quadruple (1 ou 2 image par chip), chacune des images étant légèrement décalée (la taille du décalage est de l´ordre d´un pixel). Ce décalage est illustré par le graphique ci dessous. La figure (a) représente une partie de la scène initiale, la figure (b) représente les 4 images légèrement décalées qui seront calculées (le triangle gris n´est pas rendu, il s´agit juste de la position de triangle originel à titre indicatif). La figure (c) indique pour sa part la position de chacun des 4 pixels qui seront utilisés afin de définir la couleur du pixel qui sera affiché.

testv5multisamplinggraph.gif (5237 octets)

D´un point de vue théorique, ces deux techniques offrent donc strictement la même qualité d´affichage, la seule différence entre deux FSAA 4x (4 pixels pour définir le pixel final) se situant au niveau de l´orientation des pixels qui seront utilisés pour définir la couleur du pixel final (le jaune au milieu) :

oversampling_multisampling.gif (2901 octets)
(A gauche avec over-sampling, a droite avec multi-sampling)

Du fait de cette orientation, le multi-sampling de 3dfx sera en fait plus efficace sur des lignes proches de l´horizontal ou de la verticale que l´over-sampling. C´est un avantage certain pour 3dfx, car il se trouve que ce genre de lignes sont très nombreuses dans les jeux (qui représentent dans la plupart des cas notre monde ´civilisé´, qui est fait a partir de telles lignes) et que c´est notamment sur ce genre de lignes que l´effet d´escalier est le plus frappant.

Vos réactions

Top articles