游戏开发过程中要涉及到大量的图片,使用TexturePacker可以把小图合成大图。这是我们使用最多的功能,但是TexturePacker还带有对图片加密的功能。之前还是对加密不慎了解,所以写下来分享下。

把图片导入到TexturePacker中:

接下来就是加密了

>----- Create new key 是系统随机密钥

>----- Clear/DIsable  启用、关闭图片加密功能

>----- Save as global key 将密钥作为全局的密钥,以后对其他的图片加密直接点击use global key就行

>----- Use global key 使用保存的全局密钥

点击Save

点击Publish。把生成的plist和ccz文件复制到资源文件夹下面就行了。

由于使用的cocos2dx 3.0的版本不需要更新ZipUtils文件。同样TestCpp中也有示例:\cocos2d-x-3.0\tests\cpp-tests\Classes\TexturePackerEncryptionTest

在这里使用的密钥为:

中间的空格我手动添加的,因为在程序中使用需要把32位密钥分成4个十六进制的值。我们可以在cocos2dx的AppDelegate中添加设定密钥,或者在我们使用的位置添加。

本示例在AppDelegate中添加的

用到的头文件:

#include "cocos/2d/ZipUtils.h"

 bool AppDelegate::applicationDidFinishLaunching() {
// initialize director .............. // 2528bd78 112d53ef fa5e5fb2 b7a5b25a (加密的 必须是32位十六进制值)
ZipUtils::setPvrEncryptionKeyPart(, 0x76bcbb68);
ZipUtils::setPvrEncryptionKeyPart(, 0x3a89c4f1);
ZipUtils::setPvrEncryptionKeyPart(, 0xa9dfbac2);
ZipUtils::setPvrEncryptionKeyPart(, 0x65a46419); // 或者按照这种方式添加
//ZipUtils::setPvrEncryptionKey(0x2528bd78, 0x112d53ef, 0xfa5e5fb2, 0xb7a5b25a); auto scene = TexturePackageEnvryption::scene();
// run
director->runWithScene(scene); return true;
}

在我们程序中具体使用如下:

  SpriteFrameCache::getInstance()->addSpriteFramesWithFile("TexturePackageEncryption/poker.plist", "TexturePackageEncryption/poker.pvr.ccz");  

  auto spriteRole = Sprite::createWithSpriteFrameName("1.png");
spriteRole->setPosition(Point(, ));
this->addChild(spriteRole);

cocos2dx 3.x(TexturePacker进行图片加密)的更多相关文章

  1. cocos2dx 单张图片加密

    cocos2dx 已经封装好读取加密的prv文件的方法,打开texturepacker,导入一张图片,在content protection中写入密钥,在texture format中选择prv格式 ...

  2. cocos2dx图片加密解密(npk方式)

    话不多说,直接开始: 准备的工具: 链接:https://pan.baidu.com/s/1Om4kBNWcG2jL_RTsHqqzpQ 提取码:bv7i npkCreate.exe是加密图片的工具, ...

  3. texturepacker打包图片,场景切换时背景图有黑边

    在使用TexturePacker打包图片之后,背景图在场景切换(有切换动画)时,明显能看到有黑边,在百度之后解决了. 知乎上边有网友贴出了两种解决方法,我抄过来如下: 第一种: 修改 ccConfig ...

  4. php实现图片加密解密,支持加盐

    一个简单的图片加解密函数 使用client跑,不要使用浏览器跑 qq845875470 ,技术交流 <?php /** * Created by hello. * User: qq 845875 ...

  5. cocos2d-x lua 使用http(下载图片, POST JSON)

    cocos2d-x lua 使用http(下载图片, POST JSON) version: cocos2d-x 3.6 1.使用http post json与服务器交互 require(" ...

  6. c# 图片加密解密的实例代码

    c# 图片加密解密的实例代码. 代码: using System; using System.Collections.Generic; using System.Text; using System. ...

  7. 基于混沌Logistic加密算法的图片加密与还原

    摘要 一种基于混沌Logistic加密算法的图片加密与还原的方法,并利用Lena图和Baboon图来验证这种加密算法的加密效果.为了能够体现该算法在图片信息加密的效果,本文还采用了普通行列置乱加密算法 ...

  8. 大华摄像头报警接口中图片加密,python调用c++方式实现解密

    项目中,大华摄像头的报警信息,里面有图片地址,需要1天内取下来,保持留痕 可惜,图片下载后,加密了,大华提供了android,ios,c++例子,没有提供java解密例子 没办法,只好先用c++例子简 ...

  9. cocos2d-x中描述精灵帧图片的plist和json文件各个key的含义

    最近在研究cocos,互联网行业中,手游业最近的表现是非常的火,加上本身对游戏有浓厚兴趣,所以便染指了游戏引擎~ 这次的废话就这么简短吧,因为这次记录的东西本身就很少. 在cocos中,为精灵帧添加缓 ...

随机推荐

  1. 如何伪装成为一名前端(JS方向)

    作为一个菜鸟级别的.NET开发者,在连服务器都没搞定的情况下,要研究前端,这是在扯淡,不过,迫于工作的需要,时常需要去前端打杂,所以经常伪装成为一名前端,有时候竟产生错觉,去应聘Y一份前端work吧. ...

  2. 【BZOJ1968】【AHoi2005】COMMON约数研究

    Description Input 只有一行一个整数 N(0 < N < 1000000). Output 只有一行输出,为整数M,即f(1)到f(N)的累加和. Sample Input ...

  3. 【bzoj3527】[Zjoi2014]力 FFT

    2016-06-01  21:36:44 题目:http://www.lydsy.com/JudgeOnline/problem.php?id=3527 我就是一个大傻叉 微笑脸 #include&l ...

  4. Using Maven to generate a Java Project or Web project

    I often to generate a Java project or Web project with Eclipse tool. Well, I have no idea when I wan ...

  5. GO语言练习:值与引用

    1.代码 2.运行 package main import "fmt" func testValue(){ fmt.Println("for value") v ...

  6. jquery中prop()方法和attr()方法的区别浅析

    官方例举的例子感觉和attr()差不多,也不知道有什么区别,既然有了prop()这个新方法,不可能没用吧,那什么时候该用attr(),什么时候该用prop()呢 jquery1.6中新加了一个方法pr ...

  7. 最长递增子序列 O(NlogN)算法

    转自:点击打开链接 最长递增子序列,Longest Increasing Subsequence 下面我们简记为 LIS. 排序+LCS算法 以及 DP算法就忽略了,这两个太容易理解了. 假设存在一个 ...

  8. 在mapreduce中做分布式缓存的问题

    一.问题描述: 主要解决一个问题,就是两个表做join,两个表都够大,单个表都无法装入内存. 怎么做呢?思路就是对做join的字段做排序两个表都排序,然后针对一个表a逐行读取,希望能够在内存中加载到另 ...

  9. 【LeetCode】16. 4Sum

    题目:Given an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d = ...

  10. Emule Xtreme Kid eD2K 设置

    设置udp和tcp端口: 测试结果必须为通过,若不通过, 1.请将主机ip丢入路由器DMZ区(设置将以上端口与本机ip地址绑定) 2.在windows防火墙中加入以上端口允许通行项 测试结果: 其它一 ...