1.DissolveEffectForTMPro 为Unity中的TextMeshPro提供了溶解效果组件。
产品特点
- 溶解颜色,宽度和柔软度。
- 效果区域:RectTransform,适合,按字符拆分。
- 支持
<font>
和<sprite>
标签。 - 您可以从脚本,AnimationClip和检查器控制效果属性。
- 不仅适用于标准图形组件(图像,RawImage,文本等),而且也适用于TextMeshPro和TextMeshProUGUI。
- 没有无用的分配。
- 易于设置。
使用方法:
导入:
- 从Releases下载MeshEffectForTextMeshPro.unitypackage 。
- 将包导入到您的Unity项目中。选择
Import Package > Custom Package
从Assets
菜单
使用:
- 启用
TexCoord1
和TexCoord2
画布通道。 - 从
Add Component
检查器或Component > DissolveEffectForTMPro > UIDissolve
菜单中将UIDissolve组件添加到TextMeshPro 。 - 将可溶解的材质预设设置为TextMeshPro组件。按下“修复”按钮以生成或设置可溶解物料预设。
- (可选)将可溶解的精灵资源设置为TextMeshPro组件。按下“修复”按钮以生成或设置可分解的精灵资产。
- q在检查器中根据需要调整效果的参数。
添加后界面如下:
主要参数:
- Effect Factor : 溶解效果的进度 0-1
- Widh:溶解效果的深度越低溶解效果越明显
- Softness:平滑度
- Color:溶解的颜色
- Effect Area :溶解的区域(可以选择区域、适合的、按字符溶解)
MeshEffectForTextMeshPro插件可以用来做游戏开场或其他地方的文字溶解效果
主要溶解效果取决于 Shader 的图片的效果,而且如果字体中有图片的话,还可以单独设置图片的溶解方式
具体效果如下:
2.RubyTextMeshPro 给现有字体头上添加 标签 的插件
具体使用很简单,导入插件后,对目标字体添加标签<ruby=***> 如图:
使用:在添加TextMeshPro 时,选择Text-RubyTextMeshPro 如下:
该组件继承了TextMeshPro,所以不影响使用原有组件的功能还增加了,添加标签的功能。
主要参数:
在组件下发有一个 Ruby Param 是专门设置标签的
Ruby Scale :标签的大小(建议小于1)
Ruby Vertical Offer : 垂直方向的偏移量
All V Comentsation Ruby Line Hight : 行高补偿,需要勾选才能设置
3.ShinyEffectForTMPro: ShinyEffectForTMPro在Unity中为TextMeshPro提供闪亮效果组件。
产品特点
- 旋转,宽度,柔软度,亮度和光泽的光泽效果。
- 效果区域:RectTransform,适合,按字符拆分。
- 支持
<font>
和<sprite>
标签。 - 您可以从脚本,AnimationClip和检查器控制效果属性。
- 不仅适用于标准图形组件(图像,RawImage,文本等),而且也适用于TextMeshPro和TextMeshProUGUI。
- 没有无用的分配。
- 易于设置。
用法:
- 从Releases下载ShinyEffectForTMPro.unitypackage 。
- 将包导入到您的Unity项目中。
Import Package > Custom Package
从Assets
菜单中单击。 - 启用
TexCoord1
和TexCoord2
画布通道。 - 从
Add Component
检查器或Component > MeshEffectForTMPro > UIShiny
菜单中将UIShiny组件添加到TextMeshPro 。 - 将闪亮的材质预设设置为TextMeshPro组件。按下“修复”按钮以生成或设置闪亮的材质预设。
- (可选)将闪亮的Sprite资产设置为TextMeshPro组件。按下“修复”按钮以生成或设置闪亮的精灵资源。
- 在检查器中根据需要调整效果的参数。
- 请享用!
这里使用的话 因为该组件的特效是基于UIEffect,所以,需要选择指定Sharder才能实现效果,
具体参数:
- Effect Factor:特效的进度
- Width:特效的宽度
- Rotation:旋转角度
- Softness:平滑度
- Brightness:亮度
- Closee:光泽度.
- 下面这些就是是否自动播放,播放时间,是否循环,循环间隔
具体效果:
4. TextMeshProAnimator 您可以在TextMesh Pro中为文本设置动画。
使用方法:
- 下载解压缩后,将Scripts文件夹放置在Assets文件夹内。
- 通过将TextMeshProGeometryAnimator附加到附加了TextMesh Pro的GameObject来使用。
具体参数:
- Progress :播放进度
- Play On Enable : 运行时启用
- Play By Progress : 是否通过进度进行控制 (勾选后不能自动播放,需代码控制)
- Is Loop :是否循环
- Animation Data :动画类型 (位置,选择角度,缩放,Alpha 、颜色)
- Use :要使用的标志。
您可以通过在不使用时将其设置为False来减轻处理负担。 - Delay:延迟动画的开始时间。
- Ware:延迟每个文本的开始时间。
- Time : 设置动画结束的时间。
- Curve:From-设置To参数的影响程度。
水平轴是动画时间(0.0到1.0),
垂直轴是影响程度。
效果:
1.缩放
2.位置
官方效果图:
5.打字机效果-基于DoTween
产品特点
- 支持富文本
- 可跳过
- 可以暂停和继续
- OnComplete回调
- 与CharTweener兼容
作者基于DoTween 封装好的一个打字机的效果的脚本
public void Play( string text, float speed, Action onComplete )
{
m_textUI.text = text;
m_onComplete = onComplete;
m_textUI.ForceMeshUpdate();
m_parsedText = m_textUI.GetParsedText();
var length = m_parsedText.Length;
var duration = 1 / speed * length;
OnUpdate( 0 );
if ( m_tween != null )
{
m_tween.Kill();
}
m_tween = DOTween
.To( value => OnUpdate( value ), 0, 1, duration )
.SetEase( Ease.Linear )
.OnComplete( () => OnComplete() )
;
}
使用很简单挂上这个脚本,调用此脚本的 Play()
if ( Input.GetKeyDown( KeyCode.Z ) )
{
m_typewriter.Play
(
text : "ABCDEFG HIJKLMN OPQRSTU",
speed : m_speed,
onComplete : () => Debug.Log( "完了" )
);
}
效果如下:
6. 文本超链接
具体使用:下载后导入工程里面,用link 标记,运行点击就可以了
作者也是封装
效果: