将自己的引擎嵌入cocos2d-x

一直加班,一直很忙,一直都没有太多时间开发zosengine,移动端的移植也仅仅做了ios,要对android设备做兼容性测试感觉是没时间了。

我记得之前逛horde3d官网的时候,看到过有人通过cocos2d-x的底层代码把horde3d port到移动设备上,突然想试试把zosengine内嵌到cocos2d-x上。

以前了解过cocos2d-x,没有怎么看过代码,本来我是打算将zosengine的渲染hack到cocos2d-x的渲染代码前面,后来看到cocos2d里面有个rendertexture,这样就找到了一个更好的办法,即派生一个cclayer,在其中添加一个rendertexture,将zosengine渲染到这张rendertexture上交给cocos2d-x,这样接下来的事情就完全交给cocos2d-x了。


随便跑了个场景测试了一下:CSM,reflection,暂时没发现什么问题。嵌入的过程还是很顺利的,前前后后大概花了6个小时, 而且对cocos2d-x的改动只是增加了一个接口返回FBO而已。中间遇到点小问题,是由于cocos2d-x和zosengine各自都有自己的状态管理造成的,在zosengine后将cocos2d-x相应的状态管理调整的一致即可。

如此一来,即可借用cocos2d-x本身的所有特性了,对我而言最有用的就是平台兼容性,UI嘛,考虑一下我现在用的mygui和cocos2d-x的ui再说。谨以此文记录一下这个尝试,也可以给看到文章的朋友一个思路:)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值