从torque到 nebula2


因为目前本人正在和同学开发一个开源的游戏引擎,免不了
要大量借鉴目前世面上成熟的开放的游戏引擎.在完成自己的3d引擎的大部分之后,我们
开始比较不同的游戏引擎,以便于学习写作主的游戏框架.在对比一个个
在游戏开发中产生过优秀作品的游戏引擎的过程中,我们看到了
软件工程和设计模式的思想在不断的为这个行业带来先进的技术和开发理念.

要说的首先是torque引擎,torque引擎国内有很多人学,很多原因可能是因为有个加拿大的
大哥写了书,广大爱好者可以有路入门,但是实际上我们发现,torque还是比较适合个人游戏
开发者使用其内置的脚本调用封装好的渲染,physic,ai功能.但是却不适合作为有相当原创性视觉效果,
游戏逻辑的大规模开发.因为其代码的封闭性,后来者想要
扩展其功能模块是非常困难的.各种新的场景管理器,shader,物理效果检测,很难整合到其现有的浑然一体的
代码中.脚本系统的修改也要重新编写编译器.换句话说.无法通过接口的形式来轻易的添加进去.还不如重新自己开发一个引擎.

与之可以说形成对比的是nebula2引擎.nebula2引擎的代码风格简直和微内核操作系统mach差不多,nebula2的代码相当简洁,
可以说真正是一个框架,如果你提供的subsystem . 如render 或者 net的 封装格式符合其对子系统作为server的要求
,那么什么都可以往里头加.在这里脚本可以是python,tcl .你可以加 ode作为ai部分,渲染的话,现在我们有fx了....各个subsystem之间通过脚本的cmd来通信.
作到低层耦合用脚本分离,牺牲的是解析速度,换来的是开发复杂度的提升.实际上也谈不上是牺牲,而是正是使用硬件进步的优势.此架构的考虑到了各种功能的虚函数
和callback的接口.重用真正达到了模块级别.重用的层次越高,则自由度越大.这个项目可以算是个例子吧:)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值