cocos2d-x 3.6版loading加载资源

接着讲资源加载。
前面一节讲了怎么用一个图片创建一个背景。其实就是创建一个精灵。在cocos2d-x里面,背景,人物,道具,看到的许多对象其实都是一个精灵。

资源加载的时候通常会做一个loading的界面,告诉用户,现在在加载资源。当然有很多同学写教程,只写如何实现loading界面,怎么加载资源并没有写,这是不全面的。

我先讲如何完成一个loading界面。

把loading的图片放进工程,在Resources.h里面增加索引。
然后修改StartGame的init函数如下:

bool StartGame::init()
{
    // 先调父类的init函数
    // 这里可以知道,init()函数是一个继承下来的函数,而且是一个虚函数,子类可以重写这个函数
    if ( !Layer::init() ) {
        return false;
    }

    // 获取屏幕可视区域
    Size visibleSize = Director::getInstance()->getVisibleSize();

    // 创建一个loading的图标
    auto loading = Sprite::create(s_loading_logo);

    // 设置位置为中心位置
    loading->setPosition(visibleSize.width / 2, visibleSize.height / 2);

    // 添加到当前层
    addChild(loading);

    // 设置初始透明图
    loading->setOpacity(50);
    // 一个由暗到明的动画
    auto fadeIn = FadeIn::create(3);
    // 创建一个一直重复的动画
    loading->runAction(RepeatForever::create(Sequence::create(fadeIn, fadeIn->reverse() ,NULL)));

    return true;
}

看到,先创建一个loading的精灵,这个和创建背景是一样的。然后给它一个动画,这个动画由好几个动作组成。
首先是一个由暗到明的动画,注意,要实现这个动画,必须先设置一个透明度,不然没有变化,因为loading精灵默认出来就是亮的。
然后翻转这个动画,然后用这两个动画创建一个序列动画,就是先变亮再变暗。然后用这个序列动画创建一个重复播放的动画RepeatForever。

好了,就是这样。

loading界面实现了,下一节讲如何loading的时候后台加载资源。

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值