精灵的三种加载方法
来源:互联网 发布:申通快递软件下载 编辑:程序博客网 时间:2024/05/01 22:05
精灵的加载方法有三种方法:
即直接加载图片、加载纹理、加载框架三种大的方法,下面将逐个分析
CCSize winsize = CCDirector::sharedDirector()->getWinSize(); CCSprite* sprite = CCSprite::create("teemo2.png"); sprite->setPosition(ccp(winsize.width / 2, winsize.height / 2)); addChild(sprite); CCSprite * plant = CCSprite::create("sprite/plant.png",CCRectMake(0,0,80,80)); plant->setAnchorPoint(ccp(0.5,0.5)); plant->setPosition(ccp(winsize.width / 2-110, winsize.height / 2-100)); addChild(plant);
直接在创建精灵的时候通过加载图片。场景一般用在较少精灵的地方。
CCImage* image = new CCImage(); image->initWithImageFile("sprite/bullet.png"); CCTexture2D * cctexture = new CCTexture2D(); cctexture->autorelease(); cctexture->initWithImage(image);//纹理 CCSprite* sprite2 = CCSprite::create(); sprite2->initWithTexture(cctexture); sprite2->setPosition(ccp(winsize.width / 2 - 60, winsize.height / 2 - 100)); sprite2->setAnchorPoint(ccp(0, 0)); addChild(sprite2);
代码如上,但是为什么要代码托管呢?什么时候需要代码托管呢?
CCTextureCache * textCache = CCTextureCache::sharedTextureCache(); CCTexture2D* cctexture2d =textCache->addImage("sprite/p_1_01.png"); //CCTexture2D* cctexture2d = new CCTexture2D(); cctexture2d->autorelease(); CCSprite* sprite4 = CCSprite::createWithTexture(cctexture2d); sprite4->setPosition(ccp(winsize.width / 2 - 190, winsize.height / 2 - 100)); addChild(sprite4);
addImage()方法在加入纹理的时候会返回CCTexture2D引用
CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("sprite/zombie.plist"); CCSprite * sprite3 = CCSprite::createWithSpriteFrameName("z_1_attack_06.png"); sprite3->setAnchorPoint(ccp(0.5, 0.5)); sprite3->setPosition(ccp(winsize.width / 2 + 30, winsize.height / 2 - 100)); addChild(sprite3); CCJumpBy * by = CCJumpBy::create(2, ccp(0, 0), 40, 3);//增加跳的动作 sprite3->runAction(CCRepeatForever::create(by));
这是第三种方法,具体各种加载的优点缺点后面再做分析。
0 0
- 精灵的三种加载方法
- cocos2d-x加载精灵,设置坐标的方法
- 动态加载CSS的三种方法
- 网络加载图片的三种方法
- 212,三种加载view的方法
- 三种初始化加载tableViewCell的方法
- Volley的图片加载三种方法
- 加载外部图片的三种方法
- cocos2dx创建精灵的五种方法
- cocos2dx创造精灵的五种方法
- cocos2dx四种创建精灵的方法
- 创建精灵的四种方法
- 【cocos2dx】创建精灵的两种方法
- cocos2dx创造精灵的五种方法
- cocos2dx创建精灵的五种方法
- cocos2dx创建精灵的五种方法
- 创建精灵的方法
- 库的三种加载方法 显示加载 隐示加载 延迟加载
- 快速排序算法简介
- Matlab之size函数
- 归并排序
- Android 将布局文件转成图片(将View 转换成BitMap)
- lua C++对象内存管理
- 精灵的三种加载方法
- Win7与Ubuntu双系统下 卸载Ubuntu
- block的学习(block和timer的循环引用问题)
- iOS开发进阶之图说
- RabbitMQ (三) 发布/订阅
- 安卓通知
- Android事件分发
- UIAlertController进行代替UIAlterView和UIActionSheet
- Android RecyclerView 使用完全解析 体验艺术般的控件