cocos2d-x 创建精灵的五种方法

前端之家收集整理的这篇文章主要介绍了cocos2d-x 创建精灵的五种方法前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。


cocos2d-x游戏开发5中创建精灵方法:


方法一:直接创建精灵

适合于要显示的是这张图片的全部区域,


Sprite * sprite = Sprite::create( "Icon.png" );
上面那句话也可以根据需要这样来写:





String* fileName = String::createWithFormat( "Icon_%d.jpg" ,flag);
Sprite* sprite = Sprite::create(fileName->getCString());
sprite->setPosition(ccp(100,100));
this ->addChild(sprite);

方法二:参数 图片名称 矩形区域

适合于需要显示图片的部分区域




Sprite * sprite = Sprite::create( "Icon.png" ,RectMake(0,30,30));
sprite->setPosition(ccp(100,100));
this ->addChild(sprite);

方法三: 利用帧缓存中的一帧的名称声称一个对象

适合于plist打包好的文件





SpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile( "test_icon.plist" );
Sprite * sprite = Sprite::createWithSpriteFrameName( "Icon.png" );
sprite->setPosition(ccp(100,100));
this ->addChild(sprite);

方法四: 利用另外一帧生成一个精灵对象

适合于做帧动画使用





SpriteFrame * frame = SpriteFrame::create( "Icon.png" ,40,30));
Sprite * sprite = Sprite::createWithSpriteFrame(frame);
sprite->setPosition(ccp(310,150));
addChild(sprite);

方法五:利用纹理

适合于需要频繁使用的图片







SpriteBatchNode* spriteTexture = SpriteBatchNode::create( "iocn.png" );
spriteTexture->setPosition(PointZero);
addChild(spriteTexture);
Sprite* sprite = Sprite::createWithTexture(spriteTexture->getTexture());
sprite->setPosition(ccp(visiblesize.width/2,100));
spriteTexture->addChild(sprite,2);

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