Brush Caching
Brush caching is designed to make your favourite brushes feel fast as early as possible. Instead of recomputing the same transformed brush stamp over and over, Lumi can keep a saved cache of the brush shapes you actually use and reload that cache automatically later.
Overview
The feature is built around the idea that many expressive brushes still revisit the same practical combinations of size, angle, hardness, and aspect ratio during painting. When those combinations are reused, Lumi can serve the transformed brush stamp directly from cache instead of rebuilding it.
The result is:
- faster stroke startup after a cache has been saved
- smoother repeated use of favourite presets
- less wasted recomputation during long painting sessions
- automatic restore of saved caches when the preset is used again
Intent
Brush caching is meant for brushes you return to often: core painting presets, favourite inking tools, textured dry brushes, and other brushes whose transformed stamps are expensive enough to notice.
The goal is not to pre-bake every theoretical brush state. The goal is to let real painting usage populate the most valuable states first, then save that populated cache so the brush is already warm the next time you use it.
How it Works
Brush caching works together with brush quantization.
When quantization is enabled for a dynamics preset, transform-affecting outputs are snapped to discrete steps. That gives Lumi a finite set of reusable brush states. As you paint:
- Lumi checks whether the transformed stamp already exists in cache.
- If it does, the stamp is reused immediately.
- If it does not, Lumi builds it once and stores it.
- Over time, the cache fills with the brush states you actually use.
If you save that cache, Lumi can autoload it later so the brush starts closer to a warmed-up state instead of rebuilding everything from scratch.
Typical Workflow
- Choose a brush preset you use frequently.
- Enable quantization for its dynamics.
- Paint normally for a while so the cache fills organically.
- Open the Tool Preset Editor and inspect the Preset Cache section.
- Watch the live metrics:
- Hit Rate
- Coverage
- Memory
- Click Save when the cache looks worthwhile.
- On later sessions, Lumi autoloads that saved cache when the preset becomes active.
This makes the preset feel fast sooner, especially for brushes with expensive transforms or large stamps.
Where to Find It
Dynamics Editor
Use the Dynamics Editor to control quantization:
- enable quantization
- choose the global step count
- optionally override step counts per output axis
Quantization is what makes the cache practical by reducing continuous variation into reusable bins.
Tool Preset Editor
Use the Tool Preset Editor to manage the cache for the current preset:
- Save — persist the current in-memory cache to disk
- Load — restore a previously saved cache
- Free Memory — release the in-memory cache without deleting the saved copy
- Remove — delete the saved cache from disk
The Preset Cache expander also shows live hit rate, coverage, and memory use.
What Gets Cached
Brush caching targets transformed brush stamps: the expensive rasterised results after size, angle, hardness, aspect ratio, and related transform inputs have been resolved.
It is most useful when:
- the brush has costly transform work
- the same preset is used across many sessions
- the brush revisits similar dynamic states repeatedly
- quick startup responsiveness matters
It is less useful for brushes whose transform state changes wildly and rarely repeats.
Automatic Loading
Saved caches are intended to help from the start of a session, not only after you have already painted for a while.
When a saved cache exists for the active preset, Lumi can load it automatically so your favourite brush starts with many useful states already available. That reduces the cold-start period and gets the brush closer to peak responsiveness immediately.
Memory Safety
Brush caching is designed to improve speed without taking over the machine.
Lumi tracks cache memory usage, exposes it in the UI, and applies runtime limits under memory pressure. If the system is short on available RAM, cache growth is constrained automatically.
Best Use Cases
Brush caching is especially good for:
- favourite daily-driver brushes
- textured brushes used throughout a painting
- large expressive brushes with heavy transform cost
- brush presets shared across repeated illustration workflows
- presets you want to feel “ready” as soon as you select them
In Short
Brush caching lets Lumi learn the brush states you actually use, save them, and bring them back automatically later. It is a practical speed feature for favourite presets: paint with the brush, let the cache fill, save it, and future sessions start faster.