下载安卓APP箭头
箭头给我发消息

客服QQ:3315713922

教你Cocos2D中拼图的简单制作方法及其用法

作者:课课家教育     来源: http://www.kokojia.com点击数:965发布时间: 2016-04-05 09:35:24

标签: Cocos2D技巧Cocos2D学习Cocos2D教程

  在Cocos2D中拼图是一种很实用的游戏开发技巧,本篇教程将教你Cocos2D中拼图的简单制作方法及其用法。

  第一部分 拼图制作

  我们运行破解版 TexturePacker。注意不要运行原有的程序,不然软件会把你的图片变成他自己的版权声明……

教你Cocos2D中拼图的简单制作方法及其用法_Cocos2D技巧_Cocos2D学习_Cocos2D教程_课课家

  看到左边这里,Data file 和 Texture file 的路径表示你的纹理信息存放位置,建议保存在工程的 Resources 文件夹下,到时直接调用。其它选项如图设置即可。如果纹理没有透明色,或者打算降低颜色深度,可以在 Image format 中选择一个更加合适的选项。

  然后看到上边,点击这两个按钮的其中一个导入原始的纹理,Add Sprites 是逐个选的,而 Add Folder 可以直接将一整个文件夹的文件都导入。

  导入之后应该见到右边发生了变化,比如……

  然后在刚才导入的按钮旁边找到 Publish,点击它,弹出一个窗口,稍等一下按 OK 即完成生成。

  这个时候就能在相应的地方看到这两个文件。

  最后你也可以在菜单栏选择 File -> Save 将拼图的信息(tps 文件)保存在任何地方,方便下次添加图片。(这个文件最好不要放在 Resource 文件夹下)

  第二部分 使用拼图

  首先,用以下的代码就能把文件引用到程序中。

  CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("sample.plist", "sample.png");

  里面的 sample.plist、sample.png 就是刚才你保存的文件名。

  然后创建一个 BatchNode。

  CCTexture2D * texture = CCTextureCache::sharedTextureCache()->textureForKey("sample.png");CCSpriteBatchNode * node = CCSpriteBatchNode::createWithTexture(texture);addChild(node);

  这里的 sample.png 同样要改成你保存的文件名。

  最后引用拼图中的“arrpad.png”,同样可以改成你想要的引用的文件名。

  CCSprite * arrpad = CCSprite::createWithSpriteFrameName("arrpad.png");arrpad->setPosition(ccp(0, 0));node->addChild(arrpad);

  如果你有一个进度条,并且希望异步加载拼图,那么引用的时候要复杂一些。

  首先跟平时加载图片一样,加载这个拼图。

  CCTextureCache::sharedTextureCache()->addImageAsync("sample.png", this, callfuncO_selector(HelloWorld::loadedCallBack));

  其中 sample.png 是拼图文件,HelloWorld::loadedCallBack 是回调函数,自己改。

  然后加载完成,进入游戏场景之前,将引用的代码改成这样就行了。

  原代码:

  CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("sample.plist", "sample.png");

  修改后的代码:

  CCSpriteFrameCache::sharedSpriteFrameCache()->addSpriteFramesWithFile("sample.plist", CCTextureCache::sharedTextureCache()->textureForKey("sample.png"));

赞(19)
踩(1)
分享到:
华为认证网络工程师 HCIE直播课视频教程