制作NGUI动态字体

Posted jhcelue

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了制作NGUI动态字体相关的知识,希望对你有一定的参考价值。

在ngui中有两种制做字体的方式。一种是bmfont等工具制作字体图集的方法,这样的方法呢是动态的。生成的图集有多个字就是多少个字,要多加一 个字要又一次用工具做一次,非常是麻烦。

而汉字有太多,我们不可能把全部的汉字都做个图集,那也太大了,不现实,所为了加字而字体图集是不可避免的。所幸的是 ngui后来又我们提供了一个更好的、动态的、直接使用*.ttf字体文件来制作ngui字体的方式。

以下我就真说怎么做了。

本教程測试通过的环境:Win7 + Unity 4.1.2f1 + NGUI 3.0.0g。

本教程主要分成两个部分:ngui动态字体预设的生成 和 ngui动态字体的使用。

具体步骤:<如果你已经打开好一个unityproject。并导入了ngui>

1、导入一个.ttf字体文件。

这个可文体系统中C:\Windows\Fonts文件夹下去找。能够是自己在网上下载的。这个主要看自己的喜好和项目的需求。这我使用是这我自己下载一个字体:邢世新硬笔行书简体 常规字体。

注:这里有两个问题,我要提一下:a、系统自带的自体导入要非常长的时间,而自己下的就非常快,不知道是什么原因?有知道请赐教。

b、这个.ttf文件最好不要取中文名字,不然导入时会报错的。

技术分享

2、创建一个材质,我这命名为DynamicFont_Mat。

并为这个材质选择名为"Unlit/TransparentColored (Packed)"的着色器。

注:着想着色器的选择,应该是有透明效果的就能够吧,自己多尝试就知道了。

3、在场景中新一个空对象,名随便名,我这叫DynamicFont1,并附上UIFont脚本。

设置:a、选中DynamicFont1对象。将UIFont组件的Font Type(字体类型)设为Dynamic(动态)。----这里请注意一下。假设不清楚哪个版本号的ngui支持动态字体的话。我想UIFont脚本有 “Font Type”设置,并且中有“Dynamic”选项的话,就应该是支持的了。并且假设不支持的话,仅仅要将UIFont这个脚本换成其他支持的版本号的 UIFont。我想就能够了,有兴趣大家可试试哦。

b、导入的ttf字体资源,拖入到UIFont组件的Font栏。---注:在这里就能够调整字体了。不用重做!

c、将上面第二步创建的DynamicFont_Mat材质。拖入到UIFont组件的Material栏。其他不用的确,默认的也行!

d、接下来,你还能够在UIFont组件中设置字体的大小和样式。

技术分享


4、将第三步中,创建并设置好的对象,拖到Project面板中,这样一个ngui动态字体预设就制作完毕了。

注:这一步完毕了,就能够删掉场景中的DynamicFont1对象了,由于它的使用完毕了,不须要了。

既然ngui动态字体预设制作好了,以下就看怎样来使用它吧。

5、首先在场景中,用ngui生成了一个主要的ui结构。这个我想大家都会不就细说了。

不会网上也有一大把具体教程。请自行搜索。

以下给出个截图。

技术分享

6、制作一个Label,并设置使用我们刚制作好的动态字体。

设置并生成Label后。写上几个字,看看。感觉真好,非常清晰的赶脚。

技术分享


技术分享

技术分享







以上是关于制作NGUI动态字体的主要内容,如果未能解决你的问题,请参考以下文章

关于Unity中的NGUI字体

NGUI动态字体的创建

请问ngui里的动态字体和静态字体是什么意思

Unity 3D 中NGUI插件设置中文label

NGUI_Label

NGUI -- UILabel