编写自定义效果(C#)

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

circle-info

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

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

参数类/结构体

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

状态 结构体

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

可脚本化封装

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

circle-check

编写你的自定义脚本

circle-info

在本示例中,我们制作了一个使字符按可变量上升的效果。

首先,确保导入必要的命名空间(你的 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 文件夹中。

circle-info

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

circle-check

circle-check
circle-exclamation

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


circle-info

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