【Unity】解决TextFx插件导入Bitmap字体后分辨率太低的问题

文章目录

      • 效果
      • 解决方法
      • 背景知识
        • 1.TextFx插件
        • 2.Bitmap字体
        • 3.Unity Font

效果

修改前 修改后
【Unity】解决TextFx插件导入Bitmap字体后分辨率太低的问题_第1张图片 【Unity】解决TextFx插件导入Bitmap字体后分辨率太低的问题_第2张图片

解决方法

修改对应字体的导入选项中的Font Size,默认为16,改的越大,显示的字体越清晰。

【Unity】解决TextFx插件导入Bitmap字体后分辨率太低的问题_第3张图片

还有一些方法是不管用的:

  • 修改unity导入图片的max size、compression
  • 修改BMFont 导出设置中的字体大小

背景知识

【Unity】将文字特效Text Fx插件应用到自己的项目中

1.TextFx插件

自带多种文字特效,包含单字和段落。有一个统一的文字动画编辑面板,可以自定义文字动画。比如博主呢,就看中了文字下落的特效,原本是垂直下落的,但是我改成了倒三角形下落。

【Unity】解决TextFx插件导入Bitmap字体后分辨率太低的问题_第4张图片
可以在这里下载。不过现在被多次下载后积分自动变高了,大家也可以找找别的资源。

2.Bitmap字体

点阵字体是屏幕字体,用于显示时速度较快。这种字体是由点阵描述的,所以与分辨率有关,在放大或缩小时,有可能出现锯齿。点阵字体在打印时不光滑,质量不好,一般不用于输出。

与点阵字体相对的是矢量字体(Vector font)。这种字体中每一个字形是通过数学曲线来描述的,它包含了字形边界上的关键点,连线的导数信息等,字体的渲染引擎通过读取这些数学矢量,然后进行一定的数学运算来进行渲染。这类字体的优点是字体实际尺寸可以任意缩放而不变形、变色。矢量字体主要包括 Type1 、 TrueType、OpenType等几类。

BMFont这个工具就是用于把矢量字体转换为点阵字体的。

3.Unity Font

要将字体添加到项目中,需要将字体文件放置在Assets文件夹中。然后,Unity将自动导入它。支持的字体格式为TrueType字体(.ttf文件)和OpenType字体(.otf文件)。

【Unity】解决TextFx插件导入Bitmap字体后分辨率太低的问题_第5张图片
更改字体大小,需要在Font的“ Import Settings”的设置。

【Unity】解决TextFx插件导入Bitmap字体后分辨率太低的问题_第6张图片
导入字体后,可以在“Project View”中展开字体,可以看到它已自动生成了一些assets。导入期间会创建两个asset:“Font Material”和“Font Texture”。

在这里插入图片描述

Font Material Font Texture
【Unity】解决TextFx插件导入Bitmap字体后分辨率太低的问题_第7张图片 【Unity】解决TextFx插件导入Bitmap字体后分辨率太低的问题_第8张图片在这里插入图片描述

与您可能熟悉的许多应用程序不同,Unity中的字体会转换为Texture,并且您显示的字形会使用纹理渲染四边形。有效地调整字体大小会更改多少像素用于此生成纹理中的每个字形。 Text Mesh素材资源是具有这些自动生成的字体纹理的3d几何结构。您将需要改变字体的大小,以使这些素材看起来清晰。

TextFx生成的文字网格:

【Unity】解决TextFx插件导入Bitmap字体后分辨率太低的问题_第9张图片

你可能感兴趣的:(游戏引擎)