微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

cocos2dx-3.0以上版本之 创建Sprite精灵的6种形式

直接上代码

Size size=Director::getInstance()->getWinSize();

//常见的一种形式
Sprite* sp=Sprite::create("HelloWorld.png");
sp->setPosition(size.width/2,size.height/2);

//截图的形式
Rect r=Rect(0,160,120);
auto sp1=Sprite::create("Blowfish0.png",r);
sp1->setPosition(size.width/2,size.height/2);

//纹理的方式创建
Texture2D* text=Director::getInstance()->getTextureCache()->addImage("Cn16.png");
auto sp2=Sprite::createWithTexture(text);
sp2->setPosition(size.width/2+100,size.height/2);

//纹理和截图结合使用
Texture2D* text2=Director::getInstance()->getTextureCache()->addImage("Blowfish0.png");
auto sp3=Sprite::createWithTexture(text2,r,false);
sp3->setPosition(size.width/2+100,size.height/2-50);

//利用.plist文件创建并且用到了帧缓存
SpriteFrameCache::getInstance()->addSpriteFramesWithFile("Blowfish0.plist");

//"Fish08/normal/actor_fish_hetun02_normal_001.png" 是.plist下组成图的key,就像map的键值模式一样 这里取的是值
auto frame=SpriteFrameCache::getInstance()->getSpriteFrameByName("Fish08/normal/actor_fish_hetun02_normal_001.png");

auto sp4=Sprite::createWithSpriteFrame(frame);
sp4->setPosition(size.width/2+100,size.height/2-100);

// 利用.plist文件创建,直接使用.plist中组成图的key的值
SpriteFrameCache::getInstance()->addSpriteFramesWithFile("Blowfish0.plist");
auto sp5=Sprite::createWithSpriteFrameName("Fish08/normal/actor_fish_hetun02_normal_002.png");
sp5->setPosition(size.width/2+100,size.height/2-200);

资源文件自己寻找合适的添加进去就行了,贴上此.plist文件内容:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>frames</key>
<dict>
<key>Fish08/normal/actor_fish_hetun02_normal_001.png</key>
<dict>
<key>height</key>
<integer>120</integer>
<key>offsetX</key>
<real>0.0</real>
<key>offsetY</key>
<real>0.0</real>
<key>originalHeight</key>
<integer>120</integer>
<key>originalWidth</key>
<integer>160</integer>
<key>width</key>
<integer>160</integer>
<key>x</key>
<integer>0</integer>
<key>y</key>
<integer>0</integer>
</dict>
<key>Fish08/normal/actor_fish_hetun02_normal_002.png</key> <dict> <key>height</key> <integer>120</integer> <key>offsetX</key> <real>0.0</real> <key>offsetY</key> <real>0.0</real> <key>originalHeight</key> <integer>120</integer> <key>originalWidth</key> <integer>160</integer> <key>width</key> <integer>160</integer> <key>x</key> <integer>0</integer> <key>y</key> <integer>122</integer> </dict> <key>Fish08/normal/actor_fish_hetun02_normal_003.png</key> <dict> <key>height</key> <integer>120</integer> <key>offsetX</key> <real>0.0</real> <key>offsetY</key> <real>0.0</real> <key>originalHeight</key> <integer>120</integer> <key>originalWidth</key> <integer>160</integer> <key>width</key> <integer>160</integer> <key>x</key> <integer>162</integer> <key>y</key> <integer>0</integer> </dict> <key>Fish08/normal/actor_fish_hetun02_normal_004.png</key> <dict> <key>height</key> <integer>120</integer> <key>offsetX</key> <real>0.0</real> <key>offsetY</key> <real>0.0</real> <key>originalHeight</key> <integer>120</integer> <key>originalWidth</key> <integer>160</integer> <key>width</key> <integer>160</integer> <key>x</key> <integer>162</integer> <key>y</key> <integer>122</integer> </dict> <key>Fish08/normal/actor_fish_hetun02_normal_005.png</key> <dict> <key>height</key> <integer>120</integer> <key>offsetX</key> <real>0.0</real> <key>offsetY</key> <real>0.0</real> <key>originalHeight</key> <integer>120</integer> <key>originalWidth</key> <integer>160</integer> <key>width</key> <integer>160</integer> <key>x</key> <integer>324</integer> <key>y</key> <integer>0</integer> </dict> <key>Fish08/normal/actor_fish_hetun02_normal_006.png</key> <dict> <key>height</key> <integer>120</integer> <key>offsetX</key> <real>0.0</real> <key>offsetY</key> <real>0.0</real> <key>originalHeight</key> <integer>120</integer> <key>originalWidth</key> <integer>160</integer> <key>width</key> <integer>160</integer> <key>x</key> <integer>324</integer> <key>y</key> <integer>122</integer> </dict> <key>Fish08/normal/actor_fish_hetun02_normal_007.png</key> <dict> <key>height</key> <integer>120</integer> <key>offsetX</key> <real>0.0</real> <key>offsetY</key> <real>0.0</real> <key>originalHeight</key> <integer>120</integer> <key>originalWidth</key> <integer>160</integer> <key>width</key> <integer>160</integer> <key>x</key> <integer>0</integer> <key>y</key> <integer>244</integer> </dict> <key>Fish08/normal/actor_fish_hetun02_normal_008.png</key> <dict> <key>height</key> <integer>120</integer> <key>offsetX</key> <real>0.0</real> <key>offsetY</key> <real>0.0</real> <key>originalHeight</key> <integer>120</integer> <key>originalWidth</key> <integer>160</integer> <key>width</key> <integer>160</integer> <key>x</key> <integer>0</integer> <key>y</key> <integer>366</integer> </dict> <key>Fish08/normal/actor_fish_hetun02_normal_009.png</key> <dict> <key>height</key> <integer>120</integer> <key>offsetX</key> <real>0.0</real> <key>offsetY</key> <real>0.0</real> <key>originalHeight</key> <integer>120</integer> <key>originalWidth</key> <integer>160</integer> <key>width</key> <integer>160</integer> <key>x</key> <integer>162</integer> <key>y</key> <integer>244</integer> </dict> <key>Fish08/normal/actor_fish_hetun02_normal_010.png</key> <dict> <key>height</key> <integer>120</integer> <key>offsetX</key> <real>0.0</real> <key>offsetY</key> <real>0.0</real> <key>originalHeight</key> <integer>120</integer> <key>originalWidth</key> <integer>160</integer> <key>width</key> <integer>160</integer> <key>x</key> <integer>162</integer> <key>y</key> <integer>366</integer> </dict> </dict> <key>Metadata</key> <dict> <key>format</key> <integer>0</integer> <key>realTextureFileName</key> <string>Blowfish0.png</string> <key>size</key> <string>{512,512}</string> <key>textureFileName</key> <string>Blowfish0.png</string> </dict> <key>texture</key> <dict> <key>height</key> <integer>512</integer> <key>width</key> <integer>512</integer> </dict> </dict> </plist>

原文地址:https://www.jb51.cc/cocos2dx/344959.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐