Appearance
Unity Localization 使用
参考
官方说明:
https://docs.unity3d.com/Packages/com.unity.localization@1.0/manual/QuickStartGuide.html
使用步骤
TIP
仅针对 Unity 版本 2020.3+ 的操作,更低版本参考官方文档中的说明进行操作
添加环境依赖
- 检查 Unity 是否已经添加 Localization 依赖,有些版本自动带有 Localization 组件。
- 如果没有添加可以通过 Unity 菜单->Window->PackageManager,添加 Localization(com.unity.localization)
- 参考官网更新日志,确定自己适合使用的版本。
创建并设置 Localization 资源
A. 创建 Localization Asset
打开 Editor->Projection Settings->Localization,如果尚未创建设置资源,就创建一个新的。
创建资源时,为方便资源管理,建议选择新的目录
B. 添加和设置语言(Locale)
- 在 Available Locales 中添加新的语言包(Add Locale)
- 在 Locale Selectors 和 Project Locale Iedentifier 中选中需要的语言。其中简体中文,繁体中文,英文是系统支持的三种语言,应用开发时应当勾选
- 打开 Window->Asset Manager->Localization Tables, 在新窗口中点击 New Table Collection 创建表单
- 其中 Type 有两种类型,"String Table Collection"表示文本相关的表单,"Asset Table Collection"表示图片等资源类的表单。可以根据需要自行创建对应的表单。
- 两个都创建。
- 手动添加键值
以 String Table 为例
以 Asset Table 为例
C. 记录变化
- 打开 WIndow->Asset Manager -> Localization Scene Controls
- 关联 String Table 和 AssetTable
- 选择"Active Locale"切换语言, 勾选“Track Changes”,开始记录
- 对场景/资源等进行编辑,切换语言,再次编辑
- 完成编辑后,取消勾选“Track Changes”,此时可以切换"Active Locale"观察效果
编辑已经生成的表单键值
- 打开 Window->Asset Manager->Localization Tables,选择相关的 table,可以在 entry 中进行删改具体的项目
代码中切换语言
核心代码是
json
LocalizationSettings.Instance.SetSelectedLocale( Locale locale);
如果使用 Unity Localtion,SDK 在收到系统语言切换回调时会进行切换,目前 SDK 对系统的简体中文,繁体中文,英文做了适配: