冰箱的Blog

apk的解包和バンドリ纹理的导出

缘起

种种原因,希望使用游戏Live时的背景和素材若干。网上有些素材不好寻找,于是就想干脆在apk里翻一翻,顺便学习下如何给apk解包。

apktool解包

首先下载安装apktool,地址 apktool下载 ,点击下载图中两项得到apktool.bat和akptool-xxxx.jar,改名为akptool.jar后放到C:\windows文件夹中(或者添加环境变量)《apk的解包和バンドリ纹理的导出》

在放置apk的文件夹下,打开命令行,使用命令apktool d xxxx.apk来解包,解包文件在同文件夹下的同名文件夹。《apk的解包和バンドリ纹理的导出》

纹理文件的查看和导出

我们需要的贴图文件在\assets\bin\Data下。这里我们发现这个软件是使用U3D打包而成,相应的也要使用U3D的解包软件来查看。

点击这里来下载 Unity Studio 安装后打开,点击File-load folder加载资源文件夹。

《apk的解包和バンドリ纹理的导出》

点击Asset List来查看素材。《apk的解包和バンドリ纹理的导出》

有中意的素材时,可以点击Export菜单中的Selected asset来导出至相应文件夹中。

.dds和.pvr格式的转换

导出后,贴图格式多为.dds和.pvr,我们需要转换为.png格式方便使用。

.dds格式的转换

这里推荐 DDS Converter ,使用方法很简单,不赘述。

.pvr格式的转换

推荐下载 Texture Packer ,安装完成后打开。可以使用脚本来完成格式的转换。(注意path后的路径要替换成本机 Texture Packer 的安装路径\bin

path %path%;"D:\TexturePacker\bin"
for /f "usebackq tokens=*" %%d in (`dir /s /b *.pvr *.pvr.ccz *.pvr.gz`) do (
TexturePacker.exe "%%d" --sheet "%%~dpnd.png" --data "%%~dpnd.plist" --opt RGBA8888 --allow-free-size --algorithm Basic --no-trim --dither-fs
)
pause

但是我在使用过程中,出现了错误,提示Some sprites are too big for a texture 2048x2048, extrude 1, border padding 0:-liveBG_normal #00904.pvr (2048x1024),然而才疏学浅,并不知道如何解决。后来在Texture Packer 中发现了PVR查看器 。

《apk的解包和バンドリ纹理的导出》

打开后,直接点击 Save As ,转存即可。

.tex格式

其实导出的贴图文件还有.tex格式的文件,还不知道如何转换。

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注