Cocos2d-x创建和转换场景学习笔记 分类: cocos2d代码编...

本文详细介绍了游戏开发中场景的概念,包括精灵、标签、节点等游戏元素的使用,以及如何在不同场景之间进行流畅的切换。文章还涵盖了多种场景切换方式和特效,为开发者提供实用的游戏开发技巧。
什么是场景?


场景是包含精灵(Sprites),标签(Labels),节点(Nodes)和其他游戏所需对象的容器。场景负责游戏逻辑的运行和游戏内容的逐帧渲染。每个游戏至少需要一个场景,你可以将场景想象成一部电影,场景就是其中正在运行并且用户可以实时看到的电影画面。游戏中可以拥有多个场景,并且可以在多个不同的场景之间自然的切换。Cocos2d-x提供了多种场景切换效果,你甚至可以使用超酷的切换效果。


创建场景


创建场景很简单:


auto myScene = Scene::create();


cocos2d-x使用右手坐标系系统,也就是屏幕和显示位置的原点(0,0)在左下角,我们的游戏元素给出的坐标是相对于原点计算出来的相对坐标。


多个场景的切换


在游戏中肯定需要在不同的场景之间切换,比如开始一个新游戏、游戏进入下一章以及退出游戏的时候都需要用到,Cocos2d-x提供了多种形式的切换方式。


Ways to transition between Scenes 几种场景切换的方式


场景切换的方式有好多种,每种切换方式都有特有的功能,比如下面这个:


auto myScene = Scene::create();
runWithScene -只能用于第一个场景的运行,这也是启动游戏第一个场景的方式。



Director::getInstance()->runWithScene(myScene);
replaceScene -直接替换一个场景。


Director::getInstance()->replaceScene(myScene);
pushScene -暂停执行当前正在运行的场景,把它放入暂停场景的堆栈之中,使用该方法必须要求当前有正在运行的场景。


Director::getInstance()->pushScene(myScene);
popScene - 用堆栈中的场景替换正在运行的场景,正在运行的场景会被移除,该方法也要求当前有正在运行的场景。

Director::getInstance()->popScene(myScene);
场景切换特效


在场景切换时可以增加一些特效

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载于:https://www.cnblogs.com/leansmall/p/4715694.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值