美文网首页Cocos Creator
游戏引擎怎么做到跨平台部署

游戏引擎怎么做到跨平台部署

作者: 游戏程序猿 | 来源:发表于2019-07-04 20:19 被阅读7次

    游戏引擎能做到一次开发,多平台发布, 比如 android, iOS, H5, 微信小游戏,facebook等。

    这些我们叫做跨平台架构,瞬间感觉很NB和高大上。

    今天我来给大家分析分析,我们的游戏引擎是怎么做到跨平台的。

    游戏引擎的架构一般会分为3个层次:

    (1)平台抽象层:

    a: 定义几个统一的接口,来接入平台的消息, 比如 mouse, touch, keyboard 等;

    b: 每个平台会有一个runtime的环境,调用每个平台的API,来将事件和消息接入到统一的接口里面;

    c: 使用opengl, 等跨平台图行库,来绘制游戏画面;

    d: 做好封装,框架能调用原生态的函数或接口;

    (2) 框架抽象层:

    有了平台抽象层,对于平台的API,都是上面定义的统一的几个入口, 事件入口等, 基于这些入口,再来开发游戏场景的框架层,使用游戏引擎特有的管理模式,做好几大模块和API和接口,游戏引擎的常用的模块, 比如:网络模块,声音模块,渲染模块,事件模块,场景管理模块等。那么业务层开发游戏就直接使用框架层抽象出来的API接口就可以了,不用关心具体系统的差异。

    (3) 业务逻辑层:

    有了框架抽象层,我们就可以调用框架的API接口, 来开发我们的应用。

    游戏引擎的 打包发布

    每个平台都会有自己的开发工具,使用开发工具,把平台抽象层 + 框架抽象层 + 业务逻辑层 打包发布成对应平台的应用程序。所以使用游戏引擎打包发布的时候, 发布android要用android的开发工具,发布苹果,要用苹果的开发工具… …

    游戏引擎这么NB,能否做跨平台的普通APP?最好不要这么做。

    (1)游戏引擎对普通APP UI操作控件等支持的并不好

    (2) 游戏引擎基于帧频驱动,所以会比普通APP基于事件驱动要耗电;

    (3) 游戏引擎,每次全部重新绘制,APP是部分区域绘制;

    最后配上一个小图:

    cocos creator资源分享可以一起交流学习哦

    相关文章

      网友评论

        本文标题:游戏引擎怎么做到跨平台部署

        本文链接:https://www.haomeiwen.com/subject/bprdhctx.html