尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

XUnity.AutoTranslator 实战指南:3 个配置项跑通 Unity 游戏实时汉化

XUnity.AutoTranslator 实战指南:3 个配置项跑通 Unity 游戏实时汉化 XUnity.AutoTranslator 实战指南3 个配置项跑通 Unity 游戏实时汉化【免费下载链接】XUnity.AutoTranslator项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslatorXUnity.AutoTranslator 是一个运行在 Unity 游戏内部的实时汉化插件。它挂钩游戏界面中的文本组件UGUI、NGUI、TextMeshPro、IMGUI 等自动捕获屏幕上出现的外文文本把译文回填到原位置对机器翻译不满意时它还提供手动翻译文件、正则规则和字体替换机制来精修结果。这个项目解决的问题是游戏没有中文版也没有现成汉化补丁只能硬读日文或英文。装好之后对话、菜单、道具名都会随游戏进程即时翻译不需要重启也不需要预先整理文本。本文面向第一次使用的读者先确认游戏环境是否适用再用最短路径完成加载和配置确认生效之后学会处理常见故障最后按需开启手动翻译、字体替换等高级功能。先判断项目是否适合你的游戏动手安装前先确认四点不匹配就省点时间引擎与架构目标必须是 Unity 游戏。Mono 运行时支持完整IL2CPP 可用但有限制——部分文本变化不会被自动捕获需要手动刷新ALTU且 IMGUI 翻译、TextGetterCompatibilityMode、模组专属翻译在 IL2CPP 下不可用。IL2CPP 游戏要选带 BepInEx-IL2CPP 或 MelonMod-IL2CPP 后缀的对应安装包。模组加载器插件提供 5 种安装方式——ReiPatcher 独立版安装包自带无其他依赖、BepInEx、MelonLoader、IPA、UnityInjector。DLL 的目标目录各不相同按你游戏里已有的加载器挑一种即可。冲突提示如果游戏已经装了 BepInEx 等加载器不要再运行 ReiPatcher 的一键补丁两者是不同注入方式同时存在会相互冲突。网络自动翻译依赖网络。免费的网页端点无需注册但对方接口随时可能变更导致失效密钥型服务如 Bing、DeepL 的 API通常带每月免费额度长期更稳定。完成首次运行验证最小闭环路径最短验证路径是放好文件 → 启动游戏 → 生成配置 → 改 3 项 → 看到效果。1. 按安装方式放置 DLLReiPatcher 独立版解压到游戏根目录与主程序 exe 同层运行一次SetupReiPatcherAndAutoTranslator.exe随后用生成的 (Patch and Run) 快捷方式启动游戏之后可直接用原 exe 启动。BepInEx 版解压后 DLL 分布在BepInEx目录下核心库在BepInEx/core插件主体在BepInEx/plugins。MelonLoader 版DLL 分放在Mods与UserLibs两个目录。IPA 版DLL 放入Plugins目录。UnityInjector 版DLL 放入UnityInjector目录注意该目录不一定在游戏根目录。2. 启动游戏后修改配置文件首次启动后插件会在游戏根目录生成AutoTranslator/Config.ini。只改三处[General] Languagezh-CN ; 目标语言 FromLanguageja ; 游戏原文语言英文游戏填 en [Service] EndpointGoogleTranslate ; 翻译端点两点注意FromLanguage要填游戏实际的原文语言默认配置面向日文游戏英文游戏必须改成en语种代码写错不会报错唯一的表现是文本保持原文修改时核对拼写。3. 确认加载成功并看到效果按ALT0能呼出插件设置窗口说明 DLL 放对位置且插件在运行这是最直接的加载验证。呼不出窗口时查看游戏日志里有没有启动记录再对照上一步逐条核对目录。观察界面外文文本出现后约 1~2 秒变成中文。插件对新文本有约 1 秒的稳定性等待再发起翻译请求所以这个延迟是设计行为不是故障。默认端点GoogleTranslateV2是免费网页接口稳定性不做承诺。失败时可在 ALT0 界面临时换一个端点或填好 API 密钥后切到密钥型服务密钥写在[BingLegitimate]、[DeepLLegitimate]等对应小节。各项默认值也可以在源码src/XUnity.AutoTranslator.Plugin.Core/Configuration/Settings.cs中核对。日常使用要点常用操作与对应现象快捷键共 7 个先记 3 个就能覆盖大多数日常场景ALT0设置窗口进游戏后的第一个动作。确认插件存活切换端点调整部分行为。数字 0不是字母 O。ALTT原文/译文切换按下后整屏文本切回原文。两个用途判断某段文字是否确实由本插件接管如果开启翻译后游戏行为异常分支错误、交互失效说明游戏用显示的文字参与逻辑判断此时应启用TextGetterCompatibilityMode。ALTR重载翻译文件修改手动翻译文件后按一次立即生效不用重启游戏。另外 3 个在出问题时使用ALTU手动捕获个别文本没被自动挂钩时手动触发一次查找。只对已启用的文本框架有效框架开关没开的文本它同样抓不到。ALTQ从自动停机中恢复端点连续报错时插件会自动停止翻译避免持续无效请求。修复网络换代理、等服务恢复后按一次即可继续工作无需重启游戏。前提是问题确实已解决否则会再次停机。ALTF字体切换配置了OverrideFont后临时在默认字体与覆盖字体之间对比。插件自带请求节流和去重同时只有 1 个请求在途重复文本走缓存同一批文本会合并发送挂着运行不会产生大量请求。问题定位按现象走的排查路径按现象对号入座每一步给出判断标准与动作。现象一游戏启动后毫无反应判断标准游戏根目录没有生成AutoTranslator/Config.ini或 ALT0 无响应。最常见原因是 DLL 放错目录。逐条对照首次运行验证一节中你所用安装方式的目录要求。BepInEx 用户注意区分 core 与 plugins 目录XUnity.AutoTranslator.Plugin.Core.dll放进BepInEx/core是不会加载的。日志中有报错堆栈而非启动记录时检查加载器版本与插件包是否匹配IL2CPP 游戏必须使用 IL2CPP 包。现象二插件在运行但部分文本没翻译按顺序判断语种代码确认Language与FromLanguage都是当前端点支持的语种。代码错误或服务不支持该语言表现都是安静地不翻译。端点状态ALT0 里换一个端点若能翻译说明原端点不可用。长期方案是配置FallbackEndpoint主端点对某条翻译失败时自动落到备用服务。文本超长被跳过MaxCharactersPerTranslation默认 200超过即不翻译。可以调大上限 2500但单次请求承载更多字符更容易触碰免费服务的单条限制按需调整。插件已停机连续失败会自动停机先按 ALTQ 试一次界面有变化就说明这是原因。现象三原文根本没被捕获检查[TextFrameworks]小节EnableIMGUI与EnableTextMesh默认关闭。用 IMGUI 绘制 UI 的游戏很多模组界面属于此类、大量 3D 悬浮文字的游戏需要打开对应开关后重启。IL2CPP 游戏挂钩覆盖有限切场景后部分文本要靠 ALTU 手动补抓。开了开关仍抓不到时在[Debug]打开EnableLog复现一次从日志确认这段文字属于哪个组件、走了哪个框架。现象四翻译成功但显示异常中文变方块或缺字游戏字体不含中文字形。TextMeshPro 文本用FallbackFontTextMeshPro指定中文字体后备字体官方推荐优先于整体替换的OverrideFontTextMeshProUGUI 文本用OverrideFont。项目发布页提供打包好的 TMP 字体资产包社区也有面向不同 Unity 版本的中文字体资产放进游戏目录后在配置里填文件名即可。文字超出按钮被截断EnableUIResizing默认为 True插件会自动调整溢出策略仍不够时可在翻译目录里放resizer.txt文件按组件路径指定缩字号命令。游戏逻辑出错分支跑偏、交互失效启用TextGetterCompatibilityModeTrue。可选增强把机翻变成完整汉化以下内容全部可选默认关闭或基础使用不需要。手动翻译文件游戏跑过后插件把已请求的译文写入Translation/{Lang}/Text/_AutoGeneratedTranslations.txt格式为原文译文一行一条。两种用法直接改自动文件把不满意的译文改掉按 ALTR 重载。该文件在所有翻译来源中优先级最低。自建文件同目录另建.txt或.zip文件写入要覆盖的词条优先级高于自动文件。想给某个模组单独做一套译文时放入Translation/{Lang}/Text/Plugins/{该模组dll名}/子目录并在文件中加一行#enable fallback模组原文在自己的文件里没找到时会回退到通用译文。正则翻译模板化文本名称加编号一类用标准正则在翻译文件不能是下划线开头的自动生成文件中写r:^模式$译文捕获组用$1引用。游戏把多段文字拼接后显示时无法直接写拼接结果用sr:前缀的拆分正则先切成多段、逐段翻译再拼回。正则有性能开销数量少用限定匹配范围。端点与本地翻译本机装了 LEC Power Translator 或 ezTrans XP 的话可以直接作为本地端点接入ezTrans 还需同时安装 Ehnd。CustomTranslate可以把任意 HTTP 接口作为端点插件以 GET 请求携带from、to、text三个查询参数接口响应体只需返回译文字符串。这个选项面向自维护翻译服务的开发者不能拿来对接任意外部在线服务。使用密钥型服务时不要分享密钥泄露立即吊销付费前先确认该服务支持你要的源语言与目标语言组合。贴图翻译与资源重定向[Texture]小节开启EnableTextureDumping可把游戏内贴图导出到Translation/{Lang}/Texture用图像工具改掉地图、立绘里嵌死的文字后放回原位即被替换。主要针对 UI 贴图而非 3D 模型贴图且导出与读取都有明显性能开销按需开启。[ResourceRedirector]小节EnableTextAssetRedirectorTrue后重定向 TextAsset 类资源适合文字嵌在资源文件里而不是 UI 组件中的游戏。这两个小节默认全部关闭。启用前先把文本主流程跑通再逐个打开出问题时能立刻定位是哪个功能引入的。下一步卡住时先在[Debug]打开EnableLog复现一次对照README.md的 FAQ 小节查找大部分故障都有对应条目社区还有第三方端点插件和中文字体资产包通常能找到现成方案。把搁置的外语游戏装起来跑通第一个场景效果立刻可见。【免费下载链接】XUnity.AutoTranslator项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表