Graphics Reference
In-Depth Information
Binary Real Number System
2 100
2 10
2 1
0
1
10
100
2`
1`
Subset of binary real-numbers that can be represented with
IEEE single-precision (32-bit) loating-point format
2 100
2 10
2 1
0
1
10
100
2`
1`
Figure 14.3: Subset of binary real numbers that can be represented with IEEE single-
precision (32-bit) floating-point format. (Credit: Courtesy of Intel Corporation)
Representation uncertainty
10 2 2
Fixed-point 0.24
IEEE 32-bit loat
IEEE 32-bit loat (continuous error)
10 2 4
10 2 6
10 2 8
10 2 10
10 2 12
10 2 4
10 2 3
10 2 2
10 2 1
10 0
Value
Figure 14.4: Distance between adjacent representable real numbers in 8.24-bit fixed point
versus 32-bit floating point [AS06] over the range [ 10 4 ,1 ) . Floating-point representation
accuracy varies with magnitude. ©2006 ACM, Inc. Included here by permission.
point (a.k.a. 7e3). Ten bits may seem like a strange size given that most
architectures prefer power-of-two sizes for data types. In the context of a
3-vector storing XYZ or RGB values, three 10-bit values fit within a 32-bit
word (the remaining two bits are then unused). Shared-exponent formats effi-
ciently combine separate mantissas for each vector element with a single expo-
nent [War94]. These are particularly useful for images, in which values may span
a large range.
14.3.3 Buffers
The term of art, “buffer,” usually refers to a 2D rectangular array of “pixel” values
in computer graphics; for example, an image ready for display or a map of the
distance from the camera to the object seen at each pixel. Beware that in general
computer science, a “buffer” is often a queue (and that sometimes a “2D vector”
refers to a 2D array, not a geometric vector!); to avoid confusion, we never use the
general computer science terminology in this topic.
 
 
 
Search WWH ::




Custom Search