Flat & pattern fills
Every fill here builds its region as described in the Fills overview: the gesture is closed into a loop, offset, and smoothed. The region is represented as a signed distance field in the fragment shader.
Blob fills
open full size ↗Three flat fills: the original blob, a spiky version, and a wobbly version.
Spikes: An integer number of spikes fits around the boundary, so the profile meets at a valley along the seam. Each spike's height and lean are determined by a hash of its index. Spikes extend only outward, and every valley returns to the base contour, so the fill always covers the original region.
Wobble: The bump offset uses noise based on world position rather than position along the arc, avoiding a seam.
Patterned fills
open full size ↗Three flat fills with repeating patterns. Each pattern is evaluated in world space in the shader, so it stays fixed regardless of where the shape is placed.
Polka dots: Circles arranged on a hexagonal lattice, each with a randomly selected palette color and a small, seeded offset from its lattice point. The paper shows through the gaps.
Squares: A grid rotated 45 degrees, with a colored square inset in each cell and no offset.
Waves: Alternating, undulating bands in two palette colors, inspired by Bridget Riley.
Try drawing
open full size ↗Try drawing freely with the tools on this page.