Overview
How are water painting effects implemented in software?
High level techniques
Consider the how brushes work in real life. A brush deposits water and pigment analogly (continuously). To reflect this digitally, we takes a snapshot of the brush’s texture that is the bristles on the brush’s tip and store it as a stamp or texture. Then the brush stroke is nothing but a series of stamp/textures.
- low alpha per stamp/dab (0.05 - 0.2)
- normal/multiply blending modes
Low-alpha pigment accumluation
When pigments overlap, color builds and the opacity increases. Digitally, we replicate this effect but having every stamp is very very light but pressure/overlap induces darker colors.
- radial gradients
- two-pass stamps (inner wash + ege ring)
Soft edges + edge pooling (bloom)
Water spreads on contact; digitally, we slur the pixels slightly.
- small blur
Irregularity
Human strokes are irregular and not often modelled by liner equations. We want to add jitter to the position, size, and alpha.
- position jitter
- size jitter
- alpha jitter
Stroke design
To produce this, we want the following:
- a stamp function