LZ今年六月刚刚毕业,在学校跟着老师做Android,OpenGL ES方面的项目(说白了就是干苦力╮(╯_╰)╭)。年后来SZ了,就业前景好像并没有电视上渲染的那样糟糕,至少IT行业是这样吧,只要你在大学做过些东西,有些基础,找到一份工作并不难。LZ本来是想找一家做Android游戏的公司,最好用我比较熟悉的Java,以及略微懂点儿的OpenGL ES技术,可是现实完全不是我想的那样子,根本没有这样的公司(掀桌(╯‵□′)╯︵┻━┻)!!!要么是Android应用,要么是Cocos2d,再要么就是Unity3D了。不说过程了,反正最后LZ到了一家创业公司用Unity做游戏。。。尼玛啊,LZ以前搞Android的,完全不会c#啊!!!好吧,其实两者差别也不大。。。额,经过一个多月LZ一个人漫长的学习(没错,就是一个人),期间各种痛苦,遇到问题连个问的人都木有,算是入了点门吧,就在LZ沾沾自喜的时候,Boss又发话了,研究下做UI的插件吧,下一步我们要做有些的UI。于是LZ屁颠屁颠跑去各种论坛Q群取经,看看大神们都用的是什么做UI。。经过几天的调研,最后决定了使用NGUI。一是性能比较好,口碑也好;二是简单,作者都说了遵循KISS原则,连傻子都会用。就这样,LZ就开始学习NGUI的艰辛历程,可能LZ比较笨,作者说小学生都能两天上手的东西LZ用了好几个周才摸着点儿门道。然后就是在实践中摸索着前进咯。废话说多了,下面转入正题。。。

  NGUI一开始是不支持动态字体的,尽管Unity从4.0开始就已经支持了,可是NGUI依旧宁死不屈,就不支持,可能是老外觉得自己做个不就好了嘛,就26个字母加上标点,多大点儿事儿╮(╯_╰)╭。可是生活在天朝的程序猿就苦咯,自己做图集?可以!常用的3000+字,稍微偏一点儿的字就打不出来不说,效果还不好,总感觉那些字怪怪的,放大一点就糊了。反正各种不爽。。。后来,有个大神自己写了个脚本,让NGUI也支持动态字体了,真是雪中送炭啊,看着清晰的字体,LZ对着屏幕就像饿了很多天的乞丐看见鸡腿一样。可是,在自己尝试着使用了一下,发现还是有些这样那样的Bug。不是很好用。再然后,盼星星盼月亮,tasharen大神终于放出了支持动态字体的官方版本!!!ps.其实我看了新加的几个脚本,跟之前非官方版本差别基本不大。谁知道这是什么情况。。

  拿到支持动态字体的NGUI,LZ迫不及待开始了尝试。首先,选一个好看的ttf字体扔到unity中,然后就等着吧,可得一会儿。。

                                            

  经过漫长的等待,字体终于导入到unity中,下面需要选择NGUI自带的Font Maker工具,在这里。。

                                                 

  打开后Type选择Dynamic,Font TTF讲导入的字体拖到此处。起一个霸气的名字,点击那个绿色的按钮就可以得到一个字体预制。

                                           

  下面创建一个Label试试。Font就是刚才得到的那个预制。

                                        

  点击Add进一个Panel中,假如你的Panel中本来就有一个背景什么的,你会发现你刚添加的字体被挡住了,而且任你点Depth点到手抽筋也没用。。

                                

  这个问题是因为在同一Panel不同图集造成的,这时候Depth是没用的。而你会发现NGUI的Example就不会出现这个问题,因为它的字体和精灵都在同一图集╮(╯_╰)╭。这个问题有些复杂以后再说好了。要解决这个问题,你需要调整Label的z轴,比背景前一点点就行。

                                

  你会发现其实动态字体还是非常好用的,一般情况下需要的字、符号里面都有,而且还很清晰,放大一些也不会糊,妈妈再也不用担心我的字体问题了!剩下的Input也一样,想输入什么就输入什么↖(^ω^)↗。

     

NGUI动态字体的使用的更多相关文章

  1. 制作NGUI动态字体

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

  2. NGUI 动态字体边缘模糊,毛边的问题解决办法

    NGUI支持生成动态字体,将ttf格式的字体文件拖入工程,用NGUIFontMaker制作即可,但是制作完之后会发现字体有毛边,边缘模糊. 这时选中你生成的字体预设,在该预设的UIFont脚本上更改P ...

  3. NGUI动态字体的创建(font maker)

    1,打开font maker 2,在font maker中创建选择动态字体 PS: 1,动态字体相对静态字体来说,动态字体比较消耗性能 2,静态字体是创建在图集中,这也是没那么消耗性能的原因

  4. NGUI 动态添加控件

    本文链接地址: Unity3D NGUI动态创建按钮 本例仅以熟悉NGUI组件功能为目的,想快捷简便的创建按钮或其它游戏物体请参考 “Unity3D 动态实例化Prefab” 以动态创建服务器列表为例 ...

  5. NGUI制作字体的三种方法

    主要参考两篇博文: (1).NGUI制作字体的三种方法 (2).使用位图字体工具BMFont从图片生成自定义字体 1.BMFont下载地址 http://www.angelcode.com/produ ...

  6. Unity动态字体在手机上出现字体丢失问题解决

    在我们游戏的开发过程中,在部分手机上运行游戏的时候,出现了字体丢失的问题,出问题的手机似乎用的都是高通芯片. 使用的unity是4.2.0版本,ngui是3.4.9版本. 在unity的论坛及unit ...

  7. 利用BMFont和NGUI制作字体集

    Unity中常常需要制作字体,也算是Unity的基本优势吧!其实质就是BMFont和NGUI制作字体.这里把步骤介绍一下: 1.先下载BMFont这个工具 2.Font Settings  设置:(1 ...

  8. 用原生CSS编写动态字体

    HTML部分: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <t ...

  9. NGUI的字体加粗效果

    ngui的UILabel可以通过属性面板(inspector)设置字体的样式:加粗 倾斜 正常等. 但是如果通过这里设置了加粗,与实际的加粗不一样,ngui有一个拉伸宽度的变化. 这让人觉得很丑 .如 ...

随机推荐

  1. Image组件

    /* Image* 用于显示图片的组件,包括网络图片,静态资源 * 常用性能: * resizeMode 图片适应模式 cover , contain , stretch * source 图片的引用 ...

  2. Not all processes could be identified, non-owned process info will not be shown, you would have to be root to see it all.

    分析:还是权限问题,所以给他加上权限就可以了!! 解决:chmod +s /bin/netstat

  3. 极限编程(xp),iso国际标准化组织

    极限编程(xp):eXtreme Programming 极限编程-XP 四个价值:沟通 communication.简化 similicity.反馈 feedback.勇气 courage http ...

  4. js、php 判断用户终端 、浏览器类型

    js 判断 用户使用终端 function isMobeil() { if ((navigator.userAgent.match(/(phone|pad|pod|iPhone|iPod|ios|iP ...

  5. rest-assured的对象映射(序列化和反序列化)

    rest-assured支持映射Java对象到Json和XML以及从Json和XML中映射到Java对象.Json映射需要在classpath 中有Jackson.Jackson 2或者是Gson,X ...

  6. 【算法笔记】B1027 打印沙漏

    1027 打印沙漏 (20 分) 本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个“*”,要求按下列格式打印 ***** *** * *** ***** 所谓“沙漏形状”,是指每行输出奇 ...

  7. 【mysql】count(*),count(1)与count(column)区别

    https://blog.csdn.net/lzm18064126848/article/details/50491956 count(*)对行的数目进行计算,包含NULL count(column) ...

  8. PIE SDK神经网络聚类

    1.算法功能简介 神经网络是模仿人脑神经系统的组成方式与思维过程而构成的信息处理系统,具有非线性.自学性.容错性.联想记忆和可以训练性等特点.在神经网络中,知识和信息的传递是由神经元的相互连接来实现的 ...

  9. TT 安装 之 LINUX

    # useradd ttadmin -- 创建用户 # groupadd ttadmin -- 创建用户组 # mkdir /etc/TimesTen -- 创建目录 # chgrp -R ttadm ...

  10. 关于箭头函数的this指向问题

    document.onclick = function(){ // 普通函数的this是在运行的时候才临时绑定的,也就是说,函数不运行,你绝对不可能知道this是谁 // 下面这个函数如果是自调用,t ...