The image below was generated by working with the Paint Synthesizer Evolution help commands. But rather than running the Paint Synthesizer, I was running action painting in DualMode Paint operation mode. So, you can use the Paint Synthesizer Evolution Patch Memories and evolution commands to dynamically evolve new DualMode Paint presets in real time in addition to normal Paint Synthesizer Classic effects.
As you may recall, DualMode Paint is a Studio Artist operation mode that combines live painting using the paint synthesizer along with an interleaved live image processing effect. We have posted about DualMode Paint effects here before, here’s a link to some of those other posts if you want additional information on DualMode Paint and how it works.
The basic idea behind DualMode Paint is that it uses the current paint synthesizer settings, along with a specified image processing effect. The image processing effect (called the Dual Op) can be based on the current image operation, texture synthesizer, MSG, or interactive warp effects. As shown in the 1st gallery image below we are going to use a MSG processing effect as the Dual Op for this post.
The specific MSG effect will be a simple 1 processor effects, using the 3C RotateScale processor. The 2nd gallery image above (of the MSG Advanced Editor) shows the IO (input/output) connections for the 3C RotateScale processor. Note that the (R Src, G Src, B Src) input streams are connected to the 3 color input Ports (In R, In G, In B) for the processor. And the 3 color output Ports (Out R, Out G, Out B) of the processor are connected to the 3 output image streams for the MSG effect (R Out,G Out,B Out). So this is an extremely simple MSG preset, one that takes the IP Source for the MSG effect, runs that through the single 3C RotateScale processor, and then send the output of that single processor as the output of the effect.
Note that the 3rd gallery image above (of the Editor palette) shows that the IP Source for the MSG effect is set to the Current Layer. We want to process the Current Layer as opposed to the Source Image because we will be using this MSG effect as the Dual Op in our DualMode Paint effect. Remember, while the MSG effect itself is constructed in the MSG Advanced Editor, its IP Source and Compositing controls are located in the generic Editor palette like all of the other operation mode effects.
The 4th gallery image shows the Parameter settings for the 3C RotateScale processor in the MSG Advanced Editor. Note that I have set up a slight Angle rotation. The 5th gallery image shows what this MSG effect will generate if you run it in loop action for a few cycles. It basically generates a rotating effect that slightly pulls the existing canvas into the center over time.
By adjusting the other parameter settings, like the Scale % you could make the effect attract or repulse towards the center point of the effect. The center point of the rotation the effect generates is based on thee settings of the H Center % and V Center % parameters (horizontal and vertical centering respectively). The percent is based on the respective canvas dimension, so 50% corresponds to the center of that particular axis.
Note in the 6th gallery image above that I have turned the Lock setting for both the H Center % and the V Center % parameters to On. Locking a parameter setting means that if I evolve the MSG preset using the Evolution Editor, the locked parameter settings will not change. So as I mutate new MSG effects based on my current MSG effect, the rotation centering will stay locked at 50% (which means the center of the canvas). I did this because I thought it would be fun to dynamically evolve the MSG preset used as the Dual Op in the DualMode Paint effect at the same time I evolved the paint synthesizer settings using the Paint Evolution help commands.
Live Evolution of an actively running DualMode Paint Effect
We described the Dual Op component of the DualMode Paint effect we will be constructing. For the paint synthesizer part, i’m going to use the same 4 Magic Spiros category paint presets we used in yesterday’s post. So, the same 4 paint presets I used from the Magic Spiros category are loaded into the 4 Patch Memories in the Paint Synthesizer Evolution help page (as shown below).
Since I want to work with dynamic DualMode Paint effects (as opposed to just paint synthesizer effects), I need to be in DualMode Paint operation mode ( as shown in the 2nd gallery image above).
I’m also interested in working with the Paint Synthesizer Evolution help commands as well as dynamically mutating and evolving new MSG effects while running in DualMode Paint operation mode. So I configured the right side of my Studio Artist workspace as shown in the 3rd gallery image above. Note that I have the Help Browser docked at the top of the right side of the workspace, the Evolution Editor in the middle of the right side of the workspace, and the MSG Advanced Editor at the bottom of the right side of the workspace.
Remember, if you build a custom workspace configuration like this and want to save it for instant recall in the future, you can use one of the the 4 Window : Layout User : Record menu commands to record your custom workspace configuration (as shown in the 4th gallery image above). Playing back the recorded Layout in the future will instantly reconfigure your workspace to your custom configuration.
Now we’re ready to do some live evolution of a dynamically running DualMode Paint effect. Your end goal could be to create a still image, to create a movie file of a running paint animation, or to create a new DualMode Paint preset effect.
For generating the abstract image at the top of this post, I started by pressing the Action button (while in DualMode Paint operation mode). I then started pressing the different Play command links associated with the 4 paint Patch Memories in the Paint Synthesizer Evolution Help Page. I worked with this process until I got to a canvas image I liked, then I pressed the spacebar to stop the effect from running. I then saved my abstract canvas.
I then thought it would be fun to work with a combination of Mingle evolution of the 4 paint Patch Memories along with simultaneous live mutation of the MSG preset running as the Dual Op in the DualMode Paint effect. I opened an active movie stream to record the results. I decided to use an Enable Gated AutoWrite frame write flag for the movie stream, with an AutoWrite FPs and movie playback rate both set to 10 frames per second.
Note that I could have used an Enable Write on Op End write flag option instead. The resulting movie stream would be very different, you should try both approaches at some point to see the differences between the 2 approaches. We will also show them below.
The 5th gallery image above shows the Mingle evolution commands in the Help Browser and the Evolution Editor filled with mutated variations of my initial MSG effect. Note that because I locked the 2 Centering parameters for the 3C RotateScale process as described above, all of the mutated MSG effect variations have centered rotations.
After opening a new movie stream, I pressed the action button, and then started working with different Mingle evolution commands for the 4 paint Patch Memories while also clicking on different Evolution Editor previews to select mutated variations of the MSG rotate-scale effect. So I was evolving the paint synthesizer settings being used in the live DualMode Paint effect as well as evolving the MSG effect used as the Dual Op in the running Dual Mode Paint effect. You can see the results of my experiment here.
After watching this, I decided that using the Enable Write on Op End frame write flag for the movie stream might be better for this particular effect. So I did a second evolution pass. I also decreased the DualMode Paint parameter called Timing. By making the Timing parameter smaller, the paint synthesizer did less auto-painting between cycles of the Dual Op MSG effect. I also only used Mingle evolution using the 4 paint Patch Memories for this second example, which can be seen here. So I skipped using the Evolution Editor to mutate the MSG preset in this second example.
I think the combination of reduced Timing along with the Write on Op End frame output to the movie stream leads to a smoother animation effect for this particular DualMode Paint experiment.
Tomorrow we’ll look at the opposite of today’s second example. We’ll use a single paint preset and only do live mutation of the MSG preset in realtime as we build a streaming DualMode Paint animation.