Comment devenir un développeur de Jeux Vidéo ?


Chaque semaine à Shiro Games, nous recevons de nombreux CV et lettres de motivations. Le temps nous manque pour répondre de façon personnelle à tous, c’est la raison pour laquelle j’ai pensé qu’il serait utile d’expliquer les critères qui nous semblent important quand nous recrutons quelqu’un.

Attention, ce guide n’a pas pour vocation à être Universel !

Il y a plusieurs chemins qui mènent à la création de jeu, plusieurs façon de faire ce métier au quotidien. Je vais essayer donc de décrire, par rapport à ma propre expérience, ce qui me semble être le meilleur chemin possible pour ceux qui veulent devenir développeur de jeux dans un studio indépendant comme Shiro. D’autres personnes pourront avoir d’autres avis qui diffèrent du miens, cela ne veut pas forcément dire que l’un ou l’autre sont faux.

Ceci étant dit, commençons par définir un peu notre sujet…

Qu’est-ce qu’un développeur de jeux ?

La réponse est plutôt facile, elle se trouve dans la question: un développeur de jeux est quelqu’un… qui crée des jeux.

Soit.

Mais essayons de détailler un peu ce que l’on entend par “créer des jeux”, car si vous n’en avez jamais créé, cela peut vous sembler encore flou.

A l’origine de tout jeu il y a une idée, soit pas vraiment originale (“Et si on faisait un Minecraft mais avec plus de blocs ?”) ou au contraire très — parfois trop ? — originale (“On va jouer un chihuahua qui voyage dans le temps pour se reproduire avec des dinosaures, ça va être génial !”).

Une fois l’idée de départ trouvée, il va falloir définir les règles du jeu, le Game Design (GD) comme on dit dans le métier. Il y a de très nombreux aspects pour réaliser un GD, mais il faut en priorité répondre aux questions suivantes :

  • qu’elle est l’expérience que je veux que les joueurs aient en jouant à mon jeu ? S’agit-il d’un shoot’em up super hardcore que seuls ceux ayant le plus skills pourront finir, ou d’un jeu contemplatif dans une vallée peuplée de poneys multicolores ?
  • comment arriver à cette expérience ? Qu’est-ce qui est important de réussir pour que cela fonctionne ?
  • à quoi va ressembler le jeu : en 2D, en 3D, vue de haut ? de coté ? de derrière ? Avec ou sans scrolling ?
  • quels vont être les contrôles (au clavier ? a la souris ? au pad ? peut on sauter ? courir ? etc.)
  • quel est le thème du jeu ? est-ce que les différents éléments du Game Design sont en accords et renforcent ce thème ?
  • (seulement si vous comptez commercialiser votre jeu) qu’est-ce qui est unique dans mon jeu par rapport aux autres jeux ? Est-ce suffisant ? Comment le mettre en avant au maximum ? Comment bien communiquer sur cela ?
  • …et de nombreux autres points qui ne sont pas le but de ce post ☺

L’idée du Game Design est de se faire une idée aussi précise que possible du jeu que l’on veut réaliser. Une chose importante à savoir c’est que le GD n’est pas gravé dans le marbre, mais va évoluer conjointement avec la réalisation du jeu.

En effet une fois que l’on a terminé le GD, on va passer à la réalisation d’un prototype, et en fonction des résultats que l’on obtient avec ce prototype on va devoir modifier à la fois le GD et le prototype.

On pourrait dire que le GD fait des hypothèses et que l’on se sert du prototype pour les vérifier, et — comme en physique des particules — si l’expérimentation invalide nos hypothèses il faut soit revoir la théorie soit corriger le prototype s’il n’est pas correct.

Bien entendu, plus on fait d’innovation et plus le Game Design va être hypothétique, et donc plus il a de fortes chances d’être modifié en profondeur pendant la réalisation du jeu.

Mais comment réalise-t-on ce prototype au juste ?

Il existe de nombreux outils qui permettent d’apprendre la création de jeux sans programmer ou avec une programmation simplifiée, les plus connus étant Game Maker, Stencyl, Construct2.

Ce sont tous de très bon outils qui sont parfaits pour vous familiariser avec la création de jeu. Ils ont l’avantage de vous prendre la main dés le départ et de permettre très rapidement d’avoir quelque chose de joli qui s’affiche et fonctionne, ce qui vous permet de conserver votre motivation. Si vous êtes du genre à abandonner facilement ce que vous commencez, c’est surement le meilleur choix pour débuter.

Mais dans tous les cas, si vous voulez travailler dans la création de jeux, je vous conseille soit de commencer soit de passer rapidement à l’étape suivante, qui est d’apprendre à programmer.

Je ne vais pas m’étendre sur le sujet, vu que ce n’est pas l’objet de ce post, mais il existe de nombreux langages de programmation disponibles qui vous permettront de créer des jeux, et encore plus d’outils qui vous faciliteront une grande partie du travail.

Je vais tout de même citer le langage Haxe (que j’ai créé) ainsi que la bibliothèque HaxeFlixel qui donne de nombreux exemples que vous pouvez modifier ensuite.

Dans l’industrie du jeu vidéo — celle qui crée des jeux à gros budget avec des équipes de plusieurs centaines de personnes — la programmation et le game-design sont très souvent séparés.

En ce qui me concerne je pense qu’il faut autant que possible les garder ensemble, surtout quand on cherche à se former seul.

En effet, comment savoir qu’un game design est bon avant d’avoir pu le tester ? Et comment se former à la programmation de jeux si l’on n’a pas de jeu à réaliser ?

En essayant de réaliser un jeu précis, on améliore ses capacités techniques. Et en jouant à son/ses propres jeux — et en écoutant les retours des gens qui les testent — on peut améliorer ses capacités en game design. En maîtrisant les deux aspects on est en mesure de s’améliorer de façon continue juste en passant son temps libre à créer des jeux.

Maintenant que nous avons cerné ce qu’était un développeur de jeux, essayons de répondre à la question suivante:

Comment devient-on développeur de jeux ?

En fait c’est très simple, pour devenir développeur de jeux, il suffit tout simplement… de créer des jeux !

Attention, cela ne veut pas dire que l’on est pour autant un bon développeur de jeux, mais c’est déjà une première étape.

Mais cette règle simple implique un corollaire qui est tout aussi important : si vous n’avez pas créé de jeu, vous n’êtes — à mon sens — pas un développeur de jeux !

Je dis cela car nous voyons souvent des développeurs confondre créer des jeux avec créer un “moteur de jeu”. Beaucoup se lancent dans la création de moteur sans avoir en fait créé de jeu au préalable ou même essayé de réfléchir au(x) jeu(x) qu’ils voudraient créer…

C’est en fait tout a fait normal et compréhensible. Sans savoir comment s’y prendre pour créer un jeu, on commence souvent par créer un petit moteur, et ensuite il est plus facile, plus immédiat de rajouter des “features” à un moteur que de se lancer dans la création d’un jeu et à la dure tâche de le rendre amusant.

D’autant plus que sans avoir créé de jeux, comment savoir ce qui est nécessaire d’avoir dans un “moteur” ? Comment savoir si ce que l’on fait — même si c’est très joli techniquement — répond aux besoins d’un quelconque jeu ?

A mon sens, c’est là que réside la vraie différence entre un ingénieur, un technicien — et il en faut aussi dans les équipes ! — et un développeur-créateur de jeux. Le créateur ne PEUT pas se contenter de créer une technologie, il pense en priorité au jeu, et le moteur qu’il crée (quand c’est lui qui s’en charge) n’a pour but unique que la réalisation du jeu.

Pour un développeur de jeux, le jeu est bien plus important que le moteur. Le moteur est là pour servir le jeu, pas le contraire.

Bon, voilà déjà une première étape de franchie : pour devenir développeur, il faut imaginer des jeux et les réaliser. A noter qu’il n’est absolument pas nécessaire que ce soient des nouvelles idées de jeux qui n’ont jamais été réalisées par personne. Déjà parce que (sauf votre respect) il y a de fortes chances que ce soit une mauvaise idée, et ensuite parce qu’il vous sera plus difficile d’établir une comparaison avec le “feeling” de l’existant.

Prenons un jeu de plateformes. Il existe des dizaines de variantes, avec ou sans double saut, avec des vitesses et une finesse de contrôle différentes. Parmi toutes ces possibilités, il existe au moins 99% de mauvais réglages, c’est à dire de choix qui vont rendre votre jeu de plateforme soit injouable, soit pas vraiment amusant.

Apprendre cela ne nécessite pas d’inventer une nouvelle variante du jeu de plateforme, il suffit déjà d’arriver à ce que le jeu soit fun, et donne envie de continuer. C’est une première étape nécessaire avant de pouvoir créer un jeu plus innovant (si c’est votre but).

Le jeu ne doit pas forcément être beau non plus ! Beaucoup de développeurs font du “moteur” par manque de capacité à créer seuls des graphismes. Ne vous laissez pas arrêter par cela : un jeu peut être amusant avec juste des carrés de couleur. D’autant plus que ce qui vous importe, c’est d’apprendre, pas de réaliser une oeuvre d’art.

Comme on l’a vu, dans le monde pro aussi, avant de réaliser une version complète d’un jeu on passe par un ou plusieurs prototypes qui sont souvent très sommaires graphiquement. Le but étant de pouvoir les modifier facilement pour “itérer” plusieurs versions successives jusqu’à ce que l’on ait trouvé LE réglage ou LE gameplay qui fait que le jeu est fun.

Pas besoins d’excellents graphismes pour cela, même si je vous conseille de faire l’effort nécessaire pour que votre jeu soit tout de même compréhensible et jouable par quelqu’un d’autre que vous .

D’ailleurs votre jeu n’a même pas besoin d’être terminé. Je dirais même que c’est déconseillé… Pourquoi ? Parce que dans la réalisation d’un jeu, vous allez passer — principe de Pareto oblige — 20% de votre temps à créer/apprendre et 80% de votre temps à faire le reste: le contenu, les menus, la sauvegarde, etc.

Si vous vous arrêtez à un prototype fonctionnel mais sommaire après les premiers 20%, vous pourrez ainsi consacrer tout le temps restant à créer d’autres jeux et vous apprendrez donc ainsi en moyenne cinq fois plus vite !

Et finalement, mon dernier conseil pour devenir développeur de jeux est : n’attendez pas ! N’attendez pas qu’une école vous forme, n’attendez pas d’avoir fini votre autres activités, n’attendez pas que ça vous arrive, car ça ne vous arrivera pas !

J’ai moi-même commencé à programmer des jeux à 10 ans, et cela a été mon passe temps principal pendant une douzaine d’années, puis mon travail (et encore mon passe temps en plus) depuis douze ans à nouveau. Quel que soit votre talent, l’expérience acquise est primordiale, irremplaçable, absolument nécessaire. Si vous voulez sérieusement devenir développeur de jeux vidéo, n’attendez pas, et faites-en votre but de tous le jours.

Bien. Vous avez compris l’essentiel.

Pour devenir développeur de jeux il faut créer des jeux, multiplier les expériences, explorer les différents styles, savoir reproduire avant d’inventer, et éviter de perdre son temps à autre chose, car qu’y a-t-il au monde de plus intéressant que de créer des jeux ? :-)

Mais nous n’avons pas répondu à la seconde question, celle qui intéresse nombreux d’entre vous, à savoir :

Comment se faire embaucher dans un studio de création de jeux vidéo ?

Bien entendu je ne vais ici encore une fois parler que ce ma propre expérience, que ce soit à à Shiro Games ou avant à Motion-Twin.

Comme je l’ai dit en préambule, nous recevons de nombreuses candidatures, et pour être honnête avec vous la plupart ne sont pas à la hauteur. Beaucoup de personnes veulent rentrer dans le monde du jeu vidéo sans s’être auto-formé au préalable pour cela.

Certaines grandes structures comme Ubisoft doivent pouvoir certainement prendre quelqu’un sur un simple potentiel et le former ensuite, mais ce n’est pas le cas de la plupart des petits et moyens studio que je connais.

Cela veut dire que sans en être passé par l’étape que je viens de vous décrire dans le chapitre précédent, sans avoir de portfolio de jeux déjà réalisés à présenter aux gens qui vous recrutent, sans avoir déjà expérimenté par vous-même ce que cela signifie de créer un jeu vidéo, sans tout cela vos chances d’être embauché sont en fait quasi nulles.

Cela ne veut pas dire que vous n’avez pas le potentiel, mais il va falloir passer par la case formation avant d’arriver à intéresser suffisamment un studio pour qu’il vous donne votre chance.

Pour pouvoir encore plus améliorer ses chances et ses capacités, et savoir vous-mêmes où vous en êtes sur la longue route qui vous sépare de votre rêve, il y a heureusement une technique simple et facile qui consiste à participer à une Game Jam.

Et je vais tout de suite vous présenter la meilleure Game Jam que je connaisse, celle a laquelle d’ailleurs je continue de participer dès que je le peux, à savoir le Ludum Dare.

Le principe du Ludum Dare suit celui de la plupart des jams, à savoir créer un jeu sur un thème imposé dans un temps limité.

Il se distingue par le fait que vous pouvez participer depuis n’importe où dans le monde, que le temps assez court pour créer un jeu (48h ou 72h) et par ces deux modes de compétition :

  • la Compo : composition en solo en 48h, vous devez créer votre jeu entièrement seul : son, musique, graphisme, et bien entendu programmation. C’est pour moi la meilleure façon de vous améliorer que de participer à ce mode.
  • la Jam : travail en équipe en 72h, pas de limite au nombre des personnes, c’est idéal pour apprendre à travailler avec d’autres, ce qui est aussi nécessaire de savoir faire avant de rejoindre un studio.

Une fois le jeu créé, le principe est que vous avez trois semaines pour noter les jeux qu’on créés les autres participants. Plus vous notez de jeux et plus vous recevrez de notes pour votre jeu. Cela est excellent pour plusieurs raisons :

  • vous vous trouvez évalué par d’autres personnes qui ont eu les même contraintes que vous, qui savent bien ce qu’il est possible ou pas de faire en un temps limité.
  • les commentaires (et les notes) que vous aurez sur votre jeu seront souvent autant d’aides sur ce qui a marché ou n’a pas marché, vous permettant de vous améliorer pour la prochaine fois
  • vous testez vous aussi des jeux faits par d’autres personnes dans les mêmes conditions que vous, ce qui vous permet de vous situer, d’être inspiré, de découvrir ou de comprendre de nouveaux mécanismes.

La participation au Ludum Dare est bien entendu gratuite, et s’il n’y a rien strictement rien à gagner a part le respect des autres créateurs c’est justement le meilleur moyen pour que cela se passe dans une excellente ambiance.

Le Ludum Dare se passe trois fois par ans (en Août, Décembre et Avril) et lors de la dernière édition sur le thème “Connected Worlds”, plus de 2500 jeux ont été créés pendant le weekend, soit 1500 en Compo et 1000 en Jam.

Vous pouvez accéder à toutes les informations nécessaire sur le site du Ludum Dare et si vous désirez voir les jeux que j’ai créé à l’occasion des différentes éditions du Ludum Dare auxquelles j’ai participé, cela se passe ici.

Je ne saurai jamais assez insister pour que vous participiez au moins une fois au Ludum Dare, et à d’autres Game Jam si vous en avez l’occasion et l’envie. C’est une excellente expérience, l’une des meilleures que l’on peut avoir en tant que créateur de jeux (même si on ne gagne pas) et l’expérience que l’on en retire est très importante.

Une fois que vous avez construit un portfolio qui vous semble suffisamment solide, n’hésitez pas à contacter les studios qui vous intéressent le plus. Cela ne garantit bien entendu aucunement que vous serez embauché, car il faut que le studio recrute à ce moment là, mais vous êtes certain d’attirer bien plus leur attention que par un simple CV accompagné d’une magnifique Lettre de Motivation jurant sur toute votre famille que vous êtes passionné de jeux vidéo et que vous adoreriez y travailler…

Et ensuite, au quotidien ?

Le quotidien des développeurs de jeux n’est pas facile tout le temps. Attention, je ne me plains pas un seul instant ni ne regrette à aucun moment d’avoir choisi cette voie. J’estime même avoir beaucoup de chance de pouvoir faire ce métier que j’ai choisi et qui me passionne.

Mais un métier reste un métier, ce qui veut dire qu’il faut gagner sa vie, et il faut donc passer de la création de jeux, à leur réalisation (jusqu’au bout cette fois-ci !) et enfin à leur commercialisation, qui peut être une bonne ou une mauvaise surprise selon les cas.

Cela est particulièrement vrai si vous comptez vous lancer dans l’aventure de la création d’un studio. Sachez que c’est un chemin semé d’embûches et que rares sont ceux qui arrivent vraiment à en vivre. Cela nécessiterait très certainement un post complet à part entière d’ailleurs…

Si par contre vous rejoignez un studio existant, choisissez celui qui vous permettra de vous épanouir le plus.

Je n’ai rien contre les grands studios, mais sachez que si par exemple vous voulez rejoindre Blizzard, il y a peu de chance que l’on vous confie la direction de leur prochain hit, et que les équipes sur ce genre de projet se comptant en centaines de personnes, votre apport personnel a de fortes chances d’être peu significatif.

Si vous êtes prêt à mettre de coté vos envies créatives pour pouvoir participer à la création d’un jeu AAA, alors rejoindre un grand studio est surement la bonne solution. Les équipes sont en général organisées par groupes de compétences développeurs, animateurs, level designers, graphistes, etc. supervisés par un ou plusieurs “Lead” (Lead Developer par exemple) qui s’occupe d’encadrer les personnes sous sa responsabilité, et est l’interface avec le “Project Manager” qui dirige le projet via les Leads. C’est bien sur très schématique et cela peut varier en fonction des structures, mais cela vous donnera déjà une première idée. Vous pouvez consulter le Guide des Metiers du SNJV pour avoir plus de détails.

A coté de cela, il existe de nombreux studios de tailles petite ou moyenne qui fonctionnent de façon beaucoup plus horizontale, avec des équipes de taille réduite et beaucoup plus d’interaction entre les différents métiers.

Je préfère personnellement cette façon de réaliser les jeux, mais le choix des personnes et la qualité de l’équipe de management est ici primordiale, et peut transformer ce qui s’apparente à une belle aventure en une vraie galère, suivant les cas. Renseignez vous sur le studio avant d’accepter une offre, évitez ceux qui ont trop gros “turn over” (recrutent sans cesse des gens mais ont une petite équipe) ou qui fonctionnent principalement sur des stages (peu ou pas rémunérés). Mais vous risquez rarement pire que de perdre votre temps, alors n’hésitez pas à continuer à vous améliorer et à candidater à d’autres studios si celui que vous avez rejoint n’est pas à la hauteur de vos attentes !

Quand tout se passe bien par contre, créer des jeux vidéo est un vrai plaisir, sans cesse renouvelé pour peu que la passion vous habite.

Bonne chance à tous ceux qui veulent suivre ou suivent déjà ce chemin !

A propos

Pour ceux qui se posent des questions sur l’auteur de ce (trop) long post, je m’appelle Nicolas Cannasse, et je suis développeur de jeux vidéo depuis une douzaine d’années. J’ai co-fondé le studio Motion-Twin en 2001 avec mon ami Benjamin Soulé, et nous avons réalisé de nombreux jeux web… bien avant que Facebook n’existe.

J’ai ensuite quitté Motion-Twin en 2012 pour créer un nouveau studio qui s’appelle Shiro Games et qui crée des jeux indépendants. J’y ai dirigé la création du jeu Evoland qui est sorti sur Steam début 2013 est s’est déjà vendu à près de 400.000 exemplaires.

Le but de Shiro Games est de mettre en place plusieurs équipes de création de jeux, chacune composée d’une dizaine de personnes au maximum et où chacun peut participer activement à la création. Aprés la mise de coté de notre jeu UntilDark je travaille actuellement (Sept 2014) à la création d’Evoland 2, qui absorbe l’essentiel de mon énergie quotidienne, pour mon plus grand bonheur.

D’ailleurs Shiro Games recrute, vous pouvez en apprendre plus sur nous et nous contacter via notre site.

J’ai créé par ailleurs le langage de programmation Haxe disponible en open source et je dirige la Haxe Foundation qui s’occupe de sa maintenance et de sa promotion.

Mon e-mail si vous voulez me contacter : nicolas at shirogames.com
Mon profil LinkedIn si vous voulez être connecté, je garde plutôt Facebook pour les amis proches.