Unity中通过TMP使用图片字体

折腾了半天,最后发现一个相对简单,不需要使用任何插件,只凭默认的TMP外加PS的办法。

1,在Font Asset Creator设置参数

(1)source font file:尽量选一个支持中文的字体。

(2)sampling point size: 自定义字号,由于是图,需要输入自定义的字大小。并且,为了多留出空白位置,给未来增补的特殊字,直接ps到空白位置就行。

(3)padding:每个图片字之间的空白像素。多了会占位置,少了容易难以分清边界,甚至重叠。默认5,我们可以给到7

(4)atlas resolution:根据你需要,输入合适的大小。

(5)character Set:这里我选择了指定自定义文字文件。

(6)render mode:渲染模式,我选择了Smooth_Hinted

(7)Get Kerning pairs:不需要,保持不勾选即可。

之后生成字体。

2,导出字体的Atlas到png格式

右上角三个小点。然后导出。

3,设置这个导出的png

选中,选择2D and UI选项。确认。

4,找到这个导出的png,在 ps里做处理

如题。

在ps里做一下处理:

5,处理好之后,更改字体的shader

如题。

(1)在debug settings里面,把改好的png放进去。

(2)选择Shader为Bitmap custom atlas

6,测试一下文字,是否可用

Ok,图片字体替换完成。

7,添加额外字或者图

在atlas里,也是可以额外添加字,或者图的,比如输入鱼,显示一个鱼的图片。

那么,不采用ps替换的方式,可以采用输入文字的大小、在atlas里的位置,字符信息来实现。

例如油管视频这样:

https://youtu.be/w5yDGFHTRZ4

相关推荐
在路上看风景14 小时前
15. 纹理尺寸是4的倍数
unity
星依网络16 小时前
使用LabelImg工具标注数据(游戏辅助脚本开发)
python·游戏引擎·图形渲染·骨骼绑定
AT~17 小时前
unity 使用Socket和protobuf实现网络连接
unity·游戏引擎
feiduoge21 小时前
教程 36 - 方向光照
windows·游戏引擎·图形渲染
怣疯knight1 天前
Cocos creator判断节点是否能用的方法
unity·cocos2d
tealcwu1 天前
Google Play的Keystore不可用时的解决方法
unity
呼呼突突1 天前
Unity使用TouchSocket的RPC
unity·rpc·游戏引擎
qq_428639611 天前
虚幻基础:安装插件
游戏引擎·虚幻
qq 180809512 天前
从零构建一个多目标多传感器融合跟踪器
unity
平行云2 天前
实时云渲染支持在网页上运行UE5开发的3A大作Lyra项目
unity·云原生·ue5·webgl·虚拟现实·实时云渲染·像素流送