<8>Cocos Creator组件开发cc.Component】的更多相关文章

1.组件简介 组件是Cocos Creator的主要构成,渲染(场景显示内容).逻辑.用户输入反馈.计时器等等几个方面都是由组件完成的.根据Cocos Creator的总体架构,组件和节点配合完成游戏所需内容. 所有组件都是代码脚本.一部分是Cocos Creator提供的,源码在Cocos Creator安装目录中:一些是用户自定义脚本,可在资源管理器中找到对应的脚本文件,组件需要添加到节点上才能执行. Cocos Creator是组件式开发游戏,组件是完成某种功能的部件,例如假设一个人穿了防…
Cocos Creator 游戏开发 https://www.cocos.com/products#CocosCreator 一体化编辑器: 包含了一体化.可扩展的编辑器,简化了资源管理.游戏调试和预览.多平台发布等工作.允许设计师深入参与游戏开发流程,在游戏开发周期中进行快速编辑和迭代.支持 Windows 和 Mac 系统. 2D 和 3D: 同时支持 2D 和 3D 游戏开发,具有可满足您各种游戏类型特定需求的功能.并且深度优化了纯 2D 游戏的编辑器使用体验和引擎性能,内建了 Spine…
HelloWorld.js window.Global = { gint: 168, }; cc.Class({ extends: cc.Component, properties: { label: { default: null, type: cc.Label }, // defaults, set visually when attaching this script to the Canvas text: 'Hello, World!' }, // use this for initia…
对象池cc.NodePool把层级管理器中的节点拖进资源管理器中就创建了预制体:let和var 一样,是声明变量的关键词, 同一个变量名时,var 即使在{}内也作用全局,let有范围:(1)将需要数量的节点创建出来,并放进对象池://...properties: {enemyPrefab: cc.Prefab},onLoad: function () {this.enemyPool = new cc.NodePool();let initCount = 5;for (let i = 0; i…
1.场景树 Cocos Creator是由一个一个的游戏场景组成,场景是一个树形结构,场景由 有各种层级关系的节点(下一节有具有介绍)组成: 如创建一个HelloWorld的默认项目NewProject中,并在其中创建了一个UI渲染节点-Button,更改名为newBtn: 具体HelloWorld场景的场景树表现为下图所示 2.节点 2.1.1 创建节点----在层级管理器窗口中鼠标单击右键即可创建节点,或者按如下图进行点击创建节点按钮 单击鼠标右键后会显示三项: a)创建空节点:点击即可创建…
目录 安装和启动 文件结构 编辑器基础 基本概念 (场景树 节点 坐标 组件 ) Cocos Creator 脚本简介 Cocos Creator调试 节点 cc.Node 组件开发cc.Component cc.Sprite组件​​​​​​​ 系统内置和全局事件系统 GUI--cc.Button组件 GUI--cc.Label组件 GUI--cc.EditBox组件 cc.Node坐标空间的转换 GUI--cc.Widget与屏幕适配 GUI--cc.Layout组件 GUI--Mask和Sc…
Cocos Creator游戏开发中经常使用到按钮,特别是大量按钮的情况,此时使用数组来管理这些按钮就显得更具通用性.我大致走了一下官方的示例,好像没有发现有这个小内容(或者有,但我却是没有找到),于是补充此内容如下. 典型问题预览 如下图展示的界面(图中是我一个小拙例的截图,尚未成熟,等稍后感觉可以分享后再公开): Cocos Creator中按钮组件数组的使用 注意到,层级管理上,我使用了一个父节点controlRoot包容了两个按钮节点(实际中可能有许多按钮). 创建操作脚本组件 代码(…
1.创建脚本 在资源管理器窗口中点击鼠标右键,显示菜单中点击新建,选择新建的脚本类型,这里举例就选择菜单中的JavaScript,或者如下图点击创建按钮也可. 新建后就会在资源管理器中出现一个NewScript的脚本,如上图中右图,也可以进行更改名称.打开xxx.js文件后如下图 可以自定义脚本的格式,我这里是自定义了,源文件模板为下图 自定义格式可以在Cocos Creator安装的目录下的resources文件夹--->static文件夹--->template文件夹--->new-…
如果你想使用Cocos Creator制作一些规模稍大的游戏,那么资源管理是必须解决的问题,随着游戏的进行,你可能会发现游戏的内存占用只升不降,哪怕你当前只用到了极少的资源,并且有使用cc.loader.release来释放之前加载的资源,但之前使用过的大部分资源都会留在内存中!为什么会这样呢? cocos creator 资源管理存在的问题 资源管理主要解决3个问题,资源加载,资源查找(使用),资源释放.这里要讨论的主要是资源释放的问题,这个问题看上去非常简单,在Cocos2d-x中确实也很简…
Cocos Creator 是Cocos最新一代的游戏开发者工具,基于 Cocos2d-x,组件化,脚本化,数据驱动,跨平台发布.Cocos Creator的开发思路已经逐步跟Unity 3D靠拢,写起来也更方便快捷,开发效率更高. 但既然是新东西,免不了各种坑.其中在发布Web Mobile平台上,就有各种小问题,例如给资源加上md5版本号,Cocos Creator就不支持.从16年底开发组就说要支持MD5 Cache,等了大半年,新的1.6内测版本终于增加了MD5 Cache的功能,但效果…
简单解释, [来源:官方文档] Cocos是触控科技推出的游戏开发一站式解决方案,包含了从新建立项.游戏制作.到打包上线的全套流程.开发者可以通过cocos快速生成代码.编辑资源和动画,最终输出适合于多个平台的游戏产品.Cocos的主要产品有Cocos Studio.Cocos2d-x(Cocos Framework).Cocos Code IDE. Q: Cocos Creator 是游戏引擎吗? A: 它是一个完整的游戏开发解决方案,包括了 cocos2d-x 引擎的 JavaScript…
最近有小伙伴问我瞄准线遇到各种形状该怎么处理?如何实现反复横跳的瞄准线?最近刚好在<Cocos Creator游戏开发实战>中看到物理系统有一个射线检测,于是,基于这个射线检测,写了一个反复横跳的瞄准线效果.一起往下看吧!文章底部获取完整项目! 国际惯例,先上最终效果! 在讲解之前我们需要一些向量的知识,简单的介绍一些吧! 向量的加法,OA + AB = OB 向量的点乘,表示一个向量在另一个向量上的投影,是个标量,有正负之分.向量夹角小于 90度 为正数,等于 90度 为 零,大于 90度…
你的命中率是多少呢?文章底部试玩! 效果预览 配置环境: Cocos Creator 3D v1.0.1 玩法说明: 触摸屏幕,向上滑动投篮!注意篮板是会移动的哦!看看你的命中率是多少! 实现原理 为了能达到好的投篮效果,在网上找了一个投篮机参数,大致按照实际参数设置篮框大小,球的大小,以及篮框的位置. 碰撞器: 篮板直接使用 盒碰撞器组件(BoxColliderComponent),篮球使用的是 球碰撞器组件(SphereColliderComponent). 因为没有 圆环碰撞器组件,所以对…
1,可以使用较为适合js的webstorm,亦可以采用VS: 2,若需要webstorm,在下载之后,在文件,设置内外部编辑器选用webstorm.exe,即可: 3,Visual Studio Code[参考来源:官方文档] Visual Studio Code (以下简称 VS Code)是微软新推出的轻量化跨平台 IDE,支持 Windows.Mac.Linux 平台,安装和配置非常简单.通过下面介绍的设置方法,使用 VS Code 管理和编辑项目脚本代码,可以轻松实现语法高亮.智能代码提…
1.目的:只有通过方便的获取节点对象以及组件,才能较好的进行逻辑控制. 2.通过 cc.find(节点全路径名称字符串) 获取节点. 3.通过getComponent获取组件(注意一个是类型,一个是类名). ①通过 cc.Node.getComponent(类型) 获取节点中该类型对应的组件. ②通过 cc.Node.getComponent(类名) 获取节点中该类名称对应的组件. 4.在Canvas下增加一个SearchNode的节点: 创建一个带有myName属性的脚本Search(这个就是…
1.简介 节点(cc.Node)是渲染的必要组成部分.所有需要在游戏场景中显示的内容都必须是节点或者依附于节点之上.节点负责控制显示内容的位置.大小.旋转.缩放.颜色等信息. 2.节点属性 1: name: 获取节点的名字 2: active: 设置节点的可见性; 3: position: 相对坐标,参照物是父亲节点; 4: rotation: 旋转,顺时针为正, 数学逆时针为正; 5: scale: 缩放; 6: anchor: 锚点, 左下角(0, 0), 右上角(1, 1) 可以超过这个范…
这系列文章会对Cocos Creator的资源加载和管理进行深入的剖析.主要包含以下内容: cc.loader与加载管线 Download部分 Load部分 额外流程(MD5 Pipe) 从编辑器到运行时 场景切换流程 前面4章节介绍了完整的资源加载流程以及资源管理,以及如何自定义这个加载流程(有时候我们需要加载一些特殊类型的资源)."从编辑器到运行时"介绍了我们在编辑器中编辑的场景.Prefab等资源是如何序列化到磁盘,打包发布之后又是如何被加载到游戏中. 准备工作 在开始之前我们需…
使用脚本控制动画 Animation 组件 Animation 组件提供了一些常用的动画控制函数,如果只是需要简单的控制动画,可以通过获取节点的 Animation 组件来做一些操作. 播放 var anim = this.getComponent(cc.Animation); // 如果没有指定播放哪个动画,并且有设置 defaultClip 的话,则会播放 defaultClip 动画 anim.play(); // 指定播放 test 动画 anim.play('test'); // 指定…
cc.Class({extends: cc.Component,properties: {}, onLoad: function () { var clickEventHandler = new cc.Component.EventHandler(); clickEventHandler.target = this.node; //这个node节点是你的事件处理代码组件所属的节点 clickEventHandler.component = "MyComponent";//这个是代码文件…
cc.Event事件请不要直接创建 cc.Event 对象,因为它是一个抽象类,请创建 cc.Event.EventCustom 对象来进行派发. cc.Class({extends: cc.Component,_sayHello: function () { console.log('Hello World'); },onEnable: function () {this.node.on('foobar', this._sayHello, this); //添加事件},onDisable: f…
先用cocoscreator实现游戏逻辑 在cocoscreator项目里可以调用微信小游戏api 在cocos里面判断小游戏的运行环境 if (cc.sys.platform === cc.sys.WECHAT_GAME){ wx.aaaaa() } 纯js代码都可以在微信小游戏里使用,所以cocos creator里也可以调用为微信小游戏api,jq代码不行,纯在兼容问题…
amazeui学习笔记二(进阶开发2)--Web组件简介Web Component 一.总结 1.amaze ui:amaze ui是一个web 组件, 由模板(hbs).样式(LESS).交互(JS)三部分组成 二.Web组件简介Web Component Web 组件简介 目录 组件结构 分享组件 Web Components 颇令人向往,无奈浏览器支持有限,所以,Amaze UI Web 组件按照 Web Components 的实现形式,使用浏览器支持更为普及的技术,将移动开发中常用的组…
开发的游戏是五子棋online,网络版的,服务端部分和客户端部分都在这个教程里面,可以看一下目录! 服务器nodejs游戏开发教程 使用Nodejs开发网络服务器 游戏服务端 ,cocos creator js客户端 教程 包含视频.素材源码与ppt,共28g,具体内容可以参考目录. 涉及到的内容有nodejs,JS,process模,TCP网络传送的基本原理,Net模块搭建TCPserver_client,二进制数据与Buffer模块,websocket与ws模块使用,TCP通讯拆包与封包,二…
预览效果 具体内容 ■ 这一期,主要讲解主页中间人物效果的实现.也就是,在下方列表选择不同人物,上方显示不同的人物,播放不同的效果,即下图的效果实现,此部分也是采用预制 Prefab 进行实现. 英雄Hero预制组成 ■ 英雄预制 Hero 主要四部分组成:旋转的光.大小变化的光球.英雄本身.英雄的武器.这四部分,都会根据英雄的不同等级,动态的更换对应的纹理即可,游戏过程中,使用的动画,无须变化. ■ 使用到的几个精灵,都需要根据不同等级,进行纹理的更换,于是就封装了一个通用的方法,传入精灵节点…
kbengine_js_plugins 改动(2017/7/6) 由于Cocos Creator使用严格模式的js,而原本的kbengine_js_plugins是非严格模式的,因此为了兼容和方 便Cocos Creator开发的同学,本人对此脚本做了相应的修改,并共享出来. 1:修改了继承的实现方式(旧版本使用callee,严格模式下不能用callee) 2:变量名的定义(严格模式下,全局变量需要显式声明,并且为了防止全局命名污染,因此在变量名前加入了var声明为局部变量) 3:导出KBEng…
五邑隐侠,本名关健昌,10年游戏生涯,现隐居五邑.本系列文章以TypeScript为介绍语言. 我们在cocos creator新建一个Hello TypeScript项目,都会有一个assets/Scene/helloworld.fire文件.使用cocos creator开发游戏时,项目可以只有一个.fire文件.一般地,我会把这个文件夹改名为assets/scene,下面只有main.fire文件:assets/scene/main.fire. 双击main.fire文件,在层级管理器可以…
Cocos Creator 为组件脚本提供了生命周期的回调函数.用户通过定义特定的函数回调在特定的时期编写相关 脚本.目前提供给用户的声明周期回调函数有: onLoad start update lateUpdate onDestroy onEnable onDisable onLoad 组件脚本的初始化阶段,我们提供了 onLoad 回调函数.onLoad 回调会在这个组件所在的场景被载入 的时候触发,在 onLoad 阶段,保证了你可以获取到场景中的其他节点,以及节点关联的资源数据.通常 我…
截图是游戏中非常常见的一个功能,在cocos中可以通过摄像机和 RenderTexture 可以快速实现一个截图功能,具体API可参考:https://docs.cocos.com/creator/manual/zh/render/camera.html?h=%E6%88%AA%E5%9B%BE,其中官方也提供了比较完整的例子. 实际上不用官网提供的全屏截图的例子,一般在网页中我们也能将页面截图保存,比如通过htmltocanvas,cocos开发的小游戏在网页中打开实际就是一个canvas,前…
cocos creator 事件 在做一个消除类游戏时,需要对点击的方块做出响应.代码很简单,可背后的原理还多着呢. 1. 普通节点注册click事件 在cc中如果需要相应click事件,需要为该节点添加一个Button组件.或使用类似效果的事件比如 cc.Node.EventType.MOUSE_DOWN cc.Node.EventType.TOUCH_END //author herbert qq:464884492 //注册按钮click事件 btn.node.on("click"…
接着<Cocos Creator 通用框架设计 -- 资源管理>聊聊资源管理框架后续的一些优化: 通过论坛和github的issue,收到了很多优化或bug的反馈,基本上抽空全部处理了,大概做了这么一些事情. https://github.com/wyb10a10/cocos_creator_framework 修复重复引用泄露bug 修复md5构建泄露bug 修复龙骨动画依赖资源释放bug 修复微信下的依赖构建bug 修复持久节点释放bug 优化了资源依赖结构 支持了资源目录和数组的批量加载…