C语言中游戏编程的基础知识

时间:2009-12-01 00:43:09

标签: c gtk

在过去的两个月里,我一直在努力学习游戏编程的基础知识。所以我用Java编写了一些简单的游戏来学习基础知识,比如俄罗斯方块,跳棋和吃豆人。

现在我想学习/提高我的C技能,所以我有这个想法用C编写这些游戏来了解更多关于内存管理,没有OOP等等。我之前做过基本的C编程,但从未使用过图形,所以我不知道从哪里开始。

我应该使用哪些库在C中编写简单的2D游戏? GTK +?开罗图书馆?你可以推荐任何教程吗?图形库?

由于

6 个答案:

答案 0 :(得分:13)

我建议使用SDL图形库,这里有一些非常好的教程和演示...... http://www.libsdl.org/以及这里的教程...... http://www.sdltutorials.com/希望它顺利进行!

答案 1 :(得分:3)

在我看来,做一些带有过剩的openGL是一个很好的起点,因为它允许你同时做2d和3d图形。

http://www.opengl.org/resources/libraries/glut/glut_downloads.php

如果您想要另一层帮助您完成游戏编程的各个部分(键盘和鼠标事件,声音等等),您可以将SDL与openGL一起使用。

http://osdl.sourceforge.net/main/documentation/rendering/SDL-openGL.html

网上有很多教程可以帮助您入门。

答案 2 :(得分:3)

如果你想进行C游戏开发,那么带有过剩的OpenGL是一个好的开始..

red book是你的朋友!!

答案 3 :(得分:2)

虽然以下不是2d;因为每个人都提到3d我可能会添加以下库;它们是3d引擎的开源库。

Ogre是一个非常流行的开源图形引擎。 “火炬之光”写在其中,“沙漠中的故事”也是如此。还the unreal engine has gone open source

答案 4 :(得分:1)

一个刚刚超出我想象的2D库,令人惊讶的是来自OSX的Quartz。这些工具也非常棒。你必须学习一些Obj-C,但它是一种很好的语言。

答案 5 :(得分:1)

正如有人提到的那样,你需要一些关键的数学技能来提升游戏编程世界。我不知道有多少涉及动画和建模,因为工具可用,但是要编写任何类型的线性代数引擎;这适用于3D编程,它可能涉及2D Opengl。 Gilbert Strang关于线性代数的入门书惊人的。 Mit opencourseware还有一整个学期的讲座,Gilbert Strang在Linear Algebra上提供了这些讲座。您可以直接从Itunes或网上下载它们。