第五人格新版分解图片教程:手把手教你拆解游戏素材
凌晨3点还在折腾游戏素材的我,突然发现很多人问新版分解图片的事。这玩意儿说难不难,但官方没给明确教程,搞得大家像无头苍蝇似的。干脆把我这半个月折腾出来的经验写下来,你们少走点弯路。
为什么要分解游戏图片?
上周帮朋友做同人周边,需要提取游戏里的角色立绘。结果发现2023年新版客户端的打包方式变了,老方法完全失效。官方资源包现在用了更复杂的加密方式,但别慌,还是有办法的。
- 做二创需要高清素材
- 想研究角色设计细节
- 制作个性化游戏MOD
- 单纯好奇游戏文件结构
准备工作别偷懒
我第一次尝试时直接翻车,就因为没准备好这些:
工具名称 | 具体用途 |
AssetStudio | 最新0.16.47版才能识别新格式 |
Python 3.8+ | 运行解包脚本必备 |
7-Zip | 处理压缩包比WinRAR靠谱 |
记得关闭杀毒软件!这些工具经常被误报,我那天被360折腾得差点砸键盘。
找对游戏文件位置
新版客户端把素材藏得更深了:
- 安卓:/Android/data/com.netease.dwrg/files/AssetBundles
- PC端:安装目录\IdentityV_Data\StreamingAssets\AssetBundles
重点找char_xxx和dress_xxx开头的文件,这些才是角色素材。上周我傻乎乎解压了整个8G的data文件,结果毛用没有...
具体操作步骤
喝了口凉咖啡继续写。下面是实测可用的方法:
第一步:提取原始文件
用7-Zip直接打开.ab文件(别解压!),把里面那个没后缀的文件拖出来。这个步骤特别反人类,我试了十几次才搞明白。
第二步:使用AssetStudio
- 打开软件后点File > Load file
- 在导出选项里勾选Convert texture
- 导出格式选PNG(千万别选JPG!)
遇到报错就换Export > Raw export,这个笨办法反而更稳定。昨天凌晨4点发现的这个玄学技巧...
特殊文件处理
有些角色文件会报错,比如红蝶的新皮肤。这时候要用Python脚本预处理:
import UnityPy env = UnityPy.load("char_1032_1") for obj in env.objects: if obj.type.name == "Texture2D": data = obj.read() with open(f"{data.name}.png", "wb") as f: f.write(data.image.tobytes())
别被代码吓到,其实就5行命令。保存为.py文件后直接拖到文件上运行,比GUI工具快多了。
常见问题解决方案
整理了下最近群里问得最多的问题:
问题现象 | 解决办法 |
导出图片全黑 | 关闭AssetStudio的自动压缩选项 |
文件无法识别 | 检查文件头是否完整(要用Hex编辑器看) |
素材缺胳膊少腿 | 合并同角色的多个.ab文件 |
特别提醒:遇到0xC0000005内存错误就重启电脑,这破bug折磨了我三天才发现是内存泄漏。
进阶技巧
给想深入折腾的人说点干货:
- 用UABE工具可以修改动画骨骼
- 角色贴图分成了4个通道,要用PS合成
- 场景素材在map_开头的文件里
最近在研究怎么提取角色语音,发现音频文件被转成了.fsb格式。这个坑等我填平了再写,现在先去补个觉...
评论
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。
网友留言(0)