TexturePacker 如何使用自带的加密功能及在cocos2dx中的使用

在cocos2dx中使用纹理图集是非常节省资源的,在这里推荐 TexturePacker,而且 TexturePacker工具的加密接口也非常的好用,下面就来介绍一下。。。

TexturePacker 工具的加密,只是相对于一般使用的基础上增加了几步对密码操作的步骤(目前的加密功能仅适用于.pvr.ccz格式):

一、生成密码(图形化界面和命令行两种方式)

方式一:图形化界面生成密码

密码可以自己手动过输入,或者使用下面的这几个按钮,完后点击外面的空白区域就自动保存了。。。

(2)shell脚本命令行生成密码

1>、首先安装 commandline Tool, 菜单栏 -> Install commanndLine Tool

2>、参照 不忘初“辛”的帖子 http://www.cnblogs.com/flyFreeZn/p/3587770.html,写 生成图集的脚本,并在此基础上增加 加密操作:

1 # next line is encrypt command option
2 # --content-protection "11111112122222223333333344444444" \
 1 #! /bin/bash
 2
 3 CURRENT_DIR=`dirname $0`
 4
 5 # input paths
 6 IMAGE_DIR=$CURRENT_DIR/imgs/
 7
 8 # path that game proj use
 9 GAME_IMAGE_PATH=$CURRENT_DIR/
10
11 # path of the texture packer command line tool
12 TP=/usr/local/bin/TexturePacker
13
14 # $1: Source Directory where the assets are located
15 # $2: Output File Name without extension
16 # $3: RGB Quality factor
17 # $4: Scale factor
18 # $5: Max-Size factor
19 # $6: Texture Type (PNG, PVR.CCZ)
20 # $7: Texture format
21 # $8: encrypt key, Key: 128 bit, 32 hex digits [A-F0-9]
22 pack_textures() {
23
24     ${TP} --smart-update 25         --texture-format $7 26         --format cocos2d 27         --data "$2".plist 28         --sheet "$2".$6 29         --maxrects-heuristics best 30         --enable-rotation 31         --scale $4 32         --shape-padding 1 33         --max-size $5 34         --opt "$3" 35         --trim 36         --premultiply-alpha 37
38         --content-protection $8 39         $1/*.png
40
41 }
42
43 # do the job
44 for i in $IMAGE_DIR/*
45 do
46     if [ -d $i ]
47     then
48         spriteSheetName=`basename $i`
49         pack_textures $i $GAME_IMAGE_PATH/$spriteSheetName ‘RGBA8888‘ 1 2048 ‘pvr.ccz‘ "pvr2ccz" "12345678123456781234567812345678"
50     fi
51 done
52
53 # next line is encrypt command option
54 # --content-protection "12345678123456781234567812345678" \

至此,加密操作便是完了,密码是 12345678123456781234567812345678。

二、在cocos2dx中读取图集:

1、由于在cocos2dx引擎中集成了图集解密所需要的 ZipUtils类,所以不用引入直接使用就好。。。

2、在游戏还没有使用图集之前进行解密

1 // 图集解密   12345678123456781234567812345678
2     ZipUtils::setPvrEncryptionKey(0x12345678, 0x12345678, 0x12345678, 0x12345678);

3、然后,然后就正常使用就好啦,我贴出我在Lua中的使用:

1 local spriteFrameCache = cc.SpriteFrameCache:getInstance()
2     spriteFrameCache:addSpriteFramesWithFile("tmp/texture_tmp.plist", "tmp/texture_tmp.pvr.ccz")

以上使用的cocos2dx的版本为 v3.2,TexturePacker版本为。。。额,装完命令行工具就找不到版本号了。。。

时间: 2024-10-10 22:05:06

TexturePacker 如何使用自带的加密功能及在cocos2dx中的使用的相关文章

【转载】TexturePacker 如何使用自带的加密功能及在cocos2dx中的使用

在cocos2dx中使用纹理图集是非常节省资源的,在这里推荐 TexturePacker,而且 TexturePacker工具的加密接口也非常的好用,下面就来介绍一下... TexturePacker 工具的加密,只是相对于一般使用的基础上增加了几步对密码操作的步骤(目前的加密功能仅适用于.pvr.ccz格式): 一.生成密码(图形化界面和命令行两种方式) 方式一:图形化界面生成密码 密码可以自己手动过输入,或者使用下面的这几个按钮,完后点击外面的空白区域就自动保存了... (2)shell脚本

Exchange企业实战技巧:邮件中使用数字签名和邮件加密功能

SMTP最初是为了在封闭的网络中传送相对来说不太重要的简短邮件,因此SMTP传输邮件时,安全性不高.自从安全.多用途INTERNET邮件扩展(S/MIME)成为增强SMTP电子邮件安全功能的标准,使得实现邮件的安全性.可靠性成为可能.S/MIME通过加密来保护电子邮件的内容,使用数字签名来验证电子邮件发件人的身份. S/MIME主要提供两种安全的服务:数字签名.邮件加密 数字签名像是具有法律意义的传统签名的数字形式,提供的安全功能包括有: 1.身份验证 2.认可性 3.数据完整性 邮件加密提供了

BitLocker加密功能

BitLocker加密功能 u 案例需求 怎样使用Windows 7的BitLocker功能加密磁盘驱动器,保护文件数据? u 知识提示 微软在Windows 7操作系统旗舰版中为用户提供了一种强悍的BitLocker加密功能,该技术最早出现在Vista系统中,BitLocker机密技术能够同时支持FAT和NTFS两种格式,用来加密保护用户数据,可以加密电脑的整个系统分区,页可以加密可移动的便携存储设备,如U盘和移动硬盘等.其中对U盘等移动设备存储进行加密的BitLocker TO GO就是最新

U-Mail邮件系统存储加密功能保护隐私

近年来,邮件在商务往来中应用频繁,很多机密资料如客户信息.技术文档.财务数据等都通过邮件及其附件传输,这导致一旦邮件遭窃,就会给公司或个人造成重大损失.邮件被窃有几种可能,一是用户账号密码被盗:二是邮件在传输的过程中被人窃密:三是邮件存在公司邮件服务器上被窃密.那么该如何防止邮件被窃密呢? 对于第一种情况,U-Mail邮件系统可以设置密码规则,强制要求用户使用复杂密码,且不能使用弱密码库中的密码,还有就是能过滤XSS反射.SQL注入等: 第二种情况则可以通过购买加密的SSL证书,来将明码转化为乱

Common LISP自带单步跟踪功能

Common LISP自带单步跟踪功能,执行 (step 要跟踪的命令)即可.以sdraw为例,跟踪其执行. [1]启动单步跟踪 SDRAW[60]> (step (sdraw '(a (b c d) c))) step 1 --> (SDRAW '(A (B C D) C))     显示下一个要执行的语句 Step 1 SDRAW[61]>                         等待用户输入调试指令 [2]输入help查看帮助,帮助的内容很多,前面一大段和Debug是一样的

Kitkat的加密功能对应用做了什么?

本文只分析手机加密后,启动到输入密码的界面的流程. 一. 加密后,系统服务针对加密功能做了什么? 最先启动的是SystemServer,调用ServerThread的initAndLoop()方法,开始启动系统的其他的服务. 在该文件中搜索"crypt",得到如下内容: 1. private static final String ENCRYPTING_STATE = "trigger_restart_min_framework"; private static f

Ecmall系统自带的分页功能

在Ecmall的二次开发中,分页是必不可少的.这个系统已经自带了分页功能,下面来看看如何使用这个分页. 下面是一个自定义的类,用于查看订单的详细情况.关键在于get_order_data()这个方法,分页的使用也在这个方法的内部了.应该有的注释都有了,应该会比较容易懂,我不就多说了. <?php define('NUM_PER_PAGE', 15); // 每页显示数量 class NowaMagicApp extends MallbaseApp { public function index(

DEDE自带的采集功能,标题太短的解决方法

DEDE自带的采集功能,标题太短获取不全的解决方法搜索了好多之后,终于还是在dede的官方论坛找到了答案.增加采集标题长度:255  目的:原标题长度太小,影响文件采集⑴修改系统参数设置(文档标题最大长度)位置:系统-系统设置-系统基本参数-其他选项-文档标题最大长度:255⑵修改文档表dede_archives 字段title 为varchar(255)位置:系统-系统设置-SQL命令行工具Alter table dede_archives change title title varchar

win7自带刻录功能的使用方法

win7自带刻录功能用起来其实很方便. 弹出“刻录光盘”对话框的两种方法: 1.把一张空白光盘放入刻录机,打开“计算机”窗口,双击DVD RW 驱动器图标(或选中该图标右击点击“打开”),弹出“刻录光盘”对话框,选择刻录类型. 2.把一张空白光盘放入刻录机,把需要刻录的文件直接右击——>发送到DVD RW 驱动器,弹出“刻录光盘”对话框,选择刻录类型. 这里有两个刻录类型:一个是“类似于USB闪存驱动器”:另一个是“带有CD/DVD播放器”.选择“类似于USB闪存驱动器”, 将刻录一张可以随时保