IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

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

    u010019717发表于 2016-08-18 09:32:02
    love 0

    孙广东  2016.8.12


     

    第一种方式实现:

       NGUI中有 动态字体, BMFont (从官网下载就是一个  .exe  文件! http://www.angelcode.com/products/bmfont/  )

     

    BMFont      Edit -> Open Image Manager 然后选择,  注意ID  每个图片的ID。

     

    Options ->  Export Options 

     

     

    导出生成:

     

     

     

    下面的Unity编辑器工具,  代码是从 NGUI中抽出来的。!!!!

    BMFont生成图集和 fnt文件(选择【Text】格式的 fnt 文件)

     

     

    导出 文件有两个,  图集文件  和  .txt 的文本文件。

     

    将这两个文件导入到Unity中!。

    然后新建材质Material (shader改为 GUI/ TextShader,   贴图赋值 刚刚导入的 图集文件 )      和 Custom Font (材质赋值刚刚创建的材质)

     

    最后一步设置关联有两种,  第一种方式:   新建一个空对象 -》添加 MyFont.cs脚本, Inspector上赋值。然后运行。OK

     

    第二种,  编辑菜单 Tool -》  FontMaker ( 赋值, 然后点击生成字体按钮, OK)

     

     

    第二种方式实现:

     

    和之前的  导出类似:   Options  -> Export Options 

     

     

     

     

     

     

    // 这里说一下,   在Unity中的另一种操作方式

     

    BitmapFontGenerator使用!

    1. BMFont 生成图集和 fnt文件(选择【XML】格式的 fnt 文件)
    2. 将 BitmapFontGenerator.cs 添加到  Editor 文件夹下。
    3. 选中导入Unity中的  Fnt 文件 和 图集文件 。
    1. 右键单击并   Create  → BitmapFont。
    2. 在这个当前文件夹下会产生      Material文件和   字体文件。

    使用字体文件

         把刚刚制作的字体赋值给  Text组件的  Font上。 就会看到这个字体的内容。

     

     

    (4) 位图字体调整大小与字号

    将脚本附加到Text组件的游戏物体上。

           Add Component-> Bitmap Font Scaling

    文本内容相同但是大小不同了!

     

            第一行的  FontSize:40,  第二行 的 FontSize:25,  通过改变FontSize 大小其实更改的事   Transform 的  Scale 值!

     

    富文本  的支持(这个没有什么,  之前是彩色的那么这个用不到啊, 而且加粗不好使!)

     












沪ICP备19023445号-2号
友情链接