从 1.X 升级到 2.X

新功能

您可以从这篇博客文章中了解到该资源已改进 很多 从 1.X 版本到 2.X 版本,从编辑模式预览到新的打字机、效果架构等等更多内容。

目标是使该资源 更加 灵活 并且易于使用,功能强大,同时也使其更具面向未来的能力(例如单元测试),并能更频繁地更新以及更多内容。 因此,在 Text Animator 1.X 发展了 3 年多之后,我几乎为 2.X 版本完全重写了该资源,我非常期待看到大家用它创造出的内容!

更新

如果您的项目以前从未使用过 Text Animator 1.X,则可以直接安装最新版本。

也就是说,如果您的项目已经使用了 1.X 并且希望升级到 2.X,则需要执行“干净安装”(即先删除插件文件夹,然后导入新版本的文件夹)。请在此操作前进行备份。

完成这些之后……对于像这样的大更新,并没有适用于每个项目的通用解决方案。下面列出了一些常见场景,但如有需要,随时联系支持,我们很乐意在更新过程中为您提供帮助。

架构

Text Animator 2.X 的主要变化是效果和操作现在作为 ScriptableObject 存储。 这意味着您可以在游戏的多个脚本/组件中引用它们,独立于 Text Animator 组件,并在项目与文本之间实现更多交互(例如,当玩家靠近某个目标时应用某个效果)。

API

我已尽力使更新过程尽可能顺畅,因此如果您使用的一些 API 现在已更改,您会看到它们被标记为已过时并可以及时修复。也就是说,如果您创建了自定义脚本(作为自定义效果、操作或打字机),您可能需要手动调整一些内容,例如类引用和方法。

请记住,效果和操作现在作为 ScriptableObject 存储,因此您的类也必须转换为它们:

可能的错误:

  • “Febucci.UI.Core.TAnimBuilder.InitializeGlobalDatabase()” -> 此方法已被移除。您可以安全地从代码中删除它,因为不再需要。

  • “Febucci.UI.TextAnimatorPlayer” -> 已重命名为 “Febucci.UI.TypewriterByCharacter”。您也可以使用 Febucci.UI.Core.TypewriterCore 作为抽象类。

  • “Febucci.UI.TextAnimator” -> 已重命名为 “Febucci.UI.TextAnimator_TMP”。您也可以使用 Febucci.UI.Core.TAnimCore 作为抽象类。

内置效果值

由于效果现在为 ScriptableObjects,如果您在 1.X 中更改了内置值,则需要在此新版本中重新分配它们(例如振幅、速度等),以匹配您项目之前的效果。如果您没有更改,则应该可以直接在 2.X 中看到相同的结果。 如果您使用“BuiltInScriptableObject”来存储值,我正在开发一个“更新脚本”来在 2.X 中匹配这些值。敬请关注!

其他

如果您遇到不同的情况,请与我们联系!我们很乐意在更新过程中为您提供帮助,并将这些情况添加到此页面以供将来参考。

感谢您,祝您玩得愉快!

最后更新于