本文作者是由简书ID:「一个过客」开发者友情提供,原文地址在此:http://www.jianshu.com/p/41eb7ec73df9 最近使用skynet作为服务器,开发前端使用Cocos2d-x Lua。由于前后端都是用Lua编写,在搭建双方的通信环节有一个步骤就是选择通信的协议,通用选择是protobuf socket的方式,但由于protobuf对Lua的支持问题,我们选择了pbc这个proto解析库。 本文解决的问题前端Cocos2d-x Lua引擎,如何使用luasocket protobuf和skynet进行通信? 前端使用:luasocket pbc lpack skynet在数据发送时使用的是string.pack()string.unpack()进行打包解包然后这两个函数是Lua5.3的。前端的Cocos是Lua5.1没有这个API,因此才有了lpack这个库。
pbc github.com/cloudwu/pbc.git github.com/LuaDist/lpack.git skynet github.com/cloudwu/skynet.git 定好协议并可通信的skynet服务器和cocos2d-x客户端 github.com/gameloses/cocos2dx_lua_skynet_client.git gitclone github.com/gameloses/skynet_pbc.git Github github.com/gameloses/cocos2dx_lua_skynet_client.git
接下来就是进行一个前后端的对接逻辑。 Cocos2d-x集成pbc和lpack这是一个已经集成好的Cocos2d-x的例子,开源代码在github 下面开始详细的集成教程 集成pbc
|
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|