cocos2d-x初学笔记10:特效Effect
来源:互联网 发布:枪战王者辅助软件 编辑:程序博客网 时间:2024/05/29 19:24
cocos2d-x中的特效效果共有22种,包括摇晃,波纹,旋转,透镜等。我们选择其中的一种特效来讲讲它的用法。
首先新建一个项目,命名为EffectTest,然后对文件进行修改。
(注意:我使用的cocos2d-x版本是2.0.4,系统是win7)下载地址
我们修改HelloWorld.cpp文件的init()函数如下:
bool HelloWorld::init(){ bool bRet = false; do { ////////////////////////////////////////////////////////////////////////// // super init first ////////////////////////////////////////////////////////////////////////// CC_BREAK_IF(! CCLayer::init()); ////////////////////////////////////////////////////////////////////////// // add your codes below... ////////////////////////////////////////////////////////////////////////// // 1. Add a menu item with "X" image, which is clicked to quit the program. // Create a "close" menu item with close icon, it's an auto release object. CCMenuItemImage *pCloseItem = CCMenuItemImage::create( "CloseNormal.png", "CloseSelected.png", this, menu_selector(HelloWorld::menuCloseCallback)); CC_BREAK_IF(! pCloseItem); // Place the menu item bottom-right conner. pCloseItem->setPosition(ccp(CCDirector::sharedDirector()->getWinSize().width - 20, 20)); // Create a menu with the "close" menu item, it's an auto release object. CCMenu* pMenu = CCMenu::create(pCloseItem, NULL); pMenu->setPosition(CCPointZero); CC_BREAK_IF(! pMenu); // Add the menu to HelloWorld layer as a child layer. this->addChild(pMenu, 1); //获得屏幕大小 CCSize size = CCDirector::sharedDirector()->getWinSize(); //创建一个精灵作为背景,用来显示波动效果 CCSprite* pSprite = CCSprite::create("HelloWorld.png"); CC_BREAK_IF(! pSprite); pSprite->setPosition(ccp(size.width/2, size.height/2)); //创建一个节点CCNode* node = CCNode::create();//创建一个波动特效实例,参数代表:动画波动次数,波动振幅,波动区域大小,波动时间CCActionInterval* effect = CCWaves3D::create(5, 40, ccg(15,10), 3);//将背景添加进节点node->addChild(pSprite);//执行波动动作 node->runAction(effect);//将节点添加到布景addChild(node,0); bRet = true; } while (0); return bRet;}
我们只实现了波动特效,其他特效的用法一样,只需改变创建特效动画时的特效类名称就可以了。在此就不在赘述。运行程序,结果如下
需要注意的是,程序中我们并没有把右下角的菜单按钮加入到节点,由于运行波动特效的是这个节点,所以右下角的菜单按钮并没有随着特效而波动。我们这里只是简单地实现了一种波动特效,其他的许多更丰富的特效还请大家自己去练习实现。
最后祝愿每一个奋斗在路上的人早日实现梦想!
- cocos2d-x初学笔记10:特效Effect
- cocos2d-x学习笔记(9)--effect(特效)
- Cocos2d-x 常用特效 Effect API
- cocos2d-x 2.x 图层特效Effect
- cocos2d-x初学笔记
- 【Cocos2d-x 3.0学习笔记】精灵特效
- 关于cocos2d-x 3.3网格特效笔记
- cocos2d-x初学笔记01:HelloWorld浅析
- cocos2d-x初学笔记02:一些概念
- cocos2d-x初学笔记03:菜单Menu
- cocos2d-x初学笔记09:进度条Progress
- cocos2d-x初学笔记12:定时器schedule
- cocos2d-x初学笔记13:地图Map
- cocos2d-x初学笔记14:精灵表
- cocos2d-x初学笔记09:进度条Progress
- cocos2d-x初学笔记09:进度条Progress
- Cocos2d-x学习笔记(初学)
- cocos2d-x Effect效果显示
- 学习笔记——操作系统&体系结构_TLB的处理方式
- SA装系统之U盘量产winpe来维护windows系统。
- d3d与OpenGL的博弈
- Inno Setup使用上的几个问题
- android手机root后的问题。。。
- cocos2d-x初学笔记10:特效Effect
- java 自动装箱 和 自动拆箱
- ibatis一对一、一对多实现以及性能分析
- Android Bluetooth 移植
- Inno Setup 安装前卸载原程序
- U盘Linux系统安装指南
- 一个比较完整的Inno Setup 安装脚本
- 数据抽象-做什么重于怎么做
- 欧几里得法求最大公约数