IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement 2D, 3D et Jeux Discussion :

Des questions concernant l'apprentissage de la programmation


Sujet :

Développement 2D, 3D et Jeux

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 20
    Points : 8
    Points
    8
    Par défaut Des questions concernant l'apprentissage de la programmation
    Bonjour.
    Je suis étudiant en cinéma et passionné de jeux-vidéos depuis mon enfance.
    J'ai conscience que la question a été posée 100 fois et j'ai pris le temps de rechercher et lire différents topics mais je voudrais vous demander conseil en précisant mon cas personnel.

    Voilà, je veux apprendre à programmer sur mon temps libre (j'en ai beaucoup, voyez-vous ) avec pour finalité, si j'y parviens, la création de jeux videos. En effet, j'ai assez régulièrement, et ce depuis longtemps, des idées de systèmes de jeux, de mécaniques de jeux etc que je note sur un petit calepin ou sur mon portable tout en sachant que je ne pourrais jamais exploiter ces idées car je ne sais pas programmer. De plus en plus, je trouve ça dommage, d'autant que connaissant mon caractère, je pense qu'en m'y prenant de la bonne manière, je pourrais me passionner pour la programmation de jeux.

    Ne voulant pas tomber dans tous les pièges des jeunes gens voulant apprendre la programmation dans l'espoir de pouvoir créer des jeux vidéos, sur leur temps libre de surcroît, je voudrais me préparer du mieux que je le peux. C'est là où vos conseils me seraient précieux.

    Ma volonté n'est pas de créer des jeux AAA ou des jeux très complexes. En vérité, les graphismes sont pour moi très secondaires et je préfère la 2D à la 3D la plupart du temps (d'autant plus qu'elle me semble, mais je peux me tromper, plus abordable pour un débutant). Ce qui m'intéresse serait de créer des "petits" jeux 2D qui brilleraient plus par leurs concepts de gameplay originaux, amusants efficaces et pourquoi pas assez profonds que par leurs graphismes (je tiens à préciser que je ne nie pas que les graphismes sont importants, simplement que je compte mettre l'accent sur le gameplay et y consacrer la majeur partie de mon temps). En gros, mes "modèles" sont des jeux tels que bomberman, le worms sur SNES, pokemon (riez, mais j'ai toujours trouvé le concept du jeu original intéressant, c'est juste qu'ils sont feignants et refont toujours le même jeu depuis 15 ans), ou plus récemment des jeux indés tels que Towerfall Ascension ou encore Minecraft.

    Parmi les idées de jeux qui me trottent dans la tête depuis un certain temps, il y en a 2 qui m'excitent suffisamment pour avoir véritablement envie d'apprendre à programmer pour leur donner vie : le premier est un jeu 2D multijoueur qui est, pour résumer, dans la veine de Towerfall Ascension (petites maps, combats entre joueurs basé sur des mécaniques de jeux simples mais très efficaces).
    Le second diffère un peu de ce que j'ai dit plus haut, j'en ai conscience. C'est un jeu sandbox où le joueur, débarquant sur une map générée aléatoirement, doit choisir un endroit et y bâtir une ville (faite de blocs à la minecraft). De manière aléatoire, des événements auraient lieux aux portes de la ville : des marchants qui proposent de faire du marchandage, des bandits, des pnj souhaitant habiter dans le village (c'est le seul moyen de peupler le village), et, des "armées" composées de plus ou moins de pnj qui attaquent le villages (ils seraient programmés pour casser les blocs du village et tuer les habitants), etc. Le joueur pourrait attribuer aux pnj qui vivent dans son village des rôles basiques : poster le pnj à un endroit (voir lui attribuer une "ronde", donc un chemin qu'il parcourt sans cesse, par exemple autour de la muraille) et ce pnj serait programmer pour attaquer à vue un ennemi. Ainsi, lors d'attaques aux portes de la ville, le joueur ne pourrait pas contrôler son "armée" comme dans un jeu de stratégie mais simplement croiser les doigts pour qu'il ait organisé efficacement sa défense et éventuellement prendre part à la bataille puisqu'il contrôle un personnage. L'idée, en gros, c'est de prendre le coté "monde généré aléatoirement" de minecraft ainsi que le système de construction mais de faire tourner le jeu autour de ce système d’événements aléatoires qui apparaîtraient aux portes de la ville ou autour de celle-ci et qui ferait que, contrairement à minecraft, construire une ville et des bâtiments de défense (muraille, pièges etc) sert à quelque chose. Je précise que les animations des batailles n'auraient rien de spectaculaires ou quoi que ce soit et que les tâches attribuées aux pnjs seraient basiques et peu nombreuses : le principe du jeu réside dans la construction d'une ville faite de blocs qui "vive", contrairement à minecraft.

    Je me pose donc plusieurs questions. La première : d'après vous, en insistant sur le fait que ces jeux ne comporteraient pas des graphismes magnifiques ou des animations de fou, vous semble t-il possible d'apprendre à programmer sur mon temps libre à l'aide de livres et d'internet, afin de tenter de réaliser l'un d'eux (je précise que j'ai conscience que programmer n'est pas si simple, et que ça demande du temps, de l'énergie, de la persévérance et de la passion) ? Si oui, le second jeu vous semble t-il beaucoup trop complexe à programmer par rapport au premier ? En sachant que je préférerai faire le jeu en 3D, mais une 3D basique faite de blocs ou quelque chose du genre, à moins que je trouve un moyen pour le faire en 2D (sachant que je n'aime pas la vue 2D de jeux tels que Terraria et consorts, ce serait une 2D avec une vue comme dans les RPG de la SNES type Chrono Trigger, FF6, etc).

    Ensuite, vous semble t-il réaliste que l'un de ces jeux soit le premier que je programme (c'est à dire que j'apprenne à programmer en créant l'un de ces deux jeux) ? Plus généralement, pour un néophyte qui a beaucoup de temps libre et qui est motivé et assez maniaque lorsqu'il se met en tête de réaliser quelque chose (bien que ce soit différent évidemment de la programmation, étant étudiant en ciné, il m'arrive de passer des jours entier à ne faire qu'écrire des scénars, alors même que jusqu'à présent je ne puisse pas en vivre) peut-il créer l'un de ces jeux seul et dans sa chambre (je sais, c'est un cliché) et si oui, avez-vous un ordre d'idée du temps que cela prendrait en sachant qu'il faudrait que j'apprenne à coder ?

    Comprenez moi, ce n'est pas que je pense que la programmation soit simple, c'est même tout l'inverse : le fait que j'ai mis tant de temps avant de me dire que c'était peut-être possible vient justement du fait que je sais à quel point la création de jeux s'avère au contraire extrêmement complexe et chronophage.
    Je veux juste savoir si je me fais des illusions ou pas.

    Autre question, dont je pense déjà connaitre la réponse : des logiciels tels que Game Maker, couplés à une peu de programmation ne suffiraient t-il pas pour créer de tels jeux avec assez de liberté question système de jeux. Je pose la question au cas où, mais de toute manière je pense qu'apprendre à coder peut me passionner donc bon...
    Dernière question : le python vous semble t-il la meilleur option pour apprendre à programmer dans mon cas ? Je précise que j'ai pas mal touché à RPG Maker et que j'avais créé plus jeune des petits RPG's avec à l'intérieur des mini jeux genre micro-systèmes de pêche, de jeux type space invaders etc, mais que tout cela est fait via des conditions et non par programmation.

    Merci pour vos éventuelles réponses.

  2. #2
    Membre expert

    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Février 2006
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2006
    Messages : 1 031
    Points : 3 092
    Points
    3 092
    Par défaut
    Tu te poses bien trop de questions,
    si tu ne connais personnes IRL pour t'apprendre il va falloir que tu saches te débrouiller seul et là tout de suite maintenant tu devrais déjà avoir téléchargé GameMaker et essayer !

    Non tu n'arriveras pas dès ton premier jeu à faire ce que tu souhaites ( certainement jamais si tu pensais à du multijoueurs en ligne pour ton towerfall-like), ton premier essais doit être quelque chose de très simple :
    un tetris-like, un petit shoot m up sans scrolling etc....

    Concernant le choix du langage puisque tu ne souhaites pas être développeur bas niveau il n'y a pas de mauvais choix : si le python te parle vas-y ! Par la suite tu sauras facilement jongler d'un langage à l'autre.

    Bon courage !
    Suivez le développement de Chibis Bomba
    twitter : https://twitter.com/MoD_DiB
    DevBlog : http://moddib.blogspot.fr/

  3. #3
    Expert confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    1 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 1 711
    Points : 4 442
    Points
    4 442
    Par défaut
    Citation Envoyé par Harrylechienfou Voir le message
    Je me pose donc plusieurs questions. La première : d'après vous, en insistant sur le fait que ces jeux ne comporteraient pas des graphismes magnifiques ou des animations de fou, vous semble t-il possible d'apprendre à programmer sur mon temps libre à l'aide de livres et d'internet, afin de tenter de réaliser l'un d'eux (je précise que j'ai conscience que programmer n'est pas si simple, et que ça demande du temps, de l'énergie, de la persévérance et de la passion) ? Si oui, le second jeu vous semble t-il beaucoup trop complexe à programmer par rapport au premier ?
    Le premier semble trop complexe déjà.

    Un jeu multijoueur c'est tendu. Prends ta première idée, change les combats entre joueurs par des combats entre UN joueur et une / des IAs et c'est peut être envisageable.

    Mais le dev de jeux demande quand même pas mal de connaissances, c'est pas le meilleur moyen de commencer.

    Niveau langages / moteurs de jeux, Python est réputé pour être simple à appréhender; sinon tu peux aussi jeter un œil à Unity ou Godot (C# donc).

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Merci beaucoup pour vos réponses!

    Tu te poses bien trop de questions,
    si tu ne connais personnes IRL pour t'apprendre il va falloir que tu saches te débrouiller seul et là tout de suite maintenant tu devrais déjà avoir téléchargé GameMaker et essayer !
    Oui j'avoue, mais c'est dans mon caractère de me poser pas mal de questions.
    Non je ne connais personne IRL, et concernant GameMaker, sachant que c'est un logiciel qui ne demande pas de savoir coder, je me disais que c'était peut-être pas la meilleure chose à faire que de se lancer là-dedans. Le truc c'est que je voudrais pas partir dans tous les sens, t au final toucher un peu à tout sans ne jamais rien produire à la fin, d'où mes questions. Le fait que j'ai pas téléchargé GameMaker ne veut pas dire que je n'ai pas hâte de créer des jeux mais juste que si je me lance dans l'apprentissage d'un log plutôt qu'un autre, je préférerai aller jusqu'au bout. J'ai déjà pas mal touché à RPG Maker XP et VX par le passé et j'ai téléchargé Stencyl récemment (bien que je n'ai pas encore appris à m'en servir, justement parce que je me demandais si je devai me lancer là-dedans plutôt qu'ailleurs). Bref, je veux bien me lancer dans GameMaker, avec plaisir même, mais ce logiciel me permettra t-il à terme et avec de la maîtrise de faire un des jeux dont j'ai parlé plus haut ?

    Non tu n'arriveras pas dès ton premier jeu à faire ce que tu souhaites ( certainement jamais si tu pensais à du multijoueurs en ligne pour ton towerfall-like), ton premier essais doit être quelque chose de très simple :
    un tetris-like, un petit shoot m up sans scrolling etc....
    Si tu pense que la meilleure méthode pour apprendre à coder est de faire un jeu plus simple, je suis tout à fait prêt à en passer par là, d'autant qu'il y a pire comme manière d'apprendre.
    En revanche, quand tu dis que je ne pourrais jamais faire un towerfall-like en ligne, pourquoi affirme-tu ça ? Je demande par curiosité simplement. C'est le fait que ce soit en ligne ? Coder un système où les joueurs hébergent leurs propre serveur permettant de jouer à 4 joueurs par exemple, c'est infaisable sans être un crack ?

    Le premier semble trop complexe déjà.

    Un jeu multijoueur c'est tendu. Prends ta première idée, change les combats entre joueurs par des combats entre UN joueur et une / des IAs et c'est peut être envisageable.

    Mais le dev de jeux demande quand même pas mal de connaissances, c'est pas le meilleur moyen de commencer.

    Niveau langages / moteurs de jeux, Python est réputé pour être simple à appréhender; sinon tu peux aussi jeter un œil à Unity ou Godot (C# donc).
    C'est con mais je pensais que programmer des IA pas trop bêtes était plus difficile que de faire un mode multi où on a pas à programmer le cerveau du second joueur Visiblement, je me suis trompé...
    Sinon, comme MoDDiB, tu penses qu'apprendre à coder en créant un jeu est une méthode foireuse... Je prend note, merci.
    Enfin, si j'ai bien compris mon minecraft-like pour l'appeler comme ça, c'est vraiment impossible à faire ?

  5. #5
    Expert confirmé
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2012
    Messages
    1 711
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2012
    Messages : 1 711
    Points : 4 442
    Points
    4 442
    Par défaut
    Citation Envoyé par Harrylechienfou Voir le message
    C'est le fait que ce soit en ligne ? Coder un système où les joueurs hébergent leurs propre serveur permettant de jouer à 4 joueurs par exemple, c'est infaisable sans être un crack ?
    C'est infaisable comme premier jeu, d'autant plus si tu apprends le dev en même temps.

    D'ici quelques mois / années, pourquoi pas, mais pour commencer c'est clairement de la difficulté inutile.

    Citation Envoyé par Harrylechienfou Voir le message
    C'est con mais je pensais que programmer des IA pas trop bêtes était plus difficile que de faire un mode multi où on a pas à programmer le cerveau du second joueur Visiblement, je me suis trompé...
    Sinon, comme MoDDiB, tu penses qu'apprendre à coder en créant un jeu est une méthode foireuse... Je prend note, merci.
    Enfin, si j'ai bien compris mon minecraft-like pour l'appeler comme ça, c'est vraiment impossible à faire ?
    Le réseau c'est difficile (de base c'est pas simple, et ça te force à utiliser des concepts que tu pourrais éviter pour simplifier le code -> multithreading ou méthodes asynchrones par exemple).

    Une IA n'est par contre pas forcément difficile : ça dépend du type de jeu.
    De plus tu peux très bien avoir un jeu fonctionnel avec une IA stupide dans un premier temps et l'améliorer plus tard.

    Pour un minecraft-like, c'est pareil : BEAUCOUP trop compliqué pour un premier projet.

  6. #6
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Je comprends mieux, merci.
    L'idée serait donc d'apprendre à coder (Python ou autre) en créant des petits jeux très simples, et ensuite seulement de passer à un des jeux dont j'ai parlé.
    Je me doute que la réponse varie énormément en fonction des gens, mais d'après vous combien de temps faut-il pour avoir un niveau suffisant pour coder mon towerfall-like ? Et mon minecraft-like ? En admettant que je passe plusieurs heure par jour à apprendre à coder. C'est pour avoir une fourchette, encore une fois.

  7. #7
    Expert confirmé Avatar de yildiz-online
    Homme Profil pro
    Architecte de domaine
    Inscrit en
    Octobre 2011
    Messages
    1 444
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Architecte de domaine

    Informations forums :
    Inscription : Octobre 2011
    Messages : 1 444
    Points : 4 560
    Points
    4 560
    Par défaut
    "coder" c'est facile, c'est à la portée de tout un chacun de créer des boucles, des conditions, des fonctions,... on apprend même ça aux jeunes enfants avec des langages adhoc...

    Créer un logiciel, est déjà une étape bien plus complexe, en outre la création des algorithmes de base, il faut gérer les interactions entre les composants, si elle n'est pas pensée intelligemment, ton système peut devenir tellement inutilisable que tu ne pourrais pas arriver au bout de ce que tu as entrepris.

    Ensuite, il faut savoir déployer ton logiciel, si il est multijoueur, tu auras certainement une application serveur, qui tournera sur du linux bien souvent, ça veut dire avoir de bonnes bases en administration système, et une base de donnée, connaître sql donc.

    Ces 3 points sont un petit aperçu de l'écosystème de développement d'application: l'infrastructure, l'architecture et la programmation, j'ai volontairement omis l'analyse, la création des assets, et la gestion de projet qui sont à eux seul aussi un boulot à plein temps.

    Tout ça pour dire que développer un jeu peut se révéler excessivement laborieux pour peu qu'il utilise des mécaniques particulières et tu passeras souvent beaucoup de temps sur des choses qui ne se voient pas, mais qui sont nécessaires, et que sans avoir de sérieuses bases dans tous ces domaines, tu n'aboutiras pas.

    Comme fourchette, je dirais entre 2 et 4 ans avant de commencer quelque chose de viable (encore une fois, pour des jeux conceptuels, un tetris ou un bomberman peut se boucler avec juste des bases en programmation après un ou 2 mois d'apprentissage)

    Et personnellement, je ne conseillerais pas uniquement les jeux simples pour s’entraîner, ça implique de toujours se focaliser sur les mêmes problématiques et tu risques de passer à coté de concepts intéressants que tu aurais découvert en créant d'autres types d'application.
    PXL le retro-gaming facile: Essayez-le

    Yildiz-Engine an open-source modular game engine: Website
    Yildiz-Online a 3D MMORTS in alpha: Facebook page / Youtube page

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Merci pour ta réponse. Si j'ai bien compris, coder des lignes n'est en soi pas si complexe, mais il faut que tout ce qu'on code fonctionne ensemble, et c'est ce qui est difficile. En gros, tu peux créer un code pour que le personnage puisse miner le sol, puis créer un code pour donner des ordres à des pnj, et tout à coup te rendre compte que ce nouveau code pose des problèmes à l'autre code et que t'avais pas prévu. Coder un jeu, c'est pas "empiler" des codes les uns au dessus des autres, ils faut qu'ils fonctionnent ensemble, en équipe presque. Et c'est cela qui fait que je ne pourrais pas créer un jeu "complexe" avant d'avoir beaucoup d'expérience.

    Lorsque tu dis entre 2 et 4 ans, ce veut dire qu'avant ce laps de temps il vaut mieux me consacrer à d'autres jeux que mon minecraft-like, puis éventuellement, au bout de 2 à 4 ans, je pourrais enfin m'y mettre car j'aurai l'expérience qu'il faut, c'est bien ça ?

    Sinon, le fait que tu dise "un bomberman peut se boucler avec juste des bases en programmation après un ou 2 mois d'apprentissage", cela m'interpelle énormément car je suis un grand fan des bomberman période SNES et N64! En fait, étant un néophyte, j'avoue avoir du mal à discerner en quoi tel jeu peut être beaucoup plus simple à créer que tel autre. C'est bête, mais par exemple j'ai du mal à comprendre en quoi un bomberman est plus simple qu'un Towerfall par exemple. C'est un peu la raison qui m'a poussé à poster sur ce forum d'ailleurs. Comme je l'ai dit lors de mon premier post, j'ai pas mal d'idées de jeux différentes et donc, peut-être que l'une d'elle est bien plus simple à entreprendre pour un débutant que celles dont j'ai parlé ici ? Comment peut-on jauger (plus ou moins bien) de la complexité ? Je re-prends l'exemple de bomberman/towerfall : quelles différences, en terme de complexité à programmer et rendre viable ?


    Désolé si je pose des questions un peu connes, mais je suis curieux et j'aime bien comprendre ce qu'on me dit.

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Encore merci pour ces réponses. C'est vrai qu'il ne faut pas brûler les étapes et cela ne m'étonne pas qu'il faille plusieurs années pour savoir programmer des jeux intéressants. Et j'avoue que je fantasme sur l'idée d'être un bon programmeur, enfin ce que j'imagine être un bon programmeur, c'est à dire un type capable de s'attaquer à n'importe quel problème et n'importe quel type de jeux car il a des bases solides. Le "problème" qui se pose me concernant c'est que je suis étudiant en cinéma, et étant donné que je vais bientôt avoir ma licence, j'avoue que je me demande si essayer de trouver des écoles ou des cours de programmation ne serait pas quelque chose qui pourrait m'intéresser.
    En fait, le problème n'est pas tellement que cela prenne du temps avant d'être capable de faire un jeu, mais plutôt de savoir si apprendre la programmation seul est une meilleure idée que de trouver des cours
    , quitte à en faire des études.
    Mine de rien j'ai "déjà" 21 ans, ok c'est jeune donc ça fera rire les moins jeunes mais ça veut dire que je ne pourrais pas laisser libre cours à ma créativité avant mes 23 ou 24 ans minimum. Bref loin de moi l'idée de raconter ma vie mais je souhaite apprendre la programmation pour créer des jeux non pas parce que je trouve ça cool d'être créateur de jeux mais parce que j'ai des idées de jeux et que ça commence à me demanger de passer de l'autre côté et de me mettre à coder (j'imagine que la plupart des gens qui programment ont ressenti ca).
    Bon je me prends peut-être la tête pour rien après...

  10. #10
    Expert éminent sénior
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    6 803
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Décembre 2007
    Messages : 6 803
    Points : 32 056
    Points
    32 056
    Par défaut
    L'ambition, ça finit toujours entre 4 planches. Sauf à savoir ce que l'on fait - et tu n'en est pas encore là. Et sur un concept tout bête, genre Pong, on peut déjà laisser libre cours à sa créativité. Si tu rajoutes des trucs rigolos, comme des effets à la balle, des bonus à attraper, etc... tu peux vite arriver à un jeu assez complexe, tout en partant d'une base très simple.

    Si towerfall te plait, essaye juste de programmer un gugusse qui saute de plate-forme en plateforme. Juste ça. C'est très instructif. Ensuite, ajoute un par un des concepts rigolos, genre des plateformes à différentes hauteurs, ou un tir de flêche.... L'erreur, en tous cas quand on débute, c'est de vouloir tout faire. Non, tu n'en est pas là. Mais un trait que tu diriges de droite à gauche, ou l'inverse, c'est faisable, et tu aurais un sentiment de progrès. Puis ensuite, le saut. Puis ensuite, les plateformes. Puis ensuite, les plateformes à différentes hauteurs. Etc..... A ce moment là, tu sauras déjà mieux si réellement ça te plait. Mais ne te fixe pas d'objectif trop ambitieux au début. Bien des gens ne sauraient pas faire aller un trait à droite ou à gauche sous commandes des touches fléchées(ou du Pad). Towerfall n'est pas un jeu si compliqué(enfin, si on se contente de la base - ils ont rajouté des milliards de trucs), mais le réseau, c'est un autre métier que la programmation. Tout autre.

    Et su tu pars sur une approche incrémentale(un mec qui saute de plate-forme en plateforme) et que tu attends le dernier moment pour décider de la suite(scrolling? Plus de choses, mais sur un seul écran?), tu colleras plus facilement à ce que tu as déjà. Partir sur un plan complet et le suivre à la lettre, c'est bien quand on est pro. Mais ce n'est ni rigolo, ni instructif. Alors que si tu as déjà un petit truc, et que tu te poses la question : qu'est-ce qui serait cool d'ajouter maintenant, et qui me ferais progresser? LA, tu vas progresser.
    Les 4 règles d'airain du développement informatique sont, d'après Michael C. Kasten :
    1)on ne peut pas établir un chiffrage tant qu'on a pas finalisé la conception
    2)on ne peut pas finaliser la conception tant qu'on a pas complètement compris toutes les exigences
    3)le temps de comprendre toutes les exigences, le projet est terminé
    4)le temps de terminer le projet, les exigences ont changé
    Et le serment de non-allégiance :
    Je promets de n’exclure aucune idée sur la base de sa source mais de donner toute la considération nécessaire aux idées de toutes les écoles ou lignes de pensées afin de trouver celle qui est la mieux adaptée à une situation donnée.

  11. #11
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 185
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 185
    Points : 11 551
    Points
    11 551
    Par défaut
    Je suis d'accord avec tous les intervenants et pour te donner une image de ce que peut être d'apprendre à programmer au travers d'un jeu vidéo.

    C'est comme ci tu voulais apprendre la maçonnerie en commençant directement par créer un pont de 500m ! Bien sûr en intégrant tout ce que cela implique en terme de contrainte (trafic, mécanique, calcul, environnement, étude de sol, électrique pour l'éclairage, esthétique, coordination des différents métiers/spécialité, timing, budget, négociation etc...)

    Je n'ai jamais fait de jeu, j'ai toujours fait que tu très bas niveau en embarqué mais je pense pas me tromper en disant que c'est surement ce qu'il y a de plus variés en terme de choses à intégrer.

    Je pense que ce n'est pas le bon choix pour démarrer.
    La science ne nous apprend rien : c'est l'expérience qui nous apprend quelque chose.
    Richard Feynman

  12. #12
    Membre expert

    Homme Profil pro
    Développeur de jeux vidéo
    Inscrit en
    Février 2006
    Messages
    1 031
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur de jeux vidéo
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2006
    Messages : 1 031
    Points : 3 092
    Points
    3 092
    Par défaut
    Citation Envoyé par Harrylechienfou Voir le message
    En revanche, quand tu dis que je ne pourrais jamais faire un towerfall-like en ligne, pourquoi affirme-tu ça ? Je demande par curiosité simplement. C'est le fait que ce soit en ligne ? Coder un système où les joueurs hébergent leurs propre serveur permettant de jouer à 4 joueurs par exemple, c'est infaisable sans être un crack ?
    Le multijoueur online en lui même ne pose pas de soucis, c'est réussir à en faire un jeu jouable qui pose problème : la difficulté se situe au niveau de la sensation de lag, sur la plupart des jeux 50ms de décalage ce n'est pas un réel soucis mais sur un jeu hyper speed tel que towerfall, ça demande une très grande expertise : si tu souhaites en faire ton métier un jour tu pourrais y arriver mais si c'est juste un hobby oublie ce projet. ( ou part sur du multi local )

    D'ailleurs au final j'ai l'impression que tu ne sais pas toi même si tu veux changer de voie ou non ?
    Le meilleur moyen de savoir c'est de programmer pour voir si tu aimes ça, ta décision sera plus facile à prendre.

    Le fait que j'ai pas téléchargé GameMaker ne veut pas dire que je n'ai pas hâte de créer des jeux mais juste que si je me lance dans l'apprentissage d'un log plutôt qu'un autre, je préférerai aller jusqu'au bout
    L'une des principale qualité d'un développeur c'est sa curiosité ; rien ne t'empêches d'essayer et de poser des questions quand même !
    Tout ce que tu verras t'apprendra forcément quelque chose sur le développement d'un jeu, si tu te poses des questions sur une techno regarde leur showcase : ( http://www.yoyogames.com/showcase )

    Lance-toi !

    https://love2d.org/
    http://www.yoyogames.com/studio
    https://www.scirra.com/
    http://unity3d.com/
    http://www.sfml-dev.org/index-fr.php
    Suivez le développement de Chibis Bomba
    twitter : https://twitter.com/MoD_DiB
    DevBlog : http://moddib.blogspot.fr/

  13. #13
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Merci à tous pour vos réponses.
    Je vais effectivement commencer à bidouiller Game Maker (j'ai des idées plus simples que celles dont je vous ait fait part, et elles sont peut-être faisables avec ce logiciel) et, en parallèle, commencer à apprendre à programmer (sans créer des jeux tout de suite) pour voir si cela me plait. Si c'est le cas je réfléchirai peut-être à faire une formation, même si, si j'ai bien compris, apprendre le code seul c'est faisable si on y passe du temps (d'autant que passer par des écoles privées hors de prix n'est pas dans mes possibilités, et je sais pas encore si d'autres formations abordables et sérieuses existent).

    Je suis encore un peu perplexe quant à quel langage apprendre en premier mais je sais qu'il y a 40 topics différents qui traitent du sujet donc je vous passe la question, je trouverai bien la réponse par moi-même. Pour l'instant c'est Python que j'ai vu revenir le plus souvent sur les forums mais je ne suis pas encore fixé.

    Je sais désormais où vous trouver si je bute sur un problème en programmation, voir sur Game Maker.

  14. #14
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 826
    Points : 218 287
    Points
    218 287
    Billets dans le blog
    117
    Par défaut
    Bonjour,

    pokemon (riez, mais j'ai toujours trouvé le concept du jeu original intéressant, c'est juste qu'ils sont feignants et refont toujours le même jeu depuis 15 ans)
    Moi, j'adore le concept aussi. Mais s'ils continuent ainsi, c'est parce que les gens accrochent et que si on change un poil de millimètre le truc, alors les gens vont rouspéter.

    Pour la programmation, je dirai que vous en connaissez déjà un peu (un minimum : la logique d'un comportement) grâce aux conditions de RPGMaker.
    Maintenant, apprendre la programmation, c'est un peu barbant (je trouve). Apprendre la programmation avec les jeux vidéo, c'est mieux, car on voit un résultat rapide de ce que l'on fait. La programmation (comme celle de l'école) est barbante, car il n'y a pas de résultat vraiment visible.

    Moi, ce que je vous conseillerai de faire, c'est de vous lancer, c'est tout. Vous prenez un logiciel comme GameMaker, Unity (page de ressources sur Developpez.com), Godot (page de ressources sur Developpez.com). et vous y allez. Notamment, vous suivez une série de tutoriels (vidéos ou non) et vous apprenez à utiliser le logiciel et à créer votre premier jeu. Ensuite, lorsque vous aurez quelques bases, vous pourrez reprendre les éléments vus dans le tutoriel et les réutiliser pour votre propre jeu (un jeu plus basique que ceux cités dans votre premier message).
    En essayant de faire votre second projet, vous allez rencontrer de nouveaux obstacles (ce qui est totalement plus que normal en informatique (et surement dans d'autres domaines)) et vous allez tenter de les résoudre (ou chercher pour les résoudre), c'est ainsi que vous apprendrez et vous progresserez.

    Par exemple, cela consisterai à prendre Unity et à suivre cette série de tutoriel : http://unity.developpez.com/videos/roguelike-2D et une fois le tutoriel fini et les connaissances acquises, vous vous lancez dans la création d'un bomberman simple. Et ainsi vous aurez le pied dans l'étrier.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  15. #15
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Je vois que les conseils ne sont pas forcément les mêmes, surement selon les parcours de chacun.
    Effectivement j'ai bien assimilé le concept des conditions grâce à RPG Maker, bien que ce soit assez simple comparé à de la prog, et je me suis aussi pas mal éclaté je dois dire. D'ailleurs dans un autre genre "d'expériences formatrices", j'ai aussi créé plusieurs jeux de sociétés que j'avais en tête et qui se sont avérés plutôt funs et assez équilibrés avec le temps.
    Je vais regarder avec interêt le tutoriel que vous avez donné! Apprendre à créer un rogue-like pourrait m'être d'une grande utilité étant donné que pas mal de mes idées de jeux ont un système de map générées aléatoirement.

    J'aurai une question concernant les logiciels comme Game Maker et Unity, puisque vous avez l'air de bien les connaitre : même si dans un premier temps, pour apprendre à les maîtriser, on doit passer par la création de jeux simples et surtout par la création de jeux "dictés" par les tutos (afin de comprendre les principes évidemment), par la suite, ces logiciels peuvent-ils réellement permettre de créer des jeux originaux dans leur gameplay et de façon relativement libre et précise (les avis divisent d'après ce que j'ai lu sur les forums, certains disent oui et d'autres que seule la programmation permet cela) ?

    Autre question relative à ces logiciels : pour créer des codes à ajouter à des jeux créés à l'aide de Game Maker / Unity, a t-on besoin d'être aussi expérimentés que si l'on voulait coder un jeu sans ces logiciels, juste avec de la prog ? Ou programmer des lignes de codes à ajouter pour faire des jeux originaux et qui répondent à nos idées de mécaniques de jeu avec précision est-il globalement plus simple que l'apprentissage de la prog pure et dure.

  16. #16
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 826
    Points : 218 287
    Points
    218 287
    Billets dans le blog
    117
    Par défaut
    Oui, Unity et consort permettent de créer le jeu que l'on souhaite. Il n'y a pas de vraies limitations (contrairement à RPGMaker).
    La programmation que l'on doit utiliser dans ces logiciels est moins complexes que celle utilisée dans la création de logiciels from scratch. En effet, ici, une grande partie du moteur de jeu est codée, il suffit juste à créer des comportements (appelés scripts) pour dire que tel élément doit agir ainsi, ou que si le joueur fait une telle chose, le jeu doit lui donner ça comme points.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  17. #17
    Expert éminent sénior
    Avatar de Kannagi
    Homme Profil pro
    cyber-paléontologue
    Inscrit en
    Mai 2010
    Messages
    3 215
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 35
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cyber-paléontologue

    Informations forums :
    Inscription : Mai 2010
    Messages : 3 215
    Points : 10 140
    Points
    10 140
    Par défaut
    Citation Envoyé par Harrylechienfou Voir le message
    Autre question relative à ces logiciels : pour créer des codes à ajouter à des jeux créés à l'aide de Game Maker / Unity, a t-on besoin d'être aussi expérimentés que si l'on voulait coder un jeu sans ces logiciels, juste avec de la prog ? Ou programmer des lignes de codes à ajouter pour faire des jeux originaux et qui répondent à nos idées de mécaniques de jeu avec précision est-il globalement plus simple que l'apprentissage de la prog pure et dure.
    La prog 'pure et dure' est un apprentissage assez long et il faut quelque année pour pouvoir les maitriser, de plus ton projet ne sera pas faisable avant quelque année avec un apprentissage qui doit être quotidien.
    Si personne te l'a proposé c'est que non seulement c'est difficile mais aussi casse gueule (en grande partie), il faudrait que tu voye du C ou C++ mais je te le déconseille depuis que je traine sur le forum j'ai vu aucun qui a appris la prog low level et ensuite faire un truc portable avec sauf ceux qui sont deja dedans , mais a mon avis si ton but et de faire du jeu il faut mieux utiliser Unity/Game Maker / Godot ect

  18. #18
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Bon, très bien.
    C'est juste que je me dit toujours que les types que je respecte tant et qui ont créé leurs jeux indés (Towerfall, Super Meat Boy, Hotline Miami, Limbo, Don't Starve, Fez, Braid, etc) ont appris à coder et ont codé de leurs jeux eux-mêmes... Je peux pas m'empêcher de me dire que c'est pas pour rien et que ça ajoute à la qualité et la précision d'un jeu.

    Enfin bref j'avais qu'à commencer plus tôt haha. Je vais utiliser Game Maker et voir ce que je peux faire de beau, ce sera déjà pas mal.

  19. #19
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 826
    Points : 218 287
    Points
    218 287
    Billets dans le blog
    117
    Par défaut
    Pour Hotline Miami, ils ont utilisé GameMaker. Ce n'est pas qu'ils ne savaient pas programmer, je ne dirais pas cela, juste, qu'ils n'ont pas eu besoin de tout programmer à fond, ce qui est bien plus facile et c'est ce que je disais dans mon précédent message : la programmation dans Unity, c'est de la programmation de comportement (scripting) ce qui reste de la programmation, mais de manière plus simple et plus intéressante (moins barbante disons).
    De même, un game designer français a réalisé The Next Penelope avec Construct 2, tout seul.

    Donc, vous voyez, même les non programmeurs peuvent y arriver, il faut juste de l'ambition et de la motivation, beaucoup de motivation.
    Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi

    Ma page sur DVP
    Mon Portfolio

    Qui connaît l'erreur, connaît la solution.

  20. #20
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Novembre 2015
    Messages
    20
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vienne (Poitou Charente)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Novembre 2015
    Messages : 20
    Points : 8
    Points
    8
    Par défaut
    Je vois, c'est assez encourageant en effet. Je savais pour The Next Peneloppe mais je n'ai jamais joué au jeu donc je ne sais pas ce que ça vaut. Pour Hotline Miami, j'avais cru comprendre qu'ils avaient utilisé Game Maker surtout pour le mapping, mais je te crois sur parole.
    Dans tous les cas je vais essayer d'utiliser l'un de ces logiciels et de tout faire pour créer un jeu avec le peu de compétence que j'ai (même si j'imagine que je vais progresser durant toute la conception).

    J'espère juste que je ne vais pas me perdre entre l'utilisation de ces logiciels et l'apprentissage partiel de la programmation pour rendre viables mes idées de gameplay qui, j'imagine, ne seront pas possibles de créer via GameMaker et autres sans passer par de la programmation "d'appoint". J'imagine que rien ne vaut le fait de savoir programmer de soi même, mais bon, ce n'est malheureusement pas une option pour moi si je veux me concentrer sur la création de jeux sans passer trop de temps à apprendre la prog de A à Z, en sachant que je ne sais pas si je pourrais en faire une activité à temps plein un jour.

Discussions similaires

  1. Quel logiciel (EDI) pour débuter en programmation ?
    Par mimosa69 dans le forum Débats sur le développement - Le Best Of
    Réponses: 13
    Dernier message: 17/01/2016, 17h45
  2. [2.x] J'ai besoin de vos conseils pour débuter avec Symfony 2
    Par beegees dans le forum Symfony
    Réponses: 4
    Dernier message: 12/12/2013, 23h33
  3. Vos conseils pour le choix de quelques programmes
    Par infofree dans le forum Ubuntu
    Réponses: 12
    Dernier message: 06/09/2008, 11h42
  4. Réponses: 4
    Dernier message: 10/07/2007, 14h50
  5. Réponses: 16
    Dernier message: 15/11/2005, 21h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo