尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

Unity游戏自动翻译插件XUnity.AutoTranslator:完整快速上手指南

Unity游戏自动翻译插件XUnity.AutoTranslator:完整快速上手指南 Unity游戏自动翻译插件XUnity.AutoTranslator完整快速上手指南【免费下载链接】XUnity.AutoTranslator项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator深夜十二点你终于等到了心心念念的那款日式RPG的破解版满怀期待地点开游戏然后愣住了——满屏的日文假名像天书一样铺在面前。菜单看不懂、对话全靠猜、技能描述更是完全两眼一抹黑。翻遍全网汉化补丁不是烂尾就是版本过期。别急着卸载游戏。今天要介绍的这款开源Unity游戏自动翻译插件XUnity.AutoTranslator就是为这个场景而生的它能在游戏运行的同时实时翻译屏幕上的文本让啃生肉变成过去式。接下来这份完整指南会带你从零开始把它装进游戏、调好配置再学会几个让翻译质量飙升的进阶技巧。它和传统汉化补丁根本不是一回事很多人一听翻译插件就会联想到那种一次性替换文本资源的汉化包。XUnity.AutoTranslator的思路完全不同它像一个驻守在游戏里的同声传译官在游戏显示文本的瞬间把它截获、送去翻译引擎、再把译文替换回去全程无需修改游戏本体文件。对比维度传统汉化补丁XUnity.AutoTranslator工作方式静态替换游戏资源运行时实时翻译支持游戏针对单个游戏定制几乎所有Unity游戏更新适配游戏一更新就失效无需等待汉化组文本来源翻译组手工翻译在线翻译引擎手动词典可定制性基本不可定制配置、正则、词典全开放换句话说别人等汉化补丁你只需要装好这一套工具然后挑一个喜欢的翻译引擎就能覆盖你库里的大部分Unity游戏。项目在仓库中的模块结构也很有意思翻译器们集中放在src/Translators/目录下一个翻译引擎就是一个独立的小插件想换引擎只是改一行配置的事。三步完成安装一份XUnity.AutoTranslator安装教程安装过程比你想象中简单而且支持四种主流插件框架BepInEx官方推荐、MelonLoader、IPA、UnityInjector甚至还有不需要任何插件管理器的独立安装方式。这里以最主流的 BepInEx 为例。第一步确认游戏满足条件游戏是Unity引擎开发绝大多数独立游戏和日系游戏都是Windows系统这是插件的主要支持平台已经装好 BepInEx 插件管理器游戏根目录下能看到BepInEx文件夹如果还没装BepInEx先去装好它这是所有后续步骤的前提。第二步选择BepInEx安装包并解压下载XUnity.AutoTranslator-BepInEx版本的压缩包注意别选错版本把压缩包内容直接解压到游戏根目录让里面的文件自然落入对应的BepInEx文件夹解压后检查一下关键文件是否就位BepInEx/plugins/XUnity.AutoTranslator/目录下应有插件核心DLL和Translators翻译器子目录第三步启动游戏等待配置文件生成直接启动游戏。第一次运行时插件会自动创建配置文件并开始工作。此时进游戏随便点开一个对话或菜单如果文本开始被翻译或日志中出现翻译记录就说明安装成功了。这里要特别提醒不是所有文本框架都默认开启。如果你发现部分文本没被翻译八成是游戏用的UI框架对应的开关没打开这个问题我们马上会讲到。顺手记下这组快捷键快捷键作用适用场景ALT 0打开/关闭翻译插件UI查看翻译状态ALT T切换原文/译文显示对比翻译效果ALT R重新加载翻译文件手动改完翻译文件后即时生效ALT U手动触发文本挂钩某处文本没被自动捕获时ALT F切换自定义字体开关出现乱码、方块字时ALT Q重启插件翻译服务恢复后重新激活五分钟搞定Unity游戏实时翻译配置配置文件在首次运行后生成BepInEx环境下通常位于BepInEx/config/目录。用记事本打开你会发现每个配置项都有注释说明非常友好。核心需要关注的就三块。翻译引擎怎么选免费、稳定、质量的三方博弈[Service]小节里的Endpoint决定用哪个翻译引擎这是全插件最重要的一个选项引擎是否需要密钥特点GoogleTranslate否免注册开箱即用免费但偶发不稳定DeepLTranslate否免费免密钥翻译质量公认出色BingTranslate否免注册微软服务稳定性尚可PapagoTranslate否免费免密钥日韩翻译表现优秀BaiduTranslate是需AppId和密钥中文翻译更地道GoogleTranslateLegitimate是谷歌云API有试用额度稳定YandexTranslate是每天100万字符免费额度LingoCloudTranslate是彩云小译支持中日英互译CustomTranslate否自定义HTTP翻译接口留给开发者新手建议先用GoogleTranslate或DeepLTranslate免密钥引擎跑通流程追求中文翻译质量再考虑百度或彩云。FallbackEndpoint可以设置一个备用引擎主引擎抽风时自动顶上推荐配置。[Service] EndpointDeepLTranslate FallbackEndpointGoogleTranslate语言与文本框架最常改的两个小节[General]里的语言设置决定翻成什么、从什么翻起[General] Languagezh ; 目标语言中文 FromLanguageja ; 游戏原文语言日语[TextFrameworks]决定插件监听哪些UI系统。UGUI、NGUI、TextMeshPro默认开启TextMesh和IMGUI默认关闭。如果你的游戏是3D浮字或复古风格记得把对应开关打开[TextFrameworks] EnableUGUITrue EnableNGUITrue EnableTextMeshProTrue EnableTextMeshTrue ; 3D空间文本默认关闭 EnableIMGUITrue ; 即时模式GUI默认关闭值得顺手打开的三个性能开关[Behaviour] EnableBatchingTrue ; 批量合并翻译请求显著减少请求次数 UseStaticTranslationsTrue ; 启用内置静态翻译缓存命中直接返回 MaxCharactersPerTranslation200 ; 单条文本翻译上限防止长文本刷屏请求这三项都能有效降低翻译服务的请求量既省流量也避免触发服务商的风控。游戏翻译插件避坑指南新手最容易踩的五个坑坑一装了之后完全没动静先别急着怀疑插件坏了。多半是文本框架没开——去配置里把EnableTextMesh、EnableIMGUI等默认关闭的开关打开试试。还不行就按ALTU手动触发文本挂钩再不行换一个翻译引擎测试确认不是引擎临时故障。坑二中文显示成口口方块游戏自带字体通常不支持中文字符。解决方案给UGUI设置OverrideFont指定中文字体给TextMeshPro设置FallbackFontTextMeshPro添加备用字体。设置后按ALTF可以实时切换效果对比。坑三IL2CPP游戏的部分限制IL2CPP编译的游戏需要安装BepInEx 6并选择BepInEx-IL2CPP版本的插件包。但要注意文本挂钩能力有限、IMGUI翻译不可用、插件特定翻译也不支持。遇到IL2CPP游戏建议降低预期、先测再说。坑四翻译请求太频繁被限流插件内置了非常完善的防刷机制同一文本1秒内不重复请求、单次会话最多8000条等但如果你用免费引擎还疯狂开新对话仍可能触发服务方限制。症状是插件自动关闭——这是保护机制等一会儿按ALTQ重启即可。坑五改了翻译文件不生效手动编辑翻译文件后按ALTR重新加载。另外注意正则表达式不能放在以下划线_开头的自动生成文件里否则不会生效。进阶玩法从能看懂到翻得准手动翻译文件给特定句子上保险插件会自动生成Translation\{Lang}\Text\_AutoGeneratedTranslations.txt里面记录了所有翻译结果。你可以直接编辑这个文件修正错误翻译或把想固定翻译的句子剪切到自定义的txt文件中该目录下所有txt都会被读取且自定义文件优先级更高。游戏每次加载都会读取这些词典文件——翻译质量就是这么一点点攒出来的。正则表达式批量处理模板化文本游戏里大量文本是模板化的比如装备名シンプルリング 1、シンプルリング 2。用标准正则翻译一条规则即可覆盖全部r:^シンプルリング ([0-9])$Simple Ring $1r:前缀标识这是正则翻译规则$1引用捕获的数字分组。分割器正则解决拼接文本翻译难题很多游戏会把多个词拼在一行显示比如01 シンプルリング整体翻译必然翻错。分割器正则能先把文本拆开、逐段翻译、再拼回去sr:^([0-9]{2}) ([\S\s])$$1 $2sr:前缀标识分割规则。拆开翻译后字典里只需维护シンプルリングSimple Ring这一条所有变体自动命中。替换词与纹理翻译连图片都不放过替换词Substitutions在_Substitutions.txt中定义人名、专有名词的固定译法避免被翻译引擎翻错支持参数化写法私は{{A}}I am {{A}}纹理翻译从2.16.0开始支持图片替换。设置[Texture]小节开启EnableTextureDumpingTrue先把游戏图片导出用图像工具改好中文再放回目录开启EnableTextureTranslationTrue即可在游戏中替换显示给模组开发者的三分钟入门如果你开发Unity模组想在插件里直接调用翻译能力XUnity.AutoTranslator提供了简洁的异步APIAutoTranslator.Default.TranslateAsync( untranslatedText, result { if( result.Succeeded ) { var translatedText result.TranslatedText; // 拿到译文 } else { var errorMessage result.ErrorMessage; // 处理失败 } } );核心源码分布在src/XUnity.AutoTranslator.Plugin.Core/翻译器接口实现参考src/Translators/目录下任意一个引擎照葫芦画瓢就能写出自己的翻译器。想本地二次开发可以git clone https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator拉取完整源码。写在最后让语言不再是游戏的边界回顾一下XUnity.AutoTranslator 这个Unity游戏自动翻译插件真正的价值不只是能翻译而是把翻译的主动权交还给了玩家免密钥引擎开箱即用十几分钟就能跑起来正则和词典让你逐步打磨出高质量译文开放的架构让开发者也能轻松扩展。与其眼巴巴等汉化组不如现在就下载安装包挑一款心仪的游戏试试。从今晚开始让 XUnity.AutoTranslator 陪你打通每一款生肉游戏——语言不该是游戏乐趣的终点线。【免费下载链接】XUnity.AutoTranslator项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表