Today’s post will take a detailed look at a MSG based animation created by one of our staff. Keep in mind that she was able to create this finished animation a few hours after being shown how to add temporal generators to MSG processor editable parameters to create self animating effects. I think this is a real testament to both the power of MSG as well as it’s ease of use.
The frame capture image above and associated finished animation was created from the paint action sequence (PASeq) shown below.
Note that the first MSG-TR5 labeled action step is the only action step actually generating any animating visual effects. Everything else in the PASeq is just there to polish and pump up the final image a little, based on the Enhance_ifRough_noGrad PASeq preset we give out in the Cleanup favorites category.
Now as I mentioned above, the person who created this animation is really a total beginner at creating MSG animations, and also is essentially a beginner at programming MSG presets who does not have a real firm grasp of how MSG works. Many reader will probably say at this point, ‘hey that sounds just like me as well’. So we’re looking at a real world case study here, what can a total beginner with no detailed understanding of how MSG works internally do. Can they create a successful animation from scratch.
She is a little familiar with using the MSG Advanced Editor to manually edit processor parameters. And she has used the Evolution Editor before, which she used heavily to build the animation discussed in this post. She started with some MSG factory effect she liked, and then started working with it in the Evolution editor. Apparently making heavy use of the Add button to randomly evolve new MSG effects by randomly adding new processors. I’m sure she also used Swap and Mutate commands, as well as self-directed evolution (which you do by clicking on evolution preview cells you like which then propagates a new evolved set of preview effects mutated off of the one you clicked.
The 1st gallery image below shows the Evolution Editor filled with mutated variations of the MSG preset she finally settled on for her animation effect. The 2nd gallery image below shows the actual MSG preset in the MSG Advanced Editor.
If you look closely at the 2nd gallery image of the MSG Advanced Editor processor chain, you can see that a large number of the processors are turned off. She said she did this because she noticed that they didn’t really seem to be doing anything to the final output image for the effect, and turning them off speeded up the animation generation speed quite a bit.
I hand edited her MSG preset to remove all of the processors that were turned off. That edited MSG effect is shown in the 3rd gallery image above, and as you can see it’s quite a bit simpler than the 2nd gallery image, even though the 2 effects are functionally equivalent.
The 4th gallery image above shows the IO (input/output) connections associated with the first processor in the edited MSG preset that removed every processor step turned off. If you are familiar with the details of MSG IO routing, you might notice that technically it’s incorrect. The first processor in the processor chain editor is using (ROut,GOut,BOut) as input streams, without using a generator processor to set those streams to anything. So what is in those 3 output streams is indeterminate.
The 5th gallery image above clearly shows what I mean by that fact that the effect is indeterminate. The canvas is displaying the last output frame in the animation, note the difference in coloring in the final animation output frame vs the coloring of the MSG preview cell in the MSG Advanced Editor. And indeed, if you erase the canvas to white and run the MSG effect it looks like the image in the MSG preview cell, which has very different coloring than the actual animation frame.
Of course the fascinating thing about all of this is that the fact that the MSG preset being used to generate the animation is ‘technically’ incorrect does not prevent it from generating some amazing animated output. The final rendered animation generated using this MSG preset can be seen here.
We often see this in Studio Artist (and art in general), there really is not such thing as a technical mistake when it comes to visual appearance, you either like the resulting visual effect or not. And there are many existing Studio Artist features that started out as code bugs that were kept in the program as selectable user options since they generated interesting visual effects.
Note that the actual animation has all kinds of movement and self evolving behavior going on in it. But there is no keyframing involved, so all of the animation is coming from how the individual processors are programed via the use of temporal generators attached to internal parameters.
The gallery images below show the different processors in the MSG preset used to generate the animation that have temporal generators associated with their editable parameters.
Note that i’ve highlighted a single processor with an attached temporal generator for each of the associated processors, but some of them have more than one active temporal generator associated with them. All together there are 9 different time based temporal generator oscillators active in this MSG preset. The self-animating behavior of the temporal generators automatically adjusting their associated parameter values over time is what generates the movement and self-evolving behavior in the animation.
To output the animation, the Action : Animate with Paint Action Sequence : to Movie menu command was used.
I hope this gets across the point that total beginners, people without an in-depth technical understanding of how MSG works, can still create visually interesting animation effects in Studio Artist 4 with a minimum of effort. As we showed, the MSG preset was technically incorrect as far as how it’s IO routing is programming, but that still was not an issue in generating a successful visually interesting animation effect.