Despite the clear help pages, I don’t understand the Opacity and Flow settings for the brush.
"Opacity: If you set the opacity at 50%, the brush will cap this setting at 50%.
Flow: … will reach the maximum opacity setting selected."
I made a mask following the instructions (see below) but the opacity value is not respected and the flow value has no effect.
I made a mask with several brushstrokes.
I started from a medium gray, the histogram shows R=G=B=127.
1- First brushstroke Flow= 100% Opacity= 100%
The mask cleared + 4IL, the histogram shows RGB = 251.
2- Second brushstroke Flow= 100% Opacity= 50%
Histogram shows RGB = 215
(I expected 191, but no big deal, we’re not on a linear progression)
3- Third, a brushstroke Flow= 50% Opacity= 50%
Histogram shows RGB = 215
I expected ± 171 as the result of 127 + ((215 -127) / 2) !
Although the histogram on recovery shows RGB= 243, it should not have exceeded 215
>> Thus the Flow setting does’t works as expected!
I made a new mask.
4- First brush stroke Flow= 100% Opacity= 50%
The mask cleared + 4IL, the histogram indicates RGB = 215> OK
5- Second covering brush stroke Fux = 100% Opacity = 50%
Histogram shows RGB= 243 but 215 expected as the limit !
6 and 7- Flux = 50% Opacity = 50%
>> the same behavior appears: The opacity value is not respected and the flow value has no effect.
Who can help me ?
I have tested your UseCases with Affinity Photo, and the behavior seems to match. Only that the colors in Affinity in the first 2 cases match better to the expected values 255 and 191. This is strange, but other than that the behavior is the same.
I think the behavior is the following, starting with a flow of 100:
The opacity is the max value that is only in effect, as long as you HOLD DOWN your mouse key. If you let it go and hold it down again, the colors of the two strokes stack.So if you draw circles after the opacity barrier is reached, nothing becomes brighter as long as you hold down the mouse key. If you draw a new circle over the first one by releasing the mouse button inbetwen the brightness stacks again.
Now to the flow. The flow should be set to a value less than the opacity to have an effect on the color. Because if is is set to something >= the opacity value, the resulting color remains the same while overpainting until the mouse is released. There is only some feathering on the edges.
With a flow < opacity the colors stack also without the need to release the button, until the opacity barrier is reached.
Example: If you set the flow to 10% and opacity 50% you have to draw the circle 5 times over itself to reach the same color as flow 50-100% and opacity 50%.
Btw. this is also the reason, why I said, that we need a global opacity slider for a local adjustment mask, because without it, we have no chance to get a complex uniform mask with an opacity < 100%. Once you release the mouse and overpaint an area afterwards you are again over the opacity value you want to achieve,
“The opacity is the max value that is only in effect, as long as you HOLD DOWN your mouse key.”
I had noticed it.
“With a flow < opacity the colors stack also without the need to release the button, until the opacity barrier is reached.”
I sse the confusion.
When I read the help pages:
“If you set the flow to 13%, the first brushstroke will apply 13% of maximum opacity. A second stroke over the same area will add another 13% of the maximum value, and so on until the maximum opacity level is reached.”
The text is the same in french and it’s a confusion for me:
“A brushstrokes is apply a paint brush coating and start again”.
Do you see what I mean?
Now it’s working.
In fact it is very difficult not to spend again on the edges of the mask
Without a global opacity slider I would use the following constelations:
Flow 100, Opacity 100. Feather edges with opacity <50. Control effect strength with equalizer sliders. This allows to create uniformly opaque masks.
Flow <5, opacity 100. Work dodge and burn like by stacking the effect by overpainting the relevant areas.
Other useable configurations I could not find with the current capabilities. And yes, I needed also some experimentation to understand, how it works. Reading the help only was not enough for me to understand.
Thank you for posing this question, @Pieloe … and thanks, too, to @Asser for the clarifications.
I’m struggling with understanding brush refinements - so, it’s great to have a clear starting-point.