在过去的两个月里,我一直在努力学习游戏编程的基础知识。所以我用Java编写了一些简单的游戏来学习基础知识,比如俄罗斯方块,跳棋和吃豆人。
现在我想学习/提高我的C技能,所以我有这个想法用C编写这些游戏来了解更多关于内存管理,没有OOP等等。我之前做过基本的C编程,但从未使用过图形,所以我不知道从哪里开始。
我应该使用哪些库在C中编写简单的2D游戏? GTK +?开罗图书馆?你可以推荐任何教程吗?图形库?
由于
答案 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或网上下载它们。