1. 为什么从编辑器翻译文件入手?
很多Unity开发者,尤其是刚入门的朋友,面对一个功能强大但界面全是英文的插件时,心里多少会有点发怵。我刚开始用Naninovel这个插件做叙事游戏的时候,也是这种感觉。菜单、窗口、按钮标签全是英文,虽然硬着头皮也能用,但效率总归是打了折扣,时不时还得查词典,打断创作的心流。
最让人困惑的是,像Naninovel这类插件,你点开它的某些部分,比如“Audio Manager”(音频管理器)或者“Camera Settings”(摄像机设置),会发现这些词居然神奇地显示成了中文!这可就奇怪了,插件本身没提供中文包,官方也没说支持中文,那这些汉化是从哪儿冒出来的?
我一开始也走了弯路,以为插件内部有隐藏的本地化资源。于是打开插件的脚本文件,用全局搜索功能疯狂查找“音频”、“摄像机”这些中文关键词,结果一无所获。这说明,汉化的源头并不在插件本身的代码里。这个发现其实指向了一个更通用、更底层的机制:Unity编辑器自身的本地化系统。
Unity为了支持多语言,内置了一套本地化方案。它会根据你系统或编辑器的语言设置,自动加载对应的翻译文件,并用翻译后的文本来替换编辑器界面(包括许多插件界面)中的原始英文字符串。这意味着,很多插件开发者其实并没有特意为每个按钮、每个标签写死显示文本,而是使用了Unity提供的本地化键(Key)。当Unity发现某个键在当前的本地化文件(比如中文的zh-hans.po)里有对应的翻译时,就会自动替换显示。
所以,我们汉化插件的思路就清晰了:不需要去反编译、修改或重新编译插件。我们只需要找到Unity编辑器存放这些翻译文件的地方,然后像“查字典”一样,把插件里出现的英文“单词”和对应的中文“释义”添加进去就行了。这种方法安全、非侵入式,而且对所有遵循Unity本地化规范的插件都有效。即使插件更新了,只要它使用的本地化键没变,我们的汉化就依然有效,不会被覆盖。
2. 找到并理解你的“翻译字典”:zh-hans.po文件
找到了正确的方向,下一步就是找到那本“字典”。对于中文用户来说,这本字典通常就是zh-hans.po文件(简体中文)。它的位置相对固定,在你的Unity编辑器安装目录下。
以Windows系统为例,典型的路径是这样的: C:\Program Files\Unity\Hub\Editor\[你的Unity版本号]\Editor\Data\Localization\
在这个Localization文件夹里,你会看到很多以语言代码命名的.po文件,比如en.po(英文)、ja.po(日文),我们需要的正是zh-hans.po。有时候,你可能会看到类似zh-hans (1).po这样的文件名,这通常是因为系统里存在多个版本,用最新的那个就行。
注意:直接修改Unity安装目


2907

被折叠的 条评论
为什么被折叠?



