[UGUI]UGUI使用图片文字(Custom Font)

原创 2015年07月09日 22:08:39
  1. 如果你需要为NGUI导出素材,建议从开头开始看,如果是为UGUI导出字体素材,可以直接跳到第7步。
  2. 先清理一遍Character。 方法: Edit>Clear all chars in font
  3. 在BMFont中逐个导入贴图(在此以数字0~9为例):Edit>Open Image Manager. 点击Image>Import Image。不能批量导入,也不能批量编辑,虽然是免费的,但这软件做的也太他妈傻逼了,但问题就在于还没有更好的替代品,也只能忍了
  4. 设置好ID,这里的ID就是ASCII码,例如0是48,1是49,以此类推。可以在BMFont的字符窗口看到ID,鼠标悬停的字符,右下角有一对数字,前者即ASCII码(后者是Unicode码)
  5. Options>Export Options里设置贴图大小(大小自己看着给,2的N次方尺寸,多试几次,用Options>Visualize来预览,不要浪费,更不要一张图装不下,生成了两张),Padding和Spacing设置为0(因此在做贴图的时候要留点空白边).
  6. 导出Font,会生成两个文件,一个fnt,一个图片,fnt可以为NGUI所用,这里就不多说了,UGUI中使用的Custom Font只能用到图片。
  7. BMFont的工作至此技术,下面的都是在Unity中的操作。其实不用BMFont也可以做这个工作,直接在Photoshop里按照固定的尺寸和网格把图片依次排列也可以达到这个效果,因为后面我们只需要一张PNG的图片。
  8. 把PNG图片导入Unity工程
  9. 创建材质球,使用Unlit>Transparent材质,关联上述贴图
  10. 创建Custom Font,将上述材质球关联到Default Material中。
  11. 先将Character Rects的size设置为1,然后设置第一个元素的参数
  12. Index为字符的Ascii码,例如0为48. 本例中还有个办法,可以设置Custom font的Ascii Start Offset为48,然后从0-9的Index依次设置成0-9,结果是完全一样的。
    Uv:整张贴图左下角为(0,0)点,右上为(1,1)点,因此如果是一个尺寸为256*256的图片,划分方式是4*4,那么第一个物体的Uv是这样的: X:0 Y:0.75 W:0.25 H:0.25 (Y是0.75因为是从下往上数,第一个字符的图片左下角的Y位于3/4处。宽度和高度是0.25,因为每个字符的宽和高都占据了整张图宽和高的1/4,其他Uv划分方法的图片类推,不多解释了)
    Vert是实际尺寸和偏移,X:0 Y:0 W:64 H:-64 偏移为0,像素宽是64,注意,高度是-64,至于为什么是负数,应该也是从左下角往右上角开始算起。(不得不说这个设置也很二,非要很别扭的填一个负数)
    Width是64(说实话不明白这里为什么又填写一次宽度)
  13. 第一个填写好以后,再把Character Rects的Size改成需要的字符数量,本例为10。这样新增的字符都会复制第一个字符的设置。只需要改动Index和Uv中的Y了。
  14. 设置好字体以后,创建一个Text,关联上一步的字体,还要设置Material为第9步创建的材质(这样才能正确显示字体效果)。之后就可以输入你创建的自定义字体了,当然,只能显示你创建了的字符,本例中是0~9。整个过程非常低效,期待有增强插件出现
版权声明:请尊重原创内容,转载请注明来源及链接。

unity uGui使用图片显示数字(CustomFont)记录备忘

因为自己在学习unity,最近需要用到图片数字,百度了一下,发现还真有些关于Ugui的,自己总结记录下,以防忘记. 现在我们有的假设是这样的图片 新建一个材质球,Shader设置我自己试了,很多...
  • ml4516730
  • ml4516730
  • 2016年04月12日 14:52
  • 2930

UGUI中使用位图艺术字(使用BMfont的两种方式)

第一种方式实现:   NGUI中有 动态字体, BMFont (从官网下载就是一个  .exe  文件! http://www.angelcode.com/products/bmfont/  ) BM...
  • u010019717
  • u010019717
  • 2016年08月18日 09:32
  • 5756

【Unity3D ugui】使用艺术字

目录(?)[-]为什么要写这篇艺术字制作流程最终效果需要注意的问题为什么要写这篇其实很早之前就有大神研究出来如何在ugui中使用艺术字,这里奉上文档。之所以再来重复一遍,是因为今天遇到一个问题:在手机...
  • Kaitiren
  • Kaitiren
  • 2015年08月04日 19:52
  • 13948

UGUI艺术字制作

艺术字制作流程1、下载BMFont官网 2、首先你还得有美术制作的艺术字,或者自己做几个艺术字。好吧,全部奉上 3、使用BMFont制作艺术字图集 4、将生成的.fnt文件和图集.png文件导入到项目...
  • u013120715
  • u013120715
  • 2017年02月23日 09:36
  • 176

【Unity】UGUI 如何使用CustomFont(自定义字体)

说在前面 这是我的第一篇博客, 之后慢慢试水搬一些自己曾用到的博客,还有一些自己尝试出来的东西。我深知自己还远远不够,若是有人看到了我的博客,请给我提意见吧~ 若是转载 ,请注明出处喵喵丸的Bl...
  • u011643833
  • u011643833
  • 2015年06月16日 16:38
  • 17385

UGUI运用美术字体

在游戏的制作中,美术字的运用是美化游戏的常用手段。比如普攻,暴击打出的战斗飘字就常常利用不同的美术字来做出区别。那么在Unity中如何把美术字运用起来呢?且看下文: 1、道具准备。 BMFont:位...
  • akak2010110
  • akak2010110
  • 2016年02月27日 14:52
  • 3483

Unity的UGUI中使用CustomFont(BMFont)

Unity的UGUI的文字渲染效率应该是挺高的,一般来说用默认的Text控件,TTF的Font就满足需求了。不过有时候需要渲染艺术字体的时候还是需要用到BMFont。 一、BMFont的基础使用,创...
  • langresser
  • langresser
  • 2015年11月21日 14:07
  • 6447

UGUI运用美术字体

转自博主:很强大: http://blog.csdn.net/akak2010110/article/details/50755270 UGUI运用美术字体 在游戏的制作中,美术字的运用是...
  • sgnyyy
  • sgnyyy
  • 2017年04月05日 17:55
  • 146

用BMFont做UGUI美术字体

项目中经常会用到数字图片来显示玩家战力、战斗中的伤害数等,可以借助BMFont来制作一种字体,步骤如下: 1,先位图字体制作工具在电脑上安装好BMFont软件(位图字体制作工具),安装好之后打开如下:...
  • u013086341
  • u013086341
  • 2016年08月05日 10:59
  • 1489

UGUI 使用BMFont

UGUI 使用BMFont首先要知道 Custom Font 的原理,不知道的同学可以先看这篇[Custom Font 原理](http://blog.csdn.net/liqiangeastsun/...
  • LIQIANGEASTSUN
  • LIQIANGEASTSUN
  • 2015年06月28日 16:46
  • 3073
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[UGUI]UGUI使用图片文字(Custom Font)
举报原因:
原因补充:

(最多只允许输入30个字)