
零基础也能上手XUnity自动翻译器让Unity游戏即时显示中文【免费下载链接】XUnity.AutoTranslator项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator周五晚上你打开一款评分很高的日式RPGBGM响起屏幕上却全是看不懂的假名。切回网页翻译来回切换剧情支离破碎。XUnity自动翻译器正是为这个场景而生它住进Unity游戏内部把对话、菜单、道具说明即时翻成中文你几乎不需要把视线移开游戏画面。先说实话以前那条路有多难走想玩一款外语游戏旧办法无非这几条等汉化组——热门大作可能等上几个月冷门小游戏基本没指望截图加OCR翻译——每句对话都要切窗口情绪和节奏全被打断硬啃原版——词典翻烂一周过去还在第一个地图。XUnity自动翻译器的思路完全不同。它直接挂在游戏进程里游戏里任何文字组件被赋值时都会被它看到然后交给翻译服务再把结果写回画面。你不用切出游戏不用截图不用等谁。旧办法用XUnity自动翻译器截图翻译反复切换窗口译文直接出现在游戏里等汉化组更新遥遥无期启动即翻随开随用网页机翻格式全乱保留富文本自动处理换行和UI溢出三个让人安心的设计其实都是生活常识它像坐在你旁边的贴身翻译。你不用告诉它这句要翻。UGUI、NGUI、TextMeshPro这些Unity常用的文本框架它默认就挂钩了TextMesh和IMGUI默认关着后面细说。游戏里跳出一个新对话它先读、再翻、再贴回去一条龙完成。它记性很好而且懂得知足。同一句话翻过一次结果就会缓存到内存和磁盘上——在Translation\{Lang}\Text目录里会自动生成_AutoGeneratedTranslations.txt。下次再遇到这句话直接读缓存不再发请求。就像你问过一次路第二次就不用再开口了。它很克制不会把翻译服务用到崩溃。项目在README的Spam Prevention一节写得很清楚文本稳定1秒后才发请求、同一时间只发一个请求、单次会话最多8000次、连续5次拿不到结果就自动停机保护。它知道自己是个访客不是来把人家服务器打挂的。跟小陈一起30分钟让一个日文游戏说中文下面跟着小陈完整走一遍流程就当自己也在操作。第一步拿到插件想研究源码的话先把仓库拉下来git clone https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator想直接开玩就从发布页面下载XUnity.AutoTranslator-BepInEx-{版本}.zip。小陈选了BepInEx版本因为README明确推荐它而且BepInEx 5.x 本身就带着插件需要的绝大部分依赖。第二步解压到游戏目录先把BepInEx装好再把压缩包解压到游戏根目录最终结构大致是这样游戏目录/ ├── BepInEx/ │ ├── core/ │ ├── plugins/ │ │ ├── XUnity.AutoTranslator/ │ │ │ ├── XUnity.AutoTranslator.Plugin.Core.dll │ │ │ ├── XUnity.AutoTranslator.Plugin.BepInEx.dll │ │ │ └── Translators/ │ │ │ └── GoogleTranslate.dll │ │ └── XUnity.ResourceRedirector/ │ └── ... └── Translation/第三步首次启动让配置文件自己长出来小陈直接启动游戏AutoTranslatorConfig.ini就自动生成了。这里不用慌默认配置就能跑起来。第四步把目标语言改成中文打开配置文件重点看这两行[General] Languagezh-CN FromLanguagejaFromLanguage是游戏原文语言Language是你要翻成的语言。README里特别提醒别依赖auto自动检测把来源语言写清楚翻译准确率高得多。第五步验证翻译链路是否通进游戏后按ALT0可以开关翻译器界面按ALTT能在原文和译文之间来回切换。如果你能看到切换效果说明整个链路已经通了剩下就是等译文慢慢积累。第六步遇到漏翻的文本怎么办小陈发现有一段文字始终是日文。先按ALTU手动挂钩试试还不行就去看配置里[TextFrameworks]一节——EnableIMGUI和EnableTextMesh默认是False改成True重启游戏再看。很多mod的界面走IMGUI翻译不完整多半是这里没开。第七步亲手修正不满意的译文自动翻译难免有翻错的地方。小陈直接把_AutoGeneratedTranslations.txt里不满意的句子改成正确译文存回去按ALTR立即重载。手动写好的译文永远优先于自动生成的结果这一点README写得很明确。新手常踩的四个坑提前帮你排掉坑1装了插件游戏里毫无反应。先依次确认插件是不是放在了BepInEx/plugins的正确子目录BepInEx版本和插件是否匹配IL2CPP游戏需要BepInEx 6配IL2CPP专用包第一次启动有没有让游戏完整跑完配置生成。三个都对了还不行再去看游戏日志。坑2译文质量差到没法看。先检查FromLanguage有没有写对。然后换个翻译端点试试免key的DeepLTranslate质量很不错想翻中文可以试BaiduTranslate需要申请AppId和AppSecretLingoCloudTranslate支持中日英互译。人名地名反复翻错把正确译法写进_Substitutions.txt做替换比反复翻词典强。坑3游戏闪退或者翻译后游戏逻辑变得奇怪。有些游戏会用屏幕当前显示的文字来判断该执行什么逻辑。判断方法很简单按ALTT切回原文时一切正常、切到译文就出问题。如果是这样把TextGetterCompatibilityModeTrue打开问题基本就解决了。坑4中文显示成方块、口口。游戏自带的字体不支持中文字形。UGUI界面用OverrideFont指定一个中文字体TextMeshPro则推荐用FallbackFontTextMeshPro加一个回退字体而不是整体替换。想再进一步这两个技巧值得收藏用拆分正则处理拼起来的文本。不少游戏会把文本拆拼后再显示导致同一个句子在不同场景长得不一样。用sr:前缀的拆分正则可以在翻译前先把句子拆开sr:^([0-9]{2}) ([\S\s])$$1 $2这样01 シンプルリング会先拆成01和シンプルリング分别查词典后再拼回去。注意正则只能放在Translation\{Lang}\Text下的普通txt文件里_开头的自动生成文件不生效。连图片里的文字也能换。游戏图片里嵌的字比如标题、按钮贴图靠文本挂钩是抓不到的。可以打开[Texture]区域的EnableTextureDumpingTrue把游戏图片导出到TextureDirectory翻译或重绘后放回去再开启EnableTextureTranslationTrue替换。提醒一句这两个开关只在自己翻译时打开不要随着汉化包分发出去。想深入研究的同学实现源码集中在src/XUnity.AutoTranslator.Plugin.Core/目录全部配置项的说明都在仓库根目录的README.md里按章节翻就行。从今天开始让每一句对话都属于你你不需要会日语、英语或韩语只需要一个晚上、一杯水跟着小陈的步骤走一遍。当你第一次看到游戏里的日文变成自己看得懂的中文时那种感觉值得亲身体验一次。去下载吧——你的下一款游戏不该再有语言这道门槛。【免费下载链接】XUnity.AutoTranslator项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考