Every colour starts somewhere.
Choose a can. Five pigments. Sixty seconds.
Preparing the lab.
Tap for a drop. Hold for a fine stream. Release to stop.
Inside the experiment
Blue is weighted 20× yellow; magenta 4×, black 5×, and white 0.03×. Percentages are actual paint amounts, not optical weights. White is deliberately weak to permit saturated mixtures from a white base. Tap a pigment for one dose, or hold for a metered stream. Releasing closes the valve immediately; paint already falling still lands. White adds 30 drops per dose.
Colour is mixed using Mixbox when available, otherwise a 31-wavelength Kubelka–Munk approximation with synthetic spectra and approximate CIE colour-matching functions under D65. No RGB averaging. ΔE uses CIEDE2000 in D65 Lab. Axis feedback uses its weighted hue, lightness and chroma terms; near-neutral hue is unreliable.
The small unlit swatches are the judging references. Lighting and reflections intentionally change the appearance of paint in the 3D scene. No drying, glazing, surface texture or real paint-brand measurements are modelled. Empty can discards the current mix and restores 90 drops of white; it keeps the same target and remaining time. All five pigments are available from the start. Hints appear after stalled or worsening attempts, based on simulated pigment additions. Game verdicts are gentler than the raw measurement: ΔE ≤ 6 earns a match; a Lab hue-angle difference within 25° earns a colour-family result. Near neutrals, chroma is used instead. The actual ΔE is unchanged. Each study lasts 60 seconds; the current mix is scored automatically at zero. Three completed studies advance the target difficulty.
White concrete and paint have subtle procedural surface textures; these affect lighting only. The lab uses Three.js with physically based materials, an environment map built from studio light panels, real shadow maps, and detailed editable geometry. The renderer is embedded in this file and needs WebGL 2. Geometry is authored directly, not generated in Blender. A companion GLB contains the editable tube and bucket assets. This overhead version uses five procedural silver feed tubes with individual nozzles, stretching and detaching drops, impact craters and pigment ribbons that settle in the silver mixing bucket. These liquid effects are an animation model, not a full fluid solver. The unlit swatch and score update immediately; the 3D paint animates towards that mixture.