cocos2dx 游戏开发中常用场景切换方式以及特性

本文深入探讨了在游戏开发中如何高效地切换场景和管理场景生命周期,包括使用runWithScene、replaceScene、pushScene、popScene、pause、resume、end等方法的原理与应用场景,特别强调了内存管理的重要性及推进场景时的注意事项。
runWithScene(CCScene* scene):启动游戏,并运行scene 场景。这个方法在主程序启动时第一次启动主场景时调用。
 
replaceScene(CCScene* scene):直接使用传入的scene 替换当前场景来切换画面,当前场景将被释放。这是切换场景时
最常用的方法。
 
pushScene(CCScene* scene):在不释放旧场景内存的情况下运行新场景,推进新场景相当于在当前可见的纸上再放一张纸,而之前的纸位置何持不变。适用情况:
1.推进一个经常被用到的场景,例如游戏中的Setting场景。
2.当想要保留最初场景状态时,而不想保留和加载状态。例如在游戏过程中查看排行榜,推进排行榜场景时,游戏场景不会继续运行,会被暂停。
 
popScene:释放当前场景,再从代执行场景栈中弹出栈顶的场景,并将其设置为当前运行场景。如果栈为空,则直接结束应用。与pushScene 成对使用,可以达到形如由主界面进入设置界面,然后回到主界面的效果。
 
由于每当在推进场景时,需要保证总是有足够的额外内存可供推进的场景使用,但这一点很难测试。建议要推进的场景都应该是轻巧的,只占用少量的内存,并且只弹出自身,而不会推进其它场景
 
pause :暂停当前运行场景中的所有计时器和动作,场景仍然会显示在屏幕上。
 
resume:恢复当前运行场景中被暂停的计时器和动作。它与 pause 配合使用。
 
 end :结束场景,同时退出应用。 

转载于:https://www.cnblogs.com/xdxer/p/3866082.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值