Unity3D显示中文字体

步骤:
1.安装bmfont,然后打开bmfont,选择options菜单->Font settings,界面如下:

下载连接: http://pan.baidu.com/share/link?shareid=398767&uk=2938378817




2.选择“微软雅黑”(注意不是“@微软雅黑”,没有“@”符号,否则之后导出的字体是横向的),unicode编码,如下图:


ok,请看界面最下面一栏29180个字符!显然太多了。

3.我们来选择字符表(也就是你的游戏或软件将要用到或你估计会用到的中文字符)


这里我们导入选择为txt文本的文件(里面是你想要的一些文字)。
出错了:


这是因为文本编码问题,那我们在文本编辑器中选择另存为,然后选择utf-8编码,保存。然后再次select chars from file。
成功,看下边栏,2500个汉字。
如果我们还要使用到数字、英文、符号,请点击


4.好,共2692个字符了。准备导出,选择options->Export options,设置如下图:


5.然后起个名字保存,options->save bitmap font as...,我们得到fnt和png文件。
将.fnt文件改为.txt,其实它本来就是个文本,改成txt是为了NGUI方便使用,把这些文件拷贝到我们unity工程中的资源目录。

BM font无用了,下面在NGUI中使用Font Maker创建字体。


打开Font Maker,将字符文本txt和新生成的png图片拖进去,如图。


点击“Create a Font without an Atlas”则在右侧文件夹中生成了myfont.mat和myfont.prefab两个文件。
说明:如果没选择图集(即Atlas:None)则会新生成,会有额外的draw call。如果选择现有的则把font的图集加入到现有的中去。

我们来测试下字体,通过NGUI创建UI,创建widget(选则label吧),效果如图:

当我们运行的时候,有的童鞋会发现字体不清晰,这个问题我也弄了很久才弄好了,如果你觉得字体比较细,想加粗点,那么你可以在第二步的时候把Bold打钩,outline thickness的值增大为2  ++;我们在设置一下导入unity中的字体图片的属性  如图:

Unity3D显示中文字体_第1张图片

再来看看是不是清晰很多了。  呵......


转自:http://www.cnblogs.com/hejianchun/articles/3022732.html

你可能感兴趣的:(编码,unity,字体,unity3d)