Unity中文本AssetBundle的解析
Posted five-wood
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Unity中文本AssetBundle的解析相关的知识,希望对你有一定的参考价值。
?Unity在其安装目录下提供了许多实用的小工具,就存放在unity安装目录下的:Editor/Data/Tools, 其中该路径下的WebExtract.ext和binary2text.exe可以用来解析Text Asset打包出的AssetBundle, 也就是将二进制的ab反序列化成原来的文本格式。
?使用这两个exe应用程序,我们就能了解到每次补丁中打出去的文本AB内部到底是什么,进而排查在游戏更新时出现的一些问题。不过在解析的时候操作步骤比较繁琐,所以笔者抽空写了一个bat脚本,自动化解析(顺便回顾下批处理的语法=.=),具体的bat脚本如下:
@echo OFF
:LOOP
:: 使用方式:将脚本直接放到C:UserslinAppDataRoamingMicrosoftWindowsSendTo目录下,后续即可通过右键AB,点击“发送到” 选择对应的脚本
rem 前提是将下方的webExtractPath和binary2testPath变量的unity路径替换成你本地unity安装目录
set webExtractPath=C:"Program FilesUnity565EditorDataToolsWebExtract.exe"
set binary2testPath=C:"Program FilesUnity565EditorDataToolsinary2text.exe"
set filePath=%1
set transitionFolder=%filePath%_data
if not exit %webExtractPath% (
echo 不存在%webExtractPath%
goto END
)
if not exit %binary2testPath% (
echo 不存在%binary2testPath%
goto END
)
if %filePath%! == ! (
goto END
)
call %webExtractPath% %filePath%
echo 生成文本文件
choice /t 1 /d y
for /f "delims=" %%i in ('dir /b/a-d/s %transitionFolder%*') do (
call %binary2testPath% %%i
)
echo 已生成到同目录%~nx1%_data下
shift
goto LOOP
:END
echo Done!
pause
快捷实用,开袋即食
以上是关于Unity中文本AssetBundle的解析的主要内容,如果未能解决你的问题,请参考以下文章