v1.14.0


UPDATE WARNINGS FROM v1.13.5:

* Mask mode for non-ui text is now "ignore" by default. If your non-ui text has turned invisible upon updating, it was set to "inside" but not inside a mask previously, so it will need to be set to "ignore" now! (This was changed to follow how sprite masks work on everything else.)

* Shaders have changed where specific UV values are stored based on Unity version. (Updated to be backwards-compatible) For newer versions, what used to be uv2 is now uv.zw, uv3 has been pushed back to uv2, and uv4 is now uv3.

* This means, older shaders may not work as expected! Please remove the older "Unlit" and "UI" shaders. These can be updated to the "Universal" shader.

* STMQuadData's "Silhouette" boolean is an enum, now. This will have to manually be set to the appropriate value.

* When declaring multiple color tags at once (```<c=myColor, myGradient, myTexture>```) the default behaviour will use the new color mode options of each. This can be reverted to the old behaviour of always multiplying under "Settings" in the Text Data Editor!

Changelog:

* New monospace tag! `<ms=float>`, `<monospace=float>`, `<ms>`, `<monospace>`. These are great for making timers and clocks.

* Added textured outlines and dropshadows to the Ultra shader! These can scroll as well.

* The Ultra shader now also supports outlines and dropshadows at the same time! There is also an option for thick dropshadows, which match the size of the outline.

* Added an option for Ultra shader outlines to scale with text size, in addition to scaling with object size.

* Added support for RectMask2D and Unity UI Effects with "STMMaskableGraphic.cs"! Once added as a component to a GameObject with Super Text Mesh, these features now work. All shaders have been updated for this, and there is a button in the STM inspector to add the component easily.

* This also adds support for ["True Shadow" by "Tai's Assets"](https://prf.hn/click/camref:1100lIKj/destination:https://assetstore.unity.com/packages/tools/gui/true-shadow-ui-soft-shadow-and-glow-205220 )! We collaborated for direct integration, check it out!

* The Text Data inspector can now be opened as a separate window! Either with "Window > Super Text Mesh Data" or by pressing the "Pop Out Editor" button in the Text Data inspector!

* Added an effect preview in the text data inspector for appropriate classes!

* Added new color blending options for Quads, Gradients, and Textures!

* The default function of `<c=myColor,myGradient,myTexture>` will use these new blending settings, but can be reverted to always multiply under "Settings" in the Text Data Editor!

* New Zero-with space tag: `<z>`. This is the same as typing `<u=200B>`, and is useful for when you don't want two tags applied to the same character.

* Added alternate variable names and shortcuts for commonly-accessed variables and methods, and new exposed variables.

  * `lastPrintedIndex => latestNumber` Index of last character read out in "info" and "hyphenedText".

  * `isOverflowing => leftoverText.Length > 0;` True if text is being culled by the vertical limit.

  * `activeWidth => rawBottomRightBounds.x;` Width of the text as it's being read out.

  * `activeHeight => -rawBottomRightBounds.y;` Height of the text as it's being read out.

  * `finalWidth => finalBottomRightBounds.x;` Width of the text when it will be done reading.

  * `finalHeight => -finalBottomRightBounds.y;` Height of the text when it will be done reading.

  * `lastPrintedCharacter => hyphenedText[latestNumber];` char which was last printed by the mesh.

  * `lastPrintedTextInfo => info[latestNumber];` textInfo which was last printed by the mesh.

  * `GetCharacterActivePosition(int index / STMTextInfo info) => endVerts[4*index+3]` Position of a character, with animation data applied.

  * `characterCount => hyphenedText.Length` The count of displayed characters on the mesh.

  * `GetCharacter => hyphenedText[index]` Returns a character at a given position in the mesh.

  * `GetCharacterInfo => info[index]` Returns a character's info at a given position in the mesh.

  * `isSpeedReading` returns true if the mesh is in its speedReading state. (SpeedRead())

  * `isSkippingToEnd` returns true if the mesh is skipping to the end of read text. (SkipToEnd())

  * `UnsubscribeAllRegisteredEvents()` shortcut to remove all non-persistent listeners from all events.

* Added a "manualTimescale" variable, for use with custom time systems. This will still do nothing if "ignoreTimeScale" is true.

* Added a `<d2=x>` tag as a shorthand for `<readDelay=x>`.

* Added default fields for Waves, Jitters, Colors, Gradients, and Textures so that a text mesh can have an effect applied without using tags. These are under the "beta" foldout for now.

* Added buttons to the "shader" part of the inspector, which allow the shader to easily be changed to the Universal or Ultra shaders.

* Added back shadow casting pass to Universal and Ultra shaders! This can now be toggled on and off on a per-material basis, and will be automatically disabled for UI text.

* Added "STMPixelSnap" as a utility script.

* Better Sprite Mask interactions! The "outside" rendering mode works, and the default masking value is now "Ignore" for non-ui text because of this.

* Fixed Ultra shader sometimes rendering above other UI elements when not expected.

* Improved blending method used with dropshadows & outlines on Ultra shader.

* The "Render On Top" option now appears for UI ultra shader text. (Sometimes, you want it rendering above other UI elements!)

* Fixed justified alignment causing an error in some scenarios.

* Fixed a glitched-out autoDelay file included with assets.

* Fixed internal UI stencil depth comparison using floats instead of integers, and improved this code overall.

* Added extra null checks when creating/deleting objects to prevent error messages.

* Ultra shader adjustment that should make text not render upside-down on android.

* More improvements to Ultra shader.

* Added an "effect depth" slider to the ultra shader.

* Tags for data objects show on hover in the Text Data Editor.

* Batching is now disabled on the Ultra shader, preventing errors when drawing outlines & dropshadows.

* Changed timing on OnRebuildEvent.

* The "New Material" button in the inspector makes a new material with the Universal shader applied, now.

* Updated shaders used by default in STMMaterials. Uvs have shifted based on Unity version.

* Updated names of internal values used to hold UVs.

* Updated SuperTextMesh using obsolete methods in newer Unity versions.

* All internal material property changes use cached IDs now.

* Internally added a base class for the "Data" type objects.

* Added some text pointing out the Text Data Editor button.

* Fixed new AutoDelay rules not working together with tags.

* Fixed manual and automatic pauses conflicting with one another.

* Updated warning text and included warnings to follow mistakes I can't just prevent.

* Zero-width spaces on Super Text Mesh now always have a read delay of 0, since they are used for formatting.

* Added a warning and a button to automatically fix configuration errors when moving Super Text Mesh objects in or out of a CanvasRenderer.

* The delay tag inserts a zero-width space after it now, similar to the pause tag.

* Exposed StopReadRoutine(), making it public.

* The "unreading" boolean should be more reliable now.

Files

SuperTextMesh v1.14.0.unitypackage 5.8 MB
20 hours ago

Get Super Text Mesh

Buy Now
On Sale!
50% Off
$95.00 $47.50 USD or more

Leave a comment

Log in with itch.io to leave a comment.