Hidden away in the paint synthesizer in the Path Start control panel is the ‘Sketch to Internal Path Memory 1‘ option for the path start Generator parameter. This particular path start Generator option can be very powerful if you are interested in creating sketch style paint effects. But it can also be confusing to work with, and can lead to some unexpected results if you don’t fully understand how it works. Today’s post will dive into explaining this particular paint synthesizer feature, and demonstrate a watercolor sketch paint preset you can use as a starting point for creating your own sketch effects.
The whole point of the paint synthesizer’s Path Start control panel is to allow you to define where automatically generated paint paths start to draw. Some path start Generators create a series of random sampling points to stochastically distribute paint strokes throughout the drawing canvas. Others generate geometric scanning patterns, like regular tiling or border scan patterns. Others scan based on the location of bezier curves stored in the different bezier path memories. Others perform something called path start regionization, which involves intelligently analyzing the source image, breaking it up into smart regions, and then painting those regions in one at a time.
The ‘Sketch to Internal Path Memory 1‘ path start Generator option is unique, in that it analyzes the source image to create a controllable edge sketch effect, converts the edge sketch into a series of individual bezier paths, and then places those sketch paths into the internal bezier path memory. The resulting bezier paths that represent the source sketch are then available to be used to define paint path start locations, but are also available in the Path Shape control panel to be used to define the actual drawing of the paint paths themselves.
The Internal Bezier Path Memory is a way to store a collection of individual bezier paths inside of a specific paint preset. The Sketch to Internal Path Memory 1‘ path start Generator option is overriding whatever is inside of the internal bezier path memory when you press the Action button to run the paint preset. It loads that internal bezier path memory with a new set of bezier paths that sketch the current source image.
The thing to keep in mind is that the entire complete bezier path sketch is generated prior to the first paint stroke being drawn. So the complete sketch is computed, and then stored inside of the internal bezier path memory. There are several different Path Type options available inside of the Path Shape control panel that work with the contents of the internal bezier path memory. The thing to be aware of is that some of those options will draw the complete contents of the internal bezier path memory as one individual paint stroke. Others will cycle through the individual paint paths contained inside of the internal path memory one by one.
So when editing a paint preset that uses the ‘Sketch to Internal Path Memory 1‘ path start Generator, you need to be aware of this distinction between a Path Type option that draws all of the bezier paths in the path memory in association with a single path start location, vs cycling through the individual bezier paths in the path memory and only drawing only one with each unique path start location.
This second option, cycling through the bezier paths one at a time is what you want to shoot for to create a sketch effect like the one we are building in today’s example. If you create a paint preset that uses the first option by mistake, then the entire bezier sketch will be drawn for each individual path start location. Typically this is not the kind of behavior you would want, for obvious reasons.
Let’s show how to put together a color watercolor sketch paint effect. The first screenshot below shows the Path Start control panel.
Note that the Generator parameter is set to the ‘Sketch to Internal Path Memory 1‘ option. This Generator option brings up 2 additional parameters, which let you set the number of Sketch Iterations, and a specific Sketch Edge effect. Increasing the Sketch Iterations builds additional complexity into the generated sketch effect. The specific Sketch Edge option choose different algorithms for how the bezier sketch curves are derived from the source image.
Note that the Max Stroke paramter is set to -1. This was done because the number of path start locations corresponds to the number of individual bezier paths generated by the sketch algorithm and stored in the internal bezier path memory. Choosing a Max Stroke of -1 insures that they all will be cycled through during auto-painting. A Max Stroke setting of -1 means do a complete cycle for Generator options that generate geometric scans, or that cycle through the contents of bezier path memories like this one does.
The generated path start locations will correspond to the initial starting point of each individual bezier path stored in the internal bezier path memory. If there are 100 bezier paths generated by the sketch algorithm and stored in the internal bezier path memory, then 100 paint strokes will be drawn, and each individual paint stroke will start at the starting location of the individual bezier paths, which are cycled through one at a time for different path start locations.
The 2nd gallery image above shows the Path Shape control panel. Note that the Path Type parameter is set to the Cycle Internal Path option. This is the path type option we want to use to generate a sketch paint effect, because it cycles through the individual bezier paths stored in the internal bezier path memory, and uses one per individual path start location. We set the Cycle Type parameter to the StrokeCt option, because we want to cycle through the individual bezier paths stored in the internal bezier path memory in order (so they match up with the cycling path start locations that are also based on cycling through the individual paths in order).
You can work with the Min Path Length parameter setting to filter out any sketch paths that are smaller than that Min Path Length. Note that I set the Min Path Length to be 36, so that any sketch paths that were less that 36 pixels in length are not drawn. This is useful to remove small paths that correspond to source image noise as opposed to structural edge details.
Depending on your particular source image, and the kind of sketch effect you are trying to create, you can experiment with this Min Path Length setting to paint the entire generated set of bezier sketch paths, or only a smaller set of the longest ones. What makes the most sense depends on your particular source image as well as what you are trying to achieve visually with your particular sketch paint effect.
The other thing to be aware of is that we don’t want to apply any additional path angle offsets or angle modulation to the individual paint strokes. Since they already define the source image sketch. So, we set the Path Angle to be Fixed with 0 Angle Offset as seen in the 3rd gallery image above of the Path Angle control panel.
Note that the paint preset will store the bezier paths that are in the internal bezier path memory when you last ran it. These are a part of the paint preset file, and will be read in again when you import the paint preset. However, as we mentioned above, that old set of bezier paths will be overwritten by the newly generated ones when you run the paint preset with a new source image.
A bad choice for the Path Type would be to use the Internal Path Memory 1 option, as opposed to the Cycle Internal Path Memory 1 option we used for this paint preset. If you choose the Path Type to be Internal Path Memory 1, then the complete sketch will be drawn multiple times, positioned according to the starting point of each individual bezier curve in the sketch. This is not only confusing, but quickly leads to a very chaotic painting.