différences GLSL entre nvidia et ATI:
- utilisation de gentype frac( gentype x ):
frac est une fonction Cg et HLSL, mais pas GLSL. Il est pourtant possible de l'utiliser dans les shaders sans encombre sur les cartes nVidia. sa version dans le language GLSL est fract. (ndlr: ancien, je ne sais pas si ce bug se retrouve aujourd'hui).
- utilisation de gentype round( gentype x ):
les drivers ATI compilent, alors que les drivers nVidia sortent une erreur qui rappele qu'il faut utiliser #version 130 au minimum en début de shader afin d'utiliser cette fonction.
- constantes float: dans les anciens drivers GLSL ATI, les constantes du type .0 et 0. ne sont pas float. Il en résultera des erreus de compilation de shader. (ndlr, je ne sais pas de nos jours).
- utilisation du mot clé varying:
Les drivers ATI autorisent son utilisation dans les nouvelles versions de GLSL, alors que les drivers nVidia nous rappelent que le mot clé est déprécié depuis la version 130. utiliser in et out à la place (seulement un warning).