Prochain dossier, l'Anti Aliasing

http://tom4897.arma2.fr/wp-content/uploads/2011/07/b4mbifr_dev2.jpg

Suite à des demandes (d’étudiants, professionnels ET joueurs (surprise !)), le prochain gros dossier concernera l’anti aliasing (aussi appelé anticrénelage).

Vulgarisons un peu (mais pas trop), sans anti aliasing, il y a bien sûr ce que l’on appelle un effet d’aliasing, l’image est crénelée (pour les nulles du français, crénelée -> créneler -> crénelage -> créneaux). Les joueurs l’appellent “vulgairement” : “effet d’escalier” car c’est bien évidement sur les contours que ça se produit. Pour supprimer cet effet déplaisant et informe, on utilise des méthodes logicielles ou matérielles qui sont dites Anti-Aliasing.

Donc, je comptais aborder (ce ne sera pas un cours de programmation… c’est un métier, vous voulez en savoir plus, faites en votre métier !) les méthodes suivants :

  • MLAA -> Morphological Anti-Aliasing
  • MSAA -> Multisample Anti Aliasing
  • SMAA -> Subpixel Morpholical Anti Aliasing
  • FXAA -> Fast aproXimate Anti Aliasing
  • CL -> ClearType (bonus :))

Egalement au programme, quelques bases sur le shading. Pour rappel, appliquer un shader, c’est nuancer (et non pas ombrager comme j’ai déjà entendu), uniquement application à l’image de synthèse. D’ailleurs, on doit ça à Pixar avec son RIS (RenderMan Interface Specification) dès la fin des années 80 mais je m’arrête là, tout le monde (ou presque s’en fou) ^^

  • Pixel Shader (Calcul de pixel individuel)
  • Cell Shading (Ombrage de celluloïd)
  • Geometry shader (Calcul géométrique de polygones)
  • Per-pixel lighting (Eclairage par pixel) similaire au HWT&L, T&L
  • Vertex shaders (Rendu 3D)

On verra également les ordres de calcul ainsi que ce que ça donne sur le pipeline graphique.

Tout est posé, avant de me lancer dans la rédaction du pavé (roman, tartine indigeste…), s’il y a d’autres méthodes qui vous intéressent, faites le moi savoir.

One thought on “Prochain dossier, l'Anti Aliasing

Leave a Reply

Your email address will not be published. Required fields are marked *