I’m interested in generative animation…a la flight404…and had a recent assignment to create a two minute piece which included a significant body of text. I also recently came across some speed reading techniques involving rapidly flashing single words in a serial fashion.
I set out to utilize this technique but with a more graceful animation where the words of the passage exist in a gently moving cloud and each word, in turn zooms forward, stays large for a length of time determined by the word’s length and any punctuation which may follow, then fades back into the cloud. The smooth animation is provided by Ben Fry’s Integrator class.
Ultimately, I was trying to find a speed which would feel natural to a speaking or reading cadence. I also wanted the entire process to be programmatic…feed it a text file and it will just go – minimal customization necessary.
Also, I needed to generate a video of the animation, but the complexity of all the materials and the overhead of writing each frame to disk caused it to slow down below the intended frame rate. I solved this problem by implementing a variable of the ratio between the intended framerate and the actual framerate that the sketch can accomplish. Determining this rendering framerate takes a bit of tweaking, but in the end, the image sequence plays correctly at the desired framerate as a movie file. This was great for me to work out and will be greatly helpful for future work.
Here is the source code as well as apps (mac | linux | win). The applet has trouble in a browser.
Leave a Reply
You must be logged in to post a comment.