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

相关推荐
两水先木示3 小时前
【Unity3D】微信小游戏适配安全区域或胶囊控件(圆圈按钮)水平高度一致方案
unity·微信小游戏·安全区域·ui适配·胶囊控件·safearea
枯萎穿心攻击3 小时前
ECS由浅入深第三节:进阶?System 的行为与复杂交互模式
开发语言·unity·c#·游戏引擎
不绝1914 小时前
怪物机制分析(有限状态机、编辑器可视化、巡逻机制)
网络·游戏·unity·游戏引擎
unicrom_深圳市由你创科技5 小时前
Unity开发如何解决iOS闪退问题
unity·ios·蓝桥杯
Yasin Chen10 小时前
C# Dictionary源码分析
算法·unity·哈希算法
深海潜水员18 小时前
【Behavior Tree】-- 行为树AI逻辑实现- Unity 游戏引擎实现
游戏·unity·c#
Thomas_YXQ1 天前
Unity3D游戏内存优化指南
游戏·unity·职场和发展·性能优化·蓝桥杯·游戏引擎·unity3d
chillxiaohan1 天前
Unity接入Steamworks.NET实现通信功能
unity
枯萎穿心攻击2 天前
响应式编程入门教程第二节:构建 ObservableProperty<T> — 封装 ReactiveProperty 的高级用法
开发语言·unity·c#·游戏引擎
X_StarX2 天前
【Unity笔记02】订阅事件-自动开门
笔记·学习·unity·游戏引擎·游戏开发·大学生