The image below was generated from a very simple MSG preset. We’ll take a look at how it was constructed in this post. Tomorrow’s post will use multiple instances of this simple effect to build a very visually interesting abstract animation.
Note that the first processor is the SetToValue processor, which is a stream generator. By generator I mean it does not have an Input Port, just an Output port. Note that it’s single Value parameter setting of 186 means that it will generate a flat gray colored output image.
The 2nd gallery image above shows the IO (input-output) connections for the first SetToValue processor. Note that the Out port is set to the ROut image stream.
The 3rd gallery image above shows the IO connections for the 2nd 3C Abstract2 CP processor. Note that the ROut image stream is used as the input to all 3 color input ports for the processor (In R,In G,In B). The 3 output ports are hooked up to the 3 color output streams for the MSG effect (ROut,GOut,BOut).
The 3C Abstract2 CP processor generates a silly cartoon facial abstraction. Depending on how you adjust it’s internal parameters, you can radically change it’s visual appearance (as shown in the 4th gallery image above of mutated versions of this 2 processor MSG preset in the Evolution Editor).
This particular MSG processor started out as a kind of joke, but people quickly came to love it, and i’m constantly surprised at the creative uses people find for it. We will get into this in depth with tomorrow’s post where a total neophyte user creates a beautiful abstract animation based off of multiple instances of this particular MSG processor.
That’s the amazing thing about MSG, you don’t have to understand the technical details of how it works to create amazing still image and animation effects.
As you may recall from previous posts, the 3C naming shortcut used with a MSG processor means that it processes 3 input channels and generates 3 output channels, so it’s a full color effect (as opposed to using 3 different 1 channel (1C naming shortcut) processors to individually process each color channel of a full color image).
And the CP naming shortcut is short for Color Palette, so the 3C Abstract2 CP processor also uses a color palette input stream to derive the coloring for it’s full color output. Some of the adjustable parameters associated with the processor interact with the input color palette to determine how the abstracted cartoon face is colored.
Technically Correct IO Routing
Tomorrow’s post will use a MSG preset generated by a beginning Studio Artist user that has a technically incorrect IO routing setup. Today’s post was built with a technically correct IO routing, so I thought it would be worth looking at a little since this particular preset is so simple.
The IP Source for a MSG preset is associated with the 3 (RSrc,GSrc,BSrc) image streams. The IP Source could be the Source Image, or the Current Layer. Those image streams may or may not be on the preset’s Bus. If they aren’t available on the Bus then they aren’t available for IO routing and will not be used in the resulting MSG Effect.
And every MSG preset has to have the 3 (ROut,GOut,BOut) image streams, so at the very least these 3 image streams will always be on every MSG preset’s Bus. But the 3 output image streams need to be set to something in the MSG preset, or they will be in an indeterminate state. Indeterminate state means we don’t know what is in those image streams because we did not explicitly set them to anything.
In the simple MSG preset above, the SetToValue processor is used to set the ROut image stream to an explicit state ( a flat gray colored image). But note that after the first processor is run the other 2 output image streams (GOut and BOut) are still in indeterminate states, since they have not been explicitly set to anything.
The 2nd processor in the preset above, the 3C Abstract2 CP processor takes as input just the ROut image stream for it’s 3 color input ports (In R,In G,In B). It outputs to all 3 output streams (ROut,GOut,BOut). So after this second processor is run all 3 output image streams are set to something specific, they are in determinant states.
If I had hooked up the 3C Abstract2 CP processor to use either the GOut or the BOut image streams as inputs to any of it’s 3 color IN ports (In R,In G,In B), then the preset IO routing would technically be incorrect. It’s incorrect because we haven’t explicitly set those 2 image streams to anything specific before they are used as an input for processing.
Now of course technically incorrect may or may not have anything to do with artistic success, as we will see in tomorrow’s post.
For more information on MSG IO routing and editing, check out this tip.