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/

相关推荐
逐·風6 小时前
unity关于自定义渲染、内存管理、性能调优、复杂物理模拟、并行计算以及插件开发
前端·unity·c#
_oP_i8 小时前
Unity Addressables 系统处理 WebGL 打包本地资源的一种高效方式
unity·游戏引擎·webgl
代码盗圣11 小时前
GODOT 4 不用scons编译cpp扩展的方法
游戏引擎·godot
Leoysq17 小时前
【UGUI】实现点击注册按钮跳转游戏场景
游戏·unity·游戏引擎·ugui
PandaQue19 小时前
《潜行者2切尔诺贝利之心》游戏引擎介绍
游戏引擎
_oP_i20 小时前
unity中 骨骼、纹理和材质关系
unity·游戏引擎·材质
Padid1 天前
Unity SRP学习笔记(二)
笔记·学习·unity·游戏引擎·图形渲染·着色器
Tp_jh1 天前
推荐一款非常好用的C/C++在线编译器
linux·c语言·c++·ide·单片机·unity·云原生
dangoxiba2 天前
[Unity Demo]从零开始制作空洞骑士Hollow Knight第十八集补充:制作空洞骑士独有的EventSystem和InputModule
游戏·unity·c#·游戏引擎·playmaker
无敌最俊朗@2 天前
unity3d————屏幕坐标,GUI坐标,世界坐标的基础注意点
开发语言·学习·unity·c#·游戏引擎