15 votes

Où dois-je aller après avoir appris le C++ ?

Je suis au lycée et je suis une classe où nous concevons notre propre cours et choisissons ce que nous apprenons. J'ai choisi d'apprendre le C++ et la programmation de jeux.

J'aimerais en apprendre le plus possible sur l'utilisation de C++ avec OpenGL ou DirectX ou toute autre API.

Après avoir terminé l'apprentissage du C++, où dois-je aller ? Pouvez-vous me recommander un livre sur la programmation de jeux ?

24voto

Mike Points 6184

Dire que vous pensez connaître la majeure partie du C++ me rappelle la fois où j'ai dit que je pensais connaître la majeure partie de Java. Lorsque vous vous retrouvez à dire des choses comme ça sur des langages que vous n'avez pas utilisés depuis plus de huit ans, vous avez glissé dans une mauvaise zone de confort. Etirez-vous. Beaucoup. Lisez un livre sur le langage. Vous serez choqué par tout ce que vous ne savez pas.

Bien que je n'aie pas de bons conseils à donner sur la programmation de jeux, je peux vous dire qu'en tant que programmeur, vous devez absolument vous attaquer d'abord aux principes fondamentaux, à fond. Pour moi, cela signifie lire Code Complete, GoF, et tout ce qui est écrit par Martin Fowler (pas seulement une fois, mais plusieurs fois). Cela signifie aussi étendre vos connaissances des technologies par le biais de projets jouets.

Ensuite, vous pourrez faire ce que vous voulez, et le faire bien.

11voto

nick Points 101

La seule façon d'apprendre à faire des jeux est de faire des jeux. J'ai toujours entendu cette phrase comme une suggestion d'ordre :

  1. Pong
  2. Tetris
  3. Pac-Man
  4. Super Mario Brothers

Bien sûr, je parle de "jeux de ce type" et non de clones exacts. L'idée est de mettre en parallèle l'évolution des jeux vidéo en passant des jeux à écran unique à un jeu à écran déroulant. Le concept d'IA est également introduit à mi-chemin. Vous mentionnez que vous êtes en train d'apprendre OpenGL. Je commencerais par les jeux en 2D car les ressources sont plus faciles à créer et les détails d'un moteur graphique en 2D sont beaucoup plus simples. Vous passerez moins de temps sur la "vidéo" et plus sur le "jeu".

Une fois que vous avez terminé les quatre premiers petits projets, commencez à réfléchir à la façon dont vous pourriez créer un jeu dans le genre Doom.

Malheureusement, il n'existe pas de livres "évidents" sur la programmation de jeux comme il en existe sur la programmation générale (Knuth, Wizard Book). Parmi ceux que j'ai lus, j'ai surtout apprécié la série "Game Programming Gems", qui contient de petites bribes d'idées à intégrer dans vos jeux.

10voto

asveikau Points 16871

Oui, je sais que je ne serai pas capable de faire un MMORPG super génial,

A cela, je dois dire... Pourquoi pas ? Les gens qui travaillent sur ces choses sont de simples mortels, comme vous et moi. Ils n'ont pas de capacités surhumaines que vous ne pouvez pas nécessairement acquérir.

Il est vrai qu'il n'existe qu'un nombre limité d'emplois et un nombre limité de personnes qui réussissent à accomplir une tâche donnée, mais si vous limitez artificiellement les possibilités, vous n'y parviendrez pas et vous n'apprendrez même pas les compétences dont vous avez besoin.

Par exemple... Quand j'étais étudiant, je m'intéressais aux systèmes d'exploitation. Si j'avais dit quelque chose de défaitiste comme "personne ne travaille sur les noyaux de nos jours" et que j'avais simplement abandonné, je n'aurais rien appris sur le développement des noyaux et je ne serais pas aussi performant dans mon travail aujourd'hui.

Je te dirais... Allez dans une bonne université, spécialisez-vous en informatique, n'arrêtez pas de coder par intérêt sur votre temps libre, et postulez pour des stages et des emplois dans un domaine de l'industrie qui vous intéresse. Et surtout, n'ayez pas peur d'être ambitieux.

6voto

mkoistinen Points 3883

Vous devriez investir du temps pour apprendre autant de mathématiques que possible. Des domaines de base tels que la géométrie, l'algèbre, la trigonométrie et l'algèbre matricielle seraient, à mon avis, le strict minimum.

6voto

Dima Points 19888

Moi aussi, j'ai cru un jour connaître la plupart du C++... Puis j'ai lu "C++ efficace" , "STL efficace" , "C++ Gotchas" y "Conception moderne du C++" et j'ai réalisé à quel point j'avais tort.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X