Caractéristiques des shaders

Les shaders sont donc des programmes exécutés par le GPUA.2. Ils sont caractérisés par :

Le tableau A.1 page [*] présente les caractéristiques des différentes versions des shaders depuis leur apparition, de la version 1 à 3.

Comme on peut le voir, les limitations sont drastiques. Bien que les opérations arithmétiques soient spécialement dédiées au calcul d'éclairement (par exemple les produits vectoriels et scalaires sont ''cablés''), un shader est un programme très court.


Tableau A.1: Caractéristiques des différentes versions des Shaders. ps = pixel shader, vs = vertex shader, f = flottant, b = booléen, e = entier.
  vs1 ps1 vs2 ps2 vs3 ps3
nb. op. arithmétiques 128 8 256 64 512 512
nb. accès textures - 4 - 32 512 512
paramètres en entrée 16 8f+2e 16 8f+2e 16 10f
paramètres constants 96 8 256f +16b +16e 32f +16b +16e 256f +16b +16e 224f +16b +16e
registres temporaires 12 2 12 12 32 32
contrôle de flux - - stat. - dyn. dyn.


Porquet Damien 2005-03-02