Flying White: Reeds at Dusk
A wetland at dusk in dry brush: reeds that run dry toward their tips, a broken reflection, thin mist.
How it is made
Built around paintkit's pkdry dry-bristle brush. Each reed stalk is a loaded base and a drier, more broken tip sharing an endpoint; the water carries a broken reflection and the sky a thin dry-brush mist. The same primitive is used at three scales, over a banded dusk gradient from mix3.
Details
- Category
- Painting
- Tags
- landscape
- Libraries
- artkit, paintkit
- Added
- 2026-08-22
- Built in
- issue #80
- Page size
- 700 × 460 points
Source
View source the whole program in a scrolling window, or read gallery/flying_white_reeds.ps on GitHub. To draw it yourself, from a checkout of the repository:
pscat --page 700x460 gallery/flying_white_reeds.ps
The first 40 of 239 lines of the source
%!PS-Adobe-3.0
%%Title: Flying White: Reeds at Dusk
%%BoundingBox: 0 0 700 460
%%EndComments
% A wetland at dusk, built to put lib/paintkit.ps's `pkdry` (issue #43)
% front and center rather than treat it as a texture afterthought.
% "Flying white" (feibai) is the classical name for exactly what pkdry
% models: a brush run dry enough that individual bristles lose and
% regain contact with the paper, leaving streaks of bare ground inside
% what reads, from a distance, as one continuous stroke. Every reed
% stalk here is two `pkdry` calls sharing an endpoint -- a loaded, mostly
% -solid base and a drier, more broken tip -- so the breakup is doing
% real compositional work: it's how a reed reads as *rising out of*
% wet ground into dry air, not just an even width running out of ink.
% The water's reflection streaks and the birds are also `pkdry`, at the
% opposite extreme: a handful of bristles, mostly gap.
%
% Sky and water are plain banded gradients (ember_tree.ps's technique,
% ported to artkit's `mix3`/pal machinery instead of a hand-rolled HSB
% conversion) so the brushwork has an uncluttered field to sit in.
%
% Seeded rand: same file, same reeds, run to run.
(lib/artkit.ps) run
(lib/paintkit.ps) run
11 srand
/rd-ink [0.15 0.11 0.09] def % near-black warm ink, foreground reeds
/rd-pale [0.97 0.92 0.80] def % pale cream -- reads against dark water
/rd-horizon 150 def % y of the shoreline
% x y w h rd-hbox - (filled rect, ember_tree.ps's `box`)
/rd-hbox {
4 dict begin
/h exch def /w exch def /y exch def /x exch def
newpath x y moveto w 0 rlineto 0 h rlineto w neg 0 rlineto
closepath fill
end
} def