Every essay — page 13
What survives Constructing a view Where to stand Surfaces that are not flat The other systems Light and mirrors Mirrors that are not cameras Measuring from one picture Through water and glass The real instrument The second eye What a pair is for Many pictures at once The eye that moves Systems that kept the measure What each system gave up What a machine computes The rectangle behind the lens The second projection Drawn confidently
The other systems
Isometric, oblique, elevation. Not perspective done badly by people who had not worked it out yet, but a different answer to a different question — and the difference is measurable.
The ball a drawing does not draw round
An orthographic drawing of a sphere is a circle wherever the sphere is, and its centre is the image of the sphere's centre, exactly. A cavalier oblique drawing of the same sphere is an ellipse of aspect exactly √2 — and the drawing office reaches for a circle template. One formula covers both and the camera as well, and only the camera moves the centre.
No view draws a curved plate true
The auxiliary view is descriptive geometry's answer to a foreshortened plane — turn until the plane is parallel to the paper and it draws at true shape. A bent plate has no such direction and a dished one has none twice over: the best view of the first is out by 1 − cos w and the best of the second by 1 − cos²w, worse by exactly 1 + cos w, because its normals need two parameters rather than one.
The drawing and the development
A bent plate gets two flat pictures on the same sheet and each is exact in what the other loses. The parallel drawing keeps the generators at one scale and stretches the arc over a factor; the development keeps every length on the surface and keeps nothing of the shape in space. Neither is the plate and the pair of them is.
A drawn fold has a phantom
A Necker cube has two readings and so does a drawn fold, and the fold's second reading is not the supplement of the first. The drawing fixes each plate edge's component in the picture and leaves its component along the ray free up to a sign; a reflection identifies two of the four sign pairs, so there are exactly two plates — and a hundred-degree fold reads as eighty-seven as well.
Two outlines are two curves
The whole method of multiview drawing is the transfer line — a feature at a position in the front view is at the same position along that axis in the top view. On a flat-faced solid the feature is a vertex and the rule is exact. On a ball the two views draw two different great circles, meeting in exactly two points, and the transfer line joins places that are √2 radii apart.
A picture with no eye
The anamorph field measured which parts of an object one eye can paint, and every finding in it is about a point. A parallel projection has no such point, so the same questions have a different shape — and the two that change are the dimension of the answer and the map onto each face. The one that does not change is occlusion, which is routinely assumed away.
Nothing moves along the direction
A part slid four metres toward the reader along the direction an isometric drawing projects along keeps its drawn place to a ten-thousandth of a pixel, and the same slide seen from a station point moves it forty-four. An exploded drawing is not an approximation that works because the parts do not move far — it is an identity, and it is why cutaways are drawn in parallel systems.
One face, one scale
A design carried from a point onto a flat face varies in scale by nearly six across that one face; the same design carried along a direction varies by 1.000000000. The stretch is reported here as the two singular values of the local map rather than as one directional difference, which is the honest form and which the previous round owed.
Two distances to infinity
A parallel projection is the limit of a perspective one, and the limit arrives twice. Which faces get painted settles within three object radii, because a face is either round the back or it is not; where each mark lands falls like one over the distance and is still out at thirty-four. Far enough away has two answers an order of magnitude apart.
What a machine computes
A renderer does not divide by depth and stop. It multiplies by a matrix and postpones the divide, clips while the points behind the eye are still finite, quantises what it kept, and lands on a grid of samples half a pixel from where the arithmetic put them. Each of those is a decision about what the picture is a projection of, and each has a number attached.
The divide is postponed, not avoided
A renderer does not divide by depth. It multiplies by a four-by-four matrix that carries the depth in a fourth coordinate and divides later, and the postponement is not an optimisation — it is what makes clipping and texture interpolation possible at all. The matrix and this site's pinhole put every point on the same pixel to five parts in a hundred trillion.
What happens behind the eye
A point behind the camera has a perfectly plausible image. Dividing by a negative fourth coordinate flips both signs, so the point lands through the principal point on the far side of the frame, and a segment crossing the eye plane is drawn straight, inside the frame, and running in exactly the opposite direction — a direction cosine of −1.0000.
The precision a depth buffer has left
Depth is stored as an affine function of one over the distance, so half of a buffer's codes are spent before the harmonic mean of the near and far planes — twenty centimetres out of a kilometre. The resolution goes as the square of the distance, and the fix that works is not more bits.
A pixel is not a point
Where the sample sits inside a pixel is a convention, and getting it wrong shifts every mark by half a pixel in each axis. What that costs can be measured by recovering the camera from the picture — the answer is a principal point exactly 0.707 px from the truth with the focal length untouched, and the other half-pixel mistake does precisely the reverse.
A texture does not interpolate on the page
Walking across a drawn surface at a constant rate walks across the real one at a rate that changes, and the worst gap is a closed form in the depth ratio alone — 0.52 at ten to one, more than half the whole range. It is exactly the error a person makes dividing depth by eye, made by a machine, and the fix is the fourth coordinate the pipeline kept.
Four numbers and a window
A projection matrix is built from six numbers and one of them is not a number at all. Four sides carry the focal length and the principal point; the near and far planes move nothing a reader can see; and the bottom row, (0, 0, 1, 0), is the only place the depth divides — set it to (0, 0, 0, 1) and the same machine draws a parallel projection.
A tile is an off-centre frustum
Rendering a picture in tiles is exact, and the way to do it is one line of arithmetic: a tile's sides are the whole frustum's sides read at the 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 whatever the tile size.
The near plane can be any plane
Rewrite one row of a projection matrix and the near plane stops being perpendicular to the axis and becomes whatever plane is asked for. Every x and every y is untouched — it is the same projection of the same scene from the same eye — and the depth order is wrecked, which is a clean separation of the two things a projection matrix does.
One plane is nearly free
The near and far planes enter a depth buffer's precision through 1/near − 1/far, and one of those reciprocals is enormous. Pushing the far plane out by a factor of a thousand costs a tenth of a per cent; bringing the near plane in by the same factor costs a factor of a thousand — and an infinite far plane is the limit of the first rather than a separate case.
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.
One depth per sample is not enough
A depth buffer keeps a single distance at each sample, so a post-process blur can only ask how far away the thing at this pixel is. Across an occluding edge that answer is two depths and an occlusion, and the gather it produces differs from the pupil's own integral by 70 per cent of full scale over a band eleven pixels wide.
Along a line of constant depth the page is affine
Stepping a texture by a constant amount per pixel is wrong across a receding floor and exactly right along any line of it that stays at one depth — and on every plane those lines run parallel to its own vanishing line. Turn a 120 px span 1° away from that direction and it is 0.79 px out; roll the camera a hundredth of a degree and a floor drawn to 30 m is out by 0.69 px on its worst scanline.
A point at infinity is an ordinary vertex
Give a vertex a zero in its fourth slot and it stops being a point and becomes a direction — and the projection matrix draws it anyway, through the same multiply and the same divide, on that direction's vanishing point to seven trillionths of a pixel. Slide the eye ten metres and it does not move. Two of them bound a ground that reaches the horizon, where a ground drawn to ten kilometres stops a fifth of a pixel short.
A shadow map's texels land by two distances and two cosines
A renderer finds its shadows by taking a second picture from the lamp and storing a depth in every texel. Each texel reaches the screen through the surface it falls on, and how many pixels it covers there is a closed form — two focal lengths, two distances and two cosines. From a lamp beside the eye every texel lands at 0.79 px; from a lamp 40 m ahead facing back, the same map lands texels of 8.69 px on the floor 5 m out.
Through water and glass
A refracted picture is not a projection at all — its rays, continued into the water, miss each other by millimetres rather than meeting at a point. Everything the other fields rest on is measured here against the case where it fails, from the cross-ratio to Snell's window to a dome port that turns out to be an exact pinhole.