Cocos Creator常用技巧总结
来源:互联网 发布:淘宝2015年销售额多少 编辑:程序博客网 时间:2024/06/07 09:43
因为工作原因,最近一直在用Cocos Creator做一些事情,个人感觉,可以说Cocos Creator就是前端开发者的游戏福音。前端开发者完全可以凭借自己的前端知识+Cocos Creator订制一款属于自己的游戏。
刚使用Cocos Creator差不多一个多月,作者整理了一些使用常用的技巧,供大家参考~。
全局变量
刚入手creator时就在想,如何定义和使用全局变量,定义和使用方法与JS中是否相同。
在creator中可以直接不使用定义变量的var来定义全局变量,但这方法不被creator团队所提倡,官网提供了一个定义方法:
// Globals.jswindow.Globals = { name : w, age : 18}
创建这样一个Globals.js脚本,就可以在任何地方运用Globals .name 来访问定义的name的值。
模块访问
如果不想设太多的全局变量(因为可能会造成全局污染),那么可以通过模块来进行访问
//在test脚本中定义如下【module.exports为关键字】module.exports= { name:“wgq”, age:18 };//可以在其他脚本中通过require进行访问var test= require("test");test.age = 20;console.log(test.name)//wgqconsole.log(test.age)//20
这样就可以方便的设置访问自己想要的属性啦!
插入插件
相信大家写js代码会有一个自己的插件库,那么如何在creator中引用自己的插件呢?
光创建一个插件脚本是不够的,必须在脚本属性检查器中勾选导入为插件选项。
这样,不必有任何声明,就可以在任何地方引用插件中的函数了。
获取Creator中的Dom
在web中,使用js可以获取dom,在Creator中使用js可以获取组件和节点。
获取节点
1.通过拖曳
可以在一个节点的脚本中通过代码声明一个test属性,类型为cc.Node。
//wgq.jsproperties: { test:{ default:null, type:cc.Node }},
这样就会在脚本挂载的地方出来一个空的节点。
接着你就可以将层级管理器上的任意一个节点拖到这个 test控件,然后通过代码this.test就可以获取到他,进行一系列的操作。
2.通过代码
可以通过全局查找
cc.find(“Canvas/Menu/Back”)
当 cc.find 只传入第一个参数时,将从场景根节点开始逐级查找
可以通过子节点一层一层进行查找
var son1 = this.node.getChildByName("son1");var son2 = son1.getChildByName("son2");
这里,son1是该节点this.node下的子节点,而son2为son1下的子节点,可以通过getChildByName函数进行一层一层查找。
也可以不通过名字,利用序列号进行查找
例如以下son1中有很多个son2
可以通过以下循环获取到每一个son2:
var son2 = [];for(var i=0;i<son1.childrenCount;i++){ var son2[i] = son1.chindren[i]}
获取组件
在Creator中,一个节点可以挂载多个组件,如下:
Canvas节点中有Canvas组件,有gama和wgq两个脚本组件,有Label渲染组件等。
以son节点为例:
var son = this.node.getChildByName("son");var label = son.getComponent(cc.Label);//这样便可获取到son节点下的label组件,然后可以对组件进行一些操作
节点属性
节点有一些属性,开发中我们总是会利用js来动态改变节点的属性
var son = this.node.getChildByName("son");//以下代码 son为获取到的节点son.active = true or false //控制节点son的显示隐藏son.parent = father or ... //更改son节点的父节点son.children //返回son节点下的子节点数组son.childrenCount //返回送节点下的子节点数量son.x or son.y = 10//设定son节点的x,y轴坐标son.rotation = 90(度数)//设定son节点的旋转角度son.scaleX = 2 (默认为1)//设定son节点的缩放son.width or son.height //更改son节点的长宽son.color //设置颜色(默认为白)son.opacity = 200(0~255,默认为255)//设置透明度
为节点动态添加组件
有时候我们需要为节点动态添加一下组件
var myLabel = new cc.Node().addComponent(cc.Label); myLabel.string = "test";myLable.node.parent = son;//设置节点myLable.node.setPosition(300,200);//设置位置
- Cocos Creator常用技巧总结
- cocos creator 学习总结
- cocos creator
- cocos Creator
- Cocos Creator 常用节点和组件接口(摘自官方文档)
- Cocos Creator 常用节点和组件接口(官方文档摘录)
- cocos creator学习(七)触摸和键盘事件总结
- cocos creator发布
- Cocos Creator问题汇总
- cocos creator shader用法
- Cocos Creator常见问题汇总
- Cocos Creator 介绍
- Cocos Creator 控制面板
- Cocos Creator 点击事件
- cocos creator关于scrollView
- Cocos Creator 自定义事件
- cocos Creator碰撞检测
- cocos creator 事件集合
- (二)初次使用flask框架
- 安信可A7模块介绍,以及GPRS基本测试命令
- 计算机网络--CRC校验
- audiobooks shared resource
- 动态规划测试test20170506
- Cocos Creator常用技巧总结
- hdoj2031 任意进制转换
- 建造者模式【Builder Pattern】
- Activity使用技巧
- httpclient访问未知证书的https网站
- Echarts入门--直方图、折线图
- 【GraphLite】同步图运算初试-数三角形
- codeforcesPlayrix Codescapes Cup (Codeforces Round #413, rated, Div. 1 + Div. 2)B题B. T-shirt buying
- 传统物体检测