Gameframework(Localization初探篇)

本文深入解析游戏框架Gameframework的语言本地化模块,阐述其如何通过解析不同格式的配置文件(如XML)实现游戏的多语言支持,并探讨本地化配置文件解析步骤的合理性与资源热更新的关系。

前言

此模块是用于语言本地化,可以让开发出的游戏走向国际化,接下就来看看Gameframework是如何实现语言切换的。

1.本地化原理

首先看一下作者提供的Star Force工程里,可以看到有两个地方出现了解析本地化配置文件,在游戏最先启动流程里(ProcedureLaunch)还有一个是游戏预制体加载流程里(ProcedurePreload),如图所示:

函数目的都是解析xml文件然后按照键值对的形式添加到Dictionary<string,string>,它会调用LocalizationComponent组件下ParseDictionary或者LoadDictionary去解析文件,LocalizationComponent下有默认本地文件解析助手,默认提供的解析文件助手支持的格式是回车表示分组,Table按键表示Key和Value分开,具体的判断标识如下:

private static readonly string[] RowSplitSeparator = new string[] { "\r\n", "\r", "\n" };
private static readonly string[] ColumnSplitSeparator = new string[] { "\t" };


//资源格式
key1 value1
key2 value2
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值