《Cocos2D-x权威指南》——3.8 拖动渐隐效果类CCMotionStreak

简介: 本节书摘来自华章计算机《Cocos2D-x权威指南》一书中的第3章,第3.8节,作者:满硕泉著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.8 拖动渐隐效果类CCMotionStreak

在游戏的实现过程中,有时会需要在某个游戏对象上的运动轨迹上实现渐隐效果。这种感觉就好像是类似飞机拉线的拖尾巴,在视觉上感觉很好,比如子弹的运动轨迹等,如果不借助引擎的帮助,这种效果往往需要通过大量的图片来实现。而Cocos2D-x提供了一种内置的拖动渐隐效果类CCMotionStreak来帮助我们实现这个效果。它是CCNode类的子类,继承关系如图3-34所示。

image


CCMotionStreak类的常用函数如表3-22所示。
image

以下示例出自tests项目中的MotionStreakTest文件夹下的MotionStreakTest.cpp文件,其中的MotionStreakTest2类如代码清单3-43所示。
代码清单3-43 定义CCMotionStreak对象

void MotionStreakTest2::onEnter()
{
    MotionStreakTest::onEnter();

    setTouchEnabled(true);

    CCSize s = CCDirector::sharedDirector()->getWinSize();
        
    streak = CCMotionStreak::create(3, 3, 64, ccWHITE, s_streak );
    addChild(streak);
    
    streak->setPosition( CCPointMake(s.width/2, s.height/2) ); 
}



void MotionStreakTest2::ccTouchesMoved(CCSet* touches, CCEvent* event)
{
    CCSetIterator it = touches->begin();
    CCTouch* touch = (CCTouch*)(*it);

    CCPoint touchLocation = touch->locationInView();    
    touchLocation = CCDirector::sharedDirector()->convertToGL( touchLocation );
    
    streak->setPosition( touchLocation );
}

以上代码使用create函数创建CCMotionStreak对象,每次调用setPosition函数重新设置对象位置时,“影子”将被创建并且慢慢渐隐,运行效果如图3-35所示。

image

相关文章
【Cocosd2d实例教程七】Cocos2d实现超炫的粒子效果!!
(转载请注明出处:http://blog.csdn.net/buptgshengod) 1.介绍      你想拥有炫酷的效果么,你想让你的应用亮瞎别人的狗眼么!!不要急,这里告诉大家怎么实现绚丽的粒子效果! 先上个图,点击界面产生火焰!(依旧是动态的,只是作者懒得截动态图) 2.实现部分      1)软件的安装     我们通过软件ParticleDesig
1018 0
【Cocosd2d实例教程六】Cocos2d实现屏幕背景的自动滚动
(转载请注明出处:http://blog.csdn.net/buptgshengod) 1.介绍     实现屏幕背景的自动滚动是游戏常遇到的功能,这样我们就不用绘制很长的背景图片,只要设计一张就可以,省时省力。这章将实现这个功能,并把源代码贡献给大家,废话不多说,先上个图,其实是动态的,只是截动态图有点麻烦。 2.代码实现部分      屏幕的动态滚动主要是一个刷新机制
865 0
|
图形学 数据安全/隐私保护
在Unity3D中如何画线,LineRender组件你一定要会(Unity3D)
发现网上很多教程都是如何用LineRender组件画线,但是这个组件还有很多其他的功能属性也是很有趣的,下面就让我们来看看吧
Qt之自定义界面(窗体缩放-跨平台终极版)
简述 通过上一节内容,我们实现了窗体的缩放,功能很不错,但是很遗憾-不支持跨平台!如果对于多平台来说,这是一个硬伤,所以,我们急需要一个能够支持跨平台的实现方案。 在网上看到过很多不同的实现方式,多多少少会存在一些问题-要么融合度太高、要么不能很好地进行移动、缩放。基于前人的分享与总结,最后,我花了很长时间来完善。独乐乐不如众乐乐,既然纯开源-那就全部分享出来。
1685 0
|
XML 图形学 数据格式
使用duilib开发半透明异形窗体程序(附源码和demo)
转载请说明原出处,谢谢~~:http://blog.csdn.net/zhuhongshu/article/details/43532791                  半透明异形窗体的功能在之前维护的老版本的duilib里面已经有了基本的功能,但是因为一直存在较多的缺陷,所以我一直建议少用,就连我自己写仿酷狗项目也只是在几个小地方用了半透明异形窗体。
2304 0