 Par David Lanier - www.dl3d.com
1. Introduction : connaître les contraintes de la plateforme cible !
Un jeu vidéo est destiné à tourner sur des plateformes cibles : Microsoft XBox, Sony Playstation 2 ou PSP, Nintendo Gamecube(NGC) ou DS etc... Il faut connaître les contraintes des ces consoles pour les matériaux et le mapping pour que vos modèles 3D puissent s’afficher correctement. Nous n’aborderons pas ici les contraintes spécifiques à la DS, la PSP ou la NGC.
2. Contraintes sur les matériaux, shader et textures
Avant tout, vous devez savoir quelle est la part allouée pour les textures dans la mémoire, ceci découle d’une discussion avec le chef programmeur qui doit avoir budgétiser ce point en méga-octets. Généralement, nous limiterons le plus possible le nombre de textures par objet. Si possible une seule texture, appelée skin, par objet, voire 2 quand l’une d’elles à une couche alpha. Nous faisons ceci afin d’éviter d’envoyer à l’affichage plein de petits morceaux d’objet de quelques triangles puisque les primitives (= groupe de triangles) sont triées, entre autres, par matériau.
 © Copyright Cyril Moreul
2.1. Shaders Aujourd’hui, tous les GPU sont programmables et les shaders temps réel sont devenus incontournables. A partir de shaders, vous pouvez assigner sur vos modèles des effets et les combiner. Les langages de création de shaders temps réel sont parmi CG de Nvidia, HLSL de Direct X, OpenGL 2.0 shading language et RenderMonkey d’ATI. Les logiciels de modélisation 3D vous permettent d’afficher certains de ces shaders dans le viewport en temps réel. Gardez à l’esprit qu’appliquer de multiples shaders sur beaucoup d’objets rajoutera une qualité visuelle indéniable mais fera aussi baisser le framerate du jeu…
Le coût framerate d’un vertex shader est intimement lié au nombre de faces/sommets de l’objet et il est assez facile de savoir ce que cela va coûter de l’ajouter dans la scène. C’est plus difficile pour un pixel shader, car celui ci a un coût qui est fonction du nombre de pixel rendu à l’écran… I.e. il faut considérer que si l’on peut s’approcher de l’objet jusqu’à se coller à lui, il puisse remplir tout l’écran et là, le coût du pixel shader peut devenir prohibitif. Donc quand l’on crée un objet, il faut toujours le faire en ayant une idée précise de son utilisation dans le jeu.
 © Copyright Cyril Moreul
|