CONNEXION
  • RetourJeux
    • Tests
    • Soluces
    • Previews
    • Sorties
    • Hit Parade
    • Les + attendus
    • Tous les Jeux
  • RetourActu
    • Culture Geek
    • Astuces
    • Réalité Virtuelle
    • Rétrogaming
    • Toutes les actus
  • RetourHigh-Tech
    • Actus JVTECH
    • Bons plans
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTECH
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch
    • Xbox Series
    • Overwatch 2
    • FUT 23
    • League of Legends
    • Genshin Impact
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • PS4
  • One
  • Switch
  • Wii U
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Etoile Abonnement RSS

Sujet : Débuter sérieusement en programmation

DébutPage précedente
1
Page suivantePage suivante
Trent2 Trent2
MP
Niveau 10
27 septembre 2014 à 18:56:27

Bonjour,

Avant de poser mes questions, je vous explique le background.

A la base, je ne suis pas du tout programmeur (enfin, pour les vrais programmeurs, c'est comme si). Je sais coder en Fortran90, et je connais un peu l'orienté objet, en utilisant python (aussi en matlab, mais ce n'est pas un langage de programmation, et j'ai un peu oublié). J'ai déjà créé une interface graphique, mais pas dynamique, ni interactive (avec des boutons, oui, mais pas directement sur le graphique).

Quand je dit, coder, disons que je comprend bien les principes de l'algorithmique. Une fois que j'ai les commandes pour faire ce que j'ai besoin, en général j'arrive à me débrouiller, sinon je cherche sur internet (en général, mais ça peut m'arriver de me documenter dans des livres).
Bref, on va dire que je connais les bases de la programmations.

Maintenant, je veut m'investir dans la création de jeux vidéo.

Alors pour ça, je sais qu'il existe des logiciels spécifiques à un type de jeu. Je ne connais pas les logiciels, mais je sais qu'il y en a un pour faire des rpg, un autre pour les jeux de plate-forme ... et j'ai pas trop cherché, mais ça ne m'étonnerais pas qu'il y en ai d'autres pour d'autres type de jeu.

Je sais aussi que la plupart des jeux sont codé en C++. J'imagine qu'en fortran ou en python c'est possible, mais il parait que C++, c'est quand même le must.

Alors maintenant, sachant que je privilégie le long terme. Pas besoin de sortir un jeu médiocre tous les 6 mois, je veut pouvoir créer un bon jeu (enfin, disons plutôt, correcte), un jour (pas tout de suite, hein ?) et être capable de continuer à progresser, à créer mes mécaniques de jeux, gameplay (si j'y arrive. Je n'irais peut être pas jusque là) ... etc. Sachant aussi que j'ai conscience (plus ou moins) que c'est compliqué, probablement plus que je ne l'imagine. En amateur je veut pouvoir apprendre comment ça fonctionne, et ensuite, si je comprend bien, que je me débrouille et que ça me plait beaucoup, je veut pouvoir aller plus loin. Faire des jeux de meilleurs qualité, plus appréciable pour les joueurs ... etc.

ça va être beaucoup plus difficile que je ne l'imagine pour l'instant, j'en n'ai peut être pas pleinement conscience, mais j'ai envie de me lancer, de tenter l'expérience et voir ce que ça donne. Quitte à abandonner l'idée quand j'aurais fait un snake (ou pas) et que j'aurais galéré comme un fou, et enfin compris à quel point c'est compliqué.

Alors que me conseillez vous ? Me lancer dans le C++, apprendre à coder simplement avec, puis partir dans la création de jeux vidéo très basique pour commencé (morpion, puissance 4, bataille naval ... bien que dans ces derniers, va falloir aussi gérer un IA, ce qui sera encore moins simple que le morpion) puis de moins en moins basique au fur et à mesure de la progression de mon niveau ? Ou alors d'utiliser un logiciel de création de jeu pour comprendre les mécanismes de création, la logique d'un jeu ... etc (ou carrément parce que c'est plus simple et que je ne pourrais pas espérer faire mieux ... ) ?

Dans ce dernier cas, à quel point ce type de logiciel peut être restreint par rapport à ce que l'on souhaite réaliser (à part le fait par exemple qu'un logiciel de jeu de plate-forme ne permet pas de faire un RPG par exemple) ? J'entends par là, les limitations. Par exemple, sur la complexité de la map, sur la création du gameplay (genre, est-ce que c'est toujours le même ?) ... en gros, la liberté de création avec un tel logiciel.

Quel(s) logiciel(s) me conseillez vous ?

Donc pour résumer un peu :

Pour débuter, C++ ou logiciel spécifique de création de jeu ?

Ensuite, pour aller plus loin, le logiciel de création de jeu me permet-il d'aller loin dans la réalisation, ou suis-je limité ? (auquel cas, le C++, bien que moins pratique au début, sera mieux pour la suite)

Enfin voilà, j'espère que vous n'avez pas pris ce pavé en pleine figure (quel blague, c'est absolument hilarant ha ha ha (rire ironique)). Plus sérieusement, j'espère que mes questions ne sont pas trop vague.

Je vous remercie d'avance pour les réponses. Honnêtement, je m'attend à tout ("ouai, vas-y, C++, tu seras plus libre". Ou alors, "non t'es fou, t'y arriveras jamais, c'est trop compliqué, faut avoir fait une école de prog pour ça, et encore, tu t'imagine pas" ...), ce pourquoi je vous demande pour savoir vraiment comment m'orienter, si je ne fonce pas droit dans le mur en faisant du C++ alors que j'en n'ai jamais fait. Avoir vos avis sur les logiciels de création de jeu. Si on peut déjà faire des gens bien sympa avec, ou si c'est quand même trop limité ... etc.

En tout cas, si vous avez d'autres suggestions, conseils, avis ... n'hésitez pas. J'ai les yeux grand ouvert.

rangerprice rangerprice
MP
Niveau 10
27 septembre 2014 à 20:37:59

Ton topic dépasse un peu le cadre du forum, il aurait fallut que tu poste ce topic sur le forum création de jeux, il y a plein de pro qui sauront t'épauler et te conseiller.

" Pour débuter, C++ ou logiciel spécifique de création de jeu ? "

:d) les deux, si tu combine le C++ avec un moteur de jeux tu peux faire tout se qu'il te plaît.
Pour le logiciel de création de jeux il va falloir utiliser un moteur de jeux vidéo, qui comprend une suite d'outils perméttant de faciliter le développement de jeux, c'est très utile, surtout pour les débutants car ça t'épargne de la paperasse.

Pour les moteurs de jeux je vais faire cour: Unity, Unreal Engine.
Ce sont deux moteurs de jeux populaire et très bien documenté. :hap:

[notch] [notch]
MP
Niveau 10
27 septembre 2014 à 20:39:46

Le c++, c'est surtout utilisé par les pro pour des raisons de performances (et souvent pour coder le moteur jeu, le reste pouvant être dans un langage de plus haut niveau).

Du coté des dev indé ou amateur, des langages un peu plus haut niveau du style java ou c# sont généralement plus utilisé. Des langages comme python peuvent également très bien convenir en fonction du type de jeux que tu souhaite créer.

Après, il faut prendre en compte que nombre de librairies/moteur jeu sont déjà codé et disponibles et utilisable facilement donc il y a dans la plupart des cas très peu d'intérêt de coder son moteur jeu en c++ (pourquoi dépenser des années pour faire des choses qui existe déjà et en plus en moins bien :hap: ?)

Sinon, je te conseille également de bosser un peu l'algorithmie, ça te servira peu importe les langages et technologies que tu utilisera :ok:

boydfowlerjr boydfowlerjr
MP
Niveau 10
27 septembre 2014 à 21:06:37

Après tu peux faire des jeux 2D avec la SDL , tu peux aussi faire des jeux en HTML5/JS et tu seras multi-plate forme . http://blogs.msdn.com/b/davrous/archive/2012/07/06/tout-ce-qu-il-faut-savoir-pour-r-233-aliser-des-jeux-html5-avec-canvas-et-svg.aspx

boydfowlerjr boydfowlerjr
MP
Niveau 10
27 septembre 2014 à 21:09:03

J'oubliais de mentionner les librairies style Pygame et Rubygame pour ces deux langages de haut niveau. Après certains langages sont meilleurs pour certains usages mais bon on peut avoir des rêves comme j'adorerais un jour savoir coder un moteur d'echec dans un langage style ruby même si ça doit être fou de faire un moteur compétitif face au jeu genre fritz and co

Trent2 Trent2
MP
Niveau 10
27 septembre 2014 à 22:25:24

rangerprice Voir le profil de rangerprice
Posté le 27 septembre 2014 à 20:37:59 Avertir un administrateur
Ton topic dépasse un peu le cadre du forum, il aurait fallut que tu poste ce topic sur le forum création de jeux, il y a plein de pro qui sauront t'épauler et te conseiller.

ah, ok. Je n'ai pas fait attention qu'il y avait un forum spécifique pour la création de jeu. Je vais donc y faire un tour.

Sinon, merci pour toutes vos réponses.
Alors finalement, avec tout ça, vous me conseillez quoi ?

S'il n'y a pas de réponse claire (car ça dépend probablement des gens, en faite, et de ce qu'on veut en faire bien sûr), je pense que je vais aller me documenter sur tout ce que vous me racontez, et je choisirai ce qui me parait le mieux. L'algorithmie aussi je verrai bien dans ce que je trouverai, et je m'exercerai sur le moteur que j'aurais choisi.

[froczy [froczy
MP
Niveau 4
27 septembre 2014 à 22:41:06

J'avoue pour l'algo il vaut mieux commencé par sa.

Mon point de vue
Tu arriveras sûrement mieux a programmé en ayant par exemple fait 25h d'algo que plutôt 100h de C++

Fin moi je pense sa .

Je suis en fac et donc je fais de l'algo et je trouve que c'est mieux, sa prépare mieux ...

Ace_Attorney Ace_Attorney
MP
Niveau 10
28 septembre 2014 à 00:30:38

"Je vous remercie d'avance pour les réponses. Honnêtement, je m'attend à tout ("ouai, vas-y, C++, tu seras plus libre". Ou alors, :d) "non t'es fou, t'y arriveras jamais, c'est trop compliqué, faut avoir fait une école de prog pour ça, et encore, tu t'imagine pas" ... :g))"

Créer un petit jeu vidéo n'est pas si dur que ça, ce qui est réellement dur, c'est de créer un réel moteur de jeu vidéo. (si tu t'intéresse au sujet, je te conseil fortement de lire le bouquin Game Architecture Engine, de Jason Gregory)

Quand je parles d'un petit jeu, je ne parles pas d'un jeu indé à la Fez (qui a du être une torture monstre à coder) ou à la Super Meat Boy, je parles plus d'un Snake, d'un Pong, ou d'un Mario.

Sinon, je suis plus l'avis de rangerprice, en enlevant l'Unreal Engine quand même, et en changeant le C++ par du C#, qui est plus facile d'accès, donc plus allier Unity/C#. (Je SURKIFFE le C++, mais j'admets que c'est assez décourageant pour un mec qui à pas beaucoup d'expérience en prog')

Et avec Unity, tu n'es pas limité par le type de jeu, tu confonds avec des logiciels comme RPG maker, qui sont réellements spécialisés pour ça.

Sinon, le conseil de commencer par de l'algo au lieu directement via un langage est assez futile, car de toute façon, l'apprentissage d'un langage est forcément accompagné de l'apprentissage de l'algorithmie, car la programmation, c'est de l'algo'.

La seule différence, c'est qu'apprendre l'algorithmie avant d'apprendre un langage (càd, via du papier), il va aborder la programmation plus d'un point de vue mathématique, puis ensuite va aborder les problématiques de l'apprentissage d'un langage.

Là où commencer directement avec un langage, la personne va devoir aborder les deux problématiques en même temps. Les deux ont des avantages ou des inconvenients, mais il faut arrêter de systématiquement conseiller de commencer via de l'algo papier, ça dépend des profiles et des personnes.

Trent2 Trent2
MP
Niveau 10
23 octobre 2014 à 12:50:12

Quelques nouvelles au passage.

Je me suis mis à unity, et ... je crois que je suis tombé amoureux :coeur:

Pour chaque problème que j'ai rencontré jusque là, j'ai trouvé ma réponse dans la communauté. Les tutos sont géniaux. L'interface est plutôt user friendly. La logique de programmation est abordable (orienté objet, en même temps XD, c'est pas propre au C# pour l'instant ....)

En fait, j'ai l'impression que programmer un jeu, avec unity (je précise, les programmes derrière doivent être bien compliqué XD), c'est simple. Ce qui va être le plus difficile, ça va être d'optimiser le jeu tant en programmation (pour pas que ça prenne trop de ressource) qu'au niveau fluidité du jeu, au niveau qualité du gameplay ... etc, et bien sûr, être capable de retranscrire dans le jeu, l'idée que je m'en faisais. En gros, ce qui est difficile, c'est de faire un bon jeu (et c'est là que je vais peut être me casser les dents dans un avenir plus ou moins proche, mais on verra).

Mais bon, je n'y suis pas encore. J'ai déjà quelques idées pour mon premier jeu, je vous le présenterai (ça sera pas avant plusieurs mois, voir 1 an, ça va dépendre de la fréquence à laquelle je travail dessus, et de quand j'aurais fini les différents tutos. J'ai déjà fait le premier (que j'ai bien compris), il en reste 2 pour les débutants, et un intermédiaire.)

Pour l'instant, c'est plus un passe temps qu'autre chose, mais c'est très intéressant, et je trouve ça très sympa. J'ai hâte de faire mon premier jeu (ça va être l'émotion, lol).

En tout cas, merci de votre aide. Sans vous, je serais parti sur du C++, alors que ça m'aurait retardé plus qu'autre chose, même si c'est toujours utile de savoir coder dans un langage comme celui là, mais bon ... va coder une plateforme en C++, ça n'a pas l'air très simple. Au moins avec unity, tu la génére, tu la place à l'origine, tu la dimensionne, et c'est fini XD. On dirait un logiciel de CAO (et d'ailleurs, j'ai cru voir que des entreprises s'en servait pour l'architecture, pour tester des idées ... etc, il n'y a pas que les jeux vidéo qui utilisent unity).

Bref, je suis fan de unity ^^.

P.S.: pour l'algo, j'ai déjà des bases. Pour l'orienté objet avec python, j'ai beaucoup appris sur le tas avec un programme déjà créé par un ami. ça m'aurait pris plus de temps d'en arriver au même point de compréhension en partant de la base avec un apprentissage classique. Cela dit, j'ai peut être quelques lacunes qui peuvent me freiner sur certains points. Mais au pire j'irai vous voir (si je ne trouve pas ailleurs) et vous m'expliquerais, ou m'orienterais en fonction. Bien sûr, j'éviterai les questions toute bête, ou trop vague. Et je ne poserai pas 2000 questions du genre "comment ça se fait que la compile marche pas ? Il me dit qu'il ne reconnait pas la variable "truc" ". Là, si je pose cette question comme ça, c'est que je n'ai pas cherché XD. Et si je ne sais pas chercher, c'est que je ne sais pas programmer, lol.

Et pour les problèmes plus jeux vidéo, j'ai déjà été voir l'autre forum, donc je leur en parlerais, bien sûr.

[Kyomaro] [Kyomaro]
MP
Niveau 10
23 octobre 2014 à 13:06:56

Donc j'ai pas suivi, tu programmes en C# ? :)

tbol tbol
MP
Niveau 20
23 octobre 2014 à 14:29:56

Si tu as déjà quelques bases tu peu tenter d'apprendre le C++. Pour faire rentrer l'apprentissage effectivement amuse toi à programmer de petits jeux 2D c'est ce qu'il y à de mieux. Pour le reste tu verra après mais il y à des moteurs de jeux pour C++ dont certains sont soit gratuits soit accessibles pour une somme modique et la tu aura de quoi programmer des jeux plus sophistiqués.

Trent2 Trent2
MP
Niveau 10
23 octobre 2014 à 15:16:09

[Kyomaro], ouai, je me suis mis à unity/c#

tbol, merci du conseil. Pour l'instant je me contenterais de unity en c#. Et je ferais des jeux plutôt 3D mais avec une logique 2D (je pensais à snake revisité avec vu en 3D, mais les déplacement dans un environnement 2D, donc finalement assez simple à réaliser ... à priori. Je verrais bien quand je me lancerai dedans).

Franchement, je pensais la 3D super compliqué, mais avec le tuto que j'ai fait, le plus dure est déjà facilité par unity3D.

Cela dit, je suis plutôt enthousiaste, donc j'ai probablement une vision erroné de la chose (genre, le snake va peut être être difficile à réaliser sur unity ?). ça va peut être beaucoup plus difficile que je ne le pense pour l'instant. Mais qui ne tente rien n'a rien, comme on dit ^^.

Je vous tiendrez au courant quand je commencerai, ou quand j'aurais changé d'idée.

Si je me trouve trop limité, j'irais voir ailleurs, mais vu les jeux qui sont fait sur unity, je serai déjà devenu très bon quand je verrai des limites de programmation avec unity.

tbol tbol
MP
Niveau 20
23 octobre 2014 à 18:47:14

La 3D si tu utilises un moteur c'est pas forcément hyper compliqué. C# c'est complet et un bon langage donc si tu te lance la dedans et que un jour tu passes à autre chose (java ou autre) tu pourra le faire sans problème. C# c'est effectivement le langage le plus puissant pour gérer Unity3D.

DébutPage précedente
1
Page suivantePage suivante
Répondre
Prévisu
?
Victime de harcèlement en ligne : comment réagir ?
Infos 0 connecté(s)

Gestion du forum

Modérateurs : godrik, LGV
Contacter les modérateurs - Règles du forum

Sujets à ne pas manquer

La vidéo du moment