惊天发现,cocos2d居然有个开源的lua框架,作者怎么这么低调?
2014-02-25 13:42
896 查看
怎么没有整合到cocos2d-x2.2.2中??
quick-cocos2d-x 2014年计划的重点有三项:
在Lua/JS层面搭建统一接口的框架
创建适合脚本语言开发者的场景和UI编辑器
创建包含完整功能的游戏demo
jsbinding 和 luabinding 存在的主要问题就是与脚本语言的使用风格、习惯不符,并没有充分利用脚本语言的优势。所以在脚本层面创建框架非常有必要:
将所有 C++ 和脚本交互的接口重新封装为符合脚本语言风格的接口
将 C++ 的各种工厂方法和静态接口分类整理到不同的全局模块中
用脚本或脚本扩展代替 C++ 中的同类功能
经过这样封装后,对于脚本开发者来说大大降低了学习门槛,开发效率也能得到明显提高。
2014 年,Lua 框架会继续完善,并在升级到 cocos2d-x 3.x 时采用更规范的命名风格和接口定义。届时,会开发 quick-cocos2d-x 的 JS 版,并在保证 JS 开发习惯的前提下,保持和 Lua 框架统一的接口。
对于这个编辑器,主要目标为:
提供场景编辑功能
提供UI界面编辑功能
支持组件化特性,允许开发者创建可复用的组件
编辑器提供开放接口,支持开发者创建的自定义UI组件
编辑器提供开放接口,支持开发者对编辑器进行扩展
编辑器将基于 Qt 实现跨平台 UI,以 Lua 作为开发语言
与 CocoStudio 相比,这个编辑器没有动画、粒子编辑等功能,只专注于场景编辑和UI布局。但由于提供了开放接口,开发者使用脚本就可以对编辑器进行扩展,所以未来加入更多功能也可以考虑。
这些demo都会包含完整的设计文档、源代码、资源文件等,对于中小团队来说,完全可以在这些demo基础上直接开发自己的同类型游戏。
2014-Q1 重点:框架、UI库、编辑器
框架:整合 cocos2d-x 2.x 分支最新版本,并在 luabinding 的基础上完善 Lua 支持。包括对 CocoStudio, CocosBuilder 等编辑器的支持。
UI库:完成所有UI组件。
编辑器:发布编辑器测试版,包括场景编辑和基本的UI布局功能。
文档:完成全部 API 文档
2014-Q2 重点:框架、编辑器、demo
框架:升级到 cocos2d-x 3.x 分支,并推出 JS 版框架。
编辑器:完成全部功能,发布正式版。
demo:完成一个游戏demo。
文档:继续完善文档,并开始提供视频教程
工具:强化 player、自动化脚本等。
2014-Q3 重点:编辑器、demo、第三方 SDK 集成
编辑器:完全状态,并支持 JS 框架,同时公布开放接口及其文档。
demo:完成一个游戏demo。
工具:将自动化工具整合到编辑器中,逐步将编辑器转型为 IDE。
第三方SDK集成:在脚本层面提供各种 SDK 的统一接口,并以插件形式发布。
2014-Q4 重点:编译器
编译器:能够将 Lua 编译为 JS,方便开发者移植 Lua 游戏到 HTML5 平台。
demo:继续完善前面两个demo。
工具:继续完善工具链。
计划外,会尝试开发新的 luabinding 机制,彻底抛弃现在使用的 tolua++。如果成功,那么 quick-cocos2d-x 在脚本层面将达到一个新的高度,一定能成为最容易使用的 2D 游戏开发引擎。
quick-cocos2d-x 2014年计划的重点有三项:
在Lua/JS层面搭建统一接口的框架
创建适合脚本语言开发者的场景和UI编辑器
创建包含完整功能的游戏demo
脚本框架
目前 cocos2d-x 的 jsbinding 和 luabinding 只是简单的将 C++ 接口导出到脚本语言中。从开发者角度来看,使用脚本和使用 C++ 没有太大区别。这让脚本开发者的学习门槛变高,同时也降低了生产力。jsbinding 和 luabinding 存在的主要问题就是与脚本语言的使用风格、习惯不符,并没有充分利用脚本语言的优势。所以在脚本层面创建框架非常有必要:
将所有 C++ 和脚本交互的接口重新封装为符合脚本语言风格的接口
将 C++ 的各种工厂方法和静态接口分类整理到不同的全局模块中
用脚本或脚本扩展代替 C++ 中的同类功能
经过这样封装后,对于脚本开发者来说大大降低了学习门槛,开发效率也能得到明显提高。
2014 年,Lua 框架会继续完善,并在升级到 cocos2d-x 3.x 时采用更规范的命名风格和接口定义。届时,会开发 quick-cocos2d-x 的 JS 版,并在保证 JS 开发习惯的前提下,保持和 Lua 框架统一的接口。
UI库和编辑器
虽然 CocoStudio 从目前的情况看已经逐渐被用户认可。但因为 CocoStudio 是基于 cocos2d-x C++ UI 库开发的,所以对于脚本开发者来说并不容易使用,而且也无法做扩展。因此,我认为需要推出使用纯脚本开发的 UI 库,以及相应的编辑器。对于这个编辑器,主要目标为:
提供场景编辑功能
提供UI界面编辑功能
支持组件化特性,允许开发者创建可复用的组件
编辑器提供开放接口,支持开发者创建的自定义UI组件
编辑器提供开放接口,支持开发者对编辑器进行扩展
编辑器将基于 Qt 实现跨平台 UI,以 Lua 作为开发语言
与 CocoStudio 相比,这个编辑器没有动画、粒子编辑等功能,只专注于场景编辑和UI布局。但由于提供了开放接口,开发者使用脚本就可以对编辑器进行扩展,所以未来加入更多功能也可以考虑。
包含完整功能的游戏demo
由于国内开发者的习惯,文本形式的文档不是最理想的学习和推广形式。所以 2014 年将以 quick 为基础开发一些完整功能的游戏demo,暂定的游戏类型是ARPG和动作游戏。这些demo都会包含完整的设计文档、源代码、资源文件等,对于中小团队来说,完全可以在这些demo基础上直接开发自己的同类型游戏。
2014 年开发计划
以每季度为时间长度,开发计划如下:2014-Q1 重点:框架、UI库、编辑器
框架:整合 cocos2d-x 2.x 分支最新版本,并在 luabinding 的基础上完善 Lua 支持。包括对 CocoStudio, CocosBuilder 等编辑器的支持。
UI库:完成所有UI组件。
编辑器:发布编辑器测试版,包括场景编辑和基本的UI布局功能。
文档:完成全部 API 文档
2014-Q2 重点:框架、编辑器、demo
框架:升级到 cocos2d-x 3.x 分支,并推出 JS 版框架。
编辑器:完成全部功能,发布正式版。
demo:完成一个游戏demo。
文档:继续完善文档,并开始提供视频教程
工具:强化 player、自动化脚本等。
2014-Q3 重点:编辑器、demo、第三方 SDK 集成
编辑器:完全状态,并支持 JS 框架,同时公布开放接口及其文档。
demo:完成一个游戏demo。
工具:将自动化工具整合到编辑器中,逐步将编辑器转型为 IDE。
第三方SDK集成:在脚本层面提供各种 SDK 的统一接口,并以插件形式发布。
2014-Q4 重点:编译器
编译器:能够将 Lua 编译为 JS,方便开发者移植 Lua 游戏到 HTML5 平台。
demo:继续完善前面两个demo。
工具:继续完善工具链。
计划外,会尝试开发新的 luabinding 机制,彻底抛弃现在使用的 tolua++。如果成功,那么 quick-cocos2d-x 在脚本层面将达到一个新的高度,一定能成为最容易使用的 2D 游戏开发引擎。
相关文章推荐
- 小鬼学cocos2dX笔记01——创建精灵动画(一)
- cocos2d-x中的坐标系辨析
- cocos2dx 3.0 ---base
- 如何在cocos2d c++代码中调用lua以及探究
- WebStorm——cocos2d-html5专用IDE
- 常用的 cocos2d-x 游戏开发工具
- 【入门教程】使用Cocos2D 3.0构建简单的iPhone游戏
- svn管理cocos2dx代码注意事项
- Cocos2d-x 精灵变灰效果
- cocos2d-x获取系统时间 CCTime::gettimeofdayCocos2d
- Cocos2d-x学习之windows 7 android环境搭建
- 使用cocosstudio构建横版四方向主角1
- cocos2dx-2.2.0的开始
- Cocos2dx游戏开发系列笔记9:android手机上运行《战神传说》,并解决横竖屏即分辨率自适应问题
- cocos2dx坐标
- cocos2d-x 跨平台android分辨率适配
- cocos2d-x学习笔记-CCMenu和CCMenuItem详解
- 关于在Cocos下面配置开发环境、编译移植到android上面的奇葩问题小结
- 囚禁1
- 囚禁1