XUnity.AutoTranslator 实战入门:30 分钟让 Unity 游戏开口说中文

📅 2026/8/18 1:43:09
XUnity.AutoTranslator 实战入门:30 分钟让 Unity 游戏开口说中文
XUnity.AutoTranslator 实战入门30 分钟让 Unity 游戏开口说中文【免费下载链接】XUnity.AutoTranslator项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslatorXUnity.AutoTranslator 是一款面向 Unity 游戏的自动翻译插件既能实时翻译游戏文本也附赠一套完整的手动汉化工具链。无论你是只想快速看懂剧情还是打算认真做一份汉化补丁它都是绕不开的选项。从玩不下去到玩得下去先认识这个工具箱你大概也有过这种夜晚好不容易下好一款口碑爆棚的日文游戏开场五分钟就卡在对话框里满屏假名仿佛在嘲笑你的外语水平。关掉窗口不甘心硬啃又太痛苦——XUnity.AutoTranslator 就是为这个场景设计的。它做的事情说起来很简单把游戏里显示的文本钩出来送进翻译引擎再把结果填回去。但真正让它区别于一般翻译工具的是下面三点覆盖面广UGUI、NGUI、TextMeshPro、TextMesh、IMGUI、FairyGUI连 Utage 这类视觉小说引擎都支持主流 Unity 游戏的 UI 框架基本被一网打尽。两条腿走路既能联网自动翻译也支持手动提供译文文件翻译结果会缓存成文本文件你可以随时改、随时补。多平台适配BepInEx、MelonLoader、IPA、UnityInjector 四大插件管理器都有对应版本还有一套完全免依赖的独立安装方案即使是 IL2CPP 编译的新游戏也有专门的分支版本。需要提前说明的是自动翻译必然要联网把文本发到翻译服务商那里介意的朋友可以只用它的手动汉化功能。装机前的选择题四种安装方式怎么挑装之前先别急着解压。你用哪种方式把它塞进游戏目录决定了配置文件生成在哪、快捷键好不好使、以及会不会和游戏里已有的 mod 打架。首选 BepInEx 插件方式。前提是游戏已经装好了 BepInEx 插件管理器之后只需要三步下载XUnity.AutoTranslator-BepInEx-{VERSION}.zip解压到游戏根目录让 DLL 落进BepInEx文件夹启动游戏配置文件会自动出现在BepInEx/config目录装完后的目录长这样{游戏目录}/BepInEx/plugins/XUnity.AutoTranslator/XUnity.AutoTranslator.Plugin.Core.dll {游戏目录}/BepInEx/plugins/XUnity.AutoTranslator/XUnity.AutoTranslator.Plugin.BepInEx.dll {游戏目录}/BepInEx/plugins/XUnity.AutoTranslator/Translators/GoogleTranslate.dll {游戏目录}/BepInEx/Translation/AnyTranslationFile.txt如果游戏没装任何插件管理器就走独立安装下载XUnity.AutoTranslator-ReiPatcher-{VERSION}.zip解压到游戏目录运行SetupReiPatcherAndAutoTranslator.exe再通过它生成的Patch and Run快捷方式启动即可。整个过程不需要任何额外依赖对小白最友好。但请记住一条铁律如果游戏已经用了 BepInEx 或 MelonLoader 这类管理器就不要再碰 ReiPatcher 独立安装——两套钩子体系同时生效轻则翻译失灵重则游戏闪退。MelonLoader 和 IPA 的装法与 BepInEx 类似无非是把 DLL 放进Mods、Plugins这类对应目录这里不赘述。第一次启动的必修课配置文件与快捷键插件第一次启动会送你两份见面礼一个自动生成的配置文件一套全局快捷键。前者是插件的遥控器后者是你在游戏里的应急开关。BepInEx 方式下配置在BepInEx/config/XUnity.AutoTranslator.ini独立安装则在AutoTranslator/config.ini。打开后最值得先认识的是两个区块[General] Languageen ; 翻译成什么语言 FromLanguageja ; 游戏原始语言 [Service] EndpointGoogleTranslate ; 主力翻译引擎 FallbackEndpoint ; 主力失败时自动接力的备用引擎看不懂没关系第四节会专门讲怎么选引擎。你真正需要立刻记住的是快捷键——它们能救你于水火ALT 0开关翻译界面ALT T在译文和原文之间切换排查是不是翻译生效了的利器ALT R热重载翻译文件改完译文不用重启游戏ALT U手动触发文本钩取默认钩子漏掉文本时按它ALT F配置了字体替换后在自定义字体和原字体间切换ALT Q插件因连续报错自动关闭后手动重启它调试阶段还有一组暗号CTRL ALT 小键盘7能打印当前场景 ID配合配置文件里的场景限定指令使用后文会提到。翻译引擎怎么挑免费、稳定与高质量如何权衡很多人以为装上插件就完事了其实翻译质量的第一责任人是你选的引擎。默认的 GoogleTranslate 能跑但能跑和好用之间差着一整张对比表。按是否需要注册认证引擎大致分三档第一档免认证、开箱即用。GoogleTranslate 没有使用限制但很不稳定DeepLTranslate 同样免认证翻译质量是公认的第一梯队BingTranslate、PapagoTranslate 也属于这一档适合只想快速看懂剧情的玩家。注意 README 里反复提醒免费接口随时可能失效插件作者也控制不了这一点。第二档注册拿 API Key换取稳定额度。如果你打算长期玩或者做汉化我更推荐这一档BingTranslateLegitimateAzure 翻译每月免费 200 万字符个人用几乎不可能超额GoogleTranslateLegitimate注册后有一年期 300 美元试用额度约合 1500 万字符YandexTranslate每天免费 100 万字符BaiduTranslate注册后每月前 5 万字符免费LingoCloudTranslate免费认证后每月前 100 万字符免费日文→中文的体验不错填好密钥后把引擎名写进[Service] Endpoint再在对应的区块填上密钥即可[Service] EndpointBingTranslateLegitimate [BingLegitimate] OcpApimSubscriptionKey你的订阅密钥第三档本地软件与开发者专用。装了 ezTrans XP日韩翻译软件或 LEC Power Translator 的机器可以直接把它们当引擎用翻译免费且不受网络波动影响。至于CustomTranslate它面向的是会写接口的开发者普通用户不建议碰。最后别忘了FallbackEndpoint主力引擎被限流或抽风时插件会自动切换备用引擎观感上几乎无感。翻译对了却不好看字体、UI 自适应与空白处理比起翻译得不准更常见的挫败感是字翻出来了却挤成一团或者干脆变成一排方框——尤其是翻成中文和带音标的西欧语言时游戏的默认字体根本不含这些字符。对策是给文本换字体。UGUI 用OverrideFontTextMeshPro 用FallbackFontTextMeshPro这是推荐方案原字体缺字符时才回退到备用字体比整体覆盖更稳妥[Behaviour] OverrideFontC:/myfonts/chinese_font.ttf FallbackFontTextMeshProFonts Materials/LiberationSans SDF换完字体接下来要面对译文比原文长的问题。日文一行能装下的意思中文往往要多占 30% 空间。插件默认开启的EnableUIResizing会尽力调整 UI 组件的溢出方式让长文本能完整显示还不够细致的话可以在翻译目录放一个resizer.txt按路径精准控制字号CharaCustom/CustomControl/CanvasDrawChangeFontSizeByPercentage(0.5)这行配置的意思是把该路径下所有文本的字号缩小到原来的 50%。resizer.txt还支持UGUI_ChangeLineSpacing、TMP_Alignment等更精细的命令调 UI 时可以按需查阅。还有一个容易被忽略的隐形杀手换行。像 Google 这类引擎会把多行文本当作多个独立句子处理一个多余的回车就能让一句话翻得支离破碎。插件的IgnoreWhitespaceInDialogue文本超过MinDialogueChars长度就忽略空白和ForceSplitTextAfterCharacters译文超长后强制分行正是为此设计的默认配置已经比较合理翻得奇怪时优先检查这里。自动翻译够不着的角落手动翻译、正则与排障自动翻译再强也有够不着的角落人名、专有名词、滚动字幕还有那些翻出来驴唇不对马嘴的固定台词。这时候就该手动上场了。插件会把每次自动翻译的结果写进Translation\{语言}\Text\_AutoGeneratedTranslations.txt。你可以直接编辑这个文件修正译文按ALT R立即生效更推荐的做法是把要改的条目剪切出来放进自己新建的.txt文件——手动文件永远优先于自动生成文件而且这些文件还支持打包进 zip方便分发。再进一步你还能玩正则。比如游戏里所有シンプルリング 数字的道具名一行正则就能批量覆盖r:^シンプルリング ([0-9])$Simple Ring $1遇到游戏把多个文本拼在一起显示的情况比如01 シンプルリング可以用分割正则sr:先拆再翻、最后拼回这样只需要维护一条简单词条。如果不同场景的翻译会互相撞车用#set level 1,2,3指令把后续词条限定到指定场景再配合EnableTranslationScopingTrue生效。最后是一份翻车自救清单按出现频率排序文本根本没被钩到去配置文件确认对应文本框架是开着的。UGUI、NGUI、TextMeshPro 默认开启但IMGUI 和 TextMesh 默认是关的——很多 mod 的菜单、3D 世界里的漂浮文字翻不了多半就是这里的问题。钩到了但没翻译按ALT U手动触发一次钩取。游戏逻辑被翻译搞乱了有些游戏会读取屏幕上显示的文本来判断接下来执行什么逻辑翻译后逻辑就错乱了。打开TextGetterCompatibilityModeTrue能骗过游戏——判断方法很简单按ALT T切回原文一切正常、切到译文就出错基本就是这种情况。IL2CPP 游戏需要装 BepInEx 6 IL2CPP 版 对应的 IL2CPP 插件包而且文本钩取能力较弱个别文本要手动刷新才显示译文属于能用但没打磨完的状态。写在最后动手是唯一的捷径回头看这套工具的思路其实很朴素能自动的绝不让你手动该手动的也给你留好了接口。翻译引擎随便换、译文文件随时改、字体 UI 都能调——它没有把玩家锁死在某一种用法里这正是它被长期维护至今的原因。你现在只差一次动手。克隆一份源码看看它的实现或者直接解压一个包扔进游戏里试跑git clone https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator如果你和我一样卡在某个游戏的日文对话上装好它、把Language改成你的母语剩下的交给 ALTT。等第一句译文在屏幕上亮起来的时候你会明白我为什么说这是玩外文游戏的最后一块拼图。延伸阅读想深入研究的读者可以看看源码里的这些模块——核心插件逻辑在src/XUnity.AutoTranslator.Plugin.Core/各翻译引擎实现集中在src/Translators/资源重定向能力在src/XUnity.ResourceRedirector/Koikatsu恋活系列的专用适配则放在src/XUnity.AutoTranslator.KoikatsuResources/。【免费下载链接】XUnity.AutoTranslator项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考