Il y a beaucoup de bons choix. (J'enseigne CS1 et CS2, ainsi que la programmation de jeux.) Tout d'abord, bien sûr, apprenez à penser comme un informaticien. Ne soyez pas trop lié à la langue, car les concepts sont vraiment universels.
Java est un assez bon langage, mais construire un jeu en Java est un peu fastidieux. Il existe des moteurs intéressants qui facilitent un peu le processus. Malheureusement, il peut être un peu pénible d'attacher un moteur de jeu à votre outil d'édition.
J'aime le moteur FANG (malheureusement, je ne peux pas encore publier d'hyperliens, alors recherchez-le sur Google.) Une partie intéressante de ce projet est l'éditeur en ligne. Cela signifie que vous pouvez commencer immédiatement sans avoir à vous soucier des paramètres d'éclipse.
Je ne suis vraiment pas fan de Game Maker. L'interface graphique convient aux personnes qui ne veulent pas apprendre à programmer, et c'est un outil de prototypage décent (mais pas génial). Cependant, il y a deux choses que je n'aime pas. Tout d'abord, c'est commercial. Ce n'est pas une mauvaise chose, mais s'il existe des alternatives open source gratuites qui sont tout aussi bonnes (et il y en a), vous devriez peut-être les examiner en premier. Le plus gros problème avec Game Maker est le langage de script. Finalement, vous allez devenir trop grand pour l'interface graphique et vous voudrez réellement commencer à écrire du code. Le langage de script dans GM est assez rétrospectif. Puisque vous êtes un CS majeur, vous êtes (j'espère) intéressé par la réutilisation du code, l'élégance, la clarté, l'efficacité et la modularité. La langue GM vous décevra.
J'adore Python et Pygame. (En fait, j'ai écrit un livre à leur sujet. Voir toutes mes notes et vidéos en ligne sur mon site si vous le souhaitez. Vous êtes les bienvenus à ces ressources, que vous ayez le livre ou non.) t trop difficile à apprendre (surtout si vous savez déjà programmer.) Pygame est un wrapper sur le populaire moteur SDL 2D. En fait, j'ai ajouté un deuxième wrapper à pygame pour le rendre aussi facile à utiliser que Flash.
En parlant de Flash, je ne pense pas que cela en vaille la peine. (Je sais que vous ne l'avez pas demandé) C'est une bonne plate-forme, mais le coût et l'incertitude sur la façon dont elle se comportera sur les appareils mobiles signifie que ce n'est peut-être pas un excellent outil d'apprentissage. (J'ai aussi écrit un livre sur le développement de jeux dans Flash, mais je n'enseigne plus Flash.)
Voici d'autres bonnes choses à essayer. Obtenez une copie de zéro du MIT:
scratch.mit.edu
Il est fait pour les enfants, mais ne vous découragez pas. C'est un jeu et un outil d'animation absolument incroyables. La programmation utilise des tuiles, il est donc facile de commencer avec. Vous serez complètement étonné de ce que vous pourrez en faire.
Vous pouvez également essayer Alice de Carnegie Melon www.alice.org La dernière (3e) édition est en fait une extension de Java, qui utilise les modèles Sims2.
Scratch et Alice sont gratuits.
Un autre excellent outil à étudier est Blender
www.blender.org
C'est un outil de modélisation 3D, mais beaucoup de gens ne savent pas que c'est aussi un moteur de jeu complet avec une interface de programmation par glisser-déposer. Une fois que vous avez dépassé les tuiles, le support Python est intégré.
Maintenant, je suis assez intéressé par HTML5 (qui est à peine HTML - c'est vraiment HTML, CSS et JavaScript.) Il n'est pas tout à fait là en tant qu'environnement de développement de jeux, mais je crois que ce sera un grand joueur. Mon prochain livre sera consacré au développement de jeux en HTML5.
Bonne chance à vous et faites-moi savoir si vous avez d'autres questions.