Upgrading from 1.X to 2.X

New Features

You can read from this blog post that the asset improved a lot from version 1.X to 2.X, from Edit Mode previews to new typewriters, effects architecture and much more.

The goal was to make the asset even more flexible and easy to use, powerful, but also to make it more future proof (eg. Unit Testing) with more frequent updates and much more. As such, after 3+ years of Text Animator 1.X, I almost completely rewrote the asset ƒor version 2.X and I’m super excited to see what you all will create with it!

You can achieve the same and even more things you could have with 1.X.

Updating

If your project never used Text Animator 1.X before, you’re good to go and you can simply install the latest version.

That said, if your project already uses 1.X and you’d like to upgrade to the 2.X instead, you need to perform a “clean install” (meaning that you need to delete the plugin’s folder first, and then import the new version’s one). Please perform a backup before doing so.

After it… there isn’t really a general solution for every project with a huge update like this. Below you can find a few common scenarios, but feel free to contact support at anytime and we’ll be happy to help you during the updating process.

Architecture

The main change in Text Animator 2.X is that effects and actions are now stored as Scriptable Objects. This means that you can reference them in multiple scripts/components of your games, independently from a Text Animator component, and have even more interactions between your projects and its texts (e.g. having an effect be applied whenever the player is near an objective).

APIs

I’ve tried to make the updating process as smooth as possible, so if you used some APIs that have now changed, you’ll see them marked as Obsolete and will be able to fix them in time. That said, if you created custom scripts (as custom effects, actions or typewriters), you’ll probably need to tweak things a bit manually, like classes references and methods.

Remember, Effects and Actions are now stored as Scriptable Objects, so your classes must be converted to them too:

Probable Errors:

  • “Febucci.UI.Core.TAnimBuilder.InitializeGlobalDatabase()” -> This method has been removed. You can safely remove it from your code, as it is not needed anymore.

  • “Febucci.UI.TextAnimatorPlayer” -> It has been renamed to “Febucci.UI.TypewriterByCharacter”. You can also use Febucci.UI.Core.TypewriterCore for the abstract one.

  • “Febucci.UI.TextAnimator” -> It has been renamed to “Febucci.UI.TextAnimator_TMP”. You can also use Febucci.UI.Core.TAnimCore for the abstract one.

Built-in Effects Values

Since effects are now ScriptableObjects, if you changed built-in values in 1.X you’ll need to re-assing them again in this new version (e.g. amplitude, speed etc.) in order to match your project’s previous results. If you didn’t change them however, you should be good to go and see the same results in 2.X. In case you’ve used “BuiltInScriptableObject” to store values instead, I’m working on an “updating script” that will match their values in 2.X. Please stay tuned!

Extras

If you’re encountering different scenarios, please contact us! We’ll be happy to help you out in the updating process, and also add them to this page for future reference.

Thank you and have fun!

Last updated