Cocos2d-JS 场景与层

cocos2d-js | 使用物理引擎chipmunk创建物理世界场景和物理精灵层以及添加触摸事件 说一下大致思路。(嘿嘿我也是看完别人的博客总结的,加上自己的理解,自己怎么可能去看源码嘛!(难道你们不是么。。。)) 首先,在工程目录里打开project.json文件, { "project_type": "javascript", "debugMode" : 1, "showFPS" : true, "frameRate" : 60, "noCa. 阅读详情
场景切换相关函数
场景切换是通过导演类director实现的。其中相关函数如下:
(1)runScene(scene)该函数可以运行场景,只能在启动第一个场景时调用该函数。如果已经有一个场景运行,则不能调用该函数。
(2)pushScene(scene)。切换到下一个场景,将当前场景挂起当入到场景堆栈中,然后再切换到下一个场景中。
(3)popScene()与pushScene配合使用,可以回到上一个场景。
(4)popToRootScene()与pushScene配合使用,可以回到上一个场景。
pushScene并不会释放和销毁场景,原来场景的状态可以保持,但是游戏中也不能同时有太多的场景对象运行。
使用pushScene函数从当前场景进入到Setting场景(SettingScene)的代码如下:
cc.director.pushScene(new SettingScene())
从Setting场景回到上一个场景使用的代码如下:
cc.director.popScene()
在cocos2d-js工程中,所有的JS文件都需要在project.json文件的jsList中注册。

场景过渡动画
场景切换时是可以添加过渡动画的,场景过渡动画是由TransitionScene类和它的子类显示的。TransitionScene类如图所示

TransitionScene类的直接子类有11个,而且有些子类还有子类,全部的过渡动画类30多个。
过渡动画类的使用方法如下:
cc.director.pushScene(new cc.TransitionFadeTR(1.0,new SettingScene())
上述代码创建过渡动画TransitionJumpZoom对象,构造函数有两个参数,第一个是动画持续时间,第二个参数是场景对象。pushScene函数使用的参数是过渡动画TransitionScene对象。
一些具有代表性的过渡动画如下所示:

场景的生命周期:
一般情况下一个场景只需要一个层,需要创建自己的层类。一些主要的游戏逻辑代码都是写在层中的,场景的生命周期是通过层的生命周期反映出来的,通过重写层的生命周期函数,可以处理场景不同声明周期阶段的事件。
生命周期函数
(1)ctor构造函数。初始化层的时候调用
(2)onEnter() 进入层时调用
(3)onEnterTransitionDidFinish()进入层而且过渡动画结束时调用
(4)onExit()退出层时调用
(5)onExitTransitionDidStart()退出层且开始过渡动画时调用
层继承于节点,这些生命周期函数根本上是从Node继承而来。事实上所有Node对象都有这些函数,只要是继承这些类都可以重写这些函数,来处理这些对象的不同声明周期阶段事件。
多场景切换生命周期
多场景切换时分为几种情况。
以HelloWorld中调用SettingLayer为例
(1)使用pushScene函数,调用顺序如图6-8
(2)使用popScene函数,调用顺序如图6-9



Cocos2D HTML5游戏开发全攻略 Cocos2D最初是为iOS平台开发的,后来发展成为一个跨平台的游戏开发框架,支持iOS、Android、Windows以及Web等多个平台。其特色在于提供了丰富的游戏开发工具和功能,比如场景管理、动画控制、粒子效果等。Cocos2D-JS提供了许多内置动作类,如MoveToRotateTo等,但开发者有时需要根据游戏特定的需求来创建自定义动作。// 自定义动作// 更新逻辑});// 使用自定义动作this精灵.runAction(new MyCustomAction()); 阅读详情

相关推荐

国产系统迁移实战:在银河麒麟V10上搞定Wine32位支持,让老Windows软件跑起来

本文详细介绍了在银河麒麟V10操作系统上构建Wine32位支持的全过程,帮助用户解决Windows应用迁移难题。从系统架构差异分析到Wine环境配置,再到实战应用部署与优化,提供了一套完整的解决方案,确保老Windows软件在国产系统上稳定运行。

weixin_32288959的博客 649

cocos2d-x 场景切换

cocos2d-x 3.0 场景切换 场景切换动画 新手入门

继续激情,继续奋斗。 5712

南京银行信息技术岗提前批笔试与面试

1、笔试 笔试大致可以分为三部分:性格测试、行测题目、专业知识 性格测试 性格测试一般会有较多的体量,可能一共大概有一百多道接近两百道的样子,这个是不限时的。 前面有100道是这样的题目,就是有四个选项都是各种形容词,然后分别选出最符合自己的与最不符合自己的选项。这种题你就顺着自己的潜意识填就行了,但是前后要一致,我怀疑他出这么多题,可能就是考一考你记不记得前面填了啥。比如你做到第90题的时候,可能会出现和前面第2题类似的四个形容词,更有甚者就是一模一样的,你要对自己之前选的什么有个比较清楚的记忆。

qq_40971025的博客 6923

<cocos2d-x for wp7>游戏中按返回键退回到菜单页面

研究半天,发现这个只要一按返回键就退出了,无论你是在那个界面(也就是场景)。细想下,其实本来也就是一个界面,场景都是自己添加的,所以一按返回键,等于在初始界面按返回键,就退出了。所以,我们只要在执行返回键操作的时候做手脚就好了。 翻了一下,发现CCDirector.sharedDirector().runningScene有这个,就是可以取到当前运行的场景,这个就够了。 首先,你的游戏页面一定

做简单的事,做简单的教程 3246

2023年数学建模国赛三大赛题核心建模思路与实战代码全解

本文全面解析2023年数学建模国赛三大赛题的核心建模思路与实战代码,涵盖塔式太阳能光热发电系统优化、多波束测深系统动态规划及蔬菜商品化策略建模。通过Python代码示例和优化算法(如遗传算法、NSGA2)展示,帮助参赛者掌握数学建模的关键技术与实战技巧,提升竞赛成绩。

weixin_33713350的博客 336

MobaXterm隧道配置详解:为PyCharm远程开发打通‘最后一公里’

本文详细解析了如何利用MobaXterm配置SSH隧道,实现PyCharm远程开发的高效连接。通过本地端口转发技术,开发者可以安全访问内网服务器,特别适用于需要通过跳板机的复杂网络环境。文章涵盖从基础配置到企业级运维的全套解决方案,包括性能优化、安全加固等实用技巧。

weixin_30566063的博客 504

【Cocos新手入门】使用 cocos creator 创建多个场景,并通过代码和事件绑定进行切换场景的方法

本篇文章主要讲解使用 cocos creator 创建多个场景,并通过代码和事件绑定进行切换作者:任聪聪日期:2023年1月31日cocos 引擎版本 2.4.3。

任聪聪的博客 5243

业态即战场:零售平台的生意模型与系统设计解构

在这篇文章中,我们从“控货、自营、联营”三种典型零售业态出发,拆解了亚马逊、阿里、京东和本地闪购平台在商品模型设计上的差异与博弈。看似简单的卖货方式背后,其实是平台在“控货权”“商品归属权”上的深层策略博弈:谁掌控商品,谁就掌控数据、流量与利润分配权。本文尝试用一套通俗但不失专业的方式,帮助产品经理和技术伙伴读懂零售平台商品模型的底层逻辑与系统设计演化路径。

曾经“等你生日那天”都遥远得像未来,如今却可欢愉的挥手说“下个十年见” 13万+

cocos 中熟练运用场景的切换

在实际游戏运用中,一个场景是远远不够的,我们必须要掌握多个场景之间的切换。 场景切换时通过Director导演类来实现的,在cocos中定义了如下几种场景切换函数: 1,void runWithScene(Scene *scene)。这是一个运行场景的函数,该函数的使用情况是当前没有场景正在运行,因为一次只能运行一个场景。 2,void replaceScene(Scene *scene...

weixin_30662849的博客 297

系统盘被 1Panel 撑爆了?一键脚本 3 分钟搞定无损迁移!(1Panel如何快速无损的修改安装目录)

很多用户因默认安装导致 1Panel 面板占满系统盘 😱,本文详解了为何常规快照迁移会失效,并提供了通过**一键自动化脚本**实现无损迁移的完美方案 🛠️。无论你是 NAS 用户还是服务器管理员,都能找到安全扩容的最佳实践。

XiaoqiangClub的博客 1281

Flow Match 原理 及应用

Flow Matching(流匹配)是生成模型的范式革命——用确定性ODE替代随机扩散过程,在自动驾驶轨迹预测中实现10倍采样加速和更高生成质量。更快的采样速度:通常只需 10-50 步就能生成高质量样本更稳定的训练:避免了传统扩散模型中复杂的噪声调度理论基础:基于连续正规化流(Continuous Normalizing Flows)核心思想:Flow Matching 通过学习一个 向量场(vector field) 来直接建模从噪声分布到目标分布的连续变换路径。

@bangbang的博客 102

CocosCreator场景

>>>>> 理解:场景是承载一切节点的基础。所有的节点都必须加载到场景内,玩家才能看到他。 记录scene场景相关接口。 官方文档:https://docs.cocos.com/creator/manual/zh/scripting/scene-managing.html // 返回当前场景节点。 // 此处有坑请注意:当切换场景时调用此接口,返回值可能会 空。自己处理一下。 let cur_scene = cc.director.getScene(); // 跳

神兽白泽 1044

【YOLO26实战全攻略】09——YOLO26多目标跟踪实战宝典:从原理到智慧园区人流统计全流程

多目标跟踪(MOT)是视频分析的核心技术,解决了单帧检测无法关联目标身份的痛点。本文基于YOLO26轻量化检测模型与ByteTrack跟踪算法,从新手视角出发,系统讲解多目标跟踪的核心原理、环境搭建、实操步骤与工程落地。内容涵盖ByteTrack分层关联策略解析、YOLO26集成跟踪的一行代码实现、配置参数调优、区域计数、轨迹数据提取与热力图可视化,最终通过智慧园区人车流量统计虚拟案例,完整呈现从技术原理到实际应用的全流程。本文注重实用价值,所有代码可直接复现,参数配置附带场景化建议,帮助新手快速上手。

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 356

cocos2d-js 开发基础练习代码(1)——熟悉场景加载,精灵,动画使用等

cocos2d-js 开发基础练习代码(1)个人入门练习敲代码例子:GameKernelScene.js 功能是加载个场景 layer界面随机添加些sprite从上往下掉落,超出屏幕则删除代码涵盖内容包括:cocos2d-js场景的创建,layer的创建,sprite的创建,动画的使用,定时器的使用,以及JavaScript语法基础,对象的使用,方法的调用,数组Array的元素两种删除使用,Arr...

899

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

Cocos2d-x里Javascript开发的一些要点

1.CocosBuilder和Javascript里的MVC模式 var scene = cc.BuilderReader.loadAsScene("CheckUpdateLayer"); var layer = cc.BuilderReader.load("CheckUpdateLayer"); 这两行代码分别加载成scene和layer. 一般来说,我们会创建一个CheckUp

老猫 1万+

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

cocos2d-js的平面世界

cocos2d世界的经纬度–坐标系首先,我们看一个典型的游戏画面,这个图有几个元素,首先最明显的应该是一个超人,然后右侧有一个’HUNGRY HERO’字样的图标,另外还有2个按钮(PLAY和ABOUT),最后就是底下的背景图,如图3-1所示。 在这个游戏画面中,超人和位置按钮是怎么表示呢,我们知道,地球上某一点的位置可以用经纬度来表示。同理,游戏的二维世界也可以通过这样的方式表示,具体

u011781247的博客 295

cocos2d-js获得其它Layer层对象

cocos2d-js当中有时候一个scene由好几个Layer组成、为了逻辑更为清晰、经常要在不同的Layer处理不同的事情。比如说控制层ControlLayer要控制MainLayer当中添加一个精灵 代码如下: var MainScene = cc.Scene.extend({ onEnter: function () { this._super();

a641832648的博客 3582

对Cocos2d-JS程序的简单剖析

当我们创建好一个游戏工程后,引擎自动为我们创建了一个场景文件,即src文件夹下的app.js。这应该是一个典型的构建游戏场景的文件,以后创建自己的游戏场景,代码内容应该与此相似://创建一个层(Layer) var HelloWorldLayer = cc.Layer.extend({ sprite:null, ctor:function () { // 1. sup

闪星的博客 495

cocos2d-js中Hello World代码分析

上面我们介绍了cocos2d-js这个引擎的一些环境的配置之类的,我们在上面的文章中也介绍了,这个地方我们主要来接介绍一下cocos2d-js项目,在我们打开的时候Hello World这个界面的一些知识,当然我认为是知识。首先我们来看看我们项目的目录: 其实在这个目录中我们的关注点,可以放在main.js,src,project.json,config.json这几个文件上,要知道这个几个

datouniao1的博客 912

cocos2d-JS核心概念

1.导演 导演类cc.Director用于管理场景,采用单例设计模式,在整个工程中只有一个实例对象,由于是单例模式,能够保存一致的配置信息,便于管理场景对象,获得导演类Director实例语句如下: var director=cc.Director._getInstance() 也可以在程序中直接使用cc.director,该对象是在框架内使用如下语句进行赋值: cc.director=c

AiCoding_D的博客 1158

Cocos2d-JS中的常见元素

1.坐标系在Cocos2d-JS游戏中,画面的左下角是(0,0)2.场景(Scene)cc类似于命名空间,把各种Cocos2d-JS原生类型都封装在这个命名空间里面。3.节点(Node)节点封装了一些基本的操作或者功能,场景中的物体都是继承自Node。4.层(Layer)Layer继承自节点,在一个典型游戏中,往往会包含一些层:背景层、人物层、道具层、系统信息层等。Cocos2d-JS提供两个常用的

闪星的博客 563

cocos2d-js浅谈schedule的用法

很多童鞋对cocos2d-js中的定时函数很迷茫,不知道是用js自身的定时器比较好,还是用cocos2d自身提供的schedule更靠谱?从代码的可读性、拓展性及实用性上,建议大家统一使用cocos2d自身提供的schedule方法。下面就为大家深入浅出的介绍下schedule: 一、schedule 有三种不同的api: 1. scheduleUpdate(): 2. scheduleOn

苗疆三刀的随手记 2519

COCOS2D-JS入门-官网template源码解析

首先介绍几个概念: 导演:   导演 (Director)是Cocos2d-JS引擎抽象的一个对象,Director是整个Cocos2d-JS引擎的核心,是整个游戏的导航仪,游戏中的一些常用操作就是由Director来控制的,比如OpenGL ES的初始化,场景的转换,游戏暂停继续的控制,世界坐标和GL坐标之间的切换,对节点(游戏元素)的控制等,还有一些游戏数据的保存调用,屏幕尺寸的获取等都要...

weixin_30437337的博客 172

Frida动态Hook解密Cocos2d-JS手游so加密脚本实战

在移动应用安全与逆向工程领域,动态分析技术是破解运行时加密逻辑的关键手段。其核心原理是通过注入代码到目标进程,实时拦截和修改函数执行流程,从而绕过静态分析难以处理的混淆与加密。这项技术的核心价值在于能够在不破坏原有程序逻辑的前提下,捕获内存中的明文数据与算法参数,尤其适用于游戏脚本、通信协议等场景的逆向分析。Frida作为当前主流的动态插桩框架,以其跨平台、脚本化、无侵入的特性,成为实现这一技术的首选工具。本文聚焦于Cocos2d-JS手游中常见的so库脚本加密保护,详细讲解如何利用Frida定位并Hook

weixin_29018335的博客 359
上一篇: Cocos2d-JS 精灵的性能优化
下一篇: Cocos2d-JS 动作、特效和动画
AiCoding_D
博客等级 码龄11年 4粉丝 1原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值