在哪里可以找到良好(井井有条)的游戏代码示例?[关闭]


42

在哪里可以找到良好(井井有条)的游戏代码示例?我希望我能学到一些组织技巧。书中的大多数示例都太简短了,为简洁起见,省略了很多细节。我对如何对变量和方法进行分组特别感兴趣,以便其他程序员可以知道在代码中查找的位置。例如,顶部的初始化程序,然后是输入的方法,然后是更新视图的方法。

我不在乎特定的语言,只要它的OOP。我看过《雷神之锤2》和《雷神之锤3》的源代码,但它们都是C语言,对于获取有关组织对象的技巧没有太大帮助。

那么,您看到一些好的资料了吗?任何使您说“哇,井井有条”的代码指针都很棒。


1
这并不是真正的直接答案,因此我将其留为评论。我建议阅读John Lakos的《大规模C ++软件设计》一书。这对我来说非常启发。
布拉夫

Answers:


19

一些商业游戏已经发布了其源代码。这里列出了一些游戏。不能保证其中的代码井井有条,但通过查看一些商业上成功的游戏源代码,您可能会很好地了解实际可行的方法。

另外,虽然不是游戏,但OpenSceneGraph具有游戏的许多组件,并使用不同的设计模式,插件等在C ++中进行了很好的架构。这是一个足够大的代码库,并且存在足够长的时间,您可以学习很多。


1
谢谢,维基百科列表很有用。Spring确实组织得很好-所有方法都按常规功能分组(加载/保存,绘制等)github.com/spring/spring/blob/master/rts/Game/Game.h Aquaria使我对自己的感觉更好代码组织:hg.icculus.org/icculus/aquaria/file/f08b7288f92c/Aquaria/…我不应该批评,但真正的艺术家却在出货。
粉碎者2010年

我会将Ogre作为OpenSceneGraph的一个很好的参考...
Klaim 2010年

6

韦诺之战是:

免费的,基于回合制的战术策略游戏,具有很高的幻想主题,具有单人游戏和在线/热点多人战斗功能

在GPL下免费开源。我只是找到/下载了它,所以还不能说游戏玩法是什么,但是它获得了好评。我也不知道他们的代码是否“井井有条” :)但是,嘿,它是开源的


真的很有趣:):p
Qchmqs 2012年


4

如果您正在寻找好的OOP,我非常喜欢Doom3 SDK的对象模型。
Ogre3D是一个沉重的OOP设计,但我强调沉重,因为我认为它包含了许多示例和插件,因而显得过分膨胀。

让我知道你的想法。




0

我有一个简单的资料来源,我们正在Windward Wrocks进行代码战争比赛。我认为它组织得很好并且非常简单。但是某些部分创建得很快,效果不佳。话虽如此,即使在最大的游戏开发团队中,也有一些部分编写得很快,而且效果不佳。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.