zoukankan      html  css  js  c++  java
  • Unity 提取游戏资源之ktx转换

    http://blog.csdn.net/akof1314/article/details/38022263

     从雨松的博文《Unity3D研究院之mac上从.ipa中提取unity3D游戏资源(六十六)》可以学到提取Unity的游戏资源,其中有用到一个工具:PVRTexTool

    因为这个工具的官网不好下载,故将其上传到CSDN,下载地址:http://download.csdn.net/detail/akof1314/7660209
     
    提取出来的资源,其中的ktx资源,用PVRTexToolGUI.exe可以打开查看,可以发现都是上下颠倒,且被拉伸
     
    直接转为png格式的批处理脚本为:
    1
    2
    3
    4
    5
    6
    7
     
    @echo off
    path %path%;"D:ImaginationPowerVRGraphicsSDKPVRTexToolCLIWindows_x86_32"

    for /f "usebackq tokens=*" %%d in (`dir /s /b *.ktx`) do (
        PVRTexToolCLI.exe -f PVRTC1_4 -i "%%d" -d "%%~dpnd.png"
        del "%%~dpnd.pvr"
    )
     
    PVRTexTool也支持翻转参数flip,但是在这里,我测试无效,只能使用另一个工具ImageMagick来进行上下翻转,批处理脚本为:
    1
    2
    3
    4
    5
    6
    7
    8
     
    @echo off
    path %path%;"D:ImaginationPowerVRGraphicsSDKPVRTexToolCLIWindows_x86_32"

    for /f "usebackq tokens=*" %%d in (`dir /s /b *.ktx`) do (
        PVRTexToolCLI.exe -f PVRTC1_4 -i "%%d" -d "%%~dpnd.png"
        del "%%~dpnd.pvr"
        "D:Program FilesImageMagick-6.8.5-5convert.exe" -flip "%%~dpnd.png" "%%~dpnd.png"
    )
     
    参考资料:
    1.Unity3D研究院之mac上从.ipa中提取unity3D游戏资源(六十六) http://www.xuanyusong.com/archives/2584
    2.解析Unity3d资源(图片,模型,Shader) http://www.unitymanual.com/thread-18763-1-1.html
     
    然后记事本新建一个文本输入以下:
    @echo off
    path%path%;"D:ImaginationPowerVRGraphicsSDKPVRTexToolCLIWindows_x86_32"
     
    for /f "usebackq tokens=*" %%d in(`dir F:lushiDatacardtextures1CAB-cardtextures1Texture2D /s /b *.ktx`) do(
    PVRTexToolCLI.exe -f PVRTC1_4 -i"%%d" -d "%%~dpnd.png"
    del %%~dpnd.pvr
    )
     
    解释下:
     
    D:ImaginationPowerVRGraphicsSDKPVRTexToolCLIWindows_x86_32"
    这个是我PVRTexTool文件夹下的Windows_x86_32程序路径,按你自己PowerVR Tools文件夹找到windows_x86_32即可;
     
     
    F:lushiDatacardtextures1CAB-cardtextures1Texture2D/s /b *.ktx
    这个是你想转化的ktx文件所在的路径
     
    然后把文本格式从.txt 改为.bat;然后双击,就开始执行批处理了;
     
    转化过程有点慢,慢慢等着。。。转化后的.png图片就在.ktx的同级文件夹下;

    其他:从Data文件夹下;
    Managed 
    这个文件里边是代码
    Assembly-CSharp.dll
    是工程里边用到的脚本;用reflector能反编译;
    从Managed文件夹中还能看出一些东西,比如
    protobuf-net.dll
    说明游戏用的数据传输格式是protobuf
    Assembly-CSharp-firstpass.dll 
    里边有个itween,说明用到了itween插件等;
  • 相关阅读:
    eclipse下mysql编程
    mysql简单操作一
    Mysql ubuntu下的安装卸载
    c++ 上机实验题
    Android BottomSheet:以选取图片为例(2)
    Android BottomSheet:便捷易用的底部滑出面板(1)
    如何绘制caffe网络训练曲线
    10+资深软件架构师谈计算机专业——填高考志愿必读
    添物不花钱学计算机及编程(预备篇)
    Android StatusBarUtil:设置Android系统下方虚拟键键盘透明度
  • 原文地址:https://www.cnblogs.com/123ing/p/3964030.html
Copyright © 2011-2022 走看看