Jump to content
  • Advertisement
Sign in to follow this  
  • entries
    15
  • comments
    2
  • views
    12867

Conseils g

Sign in to follow this  
yahiko00

565 views

Cet article est la traduction de la troisieme partie de celui ci : General Tips on the Process of Solo Game Development (Macoy Madson)
La seconde partie en francais est disponible ici : Conseils generaux sur le processus de developpement solo d'un jeu (2/5)

Troisieme etape: Iteration



A ce stade, vous avez fait suffisamment de prototypes pour demontrer le potentiel positif de votre idee. Vous avez egalement demontre la faisabilite technique de l'idee et la facon dont vous pourriez aborder sa mise en oeuvre dans le code de production. Vous avez aussi cerne ce que vous aimez le plus de cette l'idee et avez retire ce qui n'etait pas necessaire a l'experience du joueur. Si vous n'avez pas tout cela, revenez en arriere et faites plus de prototypes !

Quand je dis ici iteration, je veux parler du developpement et de l'amelioration du produit final. Vous devriez eviter d'utiliser un prototype pour votre code de production parce que ce prototype etait du sur-mesure pour repondre a une question donnee, et pas pour devenir un jeu complet. A ce stade du developpement, vous utilisez vos pratiques de codage les plus perennes pour construire la version finale du jeu. Il y a beaucoup d'articles qui traitent de ces pratiques, c'est donc desormais le moment d'utiliser ce que vous avez appris sur le codage de haute qualite. Le prototypage n'etait pas le moment d'utiliser ces pratiques, car les prototypes vont etre jetes de toute facon !

Les iterations doivent passer en revue les elements du plus important au moins important (tout comme les prototypes). Si vous codez un menu principal ou des fantaisies graphiques avant que vous n'ayez votre mecanique principale d'operationel, vous faites quelque chose de tres, tres mal ! Personne ne se soucie de vos details graphiques ou de vos menus, ils se soucient du gameplay ! Faites le " jouet " d'abord, et gardez les menus et le fignolage pour la fin.

Bien que vous travaillez maintenant sur le code "final", vous devriez toujours continuer a experimenter. Soyez tres prudent avec de telles experiences, car elles peuvent vous faire perdre votre vision de cet element de base sur lequel vous vous concentriez avant. Assurez-vous que vous savez pourquoi votre jeu est interessant. Neuf fois sur dix, ce n'est pas parce que vous avez une physique realiste pour un PNJ ou que vous pouvez extraire les metaux sous terre ! Vos experiences devraient etre separees de la production (si vous utilisez un gestionnaire de code source, c'est la ou la "ramification" devient utile) et facilement annulables. Vous devriez vous concentrer sur de telles experiences pour l'amelioration de l'element de base uniquement ! Si l'experience est trop divergente de l'element de base, vous devriez la specifier et la prototyper plus tard.

Ne jamais, en aucune circonstance, optimiser prematurement ! En tant que programmeur, vous avez probablement entendu parler de KISS, qui signifie "Keep It Simple, Stupid !" (NdT : Restez simple et stupide). Suivez ce principe autant que vous le pouvez ! Jonathan Blow parle d'algorithmes et de structures de donnees et comment elles sont optimisees pour des performances ou la memoire, mais ne sont pas "optimisees pour l'usage". Il est plus important de finir un jeu dans un mois qui tourne a 20 FPS que de finir dans un an pour 60 FPS !

Concernant le codage pendant le cycle iteratif, vous souhaitez identifier des composants qui peuvent facilement etre reutilises dans de futurs jeux et les ajouter a votre bibliotheque plutot que de les rendre specifiques a votre jeu. Cela permettra non seulement d'ameliorer votre bibliotheque, mais aussi de rendre chaque jeu suivant (et prototypes) plus rapide a developper. N'essayez pas de reutiliser des composants qui sont trop specifiques cependant !

Pendant que vous enrichissez par iteration votre bibliotheque de composants, concentrez-vous sur les fonctionnalites qui a) sont utiles non pour leur performance, mais pour ce qu'elles accomplissent et b) d'encourager la reutilisation du code et ainsi raccourcir les temps de developpement. Par exemple, la detection et la resolution des collisions est extremement utile et cela vaut la peine de prendre son temps a les implementer, mais la mise en oeuvre d'une routine de collision "optimisee" n'en vaut pas la peine. Rappelez-vous, ne faites pas quelque chose, sauf si vous en avez besoin ! Comme exemple de fonctionnalites (b), j'ai recemment mis en oeuvre mon propre systeme COM (ou CES) parce que j'ai vu combien la reutilisation du code devenait plus facile avec elle. Bien sur, cela impacte negativement les performances, mais l'idee de composants dynamiques, portables et reutilisables compense cet impact par l'optimisation de l'usage !

Si vous en etes a ce point, il n'y a aucune raison d'abandonner le projet ! Bien sur, vous avez beaucoup appris de vos erreurs de codage et un recodage complet rendrait probablement le projet meilleur, mais ne perdez pas votre temps ! Beaucoup de developpeurs debutants de jeux abandonnent sans cesse des projets en plein milieu du developpement. C'est la principale raison pour laquelle ils sont encore des developpeurs debutants ! Vous avez touche ce qui est communement connu comme " le Mur ", le point ou vous ne voulez plus continuer le developpement d'un projet. Il suffit de l'abattre et de persister, sinon tout le travail que vous avez realise ne vaudra plus rien (pour les joueurs, au moins) ! J'ai publie sept jeux, et deux d'entre eux se sont averes etre un enfer vers la fin. J'ai persiste, et j'ai appris de mes erreurs. Vous devez terminer completement vos projets ! N'abandonnez pas !

Cette etape de l'iteration sera fortement influencee par l'etape suivante, qui est ...

La quatrieme partie en francais est disponible ici : Conseils generaux sur le processus de developpement solo d'un jeu (4/5)
Sign in to follow this  


0 Comments


Recommended Comments

There are no comments to display.

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

Participate in the game development conversation and more when you create an account on GameDev.net!

Sign me up!