我习惯了XNA之类的结构:
现在基于这三种主要方法,我的游戏对象从它们继承。 在XNA中,我作为非专业和非游戏程序员被迫在这些块中思考。 好吧,添加一个Sprite baseClass,继承自DrawableGameComponent。 现在为游戏对象Warrior创建WarriorSprite类。
等。等
我完全迷失在这种结构中,但我只想编写游戏而不是引擎。 每次我想在游戏中添加实体时,我都不想处理额外的普通渲染代码。 除此之外,我从未习惯于在任何教程中如何让2个对象进行交互.... 我的重点应放在将游戏机制从游戏设计移植到代码上。
现在我找到了Ogre(3D),我希望这个引擎提供这个功能。 维基无法回答我的问题。
的问候,
答案 0 :(得分:2)
如果您因为基于其他课程的游戏对象课程而迷路了,我不建议您转到OGRE。它的设计非常面向对象。它确实简化了一些低级别的东西,比如使用DirectX或OpenGL,但是你仍然有很多类继承了很多其他类并且有很多方法。如果你对此感到困惑,你可能想要阅读课程,看看你是否能掌握这些课程。
如果您正在寻找可以制作游戏的引擎,那么您可以采用几种不同的方式。
更常见的首发之一是修改现有游戏,尤其是创建“总转化次数”。你有一个完整的引擎,你已经有了它的副本,以及大量的游戏资源,所以这是一个很好的起点。
您可以去寻找引擎,但找到一个易于使用,便宜且功能强大的引擎并非易事。有很多不同的引擎,都有不同的完整性和不同的价格。想到的一些是Irrlicht,CrystalSpace,Quest3D,DarkBASIC(如果你想牺牲你的理智并使用BASIC;))。但是还有很多其他的。
您可以尝试检查这些引擎(我知道DevMaster有一个很好的,详细的搜索): http://www.devmaster.net/engines/
http://en.wikipedia.org/wiki/List_of_game_engines
这里有一般提示:
答案 1 :(得分:1)
是的,Ogre是一个完整的游戏引擎,可以让你构建游戏,而使用XNA,你需要创建大部分引擎类型的功能。
Ogre支持OpenGL和Direct3D,并且使用C ++编码。如果你想用C#编写代码,你需要查看其他地方(或者看看是否有人为Ogre做了某种C#包装器)。如果你想部署到Xbox,除非你与微软达成合同,否则你必须使用XNA。