2.X

If you're updating from version 1.X, please be sure to read Upgrading from 1.X to 2.X


2.3.X

2.3.0 - Skip specific parts of the text

Main Changes

  • Added: new rich text tag to disable the typewriter in specific parts of the text, "<notype>" by default but can also be changed in the global settings

  • Added: option to wait for full appearance or disappearances at the very end

Other changes

  • Added: warning label in the typewriter inspector when the typewriter is disabled, but user is changing typewriter-dependent related settings

  • Improved: tooltips and custom typewriter drawer

  • Bugfix: variable represented twice in typewriter inspector

  • Bugfix: fixed missing links in the documentation

2.2.X

2.2.1

  • Bugfix: typewriter stopping earlier due to TMPro calculating overflow when there was none

  • Bugfix typo: TypewriterByCharacter, renamed field "avoidMultiplePunctuaction" to "avoidMultiplePunctuation" (the wrong one is now obsolete)

2.2.0 - Website & Docs Redesign

Main Changes

  • New website with prettier Text Animator landing pages, games showcase, support page and ready for new tools releases

  • New documentation for Text Animator, improved many pages (including their examples and organization), added new ones (e.g. "Best Practices") and enriched the FAQ page. The docs also include a search bar and light/dark mode switch.

  • Reworked Discord onboarding for new users and made the verification process easier (with extra info as well)

Other Changes

  • Bugfix: text rect not being updated for the first call if overflow was set to truncate

  • Bugfix: actions/events not being reset if typewriter restarted but with restart parameter set to false

  • Bugfix: styles were not case insensitive on the scriptable object declaration (but they worked correctly when set up on text)

  • Bugfix: typewriter not working correctly within pages overflow

  • Bugfix: disappearances not starting in case they were called as soon as a character was shown (instantly, same frame)

  • Bugfix: wrong sorting in an example scene, not working in Unity 6

  • Moved: API website from febucci.com/.../api, to api.febucci.com/...

API

  • Added: Parameter to TAnimCore.SetVisibilityChar and Word to disable animations when changing their visibility

  • Changed: "virtual" signature to StyleSheetScriptable.cs TryGetStyle method, to allow custom style implementations

2.1.X

2.1.1

Main Changes

  • Bugfix: appending the text and then resuming the typewriter required the user to increase maxVisibleCharacters first

  • Bugfix: TMPRo “br” tag was shifting effects tags

  • Improved: performance for characters data, which were never initialized

Other Changes

  • Bugfix: error in case the user wanted to parse a null text

  • Bugfix: settings not registering style change via inspector


2.1.0 - Styles

Main Changes

  • Added: Styles, which let you create different tags presets and apply them to your text easily.

  • Added: Ability to skip the typewriter while Disappearing

  • Added: Game Creator 2 Integration page in the docs

  • Added: Unity Localization Integration page in the docs

  • Bugfix: error setting the typewriter text when TMPro’s text was null

  • Bugfix: Closing TMPro “size” tag was not recognized

Other Changes

  • Bugfix: text appearing for one frame during edit mode preview when editing text

  • Improved: Custom Inspector for Text Animator Settings

API

  • Added: “SwapText” method to TAnimCore


2.0.X

2.0.2

Main Changes

  • Added: Random typewriter disappearing order

  • Bugfix: TMPro “link” tag not parsed correctly with an empty tag

  • Bugfix: TMPro “sprites” shifting other tags in text

  • Bugfix: Null error when instantiating a UI TMPText with no canvas assigned on the first frame

  • Bugfix: Index out of range from OnRectTransformDimensionsChange callback for some users

  • Bugfix: Assembly Definition Reference pointing the right package from Unity 2023.2 beta and onwards

  • API: Exposed “Typewriter By Word” variables

Other Changes

  • Improved: Custom Inspector Drawer for “Typewriter by Word”

  • Improved: AddComponentMenu to “Typewriter by Word”

  • Bugfix: Typewriter starting/stopping typing when pausing the opposite method

  • Bugfix: “Inverted” typewriter disappearance not firing correctly

  • Bugfix: Typewriter showing entire text if started externally before initialization (TAnim’s deltaTime 0)


2.0.1

Main Changes

  • Bugfix: Text now hides properly when TimeScale is set to 0 and the typewriter is still writing

  • Bugfix: Typewriter “avoidMultiplePuntuationWait” not working correctly

  • Bugfix: Typewriter now restarts where it left off correctly (if paused)

  • Bugfix: “Shake” Behavior’s “d” modifier not influencing animations

Other Changes

  • Bugfix: Custom Effects modules in the inspector didn’t allow to be enabled in TAnim’s component (but worked fine in the ScriptableObject view)

  • Bugfix: Typewriter Sound Package Updated to 2.X

  • API: Exposed TypewriterByCharacter’s options variables


2.0.0

Main Changes

  • Added: Edit Mode Preview, letting you play and edit effects without having to enter Play Mode

  • Added: Events now can have multiple parameters

  • Added: “Composite” Effect, letting you play multiple animations with one single tag

  • Added: Test Framework, both testing the Editor and Runtime plugin features

  • Added: Method to hide or show any letter in the text independently, allowing to show specific word after word etc.

  • Added: “Vertex” Custom Effect, allowing to to specify different animations for each single character’s vertex

  • Improved: Built-in Effects are now deterministic, returing the same result when restarted and allowing a future Timeline integration

  • Improved: Built-in Effects and Actions can now have different tags set by the user

  • Improved: TextAnimator’s base class, allowing to animate different Text Sources in the future (other than TextMeshPro)

  • Improved: Effects and Actions are now Scriptable Objects, allowing for more customization and integrations in your project

  • Improved: Effects and Actions are now stored inside each own Database, allowing you to share them between components

  • Improved: Text Parsing and Rich Text Tags recognition, allowing for custom ones in the future and compatible with external plugins

  • Improved: Made it easier to create custom Effects and Actions via code

  • Improved: Made it easier to create custom Effects through the inspector

  • Improved: TMPro’s ‘page’ tag is now supported!

Other Changes

  • Added: Option to set “Fallback Tags” as Costant in the inspector, applied in the entire text even if there are other tags

  • Added: Option to use the Default Setting’s Effects/Actions Databse, or to set a specific one per component

  • Improved: You can now move the Asset’s installation folder anywhere in your project, since TextAnimator will recognize its location and install new effects there

  • Improved: Assembly reload time

  • Improved: Simplified API and refactoring

  • Improved: UI and UX, notifying you if there are invalid tags in an Effects/Actions Databse, fixing errors for you and more

  • Improved: TextAnimator’s Dynamic Scaling (to have uniform effects between different sizes) is now enabled by default

  • Changed: Renamed “TextAnimatorPlayer” to “Typewriter”

  • Changed: “Preset” Effects (Behaviors etc.) are now renamed “Uniform” Custom Effects

  • Changed: Minimum Unity version to 2020.3.0f1, following Store’s guidelines for new packages

  • Bugfix: mesh not being updated for one frame when Rect Transform dimensions changed

  • Bugfix: Parsing effects was shifted of a few characters in some cases, if TMPro tags were written exactly before a TAnim one.

API

  • Obsolete: A few APIs have been marked as Obsolete, but they’re still backwards compatibile and include a comment on how to change them before the next updates.

  • Breaking: “TextAnimator.AssignSharedAppearancesData” method has been removed. Pleaase assign Databases from “TextAnimator.DatabaseAppearances”’s property instead.

  • Breaking: “TextAnimator.AssignSharedBehaviorsData” method has been removed. Pleaase assign Databases from “TextAnimator.DatabaseBehaviors”’s property instead.

  • Breaking: “TextAnimator.onEvent” Event has been removed. Please subscribe to messages from their related Typewriter instead, as they’ll get fired only if the text is proceeding thanks to them.

  • Breaking: “Febucci.UI.Core.TAnimBuilder.InitializeGlobalDatabase()” method has been removed. (you can safely remove that line, as it’s not necessary anymore.)

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

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

Might affect you if you have created a custom Typewriter or Actions:

  • Breaking: “TAnimPlayerBase.isWaitingForPlayerInput” property has been removed. Please refer to the “input” action istead and check if it is running.

  • Breaking: ‘TAnimPlayerBase.WaitInput” method has been removed. Please implement custom actions following the new guide.

  • Breaking: ‘TAnimPlayerBase.DoCustomAction” method has been removed. Please implement custom actions following the new guide.

  • Breaking: ‘TAnimPlayerBase.OnTypewriterCharDelay’ method has been removed.

  • Changed: Typewriter’s “GetWaitAppearanceTimeOf’ method has parameter from ‘char’ to ‘int’ (characterIndex)

  • Changed: Typewriter’s “GetWaitDisappearanceTimeOf’ method has parameter from ‘char’ to ‘int’ (characterIndex)

Last updated