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

本文介绍了cocos2d-x游戏开发中创建精灵的五种方法,包括直接创建精灵、指定矩形区域、利用帧缓存、帧动画以及使用纹理。这些方法适用于不同的场景需求,如显示图片全区域、部分区域,以及帧动画的实现等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >



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, 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", RectMake(0, 0, 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);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值