XUnity.AutoTranslator 教程:3 分钟给 Unity 游戏装上实时翻译插件
【免费下载链接】XUnity.AutoTranslator项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator
XUnity.AutoTranslator 是一款开源的 Unity 实时翻译插件,能把日文、英文游戏实时翻译成中文。它会在游戏运行时自动钩住 UI 文字、调用翻译服务并缓存结果,全程不需要你手动改代码。
把游戏翻译插件装进游戏:BepInEx 与 ReiPatcher 二选一
安装的核心就一件事:把插件 DLL 放进游戏目录,让它在游戏启动时加载。想要从零构建源码的话,克隆仓库即可:
git clone https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator两条主流安装路线的差别,一张表看懂:
| 安装路线 | 适用场景 | 关键步骤 |
|---|---|---|
| BepInEx(推荐) | 游戏已装 BepInEx,或有 Mod 社区维护 | 装好 BepInEx → 把插件压缩包解压到游戏目录 → 启动游戏,翻译自动生效 |
| ReiPatcher | 游戏装不了 BepInEx 的"零基础"情况 | 解压到游戏根目录 → 运行 SetupReiPatcherAndAutoTranslator.exe → 用生成的 "(Patch and Run)" 快捷方式启动 |
装完 BepInEx 路线后,你只需要确认这一行核心文件存在:
{GameDirectory}/BepInEx/plugins/XUnity.AutoTranslator/XUnity.AutoTranslator.Plugin.Core.dll
配置文件AutoTranslatorConfig.ini会在第一次启动游戏后自动生成,后续所有设置都改它。
翻译引擎怎么选:4 个服务一张表对比
翻译效果取决于你选哪个引擎。在配置文件的[Service]段改Endpoint的值即可切换,下面是四个常用引擎的对比:
| 引擎 | 需要认证 | 免费额度 | 质量口碑 |
|---|---|---|---|
| GoogleTranslate | 不需要 | 无限免费(依赖网页接口,偶发失效) | 速度快,通用场景首选 |
| BingTranslate | 不需要 | 无限免费 | 中规中矩,可作 Google 的备用 |
| DeepLTranslate | 不需要 | 无限免费 | 质量最好,最接近人工译文 |
| BaiduTranslate | 需要 AppId + AppSecret | 每月 5 万字免费,实名认证后 100 万字 | 中文输出更自然,超出按 49 元/百万字计费 |
如果你选 BaiduTranslate,在配置文件末尾补上这段(AppId 和 AppSecret 去百度翻译开放平台申请):
[Baidu] BaiduAppId=你的AppId BaiduAppSecret=你的AppSecret内置引擎的源码都在src/Translators/目录下,每种引擎一个子项目,想接自己的服务也可以照着写。
AutoTranslator 配置语言与文本框架:让每个字都被翻译
这一步决定"翻译成什么"和"翻不翻得到"。打开AutoTranslatorConfig.ini,按你的游戏改这一段:
[General] Language=zh FromLanguage=ja [TextFrameworks] EnableUGUI=True EnableNGUI=True EnableTextMeshPro=TrueLanguage是你希望游戏显示的语言,FromLanguage是游戏原始语言(比如日版游戏就填ja)。框架开关对应游戏里文字的渲染方式:主流 Unity 游戏用 UGUI,老一点的游戏用 NGUI,新一些的文本用 TextMeshPro,先把这三个打开,覆盖绝大多数情况。IMGUI 和 TextMesh 默认是关的,后面排错时再按需打开。
Unity 实时翻译画面不变形:自动适配与提速设置 ⚡️
画面适配:译文通常比原文长,不处理就会顶破文本框。打开这两项,插件会自动调整 UI 组件的溢出显示方式,让多出来的字尽量显示出来:
[Behaviour] EnableUIResizing=True ForceUIResizing=True手感与速度:游戏里四枚快捷键最常用——ALT+0 呼出插件设置界面、ALT+T 在"已翻译/原文"间一键切换、ALT+R 重新加载翻译文件、ALT+F 切换你自定义的覆盖字体。
省请求和提速交给下面这两项:EnableBatching让支持的引擎把多条文本合并成一次网络请求,UseStaticTranslations则直接命中插件内置的约 2000 条常用词静态词典,根本不发请求。插件还会把翻译结果缓存在内存和磁盘里,同一句话一次会话只翻一次:
[Behaviour] EnableBatching=True UseStaticTranslations=True出了问题先看这里:3 个常见故障一行修复 🔍
| 现象 | 原因 | 一行修复 |
|---|---|---|
| 游戏在应用翻译时卡死、崩溃 | 游戏读取屏幕上显示的文本来执行逻辑 | 在[Behaviour]段把TextGetterCompatibilityMode改为True |
| 部分文本没被翻译 | 对应的文本框架默认关闭(常见于 IMGUI、TextMesh) | 在[TextFrameworks]段把对应的EnableXXX改为True |
| 想彻底停掉翻译 | — | 删掉游戏目录下BepInEx/plugins/XUnity.AutoTranslator文件夹 |
如果你用百度这类需要密钥的引擎,密钥只留在自己电脑里,一旦不小心分享出去,立即到服务商后台撤销并换新的。另外两条老规矩:保持插件更新到新版本(修复和引擎跟进都在新版里);升级前把AutoTranslatorConfig.ini备份一份,免得丢设置。
配置改完重启游戏,就能边玩边看中文了。仓库的 README 里还有字体替换、贴图翻译等进阶玩法,去仓库看看。
【免费下载链接】XUnity.AutoTranslator项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考