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. 八款Android 开发者必备的小工具

    Photo from https://www.airpair.com 在做Android 开发过程中,会遇到一些小的问题,虽然自己动手也能解决,但是有了一些小工具,解决这些问题就得心应手了,今天就为大 ...

  2. Orchard用LiveWriter写博客

    本文链接:http://www.cnblogs.com/souther/p/4544241.html Orchard本身提供一个内建的管理面板来写博客,许多人更喜欢采用客户端提交的方式,例如Windo ...

  3. OpenStack Newton:集虚拟化,裸金属和容器部署的统一云平台(转载)

    2016-10-08木屐大数据在线 国庆长假第六天,OpenStack第十四版本Newton(牛顿?)发布,官方介绍中强调这是一个集虚拟化.裸金属和容器技术的一体化平台,可通过一套API来管理裸金属. ...

  4. SequoiaDB 系列之三 :SequoiaDB的高级功能

    上一篇简单描述了一下SequoiaDB的简单CRUD操作,本篇将讲述一下稍微高级点的功能. 部署在我机器上的集群环境,在经过创建名字为"foo"的cs,创建名字为"bar ...

  5. 每天一个linux命令(8):cat 命令

    cat命令的用途是连接文件或标准输入并打印.这个命令常用来显示文件内容,或者将几个文件连接起来显示,或者从标准输入读取内容并显示,它常与重定向符号配合使用. 1.命令格式: cat [选项] [文件] ...

  6. Daily Scrum – 1/7

    Meeting Minutes 搞定了一个bug,单词面板滚动条的bug: 在电脑屏幕上的屏幕适配有了新思路: Progress   part 组员 今日工作 Time (h) 明日计划 Time ( ...

  7. 【转】document.documentElement和document.body的区别

    转自:http://www.cnblogs.com/ckmouse/archive/2012/01/30/2332070.html 网页中获取滚动条卷去部分的高度,可以通过 document.body ...

  8. href的参数含有中文在IE下乱码的解决

    这是在使用kendo grid的自定义链接时遇到的一个坑,链接如下: var TempStr = "<a href='" + Url.Action("EditUse ...

  9. 深入研究Struts2(一)---Struts2是什么?它的工作原理是什么?

    本文绝对原创, 欢迎转载, 但是转载请记得注明文章出处:http://blog.csdn.net/izard999/article/details/39891281 近4年都在从事Android方 面 ...

  10. 【HDU 5399】Too Simple

    题 Description Rhason Cheung had a simple problem, and asked Teacher Mai for help. But Teacher Mai th ...