What a scene does

No surface can be that colourful

There is a hard bound on object colour that no pigment will ever move, and it follows from a reflectance being at most 1. Its boundary is generated by two numbers, it shrinks by a factor of eleven from dark to light — and measured against it properly, sRGB reaches 40% of what a surface could be at mid lightness while Rec. 2020 reaches 106%.

Assumes Why blue and yellow make green and A colour that moves with the viewer.

Almost every boundary on this site is an engineering limit. A display gamut is a choice of primaries and could be widened. A lamp’s rendering is a choice of phosphors. A tolerance is a negotiated number. Each of them could be moved by somebody with a better idea.

There is one boundary here that cannot be moved by anybody, and it follows from a single inequality: a reflectance is at most 1, because a surface that returns more light than reached it is a lamp.

What no surface can be more colourful thanThe MacAdam limits at 4 lightnesses under D65, each computed by sweeping two-transition reflectances over the whole band and keeping those that land at the target luminance factor. This is a physical bound rather than a gamut: a reflectance above 1 is a surface that emits, so no pigment anybody invents will ever put an object colour outside these curves. The boundary shrinks steeply as the surface lightens, from 0.310 at Y = 0.1 to 0.028 at Y = 0.9 — a very light surface has almost no room to be colourful, and that is physics rather than pigment chemistry. Drawn against it is sRGB at the *same* luminance factor rather than as a primary triangle, because a triangle is what a display can reach at some luminance and the bound is what a surface can reach at one; matched properly, sRGB covers 36% at Y = 0.1, 40% at Y = 0.3, 40% at Y = 0.6, 21% at Y = 0.9. The faint triangle is the familiar figure, kept only to show how much it misleads.0.00.20.40.60.80.00.20.40.60.8xy460480500520540560580600620Y = 0.1Y = 0.3Y = 0.6Y = 0.9D65sRGB matched at YCIE 1931 2° observer
Fig. 1 The MacAdam limits at four lightnesses — the boundary of every colour a surface can have. The dashed curves are sRGB’s reachable chromaticities at the same luminance factor, which is the only fair comparison; the faint triangle is the familiar primary triangle, kept to show how much it misleads.

The claim

At any given lightness, the most saturated reflectance possible takes only the values 0 and 1 and has exactly two transitions. So the entire boundary of the set of physically possible surface colours is generated by two numbers, and it is a hard physical bound rather than a gamut.

Schrödinger’s argument for the shape is short and worth following, because it explains why the answer is so unlike a real pigment.

Why the extremes are rectangular

Suppose a reflectance ρ(λ)\rho(\lambda) produces some chromaticity at some luminance factor, and ask whether it can be made more saturated without changing the luminance.

Anywhere ρ\rho takes an intermediate value, there is a choice. Raising it towards 1 adds power; lowering it towards 0 removes power. If the wavelength in question is one that helps the target chromaticity, keeping it partially reflective is throwing away power that could have been kept. If it is one that hurts, keeping any of it is retaining power that could have been discarded.

So at the optimum every wavelength is either fully on or fully off — an intermediate value is always an unexploited opportunity. And since the useful wavelengths for any given chromaticity form a contiguous region of the spectrum, the optimum is a band, or the complement of a band, with exactly two transitions.

That gives the boundary as a two-parameter family. Sweep the two transition wavelengths over the whole band, keep the ones landing at the target luminance factor, and take the outer boundary of their chromaticities. Nothing else is required.

The shape of the most colourful reflectance there can be. Schrödinger's result: at any given lightness the most saturated possible reflectance takes only the values 0 and 1 and has exactly two transitions. Anything intermediate is keeping power it could have thrown away or throwing away power it could have kept. So the entire boundary of the set of physically possible surface colours is generated by two numbers, and the shapes below — a band, its complement, and a narrow band — are the only kind of reflectance that reaches it. No real pigment looks remotely like this, which is why the bound is comfortable rather than tight.
Fig. 2 The shape of the most colourful reflectance there can be: a band, its complement, and a narrow band. No real pigment looks remotely like this, which is why the bound is comfortable rather than tight — real reflectances are smooth and lose a great deal to their own gradual transitions.

The bound shrinks towards white

The most useful thing in the whole calculation is how strongly the bound depends on lightness.

luminance factor YY area of the bound
0.1 0.30988
0.3 0.22151
0.6 0.11455
0.9 0.02821

A factor of eleven, from dark to light. At Y=0.9Y = 0.9 there is almost no room to be colourful at all, and the reason is immediate from the argument above: to be light, a reflectance must be near 1 over most of the band; to be saturated, it must be 0 over most of the band. Those are opposite demands on the same integral, and near either extreme of lightness one of them wins.

This is the exact and general form of a trade that shows up repeatedly in this field. Mixing pigments loses light every time it is applied. A thicker absorbing path is more saturated and darker. Both are moves inside a region whose shape is set here, and neither can escape it.

It also explains something anybody who has looked at a paint fan deck will have noticed: the pale tints are all nearly neutral, and the saturated colours are all mid-toned or dark. That is not a limitation of the pigments available. There is no such thing as a very light, very saturated surface, and a fan deck’s shape is the shape of this bound.

The comparison that had to be done twice

The obvious thing to do next is compare a display gamut against the bound, and the obvious way to do it is wrong.

Drawing the sRGB primary triangle beside an optimal-colour boundary invites a direct comparison of areas. Done that way, the sRGB triangle has area 0.11205 and the surface bound at Y=0.6Y = 0.6 has area 0.11455 — almost exactly equal, which looks like a striking result and is a coincidence between two incommensurable quantities.

The triangle is the set of chromaticities a display can reach at some luminance. The bound is the set a surface can reach at one. Comparing them is comparing a projection with a slice, and the near-equality of those two numbers means nothing whatever.

Matched properly — asking which chromaticities the display can reach at each luminance factor — the answer is different and much more interesting:

YY sRGB Display P3 Rec. 2020
0.1 36% 49% 68%
0.3 40% 58% 86%
0.6 40% 65% 106%
0.9 21% 29% 48%

Three things fall out of that table.

sRGB reaches about 40% of the physically possible through the middle of the lightness range, which is a much harsher verdict than the primary triangle suggests and is the honest one.

Rec. 2020 exceeds the bound at Y=0.6Y = 0.6. A Rec. 2020 display can be more colourful than any surface can be at mid lightness — 1.06 times the area — which is a strange and real property of a wide-gamut display: some of what it can show is not merely absent from any screen a viewer owns, it is absent from the physical world of objects.

Every space collapses at Y=0.9Y = 0.9. No display reaches half the bound there. Light, saturated colours are hard for surfaces and hard for displays, and they are hard for the two for different reasons — the surface is bounded by ρ1\rho \le 1 and the display by its primaries’ luminances.

What no surface can be more colourful than. The MacAdam limits at 4 lightnesses under D65, each computed by sweeping two-transition reflectances over the whole band and keeping those that land at the target luminance factor. This is a physical bound rather than a gamut: a reflectance above 1 is a surface that emits, so no pigment anybody invents will ever put an object colour outside these curves. The boundary shrinks steeply as the surface lightens, from 0.310 at Y = 0.1 to 0.028 at Y = 0.9 — a very light surface has almost no room to be colourful, and that is physics rather than pigment chemistry. Drawn against it is Rec. 2020 at the same luminance factor rather than as a primary triangle, because a triangle is what a display can reach at some luminance and the bound is what a surface can reach at one; matched properly, Rec. 2020 covers 68% at Y = 0.1, 86% at Y = 0.3, 106% at Y = 0.6, 48% at Y = 0.9. The faint triangle is the familiar figure, kept only to show how much it misleads.
Fig. 3 The same bounds with Rec. 2020 matched at each luminance factor. At Y = 0.6 the dashed curve encloses slightly more area than the solid one — a wide-gamut display can be more colourful at mid lightness than any surface can be, and at Y = 0.9 it reaches under half the bound.

Why a display can exceed a surface at all

The Rec. 2020 result reads as paradoxical and is not, and the reason says something about what the two bounds are.

A surface is bounded because it can only return light that arrived. Its most saturated option is a narrow band of the illuminant at full reflectance, and the luminance of that option is fixed by how much of the illuminant’s power falls in that band. To be light as well as saturated, it would need a band that is both narrow and carries most of the power, and no illuminant is shaped that way.

A display is under no such constraint. Its primaries are emitters and their luminances are set by how much power the panel puts into them, not by what a room’s lamp happens to supply. A Rec. 2020 primary sits essentially on the spectral locus and can be driven to whatever luminance the hardware allows.

So the two bounds have different mechanisms and there is no reason for one to contain the other. A display exceeds a surface where its narrow primaries can be made bright; a surface exceeds a display where the display’s triangle simply does not reach, which happens in the cyan and deep violet regions at every lightness.

That is the useful way to read a gamut-coverage percentage. A number like “98% of Pointer’s gamut” is a claim about overlap with measured real surfaces, not about the theoretical bound, and the two questions have different answers. What a gamut costs takes the same comparison into a uniform space, where the areas above stop being misleading in the way flagged below.

sRGB, Display P3 and Rec. 2020 compared on the chromaticity diagram. Three nested triangles inside the horseshoe. sRGB covers 74 per cent of the area P3 covers. Rec. 2020's red and green primaries sit on the spectral locus itself, within 0.000 and 0.002 of it, meaning they are monochromatic.
Fig. 4 The display gamuts compared among themselves, at one luminance. Ranking them against each other is a different question from ranking any of them against the physical bound, and the second is the one that does not move when a manufacturer improves a panel.

Where the two comparisons coincide

The matched table can be checked against the triangle areas the essay rejects, and doing so says exactly what the naive comparison was measuring.

Multiplying the coverage percentages by the bound’s own area gives the absolute area each display reaches at each lightness:

Y bound sRGB Display P3 Rec. 2020 each as a share of that space’s own triangle
0.1 0.30988 0.11156 0.15184 0.21072 100 % · 100 % · 99 %
0.3 0.22151 0.08860 0.12848 0.19050 79 % · 85 % · 90 %
0.6 0.11455 0.04582 0.07446 0.12142 41 % · 49 % · 57 %
0.9 0.02821 0.00592 0.00818 0.01354 5 % · 5 % · 6 %

At Y = 0.1 every space reaches its entire primary triangle, to within half a per cent — 0.11156 against sRGB’s 0.11205, 0.21072 against Rec. 2020’s 0.21187. That is a check on the whole table, since those triangle areas were computed from the published primaries and never entered the sweep.

It also identifies the error in the rejected comparison precisely. The primary triangle is not incomparable with a slice; it is the slice, in the limit of low lightness, because a display run dark can reach essentially any chromaticity inside its triangle. So drawing the triangle against the Y = 0.6 bound is not comparing a projection with a slice so much as comparing sRGB at its dark end with a surface at mid lightness — two different lightnesses, silently. The 2.2 per cent agreement is a coincidence between the sRGB triangle and a bound three quarters of the way up the lightness range.

The like-for-like version of the rejected comparison

There is a projection-against-projection number, and it is worth having because it is what the triangle comparison was reaching for.

The optimal-colour solid’s projection onto the chromaticity plane is, in the limit, the whole horseshoe: as the luminance factor falls to zero, a narrow band at any wavelength approaches that wavelength’s locus point, and the complement of a band approaches the line of purples. Computed on this collection’s own locus, the horseshoe encloses 0.33332. Against that:

space triangle share of the diagram
sRGB 0.11205 33.6 %
Display P3 0.15200 45.6 %
Rec. 2020 0.21187 63.6 %

Those are comparable quantities — both are what is reachable at some lightness — and they are the honest headline the triangle picture supports. Rec. 2020 covers under two thirds of the diagram, which sits oddly beside its 106 per cent at Y = 0.6 and is not in conflict with it: the excess at mid lightness and the shortfall over the whole diagram are statements about different slices of the same solid.

Displays collapse twice as fast as the bound does

Every space collapses at Y = 0.9 is the table’s third reading, and the percentages understate it, because they are a ratio of two quantities that are both falling.

From Y = 0.6 to Y = 0.9 the bound itself falls by a factor of 4.1. Over the same interval sRGB’s reachable area falls by 7.7, Display P3’s by 9.1 and Rec. 2020’s by 9.0. So a display loses roughly twice as fast as the physics does, and the coverage percentage — halving from 40 to 21 — is the quotient of a nearly eightfold fall by a fourfold one.

In absolute terms all three spaces end at the same place. At Y = 0.9 every one of them reaches five or six per cent of its own primary triangle, and the ordering between them survives while the distances between them do not: 0.0059, 0.0082 and 0.0135 of a diagram whose total is a third. A wide-gamut panel buys a great deal at mid lightness and very little at the light end, and the reason is the one the essay gives for the surface — to be light, a primary mixture must be mostly the bright primary, which is the least saturated direction available.

What was computed, and how

The sweep is over transition pairs on the 5 nm grid, keeping reflectances whose luminance factor lands within a stated tolerance of the target, and taking the convex hull of their chromaticities. The tolerance is printed, and it is the reason the point counts differ between lightnesses — there are more optimal colours near the extremes because the constraint is easier to satisfy there.

The hull is a genuine convex hull, by Andrew’s monotone chain, so the boundary closes as a curve rather than being a cloud of points with a line drawn round it by eye.

Every constructed reflectance on this site is checked against it. assertNoSurfaceBeatsTheLimit takes three test reflectances, computes each one’s luminance factor, computes the bound at that lightness, and requires the chromaticity to fall inside. A bound that nothing was ever tested against would be a decoration.

The illuminant is named because the bound depends on it. An optimal colour is a reflectance and its chromaticity is the reflectance times the illuminant, integrated — so the boundary moves when the light changes. Every figure names both the illuminant and the observer, and this is a case where neither is a formality.

The bound is computed against a light, so it moves with the light, and a tungsten lamp is the other end of the range anybody measures under.

What no surface can be more colourful than. The MacAdam limits at 4 lightnesses under A, each computed by sweeping two-transition reflectances over the whole band and keeping those that land at the target luminance factor. This is a physical bound rather than a gamut: a reflectance above 1 is a surface that emits, so no pigment anybody invents will ever put an object colour outside these curves. The boundary shrinks steeply as the surface lightens, from 0.285 at Y = 0.1 to 0.011 at Y = 0.9 — a very light surface has almost no room to be colourful, and that is physics rather than pigment chemistry. Drawn against it is sRGB at the same luminance factor rather than as a primary triangle, because a triangle is what a display can reach at some luminance and the bound is what a surface can reach at one; matched properly, sRGB covers 39% at Y = 0.1, 55% at Y = 0.3, 78% at Y = 0.6, 53% at Y = 0.9. The faint triangle is the familiar figure, kept only to show how much it misleads.
Fig. 5 The MacAdam limits at four lightnesses under illuminant A, each computed by sweeping two-transition reflectances and keeping those that land at the target luminance factor. It is a physical bound rather than a gamut, and the bound under A is not the bound under daylight.

What the pictures cannot show

Nearly all of the interesting region is outside the display’s gamut, which is the point and is also a drawing problem. The bound encloses colours no screen can show, so the figures mark the unreachable region rather than filling it — this site’s second figure rule — and a reader is therefore looking at a boundary around a hatched area rather than at the colours it bounds.

A chromaticity diagram divides luminance out, and this whole essay is about luminance. Drawing a two-dimensional slice at each of four lightnesses is the honest compromise; the object being described is a three-dimensional solid, and a chromaticity diagram is a shadow of one. The solid’s shape — pointed at black, pointed at white, widest in the middle — is what the table of areas reports and what the picture cannot.

Areas on the CIE 1931 diagram are not perceptually meaningful. The diagram is famously non-uniform, so a percentage-of-area comparison overweights the green region where the diagram is stretched. The percentages in the table above are therefore relative statements between quantities measured the same way, and they are not claims about how much more colourful anything looks. What a gamut costs, measured in a uniform space, is a different essay and gets different numbers.

Drawing a wider display gamut inside the same bound prices how much of what a surface cannot be is nevertheless unreachable anyway.

What no surface can be more colourful than. The MacAdam limits at 4 lightnesses under D65, each computed by sweeping two-transition reflectances over the whole band and keeping those that land at the target luminance factor. This is a physical bound rather than a gamut: a reflectance above 1 is a surface that emits, so no pigment anybody invents will ever put an object colour outside these curves. The boundary shrinks steeply as the surface lightens, from 0.310 at Y = 0.1 to 0.028 at Y = 0.9 — a very light surface has almost no room to be colourful, and that is physics rather than pigment chemistry. Drawn against it is Display P3 at the same luminance factor rather than as a primary triangle, because a triangle is what a display can reach at some luminance and the bound is what a surface can reach at one; matched properly, Display P3 covers 49% at Y = 0.1, 58% at Y = 0.3, 65% at Y = 0.6, 29% at Y = 0.9. The faint triangle is the familiar figure, kept only to show how much it misleads.
Fig. 6 The same four limits with Display P3 rather than sRGB drawn inside them. The bound has not moved — it is a property of reflectances and the light — and the gap between it and the display is what a wider gamut narrows.

Where the model stops

Non-fluorescent, opaque, non-goniochromatic surfaces. Every one of those qualifications is doing work. A fluorescent surface can have a reflectance factor above 1 at wavelengths where it emits, so it genuinely escapes the bound — which is what a brightened paper does, and it is why “whiter than white” is not marketing but a measurement. A structurally coloured surface satisfies the bound at each angle and can be outside it if the angle is unspecified.

The 5 nm grid quantises the transitions, so the computed boundary is slightly inside the true one. Finer grids move it outward marginally and do not change any conclusion here.

Convexity is assumed by taking a hull. The set of optimal colours at a fixed luminance is convex for the reason Schrödinger’s argument gives, and the hull is a construction rather than a discovery. A non-convex boundary would indicate an error rather than a physical feature.

Nothing here is about appearance. These are chromaticities and luminance factors. What a maximally saturated surface looks like depends on its surround and its adapting state, which is a different field on this site entirely.

And a surface in a scene is not a surface on a chart. Everything on this page is the reflectance of an isolated sample under a stated illuminant, measured once. Put it in a corner and the light has bounced, so what reaches the eye is Eρ/(1qρ)E\rho/(1-q\rho) rather than EρE\rho — and that expression can sit outside this boundary, because it is no longer a reflectance times an illuminant. The bound constrains materials, not scenes.

What no surface can be more colourful than. The MacAdam limits at 3 lightnesses under D65, each computed by sweeping two-transition reflectances over the whole band and keeping those that land at the target luminance factor. This is a physical bound rather than a gamut: a reflectance above 1 is a surface that emits, so no pigment anybody invents will ever put an object colour outside these curves. The boundary shrinks steeply as the surface lightens, from 0.265 at Y = 0.2 to 0.055 at Y = 0.8 — a very light surface has almost no room to be colourful, and that is physics rather than pigment chemistry. Drawn against it is Display P3 at the same luminance factor rather than as a primary triangle, because a triangle is what a display can reach at some luminance and the bound is what a surface can reach at one; matched properly, Display P3 covers 56% at Y = 0.2, 60% at Y = 0.5, 57% at Y = 0.8. The faint triangle is the familiar figure, kept only to show how much it misleads.
Fig. 7 Display P3 matched at three luminance factors. It sits between the other two spaces everywhere and collapses at the light end exactly as they do — the shape of the failure is the same for every set of primaries, because the cause is the bound narrowing rather than anything about the display.

The generalisation

Two transferable points, and the second is the one that cost a redraw.

A bound derived from a constraint on the primitive quantity is stronger than any bound derived from current practice. ρ1\rho \le 1 is not a statement about pigments; it is conservation of energy applied to a surface. So this boundary will still be there when every pigment in use today has been replaced, which is not true of any gamut, tolerance or rendering index on this site. When a limit is wanted, it is worth asking what the primitive quantity is constrained by rather than surveying what has been achieved.

Two quantities can be nearly equal and incomparable, and the coincidence is more dangerous than a disagreement. The sRGB triangle at 0.11205 against the surface bound at 0.11455 is a 2% agreement between a projection and a slice. Had the two numbers differed by a factor of five the error would have been caught immediately; agreeing closely, it read as a finding. A suspiciously satisfying comparison deserves the same scrutiny as a suspicious one, and the check is to ask whether the two quantities are functions of the same variables. These were not: one integrates over luminance and the other fixes it.

What no surface can be more colourful than. The MacAdam limits at 5 lightnesses under D65, each computed by sweeping two-transition reflectances over the whole band and keeping those that land at the target luminance factor. This is a physical bound rather than a gamut: a reflectance above 1 is a surface that emits, so no pigment anybody invents will ever put an object colour outside these curves. The boundary shrinks steeply as the surface lightens, from 0.236 at Y = 0.05 to 0.014 at Y = 0.95 — a very light surface has almost no room to be colourful, and that is physics rather than pigment chemistry. Drawn against it is sRGB at the same luminance factor rather than as a primary triangle, because a triangle is what a display can reach at some luminance and the bound is what a surface can reach at one; matched properly, sRGB covers 47% at Y = 0.05, 42% at Y = 0.25, 40% at Y = 0.5, 47% at Y = 0.75, 8% at Y = 0.95. The faint triangle is the familiar figure, kept only to show how much it misleads.
Fig. 8 Five lightnesses on a coarser transition grid. The boundary’s collapse towards white is not an artefact of how finely the transitions were swept — coarsening the sweep moves the curves inward slightly and leaves the shape of the family unchanged.

Who found it, and when

Schrödinger worked out the optimal-colour argument in 1920, in a long paper on the theory of colour measurement written before he turned to wave mechanics. The result — that the extremes of the object-colour solid are reflectances taking only the values 0 and 1 — is his, and the reasoning is essentially the exchange argument above.

MacAdam computed the boundaries numerically in 1935, which is why they carry his name, and the computation was substantial arithmetic by hand: a sweep over transition pairs, integrated against the colour-matching functions adopted four years earlier. His two papers on the maximum visual efficiency of coloured materials are the source of the tables still cited.

Rösch had described the solid’s general shape in 1929, which is why it is sometimes the Rösch–MacAdam colour solid. The name that stuck depends on the field, and all three men are describing the same object.

Pointer’s 1980 survey is the empirical counterpart and is worth naming for contrast. He measured over four thousand real surface colours and mapped the region they actually occupy, which is substantially inside the theoretical bound — real pigments are smooth and lose a great deal to their gradual transitions. So there are two boundaries in play: what physics permits, and what chemistry has managed. The gap between them is large, and it is the one place on this page where an engineer could still make progress.

Where the ladder goes next

Two neighbours on this rung leave the material behind for the measurement. A scene has no white point shows that a single white balance cannot be right across a scene lit by two lamps, and the failure is structural rather than a matter of a better estimator. Gloss changes the measurement shows the same sample returning two different, both-correct answers depending on the instrument’s geometry.

Below, the field’s base rung is where all of it starts: a bounce is a multiplication, and everything above is a consequence of doing that more than once.

What this makes readable

Essays that name this one as a prerequisite.

Named alongside this one

Essays reaching for the same objects. Nobody chose these; they are what the index of named objects makes visible.

What links here

The 8 essays that link to this one and share the most of its objects, of 21 that link here.

The objects this essay names

Each one links to every other essay that touches it.

ChromaticityDisplay gamutGamutLuminanceMacadam limitsObject-colour solidOptimal coloursPrimariesReflectanceStandard observer