What a machine computes

A curved screen is eight flat ones

A projection matrix is a plane and nothing else, so a curved display cannot be rendered — it has to be driven as several planes and assembled. The gap between chord and arc is the whole error, it goes as the square of the angle each piece spans, and the piece count therefore goes as the inverse root of the tolerance — three for eight pixels, eight for one, fifteen for a quarter.

Worth reading first: A tile is an off-centre frustum · Four numbers and a window · The screen is a picture surface too.

A renderer cannot draw a picture on a curved surface. Not “does not by default” — cannot, in the same sense that a straightedge cannot draw a circle.

Four numbers and a window is the reason. A projection matrix carries the focal length and the principal point in its four sides, the near and far planes in its depth row, and one entry that makes the whole thing a perspective at all; what it produces is a plane picture from a centre. Nothing in it has room for a surface.

So a curved display is driven the way a dome or a cave is driven: several plane projections, assembled. This essay prices the assembly.

A curved screen driven as 3 flat piecesThe screen in plan: the arc it actually is, the 3 chords a renderer's 3 projection matrices draw on, and the seat. A projection matrix is a plane, so a curved display is driven as several of them and assembled — exactly as a dome or a cave is. The gap between arc and chord is 6.80 mm at its widest, which from this seat is 5.50 pixels of a 0.70 m picture. It is never zero for any finite count.the seat3 chords against the arccurved monitor, 3 flat pieces6.80 mm of sag · 5.50 px at the seat
Fig. 1 A curved monitor in plan, with the arc it is and the chords a renderer’s projection matrices actually draw on.

What is exact and what is not

A tile is an off-centre frustum settles the case where the pieces are coplanar, and settles it completely: a picture rendered in tiles reassembles to the last bit, provided each tile’s frustum is the whole frustum’s sides read at that tile’s own pixel bounds. Aiming the camera at each tile instead is defensible at every step and is a different picture, out by about a tenth of a tile.

Here the pieces are not coplanar, and the exactness goes with the coplanarity. Each piece is exact on its own chord; the display’s glass is on the arc; and the gap between them is the whole of the error.

That gap is the sag, and it has a closed form: a chord spanning an angle θ\theta of a circle of radius RR leaves a maximum sag of R(1cos(θ/2))R(1 - \cos(\theta/2)), which for small θ\theta is Rθ2/8R\theta^2/8.

A curved screen driven as 1 flat pieceThe screen in plan: the arc it actually is, the 1 chords a renderer's 1 projection matrix draws on, and the seat. A projection matrix is a plane, so a curved display is driven as several of them and assembled — exactly as a dome or a cave is. The gap between arc and chord is 60.63 mm at its widest, which from this seat is 56.58 pixels of a 0.70 m picture. It is never zero for any finite count.the seat1 chord against the arccurved monitor, 1 flat piece60.63 mm of sag · 56.58 px at the seat
Fig. 2 The worst case: one flat piece across the whole screen, with sixty millimetres between the chord and the glass.

The sag, priced where a reader is

Sixty millimetres of sag is not itself an answer, because the question is what a reader receives. So the sag is turned into an angle at the seat — how far a point of the picture is from where it should be, as seen from where somebody is sitting — and then into pixels of the delivered picture.

On a curved desk monitor at 650 mm, driving the whole screen as one plane costs 57 pixels. Two pieces cost 12. Three cost 5.5, four cost 3.1, eight cost 0.8.

Two conversions are doing work there and both are worth naming. Turning the sag into an angle divides by the distance to the seat, so a nearer seat is a harsher judge; turning the angle into pixels multiplies by the picture’s own angular resolution, so a denser panel is a harsher judge still. A tiling that is invisible on one display is visible on another with identical geometry and more pixels.

A curved screen driven as 8 flat piecesThe screen in plan: the arc it actually is, the 8 chords a renderer's 8 projection matrices draw on, and the seat. A projection matrix is a plane, so a curved display is driven as several of them and assembled — exactly as a dome or a cave is. The gap between arc and chord is 0.96 mm at its widest, which from this seat is 0.82 pixels of a 0.70 m picture. It is never zero for any finite count.the seat8 chords against the arccurved monitor, 8 flat pieces0.96 mm of sag · 0.82 px at the seat
Fig. 3 Eight pieces on the same screen, where the largest gap is under a millimetre and the error at the seat is under a pixel.

The law

Sweep the tolerance and fit: the number of pieces goes as the inverse root of the pixels allowed, at a fitted exponent of −0.5.

That is exactly what the closed form requires. Each piece spans θ/n\theta/n of arc, so its sag goes as 1/n21/n^2; halving the error therefore costs a factor of 2\sqrt2 in pieces. The fit is a check rather than a derivation — the quantity being held fixed is an angle at a seat that is not on the axis, and the two agree only to leading order — and it comes back on the nose.

How many flat pieces a curve is worthThe number of planar pieces a curved screen has to be driven as, against the departure allowed, on log axes. The fitted slope is -0.469, against the −0.5 a chord's sag requires: the gap between arc and chord goes as the square of the angle each piece spans, so halving the error costs a factor of root two in pieces. 8 pieces buy a pixel; 15 buy a quarter of one.0.6000.80011.20-0.50000.500the tolerance allowed, log₁₀ pixelsflat pieces needed, log₁₀34681115curved monitor, pieces needed for a stated tolerancefitted exponent -0.469 against −0.5
Fig. 4 The piece count against the tolerance allowed, on log axes, with the fitted slope.

The numbers a designer would want are small. Three pieces buy eight pixels; eight buy one; fifteen buy a quarter of one. A curved television, whose radius is four times the monitor’s, needs four pieces for a pixel; a cinema screen needs five.

That smallness is the practical finding, and it cuts against the essay’s own drama: driving a curved display as a handful of planes is cheap, and the reason curved displays are not driven that way has nothing to do with cost.

Why no count is exact

The sag of a chord over an arc is positive for every finite nn. At sixty-four pieces the monitor’s error is a hundredth of a pixel, which is nothing; it is not zero, and the difference between “nothing” and “zero” is the difference between an approximation and a projection.

That matters here for a reason beyond tidiness. Everything else this collection computes about a picture is exact or is a measured departure from something exact: the round trip recovers the camera, the tiles reassemble to the last bit, the matrix and the pinhole agree to five parts in a hundred trillion. A tiled curved screen has no exact version at any setting.

So the honest description of the technique is that it chooses an error rather than removing one, and the choice is a number the designer types.

It is worth being precise about what fails to be exact, because it is not the arithmetic. Each piece is a projection and is exact as a projection; the assembly of the pieces is exact as an assembly; every pixel is computed to the same precision as any other picture in this collection. What is approximate is the surface: the machine draws a polygon of planes where the glass is an arc, and every subsequent step is faithful to the wrong shape. That is a much better failure to have than a numerical one, because it is bounded, computable in advance, and reduced by a knob — and because it fails in the direction of a shape a reader can name.

One projection, two routes: divide by depth, or multiply and divide laterThe same box through the site's pinhole and through a 4×4 projection matrix with the divide postponed until after clip space. The worst disagreement over all twelve edges is 4.0e-14 px, which is the noise floor of double precision rather than an approximation.x/z, y/z — the pinholeM·p, then divide by wworst disagreement 4.0e-14 px over 8 verticescorrect from 21 cm, at 160 mm wide42° across · near 0.1 m, far 1000 m
Fig. 5 The exactness the pipeline normally has: a projection matrix and this site’s pinhole camera, agreeing to the arithmetic floor.

What happens at the seams

Two adjacent chords meet on the arc, so the picture is continuous across a seam: the last column of one piece and the first column of the next are the same points of the glass, and nothing tears.

What is not continuous is the derivative. Each piece is a projection onto a plane, and the two planes meet at an angle, so the map from the intended picture to the glass has a kink at every seam. A straight line crossing a seam is drawn as two straight segments meeting at a small angle rather than as one straight segment or as a smooth curve.

That is exactly the same structure as the anamorph that crosses a corner — a piecewise projective map, continuous, not smooth, with a scale that jumps across the join — and it is worth noticing that a rendering technique and a Renaissance wall painting have the same defect for the same reason. Both are one picture spread across several planes.

The kink’s size is what the sag measurement above already reports, since the departure from the arc is greatest in the middle of a piece and zero at its edges: the seam is where the error is smallest. A reader looking for the seams would find them by looking between them.

The alternative, and what it costs

There is another way to drive a curved surface and it is what a headset does: render one wide plane picture and resample it onto the surface as a second pass.

The render is distorted on purpose measures that technique in its own setting, where the map being undone is a lens’s distortion rather than a screen’s shape, and reports the price: the round trip closes to a thousandth of a millionth of a pixel and one rendered pixel becomes 0.646 delivered pixels at the edge of the field. Resampling is exact in geometry and lossy in resolution, which is the opposite trade from tiling — tiling is inexact in geometry and lossless in resolution, since every tile is rendered natively.

Which to prefer is therefore a question about where the error is cheapest, and the answer is not the same for a headset and a television. A headset’s lens distortion is severe and its panel is close to the eye, so a geometric error is enormous and a resolution loss is tolerable. A television’s sag is a few pixels and its panel is far away.

Where the pieces have to be

One decision has been assumed rather than made: the pieces above are equal spans of arc. They need not be.

A seat off the screen’s axis sees the near half of the glass at a shallower angle than the far half, so the same span of arc costs different amounts of picture error in different places. Pieces chosen to equalise the error rather than the arc would be unequal, wider where the glass faces the reader and narrower where it turns away, and would need fewer of them for the same tolerance.

That optimisation is real and is not done here, for a reason worth stating: it depends on the seat, and the seat is not known to a renderer. A tiling computed for one viewer is a tiling that is wrong for another — which is the audience problem arriving one layer down the stack, in a place where it looks like a numerical choice rather than a geometric one.

There is one arrangement in which equal arcs are not a compromise but the exact optimum, and it is worth naming because it is also the arrangement displays are sold in. The sag is turned into an angle by dividing by the distance from the seat to that part of the glass, so equal arcs are optimal exactly when every part of the glass is the same distance from the seat — which is to say when the seat is at the centre of curvature. A screen whose radius equals its intended viewing distance has that property, and that is precisely how curved panels are specified: a “1000R” monitor is a metre of radius, sold to be used at a metre.

Away from that arrangement the optimum is unequal in a predictable direction. A seat nearer than the centre of curvature is closest to the middle of the glass and furthest from its edges, so a given sag in the middle costs more angle than the same sag at the edge — and the pieces should be narrower in the middle and wider at the ends. A seat further away than the centre of curvature wants the reverse.

So the optimisation this essay declines is not merely unavailable for want of knowing the seat; it is unnecessary for the arrangement the display was designed for, and becomes necessary only when the reader sits somewhere other than the distance the glass’s radius names. Which is the same statement this collection makes about every picture — the surface states the distance it is correct from — with a screen’s own curvature doing the stating.

Equal arcs are therefore the tiling that is correct for the reader at the centre of curvature and defensible for everybody, which is the same compromise the pre-warp above makes.

Aiming the camera at each tileThe picture cut into 3 × 3 tiles, each rendered by a camera at the same eye turned to face the tile with a field of view that covers it. Every step of that is defensible and the result is a different picture: points land up to 12.0 px from where the whole picture puts them, with the lines drawn from each point to where its tile sent it. A rotation is not a crop.worst 12.0 px outcorrect from 17 cm, at 160 mm wide3 × 3 tiles
Fig. 6 The coplanar case, where the tiles are exact and the only way to get it wrong is to rotate the camera instead of shifting the frustum.

Against the error that is already there

A number is only large or small against another number, and this row has one to compare it with.

A curved television driven as four flat pieces leaves 0.63 pixels of tiling error. The same television, watched by three people on a 1.8 m sofa with the picture corrected as well as any single correction can correct it, leaves 25.5 pixels of departure at the worst seat — and that is a departure from being a projection of anything at all, rather than a small displacement of a point.

So the tiling error is a fortieth of the error the arrangement already has, and it is the only one of the two that a renderer can do anything about.

Two conclusions follow, and the second is the useful one.

Four pieces is plenty, and a designer arguing about whether to use eight is optimising a term that is already forty times smaller than one they cannot remove. And the reason curved displays are not usually driven in pieces at all is not that the technique is expensive — three or four planes is nothing — but that the content arrives as a single rectilinear picture computed by somebody who has never heard of the screen. The pipeline could fix the sag and cannot fix the fact that the picture was drawn for a plane, which is the field’s founding result and is upstream of everything here.

A cave, a dome, and where the count actually comes from

Multi-plane rendering is not a curiosity invented for televisions; it is how every large curved display in the world is driven, and it is worth saying where those counts come from, because it is not this essay’s law.

A cave has four to six faces because it has four to six walls, and each is genuinely planar: the pieces are exact and the count is architecture. A dome is driven by four to eight projectors because that is how many are needed to cover the surface with enough pixels and enough brightness, and the geometry each one contributes is a projection onto a curved surface from a real centre — which is exact from that projector’s own position and is an anamorph from anywhere else.

So three quite different counts are all “how many pieces”: one set by walls, one set by coverage, and one — this essay’s — set by a tolerance on the sag. Only the third has a law, and it is the only one where the pieces are a choice rather than a fact about the building.

The one place a projector can stand and ignore the wallA picture thrown onto a curved wall and seen from a seat, against how far the projector is from that seat. At zero the residual is at the arithmetic floor — the projector paints along its own rays, so from its own position the wall's shape cannot be seen, whatever the wall is. At 50 mm it has reached 1 pixel. The exactness belongs to the point rather than to its neighbourhood, which is what makes a projected picture an anamorph nobody meant to make.-7.50-5-2.5000123how far the projector stands from the eye, log₁₀ mmwhat the seat is left with, log₁₀ pixels1 pxcurved television as a wall, the seat at 3 ma pixel by 50 mm · exact at zero
Fig. 7 The projector version, where the arrangement is exact at one point and the piece count is not the question.

What the depth buffer does about it

A last consequence, because the pieces are not only pictures but frusta with depth in them.

Each piece has its own near and far planes and its own depth encoding, and the precision a depth buffer has left shows that the encoding spends half its codes before the harmonic mean of the two. Pieces that share near and far planes therefore share a depth resolution, and objects crossing a seam are compared in codes that mean the same thing on both sides.

That is only true because the pieces are chosen to share those planes, which is a decision rather than a consequence. Pieces with individually fitted near planes would be better conditioned separately and would disagree about depth at the seams — a stitching artefact in the depth buffer rather than in the picture, and much harder to see.

Why the pieces are not visible

A reader who has seen a badly stitched panorama will expect a tiled render to show its seams, and it does not, for a reason worth separating from the geometry above.

A panorama’s seams are visible because the pieces are photographs of a scene from different centres, so parallax puts the same object in different places in two frames and the join has a step in it. The parallax nobody can shoot away measures that, and finds a term that no amount of care removes.

A tiled render has one centre. Every piece is a projection from the same eye, so the same object is in the same place in every piece and the join is continuous to the last bit. What differs between pieces is only which plane the picture is drawn on, and that changes the shape of the picture rather than the position of anything in the scene.

So the seam is a kink in the mapping and not a step in the content, and a kink of a fraction of a pixel is not visible. What would be visible is a piece rendered with the wrong frustum — aiming the camera at each tile instead of shifting its sides — which puts a real discontinuity of about a tenth of a tile into the join, and is the mistake this technique actually fails on.

The short version

A curved display is a number of flat ones, and the number is finite for any tolerance and infinite for none.

The error is the sag between chord and arc, seen from a seat, and it falls as the square of the piece count — so the count rises as the inverse root of the tolerance: three pieces for eight pixels, eight for one, fifteen for a quarter, on a curved desk monitor at arm’s length. A television needs four and a cinema screen five.

The technique is cheap, exact nowhere, and continuous but not smooth at its seams, which makes it a close relative of a wall painting that crosses a corner.

A curved screen driven as 2 flat piecesThe screen in plan: the arc it actually is, the 2 chords a renderer's 2 projection matrices draw on, and the seat. A projection matrix is a plane, so a curved display is driven as several of them and assembled — exactly as a dome or a cave is. The gap between arc and chord is 15.27 mm at its widest, which from this seat is 12.42 pixels of a 0.70 m picture. It is never zero for any finite count.the seat2 chords against the arccurved monitor, 2 flat pieces15.27 mm of sag · 12.42 px at the seat
Fig. 8 Two pieces, where the error is a dozen pixels and the seam is in the middle of the picture.

Shares its objects with

Essays that name at least two of the same things, and that neither author linked.

Named objects

A flat tag is an object no other essay names yet.

Camera matrixinstrument limitPicture surfacePiecewise mapPower lawProjective mapQuantisationResolutionSampling gridView frustum