[Solved]How to reveal text using a wipe?

I’m looking for a way to wipe reveal text, I have a simple “append next char after X amount of time” system at the moment but it doesn’t look smooth. I am looking for a way to do something similar that is done in PowerPoint when using wipe on text. What is the best approach for this?

Something like this but smoother:

Easiest way would be to create the leading letter as a separate text object, and give it its own script that increases the alpha of the text’s color for the fade, and increases the width of the visible text area to do a wipe effect.

How would I go about doing that? I have looked at making a BaseMeshEffect but that only runs once

You could do this with a UI mask. Parent the text to the mask and animate the mask rect so it grows…use a mask texture with some feathering at the edges.

1 Like

… Well that was a simple solution Thanks :smile:
Now to see if I can create a script to do this automatically ^^

1 Like

Instead of animating the Rect (size) which would trigger the re-layout of the UI which would not be efficient, here is an alternative way to do this using TextMesh Pro.

This works by using a masking texture which is assigned to your material. This texture can control the shape of the masking area as well as be animated to create visual FX like wipe. Since this is done at the shader level, it is very efficient. Here are a few examples.

This works with the Canvas system and 2D Rect Mask as well as with the normal TextMesh Pro component which uses the Mesh Renderer.

In these example, I am simply manually changing the Wipe Control property of the material. I am also assigning different Masking Textures for the different patterns.

The edge of the transition can also be tinted.

This functionality will be available in the next release of TextMesh Pro.

amazing. but i wonder how to do this line by line. similar to karaoke or narration applications.