À la découverte d’Unity3D avec les Sfeiriens

À la découverte de Unity 3D

Découvrez, au travers de l’expérience de trois développeurs de SFEIR, les avantages de Unity3D pour développer vos jeux vidéo. Ils vous partagent aussi ce qu’ils ont pu retenir et appliquer dans leur pratique dans leur quotidien en mission. 

SFEIR : Bonjour, pouvez-vous vous présenter en quelques mots ?

Julien : Presque comme le chanteur, je m’appelle Julien Klaer, j’ai 24 ans et je développe des jeux vidéo depuis environ 4 ans. Je travaille au Luxembourg depuis septembre 2016 et j’ai intégré SFEIR il y a cinq mois.

Jimmy : Moi c’est Jimmy Vuidart, 24 ans également. J’ai rejoint SFEIR il y a bientôt 2 ans. Mes principaux intérêts depuis toujours sont le développement de jeux vidéo et la raclette.

Jonathan : Salut, moi c’est Jonathan Proietto-Stallone, j’ai 26 ans. J’ai commencé le développement il y a 6 ans déjà et depuis quelques semaines je me forme en tant que graphiste. Avec Julien et Jimmy, nous nous connaissons depuis notre premier jour d’IUT à Nancy-Charlemagne. Je suis Sfeirien depuis 6 mois.

SFEIR : Qu’est-ce qui vous intéresse dans le développement de jeux vidéo ?

Jonathan : Étant un fan de jeux vidéo et développeur, je ne pouvais pas passer à côté de la conception de jeux vidéo. Le fait de pouvoir penser, créer et modéliser un jeu entier à notre façon est, selon moi, une de nos principales motivations.

SFEIR : Dans quel but développez-vous des jeux ?

Julien : Nous imaginons et concevons avant tout des jeux vidéo parce que cela nous passionne. Les jeux vidéo ont toujours fait partie intégrante de notre vie quotidienne.

SFEIR : Depuis combien de temps développez-vous des jeux vidéo ?

Jimmy : Comme beaucoup, nous avons déjà utilisé RPG Maker dans notre jeunesse, un éditeur WYSIWYG pour réaliser des petits RPG similaires aux titres des années 90. Durant notre cursus universitaire, nous avons cherché à réaliser des jeux avec les technologies que nous apprenions. L’université proposant le Java, nous nous sommes naturellement orientés vers cette solution. Le framework le plus connu à cette époque et dans ce domaine était LibGDX. Puis, découvrant le C#, qui nous paraissait plus adapté que le Java, nous avons appris et utilisé XNA, un framework fourni par Microsoft. Nous avons découvert Unity dans la foulée. Les nombreux outils intégrés et son puissant éditeur principal permettent d’éviter de développer continuellement les mêmes éléments de base et de se concentrer sur la réalisation du jeu en lui-même au lieu du boilerplate.

SFEIR : Quels sont les outils que vous utilisez pour développer ?

Julien : Comme énoncé par Jimmy, nous utilisons Unity3D pour développer et concevoir nos jeux. En ce qui concerne la gestion de projet, nous nous sommes tournés vers Trello en plus d’un outil de gestion de tâches orienté JV, que nous avons développé nous-mêmes, appelé le Seabirds Labs.

SFEIR : Qu’est-ce que Unity3D en quelques mots et pourquoi cette solution ?

Jimmy : Unity est un moteur de haut niveau. Son principal avantage est d’être simple d’utilisation tout en étant très performant. Un autre gros avantage est de pouvoir déployer très facilement un projet sur n’importe quelle plateforme, qu’il s’agisse de PC, de mobiles ou même des consoles classiques. Il dispose également d’une version gratuite dont la seule limitation est le chiffre d’affaires généré. De nombreux titres amateurs sont produits avec ce moteur, mais également des jeux très connus tels que Hearthstone ou Super Mario Run.

SFEIR : Quelle est la réalisation type d’un jeu sous Unity ? 

Jimmy : La réalisation type d’un jeu sous Unity suit le concept du “fail faster”. Le développement doit être testé continuellement par des utilisateurs de profils variés et doit donc suivre une itération de développement très rapide. Une erreur de design coûte très cher et doit donc être détectée le plus tôt possible, d’où l’idée de “fail faster”.

SFEIR : En combien de temps peut-on réaliser un petit jeu avec Unity3D ?

Jonathan : C’est une question un peu difficile. Tout dépend de la définition de “petit jeu”. En quelques heures on peut déjà faire un truc jouable avec des ressources graphiques et musicales facilement récupérables sur Internet.

SFEIR : Quelles sont les proportions de temps passées à développer par rapport au temps nécessaire à la création les ressources ?

Jimmy : On ne peut pas vraiment répondre à ce genre de question. Tout est fonction de ce que tu veux créer. La proportion peut véritablement être inversée entre deux jeux. Sur un temps et une équipe équivalents, un jeu graphiquement impressionnant et avec une musique splendide n’aura que peu de fonctionnalités. À l’inverse, une création sans graphismes détaillés ni musique recherchée reposera sur beaucoup plus de fonctionnalités. Si l’on veut tout maximiser, il faudra soit largement augmenter le temps de développement, soit augmenter l’équipe.

SFEIR : Quelles sont les difficultés majeures qu’on rencontre sous Unity3D ?

Julien : Par expérience, de par la liberté que nous offre Unity3D, il devient vite compliqué de définir l’architecture du projet proprement pour éviter de payer des coûts de refactoring très élevés par la suite. Contrairement à une programmation classique, il n’existe pas de moyen réellement simple pour mettre des tests unitaires et des tests d’intégration en place afin de vérifier le bon fonctionnement du jeu sans le retester entièrement. De plus, il n’existe pas forcément de specs figées dans le temps. Il sera commun d’en ajouter ou d’en retirer en fonction du fun attendu par les joueurs. Par exemple, SimCity a commencé comme un jeu d’action d’hélicoptère !

SFEIR : Unity3D se suffit-il à lui-même ou conseillez-vous d’autres outils en complément ?

Jonathan : Unity3D n’est qu’un moteur. Sans ressources artistiques (images, sons, animations), il ne peut rien faire. Pour de simples projets, on peut facilement trouver des ressources gratuitement ou à bas prix (cf. la fin de l’interview). Pour des projets plus sérieux, il faudra créer ses propres assets, avec des outils adéquats, du temps et… du talent si possible !

SFEIR : Quelles compétences faut-il avoir avant de débuter sous Unity3D ?

Jimmy : Pour débuter, des ressources sont disponibles gratuitement. Pour créer les scripts, il faudra quand même avoir des connaissances en programmation orientée objet.

SFEIR : Avez vous déjà publié un jeu sur un store ? (Play Store / App Store)

Julien : Oui ! Fody’s Journey est disponible en téléchargement gratuit sur le Google Play Store. Il n’y a malheureusement pas de version iOS disponible à ce jour.

SFEIR : Que vous rapportent ces projets dans vos missions professionnelles ?

Jimmy : Cela nous a permis d’apprendre à créer et gérer des projets du début à la fin. Nous avons également pu appliquer l’utilisation de méthodes agiles pour la gestion de projets. De plus, nous restons toujours dans un contexte de développement où nous faisons progresser nos compétences sur notre temps libre et dans une atmoSFEIR conviviale.

SFEIR : Existe-t-il des différences entre de la programmation de jeux vidéo et de la programmation dite classique ?

Julien : Contrairement à la programmation d’une application où les interactions s’effectuent au travers des actions d’un ou plusieurs utilisateurs, un jeu vidéo est programmé pour se rafraîchir en temps réel. Cela signifie, par exemple pour un taux de rafraîchissement de 60 frames par secondes que tout le cycle de vie du jeu est recalculé toutes les 16 millisecondes pour une frame. Le système pour lequel nous développons est donc toujours critique et une perte de FPS se résultera en une mauvaise expérience de la part des joueurs.

SFEIR : Existe-t-il des évènements de conception de jeux vidéo dans le secteur luxembourgeois ?

Jonathan : Dans la Grande Région, l’association COIN organise deux gros évènements annuels : la Global Game Jam et la BBQ Game Jam. Ces évènements ont lieu à Epitech Nancy et au Technoport d’Esch-sur-Alzette. Ce ne sont pas des compétitions, mais des rassemblements surtout prévus pour l’échange et le partage. La Global Game Jam est un hackathon de 48h à l’échelle mondiale organisée par Global Game Jam, Inc. et ses partenaires locaux. La BBQ Game Jam est organisée par COIN seulement dans la région et ne dure que 24h. Un tout nouveau cluster qui rassemble au jour d’aujourd’hui une dizaine d’acteurs vient de se former. Il s’agit d’East Games ! Le but de cette association est de promouvoir les petites start-ups dans le secteur du jeu vidéo dans la région Grand Est.

 

Liens annexes :

https://www.assetstore.unity3d.com/

Fody’s Journey en téléchargement gratuit :

https://play.google.com/store/apps/details?id=com.seabirdsgames.fody

Ressources graphiques :
http://www.gameart2d.com (payants)
https://kenney.nl/assets (excellent – payants/gratuits)
https://opengameart.org/content/2d-rpg-tiles (gratuits)

Ressources son :
https://audiojungle.net/category/sound (payants)
https://opengameart.org (gratuits)

Attention : généralement, les ressources 3D sont payantes et extrêmement chères.

Vous aimerez aussi...