Date format is YYYY.MM.DD

I should not say this everytime, but:

Updating Guide from Previous Versions



[1.2.9] Scripting API and Custom Effects via C# - 2020.10.09

If you’ve written custom effects via C#, please read the updating guide.

Main Changes

  • Added: Scripting API sections in the documentation, automatically built from code.
  • Added: “Behavior Effects Fallbacks”, which let you set which behavior effects to apply to a text/letter if it has no tags assigned.
  • Improved: comments in all public APIs, also expanded with examples and manual references.
  • API: Custom Effects C# are automatically recognized via C#.

Other Changes

  • Bugfix: effect classes are not stripped from the build for AOT platforms (or IL2CPP).
  • General: Appearance effects are calculated only once at startup.
  • General: TextAnimator now instantiates similar effect classes only once, even if the user write more identical tags in the same text.

API Changes:


  • Added: “TMPro.TMP_CharacterInfo” variable reference for character data in custom effects.
  • Added: Attribute “EffectInfo” for all effects.
  • Moved: “Behavior Effects’” time and deltaTime are now stored inside a “TimeData” struct.
  • Removed: “CustomEffects” data holder class. You should now use built-in effects values instead, or reference variables external from TextAnimator (eg. in your game manager).


  • Renamed: AppearanceEffects’ “showDuration” to “effectDuration”.
  • Renamed: EffectBase’s “effectIntensity” to “uniformIntensity”.
  • Moved: “IsTagLongEnough” from TextAnimator.cs to TextUtilities.cs.
  • Access: EffectBase’s region management code inside RegionManager class.
  • Access: variables inside TAnimGlobalDataScriptable are now internal.
  • Access: EffectBase, core methods are now internal.

Minor Changes

  • Improved: TextAnimator labels in the inspector.
  • Bugfix: tags are not processed if empty.
  • General: some effects performances and code organization, especially preset effects.
  • Bugfix: “text utilities” class is now initialized even if the user calls it before initializing TextAnimator.
  • Bugfix: logwarning thrown in the user wanted to start the typewriter from OnEnable but the “usetypewriter” option was disabled.
  • Moved the following classes inside their own files: “TAnimTags”, “TypewriterAction”, “TAnimBuilder”.

[1.2.8] General Improvements and Fixes - 2020.08.19

  • Added: Help links in the inspector for each panel in the TextAnimator, which bring you to the related documentation page.
  • Added: MenuItems with documentation and support links.
  • Improved: Documentation page for Custom Effects from the Inspector.
  • Bugfix: Enabled custom effects’ decay “loop” and “pong” in the AnimationCurve.
  • Bugfix: Preprocessor that prevented the compiler from building the app.
  • Bugfix: Float parsing not working in some cultures, pt2 (we see you again, dear enemy).

[1.2.7] Documentation, Inspector and Typewriter Enhancements - 2020.07.11

If you’ve written custom actions, please read the updating guide.

Main Changes

  • Added: The typewriter can now display more characters per frame.
  • Improved: The documentation, its roadmap and the support form have been improved and are now all hosted on a new dedicated website.
  • Improved: Inspector for the following components: “TextAnimator” “TextAnimatorPlayer” (including base class), “Global Data” scriptable object.

Other Changes

  • Added: Methods for starting or stopping the typewriter.
  • Added: Option to disable appearance/behavior effects for all TextAnimators.
  • Improved: comments, tolltips and scripts structure of “TextAnimator.cs” and “TextAnimatorPlayer.cs”.
  • Removed the and improved the “Documentation & Quick Start” pdf.

Api Changes


  • Improved: Custom Actions API [if you created custom actions, please read the updating guide].
  • Change: TextAnimator.cs, “hasActions” boolean is now internal.


  • Removed obsolete methods/events in the typewriter base class.

Minor Changes:

  • Added: You can now decide from which methods automatically start the typewriter (“show text” “on enable” etc.)
  • Improved: The typewriter’s inspector can also now let you choose the delay based on desired characters count per second.
  • Bugfix: coroutine doesn’t start anymore if the object is inactive.
  • Bugfix: custom effect examples are now commented out.
  • General: typewriter minimum delay has been lowered to 0.0001.
  • General: Preset effects, renamed “curve” in “intensity/decay over time”.

[1.2.6] Global Preset Effects - 2020.05.14

Main changes:

  • Added: Global Preset Effects. You can now create effects and share them along multiple TextAnimator components, without having to create a prefab.
  • Bugfix: Attributes are now correctly applied to all effects.
  • Performance: The default effects database (including global effects) is built only once, improving performance if you have multiple TextAnimators. Now, TextAnimators will build only their local database, if any local effect is present.

Other Changes:

  • Bugfix: Error thrown if TMPro (GUI) had its canvas disabled, preventing TextAnimator to update TMPros’ mesh and apply effects.
  • Bugfix: Trigger Event on skip works as intended.
  • Bugfix: Custom appearances (c#) values is now serialized correctly.
  • Bugfix: Error thrown when users skipped the typewriter but it didn’t present any event.
  • Bugfix: Fade Behavior works intended.

Minor Changes:

  • Added: Custom TextAnimator Inspector now has two helper buttons, one that lets you locate the “Global Data” scriptable object, one that resets behavior effects time (editor only).
  • Added: Unity Menu Item that lets you locate the “Global Data” scriptable object.
  • General: Improved custom editor for the TextAnimator Component.
  • API: effects default tags are now stored in the static TAnimTags class.

[1.2.5] General Improvements and Fixes - 2020.04.23

Main Changes:

  • Added: option to trigger remaining events on typewriter skip.
  • Improved: Events and Features are now triggered based on their order, even if they’re placed on the same letter.
  • Bugfix: IndexOutOfRange exception when using different fonts and materials.
  • Bugfix: Custom Effects are now properly added to the database list.
  • General: Events are now case sensitive by default.

Other Changes:

  • Improved: The usage of the “TryGetComponent” method (from Unity 2019.2 or newer) has been extend to all other components references, inside TAnimPlayerBase.cs and TextAnimator.cs
  • General: As requested, changed classes access modifiers inside the Core namespace. (this step prepares the next updates).
  • General: TAnimPlayerBase.cs, OnEnable and OnDisable methods are now virtual.
  • General: Improved comments.

[1.2.4] Dynamic Effects Intensity - 2020.03.26

Main Changes

  • Added: Dynamic effects’ intensity based on different font sizes.
  • Added: timescale for typewriter and effects, choosing between “Scaled” or “Unscaled”.
  • Added: OnTypewriterStart event in the typewriter base

Other Changes

  • Improved: Documentation page “Managing Effects”, turned some sections to expandable.
  • Added: CharsDisplayTime attribute, telling the user in the inspector how many letters will be displayed per second and per minute.
  • Added: ForceMeshUpdate() method in TextAnimator.cs, which lets users tell force the TMPro mesh and refresh record its changes, at the end of the frame.
  • Bugfix: setting text via the TempFix now properly clears the mesh if the text is empty
  • Bugfix: fixed wrong attributes parsing in some countries
  • Bugfix: text doesn’t flicker anymore if it’s not emtpy and is activated in the scene after “Awake” (it occurred only during the first activation)
  • Bugfix: feature tags (like “waitfor”) now work if written at the very beginning of the text
  • Bugfix: changing the color property of TMPro via script now triggers mesh changes.
  • Bugfix: the temporal TMPro’s fix now clears the mesh if the text is empty
  • General: replaced effects interfaces with base classes.

Api Changes

  • Obsolete: the “onTypeWriterEnded” event is now obsolete and will be removed from the next versions, since you can use the “onTextShowed” one instead
  • Obsolete: the “OnTypeWriterStart” method is now obsolete and will be removed from the next versions, since you can use its related event instead

Minor Changes

  • General: The inspector’s minimum positive value is now 0.01
  • General: The Inspector now shows the “EasyIntegration” label instead of “TriggerAnimPlayerOnChange” (the saved value won’t be lost if you update, it’s only a visual thing)
  • General: Improved “Easy Integration” tooltip and warning in the inspector.
  • Performance: using “TryGetComponent” method instead of “GetComponent” from Unity version 2019.2 and upper.

[1.2.3] Typewriter Sounds - 2020.03.02

Main features

  • Added typewriter sounds examples
  • The third party plugin “Naninovel” is now integrated (partially).

Main changes

  • Improvement: Shake Effect (and random directions generation) has been improved to prevent similar directions occurring subsequently
  • Bugfix: the typewriter is now triggered when using Easy Integration (from TMPro) even if you’re setting the same exact text subsequently

Other changes

  • Bugfix: if using the EasyIntegration, the text is correctly hidden for the very first time (in its first frame)
  • Bugfix: the complete text is not showed anymore for half a frame in some implementations, now hiding it properly
  • Bugfix: the TextAnimatorPlayer now checks for the text to be active in the entire scene (and not locally) before starting its coroutine
  • Bugfix: TextAnimatorPlayer can now show similar texts without any tag, if triggered

Main changes

  • Added: option to wait for punctuaction time only if the current character is the last in a sequence (like: ‘Hello….’) in the basic TextAnimatorPlayer.
  • Added: variable that represents the latest shown character (TextAnimator.cs)
  • Added: method that returns the next character to show (TextAnimator.cs)
  • You can now use the TMPro’s , and tags in the same text (even if applying effects to the first two is not suggested)
  • Improved to the way Text Animator applies effects to letters, leading to some bugfixes and even more stability

Other changes

  • Bugfix: the typewriter can now skip when waiting for puntuactions.
  • Bugfix: letters at the end of the some specific texts are properly shown (however, I have to admit that this bug made some fun results)
  • Bugfix: variable “charsTimeOffset” now works as intended when creating Appearance effects
  • Bugfix: “<3” and other uncompleted/unrecognized tags are now correctly displayed in the text now
  • Performance: improved core performance (both memory & elaboration)
  • Performance: improved performance when changing texts from TextMeshPro, especially if there is no typewriter linked to the component
  • Bugfix: The “MinValue” attribute now shows tooltips correctly
  • Added tooltips to the TextAnimatorPlayer class.

[1.2.1] Effects Creator Update - 2020.01.27

Main Features

  • You can now create effects in the inspector, controlling movements, rotations, scale, colors and emission. (With a Custom Inspector as well)
  • You can set multiple appearance effects via tags, using ‘{‘ and ‘} as’ opening and closing characters.

Other Features

  • TextMeshPro’s
  • You can skip the remaining typewriter by invoking the “SkipTypewriter()” method.
  • Added custom feature “speed”, which changes the typewriter speed via tags.
  • Added Unity Event “onCharacterVisible(char)” in TAnimBase.cs script, invoked each time a character becomes visible.
  • Added Unity Event “onTextShowed” in the TAnimBase.cs script, invoked when the text is completely shown.
  • Added new example scenes, including presets and some effects use cases.
  • PlayMaker is now supported.


  • Performance: the plugin now builds an effects database (including users’ custom effects), optimizing the tags’ lookup at runtime.

API Changes - Custom Effects

  • Custom effects are now implemented differently; the user has to add their “ID” and “type of class” in a static readonly array. (Same CustomEffects.cs file)

API Changes - Removed Deprecated Methods

  • Removed the TextAnimatorPlayer.cs’ deprecated methods named “ShowTextInstantly” and “StartShowingText”, as predicted in the version 1.2.0

Minor tweaks - Core

  • Performance: +10%, by organizing differently characters IDs & arrays
  • Performance: Random values are generated only once
  • Performance: Improved characters’ center calculation
  • Performance: Improved formatting and memory management
  • Performance: Removed unnecessary “array returns” from TextUtilties extention
  • Bugfix, wrong index when adding A LOT of letters like there’s no tomorrow
  • Bugfix: Tags not belonging to Text Animator are no longer written strictly in lowercase
  • Bugfix: TextAnimatorPlayer.cs onTypeWriterEnded now triggers properly when changing TMPro text (Easy Integration)
  • Bugfix: Fixed a wrong variable being shown for the “HorizontalExpand” appearance effect, in the TextAnimator Custom Inspector
  • General: When creating a new script, the default appearance effect is now “size”
  • General: Events are now triggered before a letter, instead of getting triggered after it
  • General: Removed suggestion via Debug.Log to not use “vertexp” and “horiexp” appearances effects together. It’s now suggested in the Inspector.
  • General: Organized example scenes

[1.2.0] Easy Integration - 2020.01.06


  • Setting the text via script is not strictly necessary anymore.
  • TextAnimatorPlayer’s text can now be set when the GameObject is disabled.

API Changes - TAnimPlayerBase.cs

  • Methods “StartShowingText” and “ShowTextInstantly” now obsolete; replaced with “ShowText”.
  • Method”OnTextEnded” is now an event called “onTypeWriterEnded”.
  • The typewriter is now enabled via the inspector.


  • Performance improvements when formatting tags.
  • Bugfix when checking if the user wrote compatible tags.
  • Removed the “Integrations” folder (thanks to the Easy Integration).


[1.1.1] BugFixes - 2019.12.22

Worked and released on a festive day, F :c


  • Documentation: Added a Public Roadmap

    It’s only what I want you to see; they’re not not my full plans MUAH AH AH

Important Changes

  • Fixed an error occurring when syncing a shorter text than the previous one.

    Imagine writing a dialogue with the same letters or 1 less each time. Alright, I challenge you to do it!

  • Modifiers don’t have value limits anymore.

    The sky is the only limit now.

Other Tweaks

  • Bugfix when enabling the define #LOGS_DEBUG in the TextAnimator.cs script
  • Improved debug of the base Effect classes.
  • Documentation: Behavior Effects’ properties are now visible in the “Effects’ list” page.

[1.1.0] Initial Release - 2019.12.19

First Realease.