徐先生的成长

这是一个从青年到老年的故事

NGUI制作清晰中文字体的方法

从来未接触过Unity3D,也没弄过代码!因为公司新的项目要用到这个软件,做为创业公司的成员又需要什么都会。任何职位都能搞起一部分的事情,产品原型,UI设计,交互,策划,商务,运营..感觉除开实际去画图和写代码,啥都要弄!

现在公司换全新的引擎Unity3D,没人用过。都要自学,摸索!正好利用这次机会把一些学习上面的资料,加入到这个小天地。方便自己查阅和回顾!

磨刀不误砍柴工,有了好工具才能更有效率的做好工作!

所有软件我都会放上下载地址,这里给的下载地址为我的百度云,以后所有链接都为云地址!

https://pan.baidu.com/share/link?shareid=3872637998&uk=2685011111

软件工具:

1、Axure

2、Unity3D

3、visio

4、Photoshop

5、Office

今天就先从Unity3D说起吧!

安装+新建项目这些就不多说了,因为是破解版本自己安装都不太会,还是同事帮忙装的。在家里也搞了好半天!

这次的项目是2D卡牌手游的,游戏名字叫《弹江湖》不知道什么时候可以面世。第一次自己整个负责项目各个方面,希望能做到最好。

Unity3D中插件暂时用的是NGUI,这第一个页面就遇见了问题!字体,Unity3D对中文的兼容型太弱。没办法,开始google吧!

google果然是无所不能啊,就开始来制作超清晰的字体吧!

第一步:

准备工具:

1、bmfon

2、黑体-简,【STHeiti-Light.ttc】各种黑体集合

3、3500font,也就是3500常用中文字

4、notepad++

第二步:

打开bmfon-Options-Font settings


第二步:

选择你需要的使用的字体样式,我们这里选择的字体样式为【黑体-简】。该字体为ios原始样式,看起来会比较舒服。

页面设置


完成后点击OK,点击OK后会发现界面的最下面有提示


这是告诉我们,这个字体库的文字数量已选0总量10001.很显然10001个字体对于日常来说太过于庞大,所以我们需要自己来选择需要的文字。

第三步:

点击Edit-Select chars from file


然后选择开始下载好的常用字体文件【3500font】,选择文件后会发现有如下错误提示。


这是因为3500font这个文件的编码有问题,我们需要先将该文件的编码转换成UTF-8的格式。

我使用的是notepad++,设置如下


转换完成后保存。

再一次点击Edit-Select chars from file,你会看到界面下面的已选字符发现了变化。


这个时候还需要加入英文和字符,如图

选中英文和符号之后,下面的再次已选字符信息再次发生变化。

现在字体和字符都选中完成后,再就是输出文件了。

第四步:

输出文件之前,我们先设置输出的条件。

点击Options-Export options

设置页面如下


页面中红框里面的内容是根据需求来定义的

Width和Height是用来包所需字符的图片的大小,如果定义大了浪费资源,设置小了则会出现多张图片。原则上是所有的字符用一张图片来包裹。

Bit depth:像素的大小。选择32则会更清楚,但是也会更加占用手机的资源。

我们这里的设置是Width-1024,Height-2048,Bit depth-32。

其他的设置按上图中的设置来选择。

第五步:

输出文件,点击Options-Save bitmap font as-指定存放输出文件的路径


第六步:

软件会为其输出2个文件,我对开始输出文件的命名为font,所以它输出的2个文件分别是font.fnt和font_0.png。

现在为了方便NGUI更好的使用该输出文件,将font.fnt改为font.txt。

现在关闭bmfon

第七步:

打开Unity 3D,安装NGUI的插件。这个插件在3d.rar中NGUI2.6.3!

打开项目后,直接双击NGUI插件。


点击Import,后会出现加载信息。请耐心等待


加载完成后你会看见,Project下面的Assets下面多出一个NGUI的文件夹,这就表示安装成功了。


再选择Assets文件夹,为了更好的管理资源文件,我们用2级目录来管理。现在先在这个文件夹下面建立一个文件夹放入刚才输出的2个文件


如何创建文件夹呢?

Unity 3D中resource文件夹为系统默认的资源文件夹,自己创建文件夹的时候不要取这个名字。

先选中创建位置,然后点击Create或者点击鼠标右键


文件夹创建好了之后,再将刚才输出的2个文件直接拖入到这个文件之中。


第八步:

点击NGUI-Open the Font Maker


然后将刚才的2个文件分别拖到对应的设置页面中

Font Data对应font.txt文件

Texture对应font_0.png文件


填写名称为Font,这些命名都是根据不同的规则或习惯来定义的。没有过多要求!

再点击Create a Font without an Atlas。

点击按钮后这个页面不会关闭,在页面中的select这一栏会显示出对应的字体包,你可以主动关闭该设置页面。


同时在Project对应的文件夹中会出现1个字体包(方形的)和1个资源文件


这个时候NGUI中的字体包就已经制作完成了,现在来测试一下效果。

第九步:

创建NGUI的场景,来测试字体包的效果。

点击NGUI-Open the UI Wizard


向导页面点击Create Your UI


创建UI后,会在Hierarchy界面中出现UI Root(2D)的UI层级


现在选中Panel,在这个页面中创建一个Label进行测试。

点击NGUI-Open the Widget Wizard


打开控件向导后,将字体包Font拖到Font中;Template则选择Label;Color则随便选择,它影响字体显示的颜色。


完成后Add To会变成绿色


点击Add To,这时在Hierarchy中会出现一个Label的控件


然后选择上Label,对它的Inspector中的UILabel(Script)属性进行编辑,这里我输入的是中文+英文+符号+数字

第十步:

我们现在吧Scene中的坐标调整到X.Y轴的方位,点击右上角的坐标轴就可以调整方位。


但是当字体显示在Game中时,我们才发现字体还是不清楚。


难道是方法错误啦!!这真是晴天霹雳啊,不会所有的功夫白费了吧!

为了让字体更清楚,我们再次找到font_0.png这个文件并选中它。然后调整对它的Inspector属性进行调整。

原有设置


调整后


选中完成后则点击图片红框中的Apply,出现提示点击Yes

然后再看看Game中的字体显示。


最后就很清楚了!测试中发现如果是中文的。,没有显示出来!但是没关系,再把上面的方法重复一次。就能很快的把新的字体包给整出来!


圆满搞定,写一下记录。温故而知新,真是一点都没错啊!

不过下次再也不能搞到这么晚了,明天还得早起加班。

努力吧,少年!

评论

热度(4)