新手游戏程序员 – 我从哪里开始?

好的,所以在过去的几个星期里我一直非常喜欢游戏编程。 我主要是一个networking程序员,并知道一些像PHP,Java,JavaScript,Python等lanugages公平。我也知道一些C + +,因为我听说它在游戏行业大量使用。 我没有游戏开发的经验,但我是一个快速的学习者(我15岁,所以我想我还有很多时间)。

那么,有没有我应该学习开发2D和3D游戏的语言? 另外哪个IDE(免费)是一个很好的地方开始编译你的想法(像Polycode: – http://polycode.org/ )。 我查找了Polycode,但是对于我来说构建它有点困惑。 我对DirectX,OpenGL,SDL和着色器有一个公平的想法,但我完全不知道如何编程它们。 我知道开始跳进这个东西已经有点早了,但是你必须从某个地方开始吧? 请帮助我,因为我真的想进入严肃的游戏编程。 谢谢!

我正在运行Windows 8 Pro 32位。 请相应地给我推荐任何软件!

你真的不应该发布这样的问题,因为在FAQ中明确指出你不应该…


了解一些C ++是一个很好的开始,你应该专注于在这方面做得更好。 如果您计划使用C ++ IMO进行游戏编程(例如用于自动管理多组数据的向量),学习一些STL是必须的。

这取决于你想从哪里去做什么


对于引擎开发和建立一个游戏顶上:

  1. 成为你select的语言stream利。 C ++对于速度和可用性来说是非常好的,但是会比C#更stream畅。

  2. 学习一个窗口API。 可以是原生的,如X11或GDI; 或抽象,如SDL或SFML。

  3. 学习graphicsAPI。 在大多数情况下,OpenGL是最好的select(因为它是跨平台和开放的)。

  4. 学习适合您的API的着色语言。 GLSL用于OpenGL,HLSL用于Direct3D。

  5. 学习audioAPI。 OpenAL和EFX是我的推荐,但如果你不介意在游戏开始商业时支付许可证,你可以使用类似FMOD的东西。 一个不比另一个好; 所以FMOD内置的任何东西都可以和AL结合起来。 如果你学习OpenGL,那么OpenAL将会变得更加简单,因为API是非常相似的。

  6. 可能学习或为您的引擎/游戏创建一个脚本语言。 学习一个从长远来看会更容易,但创建一个不是最困难的事情,并会减less依赖关系,同时让您完全控制function。

  7. 把所有的技能,使用和创建一个游戏!

你将需要学习一些其他的东西,如模型,audio和纹理文件parsing,但库可以用于这样的事情,使您的生活变得更加容易。

在此之前,您需要能够为您的游戏获取或创建模型和audio。

尝试并保持跨平台; 更多的钱这样的方式>:哈哈,这使得每个人都可以在他们select的操作系统上玩游戏时感到高兴。


对于游戏devise和使用预先存在的引擎创建游戏:

  1. 学习引擎为您提供的脚本语言。 例如,Unity使用一种名为UnityScript的基于JavaScript的语言。

  2. 了解如何创建模型,在线购买模型或find免费模型(免费,因为可以在商业中使用)。 Blender是模型创建的一个很好的软件,一旦你知道如何使用Blender就很容易。 确保您以引擎可以加载的格式转换或创建您的模型!

  3. logging一些声音,购买一些在线或find免费的。 确保您以引擎可以加载的格式转换或logging所有文件!

  4. 把它放在一起!

这种方法最终不太令人满意,但是比起自己编写游戏,你的游戏速度会更快。


您可以使用预先存在的引擎,然后继续编写自己的引擎。 这将帮助您在开始devise引擎之前熟悉游戏devise。

我已经写了几个月的自己的引擎。 到目前为止,我已经有了自己的模型格式,基本的脚本语言,两者的parsing器,OpenGL渲染,OpenALaudio和用于窗口的SDL。 我只有16岁,所以现在开始并不算太早。

下面是我的发动机在2个月后的照片,大约6年的C / C ++经验。 Ubuntu代表!

如果你想快速开始制作游戏,而且你已经知道Javascript,那么我会建议看看http://unity3d.com/ 。 这是一款免费的用于创建3D(也是2D)游戏的IDE,附带一个大型社区,您可以轻松find许多教程和免费的项目。 即使你没有制作游戏的经验也很容易学习。