经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
当前位置:技术经验 » 程序设计 » 游戏设计 » 查看文章
cocos2dx图片加密解密(npk方式)
来源:cnblogs  作者:亲爱的贤锅锅  时间:2019/6/27 9:14:57  对本文有异议

话不多说,直接开始:

准备的工具:

链接:https://pan.baidu.com/s/1Om4kBNWcG2jL_RTsHqqzpQ
提取码:bv7i

npkCreate.exe是加密图片的工具,libnpk.rar是使用代码

解压libnpk.rar添加到你的工程中

注意:要将libnpk/include添加进附加包含目录

打开NPKHelper.cpp,其中challenge是加密后的图片资源的名字(加密后变成一个文件),g_npkKeyAry是你的加密解密用到的密码(自定义)

接下来准备图片加密

 将需要加密的图片(不管是碎图还是合图)与npkCreate.exe放入到同一个文件夹,如图:

备注:为什么我的图片全是png,因为效率呀,如果是jpg格式的话,cocos还是会给你转换到png加载到缓存,图片多的话严重影响帧率,加载会很卡

 

打开控制台,输入命令:

创建加密后的资源(那串数字是你之前设置的密码,challenge是你定义的资源名字): 

  1. npkCreate.exe challenge -create --k 7532:1457:1212:1210

将所有图片装入你的加密资源:

  1. npkCreate.exe challenge -add *.png --k 7532:1457:1212:1210

完成后的文件:,放入到你的资源目录Resources

 创建一个空图片(尺寸尽量小)伪装你的资源(没有的话让美术给你出一个,或者自己用ps创建一个),你原来图片名字叫什么,伪装图片就叫什么:

 

 接下来将图片加入缓存就可以使用了

  1. //加密图片加入到缓存
    NPKHelper::AddImage("UI/bg6.png");

    //缓存图片(合图)也可以加密
    SpriteFrameCache::getInstance()->addSpriteFramesWithFile("UI/bgPlist.plist", "UI/bg6.png");

 

---------------------------------------------------------------------------------------------------------------------------------------------------------

你可以从加密包里面取出你的原图:

  1. npkCreate.exe challenge -export *.png --k 7532:1457:1212:1210

 

原文链接:http://www.cnblogs.com/xianguoguo/p/11092250.html

 友情链接:直通硅谷  点职佳  北美留学生论坛

本站QQ群:前端 618073944 | Java 606181507 | Python 626812652 | C/C++ 612253063 | 微信 634508462 | 苹果 692586424 | C#/.net 182808419 | PHP 305140648 | 运维 608723728

W3xue 的所有内容仅供测试,对任何法律问题及风险不承担任何责任。通过使用本站内容随之而来的风险与本站无关。
关于我们  |  意见建议  |  捐助我们  |  报错有奖  |  广告合作、友情链接(目前9元/月)请联系QQ:27243702 沸活量
皖ICP备17017327号-2 皖公网安备34020702000426号