写在之前的话:
写这篇文章的时候,游戏引擎的单机部分开发已经差不多一半,一些工具也陆陆续续的出现。我只有一个感慨,这个工程是在是太浩大了,从网格模型的组织,射线碰撞件检测,高度图,材质,贴花,GUI,玩家,战斗模式,AI,物件,嵌入的脚本系统,3D音效等。终于,我们被迫停下来了,需要对整个系统进行修改重新设计(最坏情况),虽然最初我们也是本着面向接口,面向组件的实现进行设计,但是由于大量技术细节没有考虑到,以及单纯设计引擎的失误,导致进度最终的停滞。
我也趁着这段时间,针对以前所做的工作进行一次总结,以及对引擎将来的探讨,在键盘上敲出这篇开发日志。
——————————————————————————————
前期准备DirectX、Ogre和irrlicht
不知道什么时候心中萌发了做游戏的冲动,参阅了大量的资料后,以及可行性分析之后,一个游戏引擎以及相关开发工具,以及最后成型的游戏,都在我们心中有了一个不太清晰的轮廓。
我们开发团队人数不是很多,以前都是搞桌面应用软件,在外面接一些不大的项目,实力也不算弱。
1、选用什么引擎,评价较好,免费的DirectX、Ogre和irrlicht
DX其实不能算引擎,最基础的开发包而已,要是从那里入手的话需要非常多的时间,不过也能学到不少有用的东西,对底层也比较了解。
2、如何在Ogre和irrlicht中选择一个呢?
关于这问题,网上资料很多,希望大家谨慎选择!!
这里只谈谈体会,开发了那么久,就一个感触,OGRE不是游戏引擎,什么东西都要自己来做,给你的只是一个框架而已。还各样的第三方功能库,用这一个最底层的图形引擎,加上物理、网络、 AI 、 UI 、脚本、场景、角色、等等的各种模块,历尽千辛万苦来“组装”成一个可用的游戏引擎。很累
优点是作为一个图形渲染引擎,它支持的图形特性最多,所以渲染质量也不错,另一个原因是设计模式的清晰;最后,速度也不错。
Irrlicht现在热门程度没有ogre 那么高,不过我对它的感觉还是非常好,至少在游戏方面比ogre 好的多,不过demo的例子嘛,不是怎么好。
一张开发中期的图片,包含了几个比较重要的系统,例如地形,UI,单位,基于xml的场景管理,中文输入,3d声音,脚本,简单网络连接等。