基于cocos2d-x的游戏可以完全使用lua开发吗?
2012-11-12 02:43
323 查看
今天和同学讨论关于在手游上面,socket到底是使用c++还是lua开发的问题.我比较倾向于使用Lua,
当然为什么倾向于使用Lua,当然是和团队相关的.不过,我们短暂的交流并没有得出一致的结果.
趁着晚上脑袋清醒的时间,又四处搜集了一些资料,随便在纸上画了画,思考这个问题.
首先,本身cocos2d-x对Lua做了集成,这使得完全使用Lua开发单机版的游戏成为可能.当然,如果是
针对单机游戏的开发,那思考这个问题也就没有必要了.
其次,当需要使用进行数据交互的时候,可以使用原生的BSD SOCKET.另外,lua project提供了socket
的集成封装包--luasocket.可以将luasocket集成到cocos2d-x,当然,这类的话题可以很容易在网上
找到帖子.
将游戏中的UI和其他处理都放到lua中去处理,而在使用socket的时候需要解决阻塞的问题,要不然玩家
就在数据交互的时间一直waitting,这样的游戏谁能受的了.
也就是说,如果完全采用lua开发,那么就需要使用lua线程.我不知道这样子表述正不正确,因为lua中只有
协程.不过这个问题可以解决.
llthread https://github.com/Neopallium/lua-llthreads
lua-llthread是在github开源的一个lua模块,有了这个模块,就可以解决Socket以及http请求处理的问题
了.
当然,上面说到的,只是个人的想法,还没有经过试验验证.当然,完全使用lua开发,做出来的游戏效果怎么样,
这还是个需要验证的问题.
当然为什么倾向于使用Lua,当然是和团队相关的.不过,我们短暂的交流并没有得出一致的结果.
趁着晚上脑袋清醒的时间,又四处搜集了一些资料,随便在纸上画了画,思考这个问题.
首先,本身cocos2d-x对Lua做了集成,这使得完全使用Lua开发单机版的游戏成为可能.当然,如果是
针对单机游戏的开发,那思考这个问题也就没有必要了.
其次,当需要使用进行数据交互的时候,可以使用原生的BSD SOCKET.另外,lua project提供了socket
的集成封装包--luasocket.可以将luasocket集成到cocos2d-x,当然,这类的话题可以很容易在网上
找到帖子.
将游戏中的UI和其他处理都放到lua中去处理,而在使用socket的时候需要解决阻塞的问题,要不然玩家
就在数据交互的时间一直waitting,这样的游戏谁能受的了.
也就是说,如果完全采用lua开发,那么就需要使用lua线程.我不知道这样子表述正不正确,因为lua中只有
协程.不过这个问题可以解决.
llthread https://github.com/Neopallium/lua-llthreads
lua-llthread是在github开源的一个lua模块,有了这个模块,就可以解决Socket以及http请求处理的问题
了.
当然,上面说到的,只是个人的想法,还没有经过试验验证.当然,完全使用lua开发,做出来的游戏效果怎么样,
这还是个需要验证的问题.
相关文章推荐
- 使用《红孩儿工具箱》开发基于Cocos2d-x的《坦克大战》游戏
- cocos2d-lua整合到ios工程,即在ios原生应用中可以直接玩cocoslua开发的游戏
- 【iOS-cocos2d-X 游戏开发之八】使用Lua脚本进行游戏开发(基础篇) 推荐
- XNA Game Studio是一套有着强大功能和简单界面的游戏制作平台,游戏开发商和游戏玩家都可以使用这套工具开发针对Windows XP以及Xbox360的游戏,XNA Game Studio分为两种版本,一种是面向初学者的EXPRESS版本,还有一种是面向专业用户的专业版。用户使用EXPRESS版本开发游戏完全免费,并且可以随意在PC上发行,不过用该工具开发的游戏若是在360上网络发行,就需要交纳99美元的年费。
- Cocos2d-x-Lua 游戏中使用Lua脚本进行游戏开发
- 二、如何使用Lua开发配合cocos2d-x开发游戏
- 基于 Cocos2d-x-lua 的游戏开发框架 Dorothy 简介
- 使用Cocos2d-lua开发植物大战僵尸07-实现开始游戏按钮功能和主场景触摸监听
- cocos2dx-lua 在cocos2d中使用lua脚本进行开发,并介绍脚本在游戏中的详细用途
- 使用《红孩儿工具箱》开发基于Cocos2d-x的《打地鼠》游戏
- Cocos2d-x 3.2 lua飞机大战开发实例(一)背景地图,飞机,子弹的封装,以及lua中定时器的使用
- 【iOS-cocos2d-X 游戏开发之六】使用Base64算法对Cocos2dX自带CCUserDefault游戏存储数据编码!
- (译)碰撞检测和收集物品:如何使用cocos2d制作基于tiled地图的游戏:第二部分
- iOS-Cocos2d游戏开发】使用Zwoptex生成plist文件
- 【iOS-Cocos2d游戏开发之十一】使用Box2d物理系统以及在cocos2d框架添加Box2d物理系统lib包的方法 推荐
- 【iOS-Cocos2d游戏开发之十一】使用Box2d物理系统以及在cocos2d框架添加Box2d物理系统lib包的方法
- Cocos2d-x Lua游戏开发之Lua oo 的实现
- 如何使用Cocos2d-x 3.0制作基于tilemap的游戏:第二部分
- Cocos2d-x游戏开发中的消息机制:CCNotificationCenter的使用
- 【COCOS2DX-LUA 脚本开发之一】LUA语言基础在Cocos2dX游戏中使用Lua脚本进行游戏开发(基础篇)并介绍脚本在游戏中详细用途