编写自定义效果(C#)

除了使用 内置效果从检视器创建自定义效果, 你也可以通过 C# 轻松编写自定义效果.

附注:确保你已阅读 高级概念 页面!

效果有三部分关键组成(可以写在同一文件中)。

参数类/结构体

包含关于你将在效果中使用的数据/数值的信息(状态)

状态 结构体

主效果类。给定参数和字符,会随时间修改它。同时处理 修饰符

可脚本化包装器

将前面的元素统一在一起并允许你将内容保存到磁盘。几行代码让我们完成其余工作!

编写你的自定义脚本

在本例中,我们制作一个使字符按可变量向上移动的效果。

首先,确保导入必要的命名空间(无论如何你的 IDE 都会提醒你 <3)

using UnityEngine;

// 导入 Text Animator 的命名空间
using Febucci.TextAnimatorCore;
using Febucci.TextAnimatorCore.Text;
using Febucci.Parsing;
using Febucci.TextAnimatorForUnity.Effects;

参数

创建你将用来修改字符的数据(这也是你将在检视器中看到并编辑的内容)。

状态

效果的“核心”部分。根据参数和预先计算的 Text Animator 数据修改字母。

  • 该结构体必须继承自 IEffectState.

可脚本化对象包装器

创建将自定义效果挂接到 Text Animator 所需的逻辑,同时将其保存到 Assets 文件夹中。

还有另一种接受更多类型的 "ManagedEffectScriptable" 版本,以及 "Referenced" 效果实现,但我们将在未来版本中介绍!


祝你在应用效果时玩得开心!


关于创建“Referenced”效果的指南即将发布,我们仍在调整 UX/API 部分。