Entre le jeu vidéo et le développement d’applications plus classiques j’ai eu l’occasion de travailler avec un certains nombre de graphistes, et de remarquer comme certains traits se retrouvent souvent chez cette espèce. Aujourd’hui j’ai envie de me faire plaisir, et de vous raconter : le graphiste.
À ceux qui ne me connaissent pas, mon métier est programmeur. Si vous ne situez pas ce que c’est, je vous renvoie à cette phrase d’un game-designer de Blizzard qui résumait la création d’un jeu vidéo :
Programmers make the game run, artists make it beautiful, but it is the designer’s job to make it fun.
Les programmeurs font marcher le jeu, les graphistes le rendent beau, mais c’est au game-designer de le rendre sympa.
En tant que programmeur, on peut être amené à beaucoup communiquer avec des graphistes, et c’est amusant car ce sont deux espèces qui n’ont pas la même apparence, pas la même culture, pas la même approche et qui ne parlent pas la même langue. :-)
Le graphiste se reconnaît d’abord à son allure. Alors que la tenue vestimentaire du programmeur évolue plutôt depuis le jean et teeshirt lorsqu’il est jeune diplômé, vers un habillement dit classique à l’approche de la trentaine, pantalon de ville et chemisette avec peut-être encore quelques référence à la culture geek, le graphiste au contraire est tout droit sorti d’une affiche publicitaire. Coupe de cheveux tendance, pantalon décontracté à la découpe moderne, attributs corporels divers : bracelets, piercings, éventuellement paire de chaussures hors du commun, etc. Attention, ce n’est pas du punk brutal : c’est plus subtil et sophistiqué, même si c’est parfois proche du personnage de jeux vidéos.
Ensuite le graphiste à besoin d’un environnement très particulier pour travailler. Outre la tablette graphique, on reconnaît sans hésitation son bureau à l’écosystème qui s’y est rapidement développé : affiches, Nintendo DS et boites de jeux vidéos, livres d’artworks, feuilles de brouillon avec des dessins esquissés (souvent de grande qualité), figurines et autres objets improbables en nombre et tailles variées (qui peuvent aller jusqu’au dragon de 30cm d’envergure posé sur l’écran). Le graphiste a en effet besoin d’une sollicitation visuelle importante pour être productif.
La salle du groupe de graphiste est normalement bruyante ; c’est ce qui la rend parfaitement incompatible avec l’environnement du programmeur. Le graphiste a besoin d’un flux continu de conversations pour pouvoir travailler. Séparez un graphiste de son groupe pour le mettre dans le bureau austère et silencieux (selon des critères de graphiste) des programmeurs et il va vite montrer des signes de dépression. Mettez au contraire un programmeur dans la salle des graphistes et il ne pourra tout simplement plus travailler du tout.
Le chef des graphistes se reconnaît à la taille de son écran. Son titre est D.A. : il est craint et respecté. Beaucoup rêvent d’être lui car c’est lui qui décide de l’orientation du style graphique, et c’est quand même plus sympa que de faire des textures d’herbe à longueur de journée.
Comme pour les chasseurs, en terme de talent, il y a le bon graphiste et le mauvais graphiste. Quand le bon graphiste vient vous poser une question tout en s’occupant les mains avec une feuille qui traîne sur votre bureau, la feuille termine au mur de votre bureau. Si par chance vous êtes un programmeur très sollicité par un bon graphiste, rapidement les autres programmeurs deviennent jaloux de votre mur. Quand le mauvais graphiste vient vous voir, vous vous retenez de lui expliquer que son animation de personnage qui court est complètement ratée parce que ça ne servirait à rien.
Le graphiste parle une langue différente. Le graphiste expérimenté utilisera sans pitié des termes techniques de typographie ou de composition. Dans un tel cas soit vous vous serez déjà documenté sur le sujet, soit vous aurez affaire à un graphiste pédagogique, soit vous serez largué. Le graphiste peu expérimenté mettra à peu près tout et n’importe quoi derrière une liste relativement courte de mots tels que « flou », « shader », « glow »… et vous aurez toutes les peines du monde à comprendre ce qu’il essaie de vous dire en graphiste. De temps en temps le graphiste essaiera de vous emprunter votre vocabulaire technique mais pour y mettre d’autre chose, et vous devrez penser à traduire.
Le graphiste est étranger à l’idée de système de gestion de versions. C’est normal qu’il ne connaisse pas : les outils de production ne sont pas son domaine de compétence. Mais là je ne dis pas qu’il ne connaît pas, j’insiste sur le fait qu’il y est étranger. Vous aurez beau lui expliquer le principe, le fait que ça permet de retrouver n’importe quelle version précédente d’un fichier pour lui éviter d’avoir à s’en préoccuper, lui montrer comment on s’en sert : vous trouverez régulièrement sur votre dépôt des fichiers texture_backup.png et texture_backup2.png. Vous verrez également fleurir des fichiers créés automatiquement tels que les thumbs.db de Windows, lorsque le graphiste aura tout ajouté automatiquement sans vérifier.
Le graphiste n’accorde d’ailleurs pas la moindre importance aux noms de fichiers et sera incapable de respecter toute règle de nommage quelle qu’elle soit. Le nom d’un fichier créé par ses soins est fonction de son inspiration du moment, et a de fortes chances de changer s’il doit un jour apporter une modification. Vous verrez donc facilement un fond.png à côté d’un background.jpeg et d’un bg_bleu.png, qui seront en fait la même ressource. Il faut être attentif. Souvent c’est votre projet lui même qui vous signalera les nouveautés, non pas parce que vous verrez de nouvelles choses apparaître, mais parce que vous verrez apparaître des choses qui ne marchent pas. Expliquez lui qu’il lui suffit de placer un objet nommé « mine » dans le monde pour avoir une mine créée à cet emplacement, et vous trouverez rapidement tout un tas de « Mine », « mines », « mine1 », « mine_bleue » et autres preuves de créativité. Oubliez l’idée d’essayer de lui expliquer que l’outil d’import ne peut pas deviner ce qu’il voulait faire : faire un outil d’import qui devine ce qu’il voulait faire vous prendra moins de temps. C’est la conclusion à laquelle je suis arrivé en voyant un de mes collègues essayer l’une, puis l’autre méthode.
Le graphiste n’accorde pas non plus d’importance à l’aspect technique. En cela que ce n’est pas son travail, je le soutiendrais entièrement, s’il avait des outils lui permettant de s’abstraire de cet aspect. Mais ce n’est pas le cas : ses outils lui permettent d’exporter dans un luxe possibilités de formats parmi lesquels le choix risque fort d’être arbitraire. Le graphiste vous sortira sans problème une photo en PNG, un aplat en JPEG, des images monochromes en RGBA et des textures dans des résolutions absolument obscènes aux limites techniques des cartes graphiques pour des éléments qui ne feront que quelques pixels à l’écran. Paradoxalement, il pourra vous enseigner malgré lui des détails techniques fort intéressants sur ces formats. C’est par exemple quand un graphiste m’a envoyé une image au format PNG de près de 1Mo pour moins de 500 par 500 pixels que j’ai découvert que ce format gérait les calques : le fichier contenait les dix versions de l’image…
La rigueur dans le positionnement des éléments est étonnamment fluctuante chez le graphiste. Lors de la création d’une interface un peu jolie par exemple, il appartient au graphiste de faire les différentes version d’un bouton (normal, appuyé, sélectionné…) ou d’une fenêtre (active, en arrière plan…) pour ne citer que ces éléments. Les différentes versions venant s’afficher au même endroit selon l’état de l’élément. Naturellement en tant que programmeur, il vous semblera évident que ces versions doivent être calées au pixel près. Si vous travaillez avec un graphiste qui fait des éléments de la même taille et correctement alignés, prenez en soin, c’est un spécimen rare.
Mais à l’inverse, si le graphiste imagine un élément textuel et vous propose un exemple réalisé avec Photoshop, que les astres vous protègent si vous n’avez pas les moyens techniques de reproduire le résultat exactement à l’identique ! L’affichage de texte est d’ailleurs un thème de désaccord très récurrent entre graphistes et programmeurs. Lorsque le graphiste doit imaginer un élément textuel, il se transforme en maquettiste : les images viennent s’agencer et s’aligner autour pour un résultat le plus esthétique possible. Malheureusement il oubliera immanquablement de tenir compte de l’aspect dynamique de ce texte, à l’instar de sa composition. Qu’il s’agisse d’un compteur et il vous proposera un exemple avec deux chiffres qui ne marchera plus avec un ou trois chiffres, ou pire, il vous dessinera des chiffres ne feront pas tous la même largeur, donnant un résultat atroce une fois animé. Qu’il s’agisse de mots, et vous pourrez lire dans ses yeux toute la frustration du monde lorsque vous lui rappellerez que dans la version allemande son texte sera trois fois plus long et ne rentrera pas dans l’espace qu’il a prévu.
Mais pour le coup, dans ce cas là vous pourrez pleurer avec lui d’en être réduits à faire un truc moche et aller noyer votre chagrin ensemble dans le pub en bas du bureau.