Cocos2D iOS之旅:如何写一个敲地鼠游戏(四):创建TexturePacker自动脚本

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处.
如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;)


免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途。同时,转载时不要移除本申明。如产生任何纠纷,均与本博客所有人、发表该翻译稿之人无任何关系。谢谢合作!

开始吧

打开Xcode,选择新建项目,选择cocos2D模板.命名新项目为WhackAMole,点击保存.

接下来将你下载的Art文件夹拷贝到WhackAMole项目的目录中去,成为Classes目录的同级目录,如下所示:

下一步,确认TexturePacker已经安装在你的机器上.如果你还不知道如何使用它,可以点击 this tutorial 学习.

你将安装TexturePacker去建立精灵表.你用TexturePacker的命令行工具做这些事.所以你不需要使用任何TexturePacker的GUI界面!

右击Resources,选择添加新文件,选择Mac OS X\Other\Shell Script,然后点击next,命名脚本为PackTextures.sh,点击结束.

将该脚本替换为如下内容:

#!/bin/sh

TP="/usr/local/bin/TexturePacker"

if [ "${ACTION}" = "clean" ]
then
    echo "cleaning..."

    rm resources/background*
    rm resources/foreground*
    rm resources/sprites*

else
    echo "building..."

    ${TP} --smart-update \
          --format cocos2d \
          --data resources/background-hd.plist \
          --sheet resources/background-hd.pvr.ccz \
          --dither-fs \
          --opt RGB565 \
          Art/background/*.png

    ${TP} --smart-update \
          --format cocos2d \
          --data resources/background.plist \
          --sheet resources/background.pvr.ccz \
          --dither-fs \
          --scale 0.5 \
          --opt RGB565 \
          Art/background/*.png

    ${TP} --smart-update \
          --format cocos2d \
          --data resources/foreground-hd.plist \
          --sheet resources/foreground-hd.pvr.ccz \
          --dither-fs-alpha \
          --opt RGBA4444 \
          Art/foreground/*.png

    ${TP} --smart-update \
          --format cocos2d \
          --data resources/foreground.plist \
          --sheet resources/foreground.pvr.ccz \
          --dither-fs-alpha \
          --scale 0.5 \
          --opt RGBA4444 \
          Art/foreground/*.png

    ${TP} --smart-update \
          --format cocos2d \
          --data resources/sprites-hd.plist \
          --sheet resources/sprites-hd.pvr.ccz \
          --dither-fs-alpha \
          --opt RGBA4444 \
          Art/sprites/*.png

    ${TP} --smart-update \
          --format cocos2d \
          --data resources/sprites.plist \
          --sheet resources/sprites.pvr.ccz \
          --dither-fs-alpha \
          --scale 0.5 \
          --opt RGBA4444 \
          Art/sprites/*.png

fi
exit 0

该脚本运行TexturePacker为背景图片,前景图片以及精灵图片去建立精灵表 —每一张都会自动生成高清和普清2张图片.

注意每张图片被存储为pvr.ccz格式,因为这种格式对于节省内存和磁盘空间来说都最有效率.而且每张图片的像素格式和抖动选项被设置为一个很好的品质和内存使用的权衡值.

如果你不确定那些TexturePacker选项是干嘛地,在终端中运行TexturePacker -help将会得到每个选项的说明.

接下来,你需要在你的项目中在编译时运行该脚本.右击Targets,选择Add\New Target,选择External Target(不是Shell Script的目标!),然后点击下一步,命名Target为TexturePacker,然后点击结束.

然后双击你的TexturePacker目标然后按下图设置:

最后一步是将目标设置为依赖你的app.双击你的TexturePacker目标,进入General标签,在Direct Dependencies中点击+按钮,在列表中选择Texture Packer,然后点击添加目标:

编译你的app,你应该看到如下输出,表示一切工作都正常:

接下来,将最新生成的精灵表和属性文件添加到你的项目中去.右击Resources选择Add\Existing Files…,然后从Resources中选择背景,前景和精灵文件(一共12个)并且点击添加,然后再次添加.当你完成时你的Groups&Files树应该看起来像下图一样:

如果你愿意, 你可以双击任何.pvr.ccz文件在内部预览,这是TexturePacker的新(也是方便的)特性.

时间: 2025-01-21 14:40:09

Cocos2D iOS之旅:如何写一个敲地鼠游戏(四):创建TexturePacker自动脚本的相关文章

Cocos2D iOS之旅:如何写一个敲地鼠游戏(十):创建游戏逻辑

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作! 增加游戏逻辑 现在我们准备添加游戏逻辑进来.想法是地鼠会钻出一定次数,你每敲击一次会得到一定分数.你尽可能试图多得分. 我们需要保持跟踪分数,然后把它显示给玩家.并且当地鼠结

Cocos2D iOS之旅:如何写一个敲地鼠游戏(九):创建动画

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作! 理解上述代码非常重要,让我们一行一行的看一下: 属性列表包含在项目文件中,所以在app的"main bundle"里.这里是一个帮助方法取得属性文件在main bu

Cocos2D iOS之旅:如何写一个敲地鼠游戏(七):弹出地鼠

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作! 弹出地鼠 现在我们已经确认地鼠被放置在正确的位置上了,让我们添加它们弹出洞的代码吧. 首先,将原来999的z序改回0,使地鼠呆在地底下. 然后添加如下代码到init方法的底部

Cocos2D iOS之旅:如何写一个敲地鼠游戏(十一):完善游戏逻辑

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作! 好了,现在我们用userData标志来确定是否可以点击精灵,我们可以最后添加如下敲击反馈代码了: -(void) registerWithTouchDispatcher {

Cocos2D iOS之旅:如何写一个敲地鼠游戏(二):Cocos2D中的高清支持

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作! 高清显示和Cocos2D 好吧,有一个好消息 - 在最新版本的Cocos2D中包括了高清屏的完整支持,你可以用下面1-2-3步就可简单搞定! 在调用CCDirector的en

Cocos2D iOS之旅:如何写一个敲地鼠游戏(八):为动画建立属性列表

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作! 在之前的博文中,我们创建了游戏的基础 - 小可爱的地鼠从洞中呼之欲出.我们花了大量的时间思考关于如何组织素材以及坐标置位,以让我们的游戏在iphone,ipad以及高清屏上看

Cocos2D iOS之旅:如何写一个敲地鼠游戏(一):高清屏显示和UIKit

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作! 原文由Ray Wunderlich写成,地址在: http://www.raywenderlich.com/2560/cocos2d-tutorial-for-ios-how

Cocos2D iOS之旅:如何写一个敲地鼠游戏(五):设置背景

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作! 设置背景 接下来,打开HelloWorldScene.m文件,然后找到你的init方法.删除创建HelloWorld标签的4行,用以下代码替换: // Determine n

Cocos2D iOS之旅:如何写一个敲地鼠游戏(三):素材最终解决方法

大熊猫猪·侯佩原创或翻译作品.欢迎转载,转载请注明出处. 如果觉得写的不好请告诉我,如果觉得不错请多多支持点赞.谢谢! hopy ;) 免责申明:本博客提供的所有翻译文章原稿均来自互联网,仅供学习交流之用,请勿进行商业用途.同时,转载时不要移除本申明.如产生任何纠纷,均与本博客所有人.发表该翻译稿之人无任何关系.谢谢合作! OK,基于以上讨论,这里是本次Cocos2D之旅中的素材准备工作: 素材将被设计在960x640大小的"可玩区域"中,在高清iphone中全屏显示,而在ipad中居