在Neoaxis界面中显示中文

本文详细介绍了如何在Neoaxis界面中正确显示中文的方法。主要包括创建中文语言定义文件和中文字体定义文件两大部分,适用于游戏开发者及UI设计师。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在Neoaxis界面中显示中文

 

作者:死猫@indiegm

 

前言:

最近又有朋友问起在Neoaxis界面中显示中文的问题, 惭愧的是, 因为忙于手头的游戏, 已经有段时间没打开过Neoaxis了. 今天终于得闲, 重新打开熟悉的Resource Editor, 居然在这三伏天里有亲切的暖意 :)

先简单介绍一下Neoaxis界面中显示中文的流程. 对于Neoaxis来说, 在GUI中显示中文只需要两个条件: 1)需要中文语言定义; 2)需要中文字体定义. 让我们来看看怎么满足这两个条件.

一、 中文语言定义: Chinese.language

1.1 复制已有的俄语语言定义文件

让我们先打开Resource Editor, 在Data/Languages下找到Russian.language, 右键, Copy.

 

然后, Paste

 

 

现在Languages下有三个语言定义文件.

 

将Russian2.language改名为Chinese.language

 

通过复制已有的俄语语言定义文件, 可以节省我们从头创建一个语言定义文件的时间.

1.2 输入中文翻译

双击Chinese.language, 点选左边language/textTranslations/UISystem, 可以看到目前界面上的文字是翻译成俄文的.

 

让我们把它们根据英文翻成中文,

 

 

 

然后关闭并保存Chinese.language

 

1.3 让Neoaxis使用这个语言文件

在Windows资源管理器中, 找到Neoaxis安装目录下Game/Bin/Data/Definitions中的Engine.config配置文件.

 

 

用记事本打开,找到 language = English 这行

 

改为language = Chinese

 

二. 中文字体定义: Default_Chinese.fontDefinition

2.1 安装Bitmap font generator

安装BitmapFontGenerator。 ( 在SDK/Tools/FontTools/BitmapFontGenerator目录下)

 

 

安装完成后,打开bmfont.exe

 

 

2.2 字体设置

选择Font settings设置我们希望在Neoaxis中使用的字体

 

在这里我们选择微软雅黑。

 

字符编码,选择Unicode

 

你还可以在Font settings对话框里进行字体大小, 字体平滑程度等设置。如果你在Neoaxis中发现字体不如你预期的清晰,不妨先回到这里更改相应设置。

2.3 选择你需要的字符

关闭Font settings对话框。 我们可以看到该字体可用的字符有29066之多,显然大大超过我们的需要。

 

我们可以通过Edit - Select chars from file, 来从一个文本文件中选择实际需要的字符。

 

 

但在此之前,让我们先创建一个文本文件, 在这个文本文件中,输入之前我们翻译过的那些中文字符。

 

记得用UTF-8保存。

 

 

通过Edit - Select chars from file选择我们创建的这个文本文件后, 我们就在Bitmap font generator中选中了所有我们希望在界面中显示的中文字符。

但别忘了,界面中还会有不少英文字符,既然我们没有在文本文件中输入,就需要在这里加入这些字符。

在Bitmap font generator右侧的字符集中, 点击Latin + Latin Supplement,这将自动加入所有常用的英文字符。

 

2.4 输出并转换字体定义文件

选择好字符后,我们可以开始输出字体定义文件了。

先对输出选项进行简单设置。Option - Export Options:

 

 

将Texture的Width和Height改为512, 将Bit depth改为32,在File format里,确认Font descriptor是XML, 文件格式是png.

也就是说,我们将使用512x512的32位字体贴图。

开始输出字体定义文件。Options - Save bitmap font as... 

 

命名为Default_Chinese.fnt

 

 

输出后,生成两个文件。

Default_Chinese.fnt是一个XML格式的字体定义文件

Default_Chinese_00.png是字体贴图文件。

 

但由Bitmap font generator生成的Default_Chinese.fnt,Neoaxis没法直接使用, 需要通过SDK/Tools/FontTools下的BitmapFontGeneratorToNeoAxisConverter进行转换。

 

选择刚才生成的Default_Chinese.fnt,点Convert 开始转换。

 

将生成Default_Chinese.fontDefinition, 这才是我们需要的字体定义文件。 (如果在转换过程中报错,你需要将Default_Chinese.fnt用记事本打开后另存为UTF-8格式)

 

将Default_Chinese.fontDefinition和Default_Chinese_00.png拷贝到Game/Bin/Data/Fonts目录下

 

三、运行Neoaxis demo, 验证中文显示

有了语言定义和字体定义,我们就可以运行Neoaxis demo来验证中文显示是否正常了.

 

(完)

 

转自:http://www.indiegm.com/node/62

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值