Animating changing text WITHOUT the animation nodes addon?

I have not yet tried any of the versions of Blender past 2.9 so I don’t know if this is possible yet but can you animate text characters (IE not moving the object around but changing the text dynamically) using the current nodes in Blender 3.0+ or not?

For my specific needs, the text would need to use a TXT file to reference as to what text would be next in the sequence. I know that this can be done in Animation Nodes but I want to know if it can be done natively.

In the future, I would possibly like to share a file with others but I don’t want them to have to feel like they need to install the animation nodes addon.

Thanks in advance.

Cheers,
Paul
(mix_mash)

You can do it with geometry nodes, which has fully fledged text functionality :slight_smile:

Cool! I don’t suppose you could give me a basic rundown/screenshot of how that would look?
Remember that it has to reference a text file where each new line would represent the next bit of text to appear, though.

I hope I’m not asking too much.

I do really appreciate your help.

Cheers,
Paul
(mix_mash)

1 Like

Hello,
I found a simple solution in GN that is ok for single lines of text:


Since there is not support for using CSV files as input, the text has to be pasted into an input String node.
If your text have commas, use wathever crazy text combination as line separator instead of commas and type it in the Replace String node.

Hope it helps.

2 Likes

Hi, thanks for this. I did finally install 3.2 and have tried your node setup but it’s not what I am looking for.

Try to imagine that I want to create subtitles for a movie and I could use a slider to show what text appears next on the screen. That is basically what I am looking for.
Oh, and I may have a ton of lines of text so using an external TXT file as text reference would really be a bonus.

But thanks anyway because it gave me a little introduction to the node setup a bit IE I suck at nodes but I get the gist of your setup so thanks!

Cheers,
Paul
(mix_mash)

The integer to select the text line can be animated, this way you can decide when the texts appear.
Link the value to the Geometry Input node to get access to It from the modifiers side panel.

Ah, I looked again and noticed one or two mistakes with my setup so I fixed things and did manage to get the result that I wanted except for one tiny little thing.

When I change the integer value I do get the individual letter/words like I wanted but, apart from the first instance, none of the latter objects are centred at the pivot point like the first one. Any ideas how I can centre the latter instances at the pivot point?

Don’t get me wrong, though. Each one of these steps you provide me is GOLD in my books but I am just so close to getting the result that I want.

Honestly, thanks for your awesome help!

Cheers,
Paul
(mix_mash)

Setting line height and text box to zero, and center, middle and pivot point to Midpoint, will keep yr text centered…

Hope that helps…

Wow, a simple solution! Thanks, AlphaChannel.

There is still the issue of multi-line text since the ‘string’ input field only allows for a single line.

You mentioned a ‘text box’. I just now found the option for it and assumed that if I changed the width that I would be able to get a word wrap type of result to give me the ‘multiple lines of text’ option but to no avail. I’ve also played around with ‘Truncate’ option for the text but all it did was crop any extra words which were too long (except for the first word, though).

Any ideas there?

Cheers,
Paul
(mix_mash)

add another line like this…

Not exactly how subtitles would work but, oooh, getting real close.

I figured out that you are just ‘adding’ an option for another line which should be OK for stuff similar to showing subtitles. It would still need something that would allow lines to be strategically skipped to work like subtitles usually work, if you know what I mean.

I still wish that there was a node specifically to reference external files like TXT files like you could do with Animation Nodes as it would be way better than just coping a lot of text in the ‘string’ node especially if you had to edit the text afterwards. I know you could just copy and paste from the ‘string’ node field into a TXT program for editing but it’s just a fiddly step.

I would also like to be able to clamp the integer value for swapping the text so that you can’t go past the first or last values.

Anyway, thanks a ton for all your help so far. I really appreciate it.

Cheers,
Paul
(mix_mash)

In the text editor, you can do this, make text One object per line.

then it makes this a little simpler…

gives some more controls…

Hope to see what you have tried?
mix_mashtext.zip (708.1 KB)

1 Like

Last one, this one creates a text box, does some masking by deleting unwanted points, keeps the ability to work with lines and different fonts, smooth scroll, step, delete by line…

1 Like

newersubs.zip (738.8 KB)

Another example…

Um, I feel like I unleashed a monster…

All I actually wanted was a simple 2 line subtitle tool. Nothing so overly elaborate, really.
I’m sure someone in the community will find great use of what you’ve contributed, though.

Anyway, I did a bit of tweaking and found out the solution by myself (oh, and obviously with the help of you guys). I’ve attached a sample file below.

AnimateTextWithGeoNodes_ExtraLine.zip (104.0 KB)

Thanks for all the help and appreciate all the feedback.

Cheers,
Paul
(mix_mash)