Text Animation
Posted: Fri May 07, 2021 4:14 pm
One can target and manipulate words, transformed through the iterator node, with "Magic\\Music\\Visuals" and do the same with individual lines, syllables and characters in a similar way. This is fine for a set of, say, 4 letter words in a monospaced font. However, you cannot satisfactorily transform text elements of different widths, since each transforms from the iterator#, bunching together wider characters, words etc. You also cannot target characters and word (for example) together at the same time since a text node will only respond to its closest iterator.
Here are a few possible avenues for further investigation though all are limited in some way:
I'm sorry to say that all these ideas are less than half-baked but it is a tricky thing to fit into Magic's way of working. [rant] This restriction has been brought up in other contexts (point data etc) and while this can be seen as one of Magic's strengths (simplicity) it is also a limitation when compared to most other node based applications. [/rant]
Here are a few possible avenues for further investigation though all are limited in some way:
- Have an additional node that selects text elements and which respects the spacing of the text otherwise.
- Add parameters to the text node which allow targeting of lines, words and characters independently.
- Have a new Text Transform node that only transforms the selected element within a string - can be used in series for multiple transforms.
- Allow the "Text" parameter to be a global (and visible to expressions) so that several text nodes can use the same string.
- Include sub-element transforms in the text node itself.
I'm sorry to say that all these ideas are less than half-baked but it is a tricky thing to fit into Magic's way of working. [rant] This restriction has been brought up in other contexts (point data etc) and while this can be seen as one of Magic's strengths (simplicity) it is also a limitation when compared to most other node based applications. [/rant]