Ultra Fractal Tutorial -- Solid Color -- Part Two
by Robert "Red" Williams
The first part of this tutorial on Solid Color was primarily intended to
cover how the solid color could be used to create large zones of partial
or complete transparency in an image using transforms in the family
typified by Luke Plant's Scissors. In it, I gave examples of how to
activate the Inside and Outside Solid Colors using the Transfer Function
choice of "None". This action removes the entire zone (Inside or Outside)
from the influence of the coloring method and assigns all points within it
the applicable Solid Color. I did not address those cases in which the
coloring algorithm assigns the solid color to certain pixels while
assigning color index numbers to others. In the latter instance, points
assigned the Solid Color will be colored the Solid Color regardless of the
choice of Transfer Function. This part of the tutorial covers such a
situation. It was originally written for a different purpose; therefore,
there is some duplication of content and you may perceive a certain lack
of coherence with respect to Part One. For that, I apologize, but I don't
think the potential for improvement justifies the effort it would require
to completely re-write and integrate both parts.
Let's begin with some very basic descriptions. First of all, there are
inside and outside points. Both may be colored but the terms inside and
outside coloring are not definitive. Both sets of points may be colored
in three ways -- by assigning a fixed color (solid color), by assigning a
fixed color index number or by assigning a variable color index number
according to a coloring algorithm. All of these colors may co-exist within
a single layer of a single image.
Transforms can only assign solid colors but they can assign it to either
inside or outside points. This is the solid color accessible through the
little "Mandelbug" icon on the Mapping Tab.
Coloring methods may make all three types of color assignments, but each
only to its own set of points. You may select the same method for both
inside and outside coloring but you must select it on both the Inside and
Outside Tabs and they will act independently except that they must share
the Gradient and Alpha Channel Editors.
Once a point has been assigned a color, that decision is irrevocable; thus,
transforms, which act first, are dominant. It isn't that they override --
it's simply that they're first and the assignment can't be changed.
Coloring methods "usually" assign a color index number to each point
according to how that point's orbit behaved as the formula was iterated;
however, pixels may be "trapped" in various ways and assigned a solid color
or a fixed color index number.
A color index number just describes a position on the Gradient Editor.
The left-hand end is 0 (zero) and the right-hand end is 1.0. Intermediate
positions are described by decimal fractions with 0.5 representing the
middle of the editor. (This assumes that the Color Density value is 1.0)
Points which are assigned a color index number are colored whatever color
occupies that position on the Gradient Editor. Positions between control
points are interpolated by a method determined by whether or not you check
the Smooth Curves input box. If you alter the Gradient Editor, the pixels
will be re-colored without recalculation of the fractal.
The Alpha Channel and Opacity values do not affect the coloring of a layer
-- they only affect the way layers are merged. When layers are merged,
UF calculates a resultant color for each pixel based on a mathematical
formula which is different for each merge mode. If a pixel in a higher
layer is partially transparent, its effect is less than it would be if it
were opaque. If the nature of the layers being merged is such that the
appearance doesn't change much, the apparent effects of partial
transparency will also be limited; nonetheless, partial transparency acts
exactly the same way for all merge modes.
Pixels assigned the Solid Color by the coloring method will be colored
accordingly, regardless of the Transfer Function selection even if other
points are assigned different coloring.
If the Inside or Outside Solid color is activated by selecting Transfer
Function = None on the appropriate Tab, all the inside or outside points
not assigned a solid color by a transform will be colored the corresponding
solid color. (Again, pixels having been assigned the solid color by a
transform have been removed from the coloring method's sphere of influence.)
The Alpha Channel Editor assigns a degree of Opacity to an index position
which corresponds exactly to the index positions on the Gradient Editor.
This means that any point which has been assigned a color index number may
be affected by the alpha channel regardless of whether it is a fixed index
number or one which was assigned according to a formula. On the other hand,
points which have not been assigned a color index number; i.e., a solid
color are not affected by the alpha channel. The alpha channel does not act
on a color -- it acts on a position on the Gradient Editor. If there is
another band of the same color at a different position on the editor, it
*will not* be affected. (This does not prevent you from altering the transparency of the second
position by adding control point(s) to the Alpha Channel Editor.)
What some people may not realize is that all these types of color assignment
may coexist. For example, my Iteration Trap coloring method allows the
artist to divide an image into three distinct zones depending on the number
of iterations required for each point's orbit to reach the bailout condition.
Pixels within each zone may be assigned an index value depending on a formula,
a fixed index value or the solid color. The coloring method I wrote to
accompany this tutorial isn't very useful otherwise, but it creates stripes
which alternate between solid and formula coloring.
This UPR demonstrates most of these points.
Layer 2 is divided into a number of zones:
Outside points:
- Chartreuse — Outside Solid
- Cyan — Fixed Index
- Graduated Blue — Formula Index
Inside points:
- Dark Green — Inside Solid
- Graduated Gold — Formula Index
Transform:
If you move the slider on the Gradient Editor, you will see that the colors
in the cyan zone and the two Formula Index zones are affected. The action
is a little different. The color change in the cyan zone is a rise and fall
of intensity because all the points are the same index number and moving
the slider simply changes the color at that position on the Gradient Editor.
In the other two zones, the color appears to "move through" the image. Note
that in the inside region, the dark green (Inside Solid color) stripes are
unaffected.
Now click on the Alpha Channel Editor and move its slider sidewise. As you
do, you will see that the same three zones are affected. This illustrates
the point that only pixels colored by assigning an index number are affected
by the Alpha Channel Editor. Again note that the dark green stripes are
unaffected. Also, note that Alpha Channel affects the entire cyan zone at
once but that the transparent region moves through the image just as the
colors do in those areas assgned index numbers by the inside and outside
coloring formulae.
You may alter the Opacity of the solid color zones by clicking on the
appropriate icons and entering a number from 0 to 255 in the Opacity input
boxes.
There is one more interesting and potentially useful bit of information that
I should point out. If you move the Layer 2 opacity slider back and forth,
the transparency of the entire layer is affected. If you delete two of the
control points on the Alpha Channel Editor and drag the remaining point up
and down, you will see that the solid color zones are unaffected whereas the
effect on the other zones is exactly the same as when movin the Opacity slider.
Back to UF Tutorials