程序如何流动

我习惯了像XNA一样的结构:

  • LoadContent
  • 更新
  • 现在基于这3种主要方法,我的游戏对象从它们继承。 在XNA中,我作为非专业和非游戏程序员被迫在这些块中进行思考。 那么添加一个Sprite baseClass,从DrawableGameComponent继承。 现在为gameobject Warrior创建WarriorSprite类。

    等等。

    我完全迷失在这个结构中,但我只想编一个游戏,而不是引擎。 每次我想向我的游戏添加实体时,我都不想处理额外的普通渲染代码。 除此之外,我从来没有习惯于在任何教程中如何让2个对象进行交互....我的重点应该放在将游戏机制从游戏设计移植到代码上。

    现在我发现了Ogre(3D),并且我希望这个引擎提供这个功能。 维基百科无法真正回答我的问题。

    问候,


    如果你在基于其他类的游戏对象类中迷路了,我不会推荐移动到OGRE。 它的设计非常面向对象。 它确实简化了一些低级别的东西,比如使用DirectX或OpenGL,但是你仍然有许多类从其他许多类继承,并且有很多方法。 如果你对此感到困惑,你可能需要阅读课程,看看你能否掌握这些内容。

    但是,如果您正在寻找一款可以制作游戏的引擎,那么您可以采取几种不同的方式。

    更常见的首发之一是修改现有游戏,特别是创建“总转换次数”。 你有一个完整的引擎,你已经有一个副本,并有大量的游戏资源,所以这可能是一个很好的开始。

    你可以去寻找一个引擎,但是找到一个简单易用,价格低廉且功能强大的引擎并不容易。 有很多不同的引擎,都在不同的完整性和不同的价格水平。 有些想到的是Irrlicht,CrystalSpace,Quest3D,DarkBASIC(如果你想牺牲你的理智和使用BASIC;))。 不过,还有很多其他的。

    你可以尝试检查这些引擎(我知道DevMaster有一个很好的,详细的搜索):http://www.devmaster.net/engines/

    http://en.wikipedia.org/wiki/List_of_game_engines

    这里提供一般提示:

    http://www.gamedev.net/


    是的,Ogre是一个完整的游戏引擎,可以让你创建游戏,而XNA则需要创建大部分引擎类型的功能。

    Ogre支持OpenGL和Direct3D,并以C ++编码。 如果你想用C#编写代码,你需要看看其他地方(或者看看有没有人为Ogre做过某种C#封装)。 如果你想部署到Xbox,你必须使用XNA,除非你与微软签订合同。

    链接地址: http://www.djcxy.com/p/17107.html

    上一篇: How does the program flow look

    下一篇: Exception thrown when exiting program (Ogre3d)