Unity TMP 使用教程

文章目录

  • [1 导入资源包](#1 导入资源包)
  • [2 字体制作](#2 字体制作)
  • [3 表情包制作](#3 表情包制作)
  • [4 TMP 控件](#4 TMP 控件)
    • [4.1 属性](#4.1 属性)
    • [4.2 富文本标签](#4.2 富文本标签)

1 导入资源包

"Window -> TextMeshPro -> Import TMP Essential Resources",导入完成后会创建一个名为"TextMehs Pro"的文件夹,这里面包含所需要的资源。

如果想要看一些使用案例,也可以使用 "Window -> TextMeshPro -> Import TMP Examples & Extras" 导入实例场景。

2 字体制作

这里有制作好的3500字和7000字的Unity Package,可以直接导入Unity使用,也有字符源文件,自己按以下操作制作
https://github.com/wy-luke/Unity-TextMeshPro-Chinese-Characters-Set

  1. Window -> TextMeshPro -> Font Asset Creator
属性名称 描述
Source Font File 拖入需要使用的字体
Sampling Point Size 设置用于生成字体纹理的字体大小(以磅为单位)
Padding 字间距,填充越大,过渡越平滑,从而允许更高质量的渲染和更大的效果,如粗轮廓
Packing Method 指定如何使字符适合字体纹理。
Atlas Resolution 设置字体纹理的大小宽度和高度,以像素为单位
Character Set 选择预定义的字符集
Render Mode 指定输出字体图集时要使用的渲染模式
Get Kerning Pairs 启用此选项可从字体复制字距调整数据

Source Font File:可在 C:\Windows\Fonts 找到电脑已安装字体文件

图集分辨率(Atlas Resolution):

字体纹理的宽度和高度(以像素为单位)。

如果仅包含 ASCII 字符,则分辨率对于大多数字体都很好。具有更多字符的字体可能需要更大的分辨率或多个图集。

对于 SDF 字体,分辨率越高,生成的渐变越精细,因此文本质量越高。

Character Set:选择预定义的字符集。

  • ASCII:包括 ASCII 字符集中的可见字符。
  • Extended ASCII:包括扩展 ASCII 字符集中的可见字符。
  • ASCII Lowercase:仅包含 ASCII 字符集中可见的小写字符。
  • ASCII Uppercase:仅包含 ASCII 字符集中可见的大写字符
  • Numbers+Sysbols:仅包括来自 ASCII 字符集的可见数字和符号。
  • Custom Range:输入一系列十进制值或值范围,以指定要包括的字符。
  • Unicode Range(Hex):输入一系列 unicode 十六进制值或值范围,以指定要包含的字符。
  • Custom Characters:输入字符序列以指定要包含的字符。
  • Characters from File:指定的文本资源
  1. 点击GenerateFontAtlas
  2. 生成后,点击Save保存

3 表情包制作

在TMP中,通过富文本标签我们可以轻松的使用表情包。制作表情包首先要有一张图片,将其Texture Type设置为Sprite(2D and UI),Sprite Mode设置为Multiple。

选中图片,右键 Create -> TextMeshPro -> Sprite Asset

然后将创建好的文件放入 TextMesh Pro -> Resources -> Sprite Assets 文件夹下。
修改TextMesh Pro/Resources/TMP Settings 的设置

调用Sprite图片有两种方式,分别是通过索引或名称

<sprite=9> //默认图集+索引

//默认图集+图名

<sprite="MySprites" index=9> //指定图集+索引

<sprite="MySprites" name="happy"> //指定图集+图名

4 TMP 控件

4.1 属性

  • Font Style:
属性 含义
B 粗体,黑体
I 斜体
U 添加下划线
S 添加删除线
ab 小写
AB 大写
SC 字体全部大写,但是本身是大写的字体会更大点

4.2 富文本标签

http://digitalnativestudios.com/textmeshpro/docs/rich-text/

相关推荐
异次元的归来3 小时前
Unity DOTS中的share component
unity·游戏引擎
向宇it6 小时前
【从零开始入门unity游戏开发之——C#篇25】C#面向对象动态多态——virtual、override 和 base 关键字、抽象类和抽象方法
java·开发语言·unity·c#·游戏引擎
_oP_i7 小时前
unity webgl部署到iis报错
unity
Go_Accepted7 小时前
Unity全局雾效
unity
向宇it7 小时前
【从零开始入门unity游戏开发之——C#篇24】C#面向对象继承——万物之父(object)、装箱和拆箱、sealed 密封类
java·开发语言·unity·c#·游戏引擎
每日出拳老爷子10 小时前
【图形渲染】【Unity Shader】【Nvidia CG】有用的参考资料链接
unity·游戏引擎·图形渲染
北海651611 小时前
Dots 常用操作
unity
YY-nb18 小时前
Unity Apple Vision Pro 开发教程:物体识别跟踪
unity·游戏引擎·apple vision pro
Cool-浩18 小时前
Unity 开发Apple Vision Pro物体识别追踪ObjectTracking
unity·ar·apple vision pro·mr·物体识别·vision pro教程·objecttracking
向宇it1 天前
【从零开始入门unity游戏开发之——C#篇23】C#面向对象继承——`as`类型转化和`is`类型检查、向上转型和向下转型、里氏替换原则(LSP)
java·开发语言·unity·c#·游戏引擎·里氏替换原则