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

    作者:课课家教育更新于: 2016-04-05 09:35:24

      在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"));

Cocos2d 更多推荐

课课家教育

未登录

1