Graphics Reference
In-Depth Information
as possible.” Our perception of brightness is not linear, however: If you print thin
black stripes on a piece of white paper so that only 20 % of the white paper remains
visible, it will reflect only 20 % of the light that falls on it. But if you place that
piece of paper next to a blank piece of the same type of white paper and view both
from a distance great enough that the stripes are not visible, the printed paper will
appear about half as bright as the unprinted paper. Roughly speaking, for an eye
adapted to a given level of light, reducing the incoming light intensity by 80 % will
make the light seem half as bright.
Our visual system organizes the patterns of light and darkness that arrive at
the eye and attempts to make sense of them. The visual system is extremely well
adapted to bad input: We can take a black-and-white photograph and add noise
(grayscale variation) to it and still be able to recognize the objects in it. We can
recognize our homes even in a rainstorm. We can recognize a friend in bright sun-
light or in a dark room. In fact, our visual systems are so well tuned to seeing
shapes that even when we are watching the static patterns on an old analog tele-
vision, we occasionally believe we see recognizable patterns. One consequence
of this adaptation to bad input is that any stimulus that triggers approximately
the right responses leads to recognition: A photograph of a pair of dice, a pencil
drawing of them, and a bad computer graphics rendering of them all generate in
our brains the perception that we are seeing a pair of dice. This has proved to be
a blessing and a curse for the field of computer graphics; it means that even very
bad approximations of reality make images that we recognize, so it's easy to get
started in graphics. On the other hand, it's also easy to believe that the bad approx-
imations are correct because they “look good,” and this can impede progress in the
field. The adaptability of the visual system has two effects. First, hacking away at
graphics can be very satisfying, because even initial results look good enough,
on account of adaptability, to make you believe you're getting somewhere. And
second, results that appear visually very close to perfect may in fact be generated
by programs that are not at all correct, because your visual system is hiding errors
from you. Hacking away is really fun (and we encourage you to do it at every
opportunity), but it may lead you away from your real goal. We have therefore
structured this topic so that you get the satisfaction of making fairly good pictures
right away, but you also learn, as you do so, the limitations of the techniques that
you're learning so that you're better prepared for the more advanced techniques
you'll encounter later. If you find yourself asking, “But won't that look wrong in
such-and-such a case?” the answer is almost surely “Yes!,” and the later chapters
will help you understand how to address these limitations.
To return to the importance of perception, in resource-critical applications an
understanding of the perception process lets us make informed decisions about
what kinds of approximations we can make while still retaining visual fidelity.
1.13.6 Mathematics
Rather than trying to briefly introduce all the mathematics involved in computer
graphics, we'll introduce the ideas as they arise; most of them are not directly rele-
vant to a basic understanding of graphics, but rather to the efficient representation
or approximation of things we use in graphics. However, after giving you a first
taste of 2D and 3D graphics in Chapters 2 and 6, we will review in Chapter 7
some of the mathematics that we assume is familiar to our readers, in part to
establish the notational conventions that we'll follow throughout the topic. You
can write graphics programs with only a knowledge of arithmetic and algebra, but
 
 
Search WWH ::




Custom Search