Cocos是触控科技推出的游戏开发一站式解决方案,包含了从新建立项、游戏制作、到打包上线的全套流程。

开发者可以通过cocos快速生成代码、编辑资源和动画,最终输出适合于多个平台的游戏产品。

Cocos的主要产品有Cocos Studio、Cocos2d-x(Cocos Framework)、Cocos Code IDE。

Cocos Studio:是Cocos2d-x引擎配套的跨平台游戏开发工具,帮助开发者快速构建游戏场景、编辑UI、编辑动画等游戏资源,支持第三方的资源导入。支持多种类型游戏的编辑,满足不同开发者和公司的开发需求,并且上手容易,简单易懂,同时提供了丰富的技术支持和开发资源。

一、安装:

首先下载并安装Cocos的安装包,下载地址:http://cn.cocos2d-x.org/download/ 。 
    安装完成后,打开启动器:

Cocos启动器的界面如下:

启动器是Cocos的入口,具有如下功能: 
    项目页面:用于项目管理,包含打开旧项目和创建新项目功能。 
    示例页面:这里可以打开CocosStudio的一些示例工程。 
    教程页面:包含Cocos的一些教程。 
    插件页面:Cocos的插件商店,目前正在逐步丰富。 
    下载页面:下载中或已经下载的插件列表。 
    反馈页面:对于Cocos项目的意见、建议或者BUG都可以在这里提交,有问题也可以到这里咨询。

二、创建项目

打开Cocos启动器,创建项目,添加测试控件,如:

生成文件直接放到资源目录

三、使用cocos 代码:

MainScene.lua

  1. local MainScene = class("MainScene", cc.load("mvc").ViewBase)
  2. -- 加载csb文件
  3. MainScene.RESOURCE_FILENAME = "MainScene.csb"
  4. -- 获取UI控件
  5. MainScene.RESOURCE_BINDING = {
  6. ["Btn_1"]   = {["varname"] = "btn"},
  7. ["Check_1"] = {["varname"] = "check_1"},
  8. }
  9. function MainScene:onCreate()
  10. -- 按钮使用
  11. self.btn:addClickEventListener(function(sender)
  12. print("info","****")
  13. end)
  14. self.check_1:setVisible(false)
  15. end
  16. return MainScene

注:

-- 获取UI控件

MainScene.RESOURCE_BINDING =

{

["cocos控件名"] = {["varname"] = 引用变量名 }

...

}

讲下解ViewBase,看它如何创建及获取UI控件:

  1. function ViewBase:ctor(app, name)
  2. self:enableNodeEvents()
  3. self.app_ = app
  4. self.name_ = name
  5. -- check CSB resource file
  6. -- 搜索csb文件
  7. local res = rawget(self.class, "RESOURCE_FILENAME")
  8. if res then
  9. --加载CocosStudio编辑出来的*.csb 文件
  10. self:createResoueceNode(res)
  11. end
  12. -- 查询csb文件控件名
  13. local binding = rawget(self.class, "RESOURCE_BINDING")
  14. if res and binding then
  15. -- 获取UI上的控件并且保存起来
  16. self:createResoueceBinding(binding)
  17. end
  18. if self.onCreate then self:onCreate() end
  19. end

运行程序,如:

点击按钮,控制台显示:

具体控件如何使用,可参考cocos2d-x 3.6 demo,同时最好看下源代码,加深对控件理解。

我所理解cocos2d-x 3.6 lua --使用Cocos Studio的更多相关文章

  1. cocos-lua3.17 cocos studio lua动画使用

    这里只贴具体使用代码,资源请使用自己的. 这里的资源是cocos studio导出的lua文件,其中就有root和动画 function GameLayer:playLhAni() local ani ...

  2. cocos2d的-X- luaproject的LUA脚本加密

    2014/1/26 更新 近期又发现了一个非常easy的方法,事实上coco2dx已经给我们提供设置loader的方法. 注意:有个局限性,在非android平台下调用pEngine->exec ...

  3. 轻量级Lua IDE ZeroBrane Studio 的使用技巧和汉化

    快捷键 : alt + shift +鼠标 ,可以块选中文本. F12 折叠/展开 所有 F5 调试运行 点击第二次 将跳转到第一个断点处 F10 单步执行 shift +F10 单步执行,不进入函数 ...

  4. 翻转引起 cocos studio 引擎与cocos2d 代码相同坐标显示不同

    使用setFlippedX后,又改变锚点为1.此时代码中坐标需要相对于cocos studio 中增加它本身的width,因为(0.5,0.5)是相对于自己中点的翻转,不变坐标.而(1,0.5)是相对 ...

  5. Cocos2d-x下Lua调用自定义C++类和函数的最佳实践[转]

    Cocos2d-x下Lua调用C++这事之所以看起来这么复杂.网上所有的文档都没讲清楚,是因为存在5个层面的知识点: 1.在纯C环境下,把C函数注册进Lua环境,理解Lua和C之间可以互相调用的本质 ...

  6. 【转】Cocos2d-x下Lua调用自定义C++类和函数的最佳实践

    转自:http://segmentfault.com/blog/hongliang/1190000000631630 关于cocos2d-x下Lua调用C++的文档看了不少,但没有一篇真正把这事给讲明 ...

  7. 【cocos2d-x + Lua(1) 绑定Lua并使用tolua++】

    为什么要使用Lua进行游戏开发?转载请注明出处http://www.cnblogs.com/zisou/p/cocos2dx-lua1.html 上面一个问题我觉得在我们使用Lua之前需要深入思考的, ...

  8. c/c++导出lua绑定

    [转载]https://note.youdao.com/share/?id=0f4132271151c4b62f9afb712e8304d9&type=note#/ 1.在纯C环境下,把C函数 ...

  9. Lua 学习笔记(二)语法、类型、值

    首先Lua执行的每一段代码都称之为“程序块”,一个程序块也就是一连串的语句或命令,例如一个源码文件或一行代码.Lua语句之间并不需要分隔符,如代码中的换行就不起任何作用,当然为了养成编码习惯当两条或者 ...

随机推荐

  1. 开源搜索 Iveely Search Engine 0.6.0 发布 -- 黎明前的娇嫩

    快两年了,Iveely Search Engine已经走过了5个版本的岁月,虽出生“贫寒”,没有任何开源基金会的支持,没有优秀的“干爹.干妈”,它凭着它的爱好者的支持,0.6.0终于破壳而出,7年前, ...

  2. 每天一个linux命令(11):less 命令

    less 工 具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大.less 的用法比起 more 更加的有弹性. 在 more 的时候,我们并没有办法向前 ...

  3. java多线程-Exchanger

    简介: 可以在对中对元素进行配对和交换的线程的同步点.每个线程将条目上的某个方法呈现给exchange方法,与伙伴线程进行匹配,并且在返回时接收其伙伴的对象.Exchanger 可能被视为Synchr ...

  4. JAVA成员变量为什么不能在类体中先定义后赋值

    package dx; public class Test1 { int a111;//定义成员变量(全局变量) // a = 1;//此处若给变量赋值,会报错,JAVA所有的除定义或声明语句之外的任 ...

  5. 替换文件最后一行中的所有e 为 E

    #root@athena5plus:~# cat b    northwest       NW     Charles Main           3.0      .98      3      ...

  6. STL简单应用问题

    问题: Input输入的第一行是一个整数T( 1 <= T <= 100 ),表示有几组输入数据.每组输入由4部分组成:(1)一个字典,最多包含2000个单词,每个单词一行.(2)一行字符 ...

  7. 旅行(Dijkstra)问题

    问题:输入: 输入数据有多组,每组的第一行是三个整数T,S和D,表示有T条路,和草儿家相邻的城市的有S个,草儿想去的地方有D个:   接着有T行,每行有三个整数a,b,time,表示a,b城市之间的车 ...

  8. php复习

    最近要用php,好久不用感觉手生.抓起<零基础学PHP>一书复习了下,顺带学了smarty模板语言,然后到慕课网看了些php中级视频教程,这里记录下. php最基本的文件上传 不用任何第三 ...

  9. Springside学习

    http://blog.chinaunix.net/uid-122937-id-3935052.html [一]Maven + Eclipse + springside4安装与配置 Maven安装与配 ...

  10. groovy-正则表达式

    Groovy使用~”pattern” 来支持正则表达式,它将使用给定的模式字符串创建一个编译好的Java Pattern 对象.Groovy也支持 =~(创建一个Matcher)和 ==~ (返回bo ...