我想把开发桌面游戏作为一项业余爱好。我找到了几个引擎,但不确定它们是否能够完成我所需的初始工作。
起初,我想做以下几件事:
- 创建一个角色(头像),并让用户为其着装
- 将角色加载到游戏中
在后期,我想将其发展成多人游戏。
我该怎么办?
我想把开发桌面游戏作为一项业余爱好。我找到了几个引擎,但不确定它们是否能够完成我所需的初始工作。
起初,我想做以下几件事:
在后期,我想将其发展成多人游戏。
我该怎么办?
如果你擅长C ++,你应该使用Ogre,它是最好的开源引擎,由其创建者不断更新,有很多教程和非常有帮助的社区。
这更像是一个图形引擎,但它拥有您所需的所有先决条件。
祝你好运!
没有引擎会为您完成这项工作。它们通常允许您加载和呈现3D模型,但将它们组合起来以“装扮”它们的方式取决于您自己。创建它们或让用户这样做最终也取决于您。引擎可能提供了许多工具来使任务变得更容易(例如,在用户设计模型时渲染模型),但游戏引擎并不是一个神奇的“制作游戏”的盒子,您只需要按下一个按钮,就可以获得您定制的游戏。
如果你擅长C ++,我建议使用C4 Engine。根据我的经验,现有的游戏引擎要么过于死板,要么只是一堆库的集合。
Ogre是一个不错的选择,如果你只是想展示一些东西。正如一些人在这里已经说过的,Ogre是一个渲染引擎。有许多插件和功能可用于完成常见任务,例如音频、输入等等。如果你只是想玩玩或者创建一个原型,那么这完全没问题。
但是,如果你想开始一个长期项目,在较长的时间内进行开发(考虑到你可能是唯一的开发人员,游戏是复杂的应用程序),你应该真正开始思考你想做什么。然后,根据你的目标,寻找几个可以满足你需求的引擎(总会有一些API可以完成XYZ)。然后,你就可以按照自己的需求来管理你的游戏并使用现有的库,基本上就是根据自己的需求来打造自己的引擎。
如果你开始寻找一个真正的游戏引擎,以满足所有游戏开发需求,那就有点困难了。可以查看devmasters的3D游戏引擎列表(http://www.devmaster.net/engines/),你会发现很多尝试实现这一点的alpha状态的游戏引擎,尽管你应该记住,这些情况下的支持和文档通常不是一流的。
我个人从未使用过它,但我为我的项目评估了开源引擎Delta3D(delta3d.org),并对其酷炫的架构印象深刻。它封装了许多其他优质的开源框架,用于图形(OpenSceneGraph: openscenegraph.org)或物理(ODE: ode.org)等方面。就我所知,这可能是你能得到的最接近免费和灵活的游戏引擎。它是在一所空军大学开发的,并由于其学术背景而附带有大量详细的文档。
如果你擅长C++,你可以编写自己的引擎 :P
Ogre是Irrlicht和Crystalspace中最好的,原因很简单——Ogre实际上已经被游戏行业用于生产流程。它实际上有很多支持,而Irrlicht和Crystalspace则更多地是一些不会在开箱即用时做很多事情的应用程序。然而,Crystalspace有一个分支项目,将游戏引擎实现到Blender 3d中,允许艺术家在不离开实际软件的情况下扮演程序员的角色。
我对Irrlicht并不是很感冒——它的动机背后有很多狡猾的东西。对于一个开源项目来说,它分支出了许多不同的衍生品,其中包括完整的游戏引擎或WYSWYG编辑器,并且它们会找到一些方式来让你付费。
Ogre在成为图形引擎方面表现出色,而不是库,它必须根据个人需求进行编译。权衡之处在于,你可以将Ogre实现到任何设计工作流程中,甚至创建一个新的工作流程。它减轻了你写任何类型的图形代码的负担,因此在其基本形式下,它是一个非常流畅的快速原型引擎。