cocos2dx-3.x 精灵设置颜色以及动作速度调整

前端之家收集整理的这篇文章主要介绍了cocos2dx-3.x 精灵设置颜色以及动作速度调整前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

在游戏开发,有些常用操作,本文介绍两种较为简单,易用的操作

1.给精灵设置颜色

给sprite设置颜色可以使用setColor函数,例如将一个sprite设置为红色:

sprite->setColor(Color3B::RED);

如果在设置后需要恢复原来的颜色,可以进行如下设置:

sprite->setColor(Color3B(255,255,255));

2.动作速度调整

游戏开发中,经常会遇见需要调整sprite的速度,因为cocos中action的概念,实际上我们是是给sprite所拥有的action设置速度。能够设置速度的action在创建的时候需要使用如下方式:

以一个例子说明,我们先让sprite从屏幕左边移动到屏幕右边:

先创建一个精灵:

sprite->setPosition(Vec2(origin.x,visibleSize.height + origin.y));
将精灵放到屏幕左上角
再创建一个动作从左上角到由上角:

auto a1 = MoveTo::create(2,Vec2(origin.x + visibleSize.width,visibleSize.height + origin.y));
此时创建一个speed动作:

auto action = Speed::create(a1,1.0f);
给这个动作设置一个tag,方便后面获取

action->setTag(111);
此时一个speed动作已经创建好了,当我们需要进行动作设置时,比如加快这个sprite的速度:

auto action1 = static_cast<Speed*>(sprite->getActionByTag(111));
action1->setSpeed( 3 );
先根据tag获取到这个sprite拥有的动作,然后使用setSpeed设置速度。

ps.有个很好玩的地方,如果将setSpeed里面的值设置为负数,则动作会reverse。

猜你在找的Cocos2d-x相关文章