assetstudio 中文文档 下载 App

Font 字体 — TTF / OTF 导出、MonoBehaviour JSON、TextAsset / Shader / VideoClip

Font 字体

Unity 里的 Font 资源封装了 TrueType (.ttf) 或 OpenType (.otf) 字体数据,加上一些 Unity 特有的字体设置。AssetStudio 会把字体数据原样提取出来:

有些游戏用的是自定义字体(比如中文字体),导出来直接装到系统里就能用。

MonoBehaviour

MonoBehaviour 是 Unity 的脚本挂载组件——它在 GameObject 上挂了一段 C# 脚本实例,实例的字段数据以二进制序列化存在 AssetBundle 里。AssetStudio 能把这些二进制数据按 TypeTree 反序列化成 JSON。

但前提是你得给它对应的程序集(dll):

  1. 第一次选中 MonoBehaviour 时,AssetStudio 会弹窗让你选程序集目录;
  2. Mono 打包的游戏 → 选游戏里的 Managed 目录;
  3. Il2Cpp 打包的游戏 → 先跑 Il2CppDumper 生成 dummy dll,再把 dummy dll 所在目录喂给 AssetStudio。

MonoBehaviour 的完整流程在 Il2Cpp Dumper 配合 那一节有详细讲。

TextAsset

TextAsset 就是 Unity 里以文本形式存储的资源(配置文件、JSON、XML、Lua 脚本等)。AssetStudio 直接原样导出:

TextAsset 在 Asset List 里默认显示原文件扩展名。如果导出来的文件没扩展名,在 Unity 里它就是没扩展名的 TextAsset。

Shader

Shader 是 Unity 的着色器程序。Unity 2021 及更早版本里 Shader 资源包含可读的 HLSL / ShaderLab 源码;Unity 2022+ 的 ShaderGraph 产生的 Shader 经过编译,不再包含可读源码。

AssetStudioMod 在 Unity < 2021 的 Shader 上能显示着色器源码并导出。Unity 2022+ 的 Shader 在 Asset List 里显示但导出来可能是空的或只有编译后的字节码。

如果你想研究 Unity Shader 格式,建议在 Unity 5.x 或 Unity 2020.x 的项目上练习。

MovieTexture / VideoClip

两种格式都是直接保存原文件流,不解码不转码。

导出前 Dump 确认

对于 MonoBehaviour、Shader 这类结构化资源,导出前建议先 Dump Selected Assets(Asset List 右键菜单里的 Dump 选项)。Dump 会把 TypeTree 反序列化结果以 JSON 显示在右侧 Dump 面板里——确认内容对了再导出,避免导出来一堆空文件或乱码。