Dessiner des
Graphismes pour un Jeu
Vidéo,
conseils & connaissances de bases.
par daminetreg
Ce
petit cours, met les choses en place pour les nouveaux arrivés dans la
création de graphismes dans le jeu vidéo, n'entrant pas dans la
technique, il n'a que pour but d'expliquer quels sont les éléments qui
font un bon jeu graphiquement parlant et quelles sont les principales
techniques usées, tant pour la 3d que la 2d. Trucs et astuces sont les
maîtres mots des lignes qui suivront.
I) Le Graphiste 2d
II) Le Graphiste 3d
III) Brin de philosophie et nostalgie additionnelle…
Le premier argument de vente d’un jeu vidéo commercial de nos jours est la qualité graphique du soft en question, cependant même si faire du beau pour le graphiste vidéo ludique est important, il doit se contraindre à l’élément premier d’un jeu vidéo, c’est qu’il soit jouable, en conséquence il est nécessaire que les graphismes du jeu aillent dans le sens d’améliorer sa jouabilité.
Quand un artiste fait un tableau, un artwork, enfin lorsqu’il dessine dans l’idée que l’image est une fin en soit il ne pense qu’à la beauté de la chose, et pour les ingénieurs eux, seul l’exactitude géométrique compte. Mais à ces deux premiers utilisateurs du graphisme et donc du dessin vient s’ajouter un troisième, le graphiste vidéo ludique, celui qui nous intéresse d’ailleurs.
Lorsque vous lisez des tests de jeux vidéo, quel
est l'élément
majeur que les testeurs soulignent ? La jouabilité (GamePlay).
Pour une
bonne jouabilité il faut que le joueur soit en face d’un environnement
clair où
il ne peut se perdre visuellement, mais surtout il est également
nécessaire que
la fluidité de l’action soit préservée, et qu’il n’y ait pas de
ralentissements,
le graphiste 2d et 3d a cette tâche, ingrate je l’admet, de veiller
également à
ne pas surcharger la mémoire des Ordinateurs. La mission du graphiste
vidéo
ludique est donc de pouvoir faire le meilleur design possible tout en
ménageant
la digestion des processeurs et cartes graphiques.
Une chose qu'il est nécessaire que
vous vous disiez, c'est que dans un jeu le plus important graphiquement
parlant, est que les graphismes soient homogènes qu'ils concordent bien
entre eux et qu'ils soient clairs. Et en général c'est suffisant pour
faire un beau jeu, le talent graphique est en addition à cela, mais si
vous avez déjà l'homogéneïté et la clarté, vous êtes certain de séduire
l'oeil.
I) Le Graphiste 2d
Sprites
Une planche de sprite (strip) venant de The People’s Sprites.
Dans un jeu en 2d, les sprites sont les éléments en mouvement, qui représentent, les décors animés, les personnages, les tirs, les packs de munitions etc. en fait tout ce qui est « petit ».
En Français, si on le traduisait cela signifierai « lutins », les sprites sont en général dessinés sur un fond transparent. Dans Game Maker la couleur de transparence, c'est-à-dire celle qui sera effacée est définie par la couleur du premier pixel d’un sprite, celui tout en bas, tout à gauche (Sud-ouest pour les géographes). Ces sprites, sont des images qui s’ajouteront au décor, en tant qu’éléments dans le jeu, mais je songe que vous l’avez compris.
Le plus important dans le dessins de sprites, est d’en économiser le nombre, éviter d’en avoir de trop, ainsi pour une animation il est nécessaire de bien cerner les moments clés d’une animation afin de n’avoir que peu d’image pour celle-ci mais garder une fluidité.
Motion Capture Gratuit, ou presque…
La technique de Motion Capture consiste en ceci, en mettant des capteurs un peu partout sur le corps d’un humain on peut retranscrire les mouvements de celui-ci sur un ordinateur et ensuite en faire directement des animations 2d ou 3d.
On l’utilise pour la 3d exclusivement actuellement (enfin, aujourd’hui les animateurs 3d sont tellement bons qu’il n’y en a plus besoin, si, si…), mais elle nécessite un matériel onéreux et pas toujours aisé à mettre en place.
Toutefois pour le cas de la 2d cela est très peu coûteux et donne un bon résultat, en effet la seule chose que vous devez avoir est un caméscope ou un appareil photo numérique. Ainsi si vous désirez une animation vue de côté d’un homme qui coure ou d’une prise de karaté, il vous suffit de filmer quelqu’un qui court, ou bien de régler un certain nombre de prise de photo par seconde, ensuite de transférer cela sur votre ordinateur et avec un logiciel de retouche d’image quelconque de dessiner votre personnage, par-dessus la personne réelle qui court. Dans le cas où vous auriez un fichier vidéo, il existe pléthore de logiciels gratuits qui vous permettent de convertir du AVI en strip BMP ou en GIF.
De plus cette technique, usée pour le premier Princess of Persia, est amusante à appliquer, durant le moment de la retouche, mais également lors de la prise, avec quelques amis, c’est toujours amusant. Le développement d’un jeu vidéo ne se fait pas que devant le PC mais également dans la réalité.
Tuiles (Tiles) :
Un Tileset, présent dans le ressource pack 4 du site officiel de GameMaker.
Les tuiles sont les éléments de décor, de petites images non animées, qui une fois assemblées en mosaïque forment un décor, le décor. Elles sont usées en arrière plan mais également en avant plan et elles peuvent, en ce cas avoir des zones transparentes. Elles sont étymologiquement liée à l’immobilité, le graphiste doit donc dessiner les éléments importants du décors, mobiliers, portes, arbre, texture d’herbe, texture d’eau etc. qu’il doit découper en petites vignettes (16x16 ou 32x32 en général) et que l’on peut par la suite réutiliser en diverses logiques d’assemblage le plus fréquemment possible. Il ne faut jamais oublier, afin que l’assemblage se fasse sans problèmes, que ces morceaux aient des bordures qui se raccordent de façon parfaite les unes aux autres, on dit qu’elles doivent être tuilables. Eh le terme vous rappelle quelque chose !
Pour régler les tiles dans Game Maker, il faut aller dans le background properties d’un background, qui peut, et doit, être un tileset, puis de sélectionner : « Use as tile set », et d’ensuite remplir les cases demandées. Ils s’ajoutent par la suite dans les rooms à partir de l’onglet Tiles, où leur depth (Niveau de superposition, ou plan) est réglable.
Backgrounds
Exemple de Background (rapetissé dix fois) venant de Light in The Darkness projet abandonné par Level of Detail Software.
Les Backgrounds sont de la même famille que les tiles, sauf qu’ils sont beaucoup plus grand et constituent en eux-mêmes un seul décor, tuilable assez souvent soit, mais qui sont en une seule image. Ils servent aux cinématiques, aux écrans de chargements, mais également dans le jeu, par exemple une forêt en arrière plan (Background).
Ils peuvent également constituer une texture qui est usée à l’infinie dans une zone, par exemple dans un désert, on utilisera un background tuilable pour faire le sable. Et la différence avec le tile c’est qu’il se tuile (se tile) automatiquement, dans une certaine zone prédéfinie.
II) Le Graphiste 3d
Low Polygons
En 3d dite classique, il faut un modèle le plus précis que possible, pour un bon rendu. Dans un jeu vidéo il faut que le Graphiste 3d fasse des concessions : Plus il y a de facettes, d’arrêtes et de points, plus le modèle sera lourd à animer et afficher. Il est donc nécessaire de réduire la définition du modèle au strict nécessaire, si ce n’est moins.
Toute facette invisible, et donc inutile doit être supprimée, on dit que c’est alors un modèle low poly (Low Polygons).
Aussi aujourd’hui nous connaissons les méthodes de Bump Mapping qui permettent de donner un effet de relief simplement à partir d’une texture, ainsi pour économiser de la mémoire, il n’est pas utile de dessiner chaque polygone des impuretés d’une brique ou de l’ondulation d’une toiture en acier, mais plutôt de faire appel à la méthode de Bump Mapping que tout moteur 3d peut et sait employer de nos jours. Dans la partie texture, j’explique un peu comment faire une texture usant du bumpmap.
Les Faces Cachées
Il serait parfaitement inutile de modéliser une partie d’un objet 3d qui ne sera pas vue dans le jeu, par exemple il n’est pas nécessaire de dessiner l’avant d’un tank passant à travers un mur de la map.
Aussi la méthode de « face culling », qui permet d’indiquer quelle face d’un polygone doit être traitée (parfois les deux faces), peut être utile au graphiste 3d afin de savoir qu’il ne faut pas ombrer, éclairer ou encore texturer la face du polygone qui ne sera pas vue. Par exemple pour une caisse fermée, à quoi cela sert-il de texturer l’intérieur de celle-ci, si ce n’est de donner mal au ventre au processeur graphique ?
Textures
En 3d, les textures font, à peu de choses près, tout le boulot. Ce sont elles qui donnent l’impression que les objets et les décors 3d sont bien là. Le graphiste doit alors se débrouiller pour faire des textures les plus détaillées possible tout en gardant un nombre restreint de pixels et un nombre minimal de couleurs (profondeur). Les textures, en plus de cela, doivent pouvoir se raccorder comme pour les tuiles ou background de la 2d.
Il est bon à noter que dans GameMaker et avec les fonctions d3d, et d’ailleurs dans la plupart des moteurs 3d, la taille des textures doivent être des puissances de 2.
Pour tout modèle on utilise comme dans tout moteur de jeu usuel, seulement trois type de texture, contrairement aux logiciels de modelage qui vont jusqu’à 7 ou 8.
Par exemple, pour un tonneau, simple cylindre…
Suivent dans l’ordre, la texture nommée texture diffuse, qui sera l’habillage final du tonneau, suivie de la texture de BumpMap, qui forcera la diffuse à s’appliquer dessus, et ainsi donner une impression de relief de deux barres cerclant le tonneau, puis enfin la spéculaire, usée pour le moteur de lumière et de reflets, quelles zones brilleront, et lesquelles non, celles plus clairs sont évidemment celles qui brillent le plus, et celles plus foncées le moins.
Ces textures ont été réalisées par Kai, et faisait originellement 512x512 pixels, elles étaient usées dans mon projet Multideath.
C’est ainsi qu’on aurait le rendu, dans la plupart des moteurs 3d de jeux, forçant le Bump Map au maximum. Toutefois les textures de Bump Map peuvent avoir des normes changeantes selon le moteur de rendu, en effet ça n’est jamais pareil, pour savoir comment faire une texture de Bump Map correcte par rapport au moteur référez vous à l’aide donnée avec le SDK, là c’est à vous de vous débrouiller, je ne peux pas référencer tout les moyens de faire du Bump Mapping.
Pour finir voici le rendu :
III) Brin de philosophie et nostalgie additionnelle…
Ah… Que c’était mieux avant, tout ce que je vous ai décrit est la tâche qu’avait le graphiste il y a encore quelques années, et j’espère que vous la perpétuerez, car aujourd’hui on n’a plus qu’en tête de faire de beaux graphismes et peu importe la mémoire usée, du moment que c’est beau, parce qu’on compte sur la puissance du matériel qui n’a de cesse d’évoluer.
Ainsi il faut toujours être à jour, tous les 6 mois avoir un PC neuf pour pouvoir jouer aux derniers jeux, des disques durs gigantesques, des processeurs rapides à l’extrême, des cartes graphiques gérant les dernières fausses technologies comme le HDR, tirées du Cinéma, et totalement réalisables à travers un algorithme présent dans le jeu et non pas comme un système usant d’un processeur externe entièrement dédié à cette tâche !
Aujourd'hui nos graphistes, pour la plupart, ne font plus que du gâchis, tout ça pour vendre, beurk !
J’éprouve un extrême dégoût pour cela, et il ne serait pas mauvais que dans les prochaines créations les graphistes, et game designers pensent plus au gameplay plutôt qu’à la beauté unique essence actuelle des jeux commerciaux.
De toutes façons à faire toujours plus beau, à acheter des PC toujours
plus
chers, plus neufs, plus rapide, à aller toujours plus vite,
qu’avons-nous
vraiment à gagner ? Du stress et de l’endettement peut-être… Je
laisse la
question ouverte.
Buhl Damien
alias daminetreg
http://www.lecbna.org/