当前位置: 首页 > ai >正文

Unity官方本地化插件localization

官方文档地址:https://docs.unity3d.com/Packages/com.unity.localization@1.0/manual/QuickStartGuideWithVariants.html

使用流程

安装

PackageManager搜索Localization完成对应插件的安装

 

配置

PlayerSetting->Localization 创建本地化相关配置

 

创建之后点击Locale Generator可以选择需要支持的语言

 

创建Table Collection

TableCollection是一组本地化数据的集合。需要在Window->AssetManagement->Localization Table 点击New Table Collection,命名之后点击Create

 

 

编辑Table Collection

点击Edit Table Collection,之后选择需要编辑的Table Collection。

 

点击Add New Entry,可以添加一条新的本地化文本,Key是该文本的键值,后面可以填写不同语言对应的文本

本地化场景控制

控制界面通过Window > Asset Management > Localization Scene Controls打开

 

ActiveLocale:选项代表当前所处的本地化语言

Track Changes:该选项打开时,如果有本地化相关的组件(比如Text/Image)组件的参数值产生改变,会自动记录改变的内容

StringTable:当前本地场景控制读写的StringTable

AssetTable::当前本地场景控制读写的AssetTable

使用方法

以文本本地化为例子,修改一个开始按钮的文本

当打开TrackChanges选项时,先选择active locale为Chinese,并且选择好对应的StringTable

之后对文本进行修改,填入文本"开始"

可以看到Text处的框变成绿色的

 

并且在Text下方自动生成了一个GameObjectLocalizer的组件,组件上的跟踪的TableEntry也自动生成,并且在Chinese下将对应文字填充好

 

之后将ActiveLocale修改成English

 

可以看到Text内的内容自动产生改变,变成一个表示没有对应翻译的提示

 

删除文本框内的提示,填入该文本的英文翻译"Start",可以看到TableEntry内English对应的翻译由<empty>变成了我们修改的Start

 

运行验证

运行之后可以看到界面的右上角出现一个选择当前运行时的语言的菜单栏

当前的语言为Chinese,开始按钮上的文字也是之前Active Local为Chinese时编辑的"开始"

 

点击右上角的语言选择的菜单栏,将语言改为English,可以看到开始按钮上的文字自动变成"Start"

文本变化事件

在本地化组件修改本地语言的时候,会触发对应UpdateString事件,如果需要监听该事件的话,可以在Localize String Event组件下的Update String添加对应的事件监听

 

也可以通过代码的方式,通过LocalizedString的StringChanged事件对该事件进行监听

public class LocalizedStringWithEvents : MonoBehaviour
{public LocalizedString myString;string localizedText;/// <summary>/// Register a ChangeHandler. This is called whenever the string needs to be updated./// </summary>void OnEnable(){myString.StringChanged += UpdateString;}void OnDisable(){myString.StringChanged -= UpdateString;}void UpdateString(string s){localizedText = s;}void OnGUI(){EditorGUILayout.LabelField(localizedText);}
}

导入/导出Table

在Localization Tables界面的EditTable Collection页签下,选择需要进行导入/导出的Table

 

之后点击右上的三个小点,可以选择Export/Import文件

 

一般编辑流程是,先确定好Table里需要进行本地化Table Entry,并且完成对应关系的绑定。之后导出csv文件,用Excel打开之后可以看到对应的Key,以及默认生成的ID。之后可以将其交由进行本地化翻译工作的同事,不要修改Key和ID,仅填入本地化的文本。之后再将修改后的CSV导入到工程

 

http://www.xdnf.cn/news/11279.html

相关文章:

  • 【easyui】之DataGrid数据显示
  • Java基础知识总结(超详细整理),你会的还只有初级工程师的技术吗
  • 基于CMOS技术,CMOS工艺等,CMOS到底是个啥?
  • Intel IPP图像库手册函数概述
  • 【Qt】界面定制艺术:光标(cursor)、字体(font)、提示(toolTip)、焦点(focusPolicy)与样式表(styleSheet)的深度探索
  • MCU最强科普总结~
  • RecyclerView完全解读
  • 100个linux系统的常用命令【建议收藏】
  • Java学习之JavaWeb篇
  • 利用python进行数据分析——使用groupby机制对pandas对象类的数据进行聚合与分组操作
  • “权限”用英语该用哪个?
  • 学了那么久的java你还不明白HelloWorld的原理吗?速看!
  • 强!推荐一款自动化神器Autolt:不再重复工作
  • linux基础(超级详细小白入门篇)
  • 2024年最新source insight教程:常用设置、快捷键、附带source insight3,Golang面试知识点
  • fseek 、fwrite 、fread
  • 检测UDP端口是否畅通方法
  • IOU、GIOU、DIOU、CIOU的学习及代码实现
  • 灰度图的理解(主要在作图像的方面遇到了问题)
  • 如何选择美国高速VPS?实用选购指南
  • SPL - 写着简单跑得又快的数据库语言
  • 数据结构与算法入门
  • node.js详细安装教程
  • 常见中文乱码问题
  • DB2备份和还原数据库+代码详解
  • HTTP/HTTPS(超细精讲)
  • 彻底理解面向对象,看完这一篇就够了
  • 谈谈Parser --王垠
  • 拓扑排序(Topological Sorting)
  • Wireshark TS | Ping Google DNS 8.8.8.8 特殊结果解析