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

相关推荐
__water3 小时前
RHK《模型贴图自由更换位置》
unity·贴图·模型贴图·移动不丢失
JIes__4 小时前
Unity(二)——3D数学
unity·游戏引擎
淡海水4 小时前
【节点】[RandomRange节点]原理解析与实际应用
unity·游戏引擎·shadergraph·图形·randomrange
weixin_4242946719 小时前
在Unity中,摄像机移动时出现“残影”或“闪烁”是常见问题,主要原因和处理方法。
unity·游戏引擎
孟无岐19 小时前
【Laya】Browser 使用说明
typescript·游戏引擎·游戏程序·laya
天人合一peng20 小时前
unity 3d 通过游戏对象的名子查到其对象
游戏·unity·游戏引擎
纯属个人爱好21 小时前
Unity2020+PicoNeo3Pro开发
unity·vr
__water1 天前
RHK《Unity接入DeepSeek问答》
unity·游戏引擎·智能问答·deepseek接入·deepseekapikey
康de哥1 天前
MCP Unity + Claude Code 配置关键步骤
unity·mcp·claude code
美团骑手阿豪1 天前
Unity3D大规模点击检测:GPU Picking vs MeshCollider + Raycast
unity