有很多不错的选择。(我教CS1和CS2以及游戏编程。)首先,当然要学会像计算机科学家一样思考。不要太拘泥于语言,因为概念确实是通用的。
Java是一种非常不错的语言,但是用Java构建游戏有点乏味。有一些有趣的引擎可以使该过程更容易一些。不幸的是,将游戏引擎附加到您的编辑工具可能会有些痛苦。
我喜欢FANG引擎(很遗憾,我还不能发布超链接,所以请在Google上查找。)该项目的一个有趣部分是在线编辑器。这意味着您可以立即开始,而不必担心日食设置。
我真的不喜欢Game Maker。GUI非常适合不想学习编程的人,它是一个不错的(但不是很好)的原型制作工具。但是,有两件事我不喜欢。首先,它是商业性的。这不是一件坏事,但是如果有免费的开源替代品同样好(并且有),也许您应该首先研究它们。Game Maker的最大问题是脚本语言。最终,您将超出GUI的范围,并且将要真正开始编写代码。GM中的脚本语言相当落后。因为您是CS专业的学生,所以(希望)您对代码重用,优雅,清晰,高效和模块化感兴趣。GM语言会让您失望。
我喜欢Python和Pygame。(实际上,我写了一本关于它们的书。如果需要,可以在我的网站上查看我所有的笔记和在线视频。无论您是否有这本书,都欢迎您使用这些资源。)Python是一种很好的优雅语言,它不是太难学了(特别是如果您已经知道如何编程的话。)Pygame是流行的SDL 2D引擎的包装。实际上,我在pygame中添加了第二个包装器,以使其与Flash一样容易使用。
说到Flash,我认为这不值得。(我知道您没问过),这是一个很好的平台,但是成本和不确定性如何在移动设备上普及意味着它可能不是一个很好的学习工具。(我也写了一本关于Flash游戏开发的书,但我不再教Flash。)
这里还有其他一些很棒的尝试。从麻省理工学院获取草稿副本:
scratch.mit.edu
它是为孩子们准备的,但是不要让它让您。这是一个绝对不可思议的游戏和动画工具。编程使用图块,因此很容易上手。您将对使用它所能做的一切感到惊讶。
您也可以尝试来自Carnegie Melon的Alice,网址为www.alice.org。最新(第三版)实际上是Java的扩展,它使用Sims2模型。
Scratch和Alice都是免费的。
Blender www.blender.org是另一个值得研究的工具
它是3D建模工具,但很多人不知道它还是具有拖放式编程界面的完整游戏引擎。一旦您不再使用图块,它就会内置Python支持。
现在,我对HTML5非常感兴趣(几乎不包含HTML-实际上是HTML,CSS和JavaScript。)作为游戏开发环境,它还不存在,但我相信它将发挥很大的作用。我的下一本书将介绍HTML5中的游戏开发。
祝您好运,如果您还有其他问题,请告诉我。