
C
glCopyPixels
Chapter 3
71
right of the binary point. Each index is then shifted left by GL_INDEX_SHIFT bits, and
added toGL_INDEX_OFFSET. If GL_INDEX_SHIFT is negative, the shift is to the right.
In either case, zero bits fill otherwise unspecified bit locations in the result. If
GL_MAP_COLOR is true, the index is replaced with the value that it references in
lookup table GL_PIXEL_MAP_I_TO_I. Whether the lookup replacement of the index is
done or not, the integer part of the index is then ANDed with 2
b
- 1, where b is the
number of bits in a color index buffer.
If the GL is in RGBA mode, the red, green, blue, and alpha components of each pixel that
is read are converted to an internal floating-point format with unspecified precision. The
conversion maps the largest representable component value to 1.0, and component value
0 to 0.0. The resulting floating-point color values are then multiplied by GL_c_SCALE
and added to GL_c_BIAS, where c is RED, GREEN, BLUE, and ALPHA for the
respective color components. The results are clamped to the range [0, 1]. If
GL_MAP_COLOR is true, each color component is scaled by the size of lookup table
GL_PIXEL_MAP_c_TO_c, then replaced by the value that it references in that table. c is
R, G, B, or A.
The GL then converts the resulting indices or RGBA colors to fragments by attaching the
current raster position z coordinate and texture coordinates to each pixel, then assigning
window coordinates (x
r
+ i, y
r
+ j), where (x
r
, y
r
) is the current raster position, and the
pixel was the ith pixel in the jth row. These pixel fragments are then treated just like the
fragments generated by rasterizing points, lines, or polygons. Texture mapping, fog, and
all the fragment operations are applied before the fragments are written to the frame
buffer.
GL_DEPTH
Depth values are read from the depth buffer and converted directly to an internal
floating-point format with unspecified precision. The resulting floating-point depth value
is then multiplied by GL_DEPTH_SCALE and added to GL_DEPTH_BIAS. The result is
clamped to the range [0, 1].
The GL then converts the resulting depth components to fragments by attaching the
current raster position color or color index and texture coordinates to each pixel, then
assigning window coordinates (x
r
+ i, y
r
+ j), where (x
r
, y
r
) is the current raster position,
and the pixel was the ith pixel in the jth row. These pixel fragments are then treated just
like the fragments generated by rasterizing points, lines, or polygons. Texture mapping,
fog, and all the fragment operations are applied before the fragments are written to the
frame buffer.
GL_STENCIL
Stencil indices are read from the stencil buffer and converted to an internal fixed-point
format with an unspecified number of bits to the right of the binary point. Each
fixed-point index is then shifted left by GL_INDEX_SHIFT bits, and added to
GL_INDEX_OFFSET. If GL_INDEX_SHIFT is negative, the shift is to the right. In
either case, zero bits fill otherwise unspecified bit locations in the result. If
GL_MAP_STENCIL is true, the index is replaced with the value that it references in
lookup table GL_PIXEL_MAP_S_TO_S. Whether the lookup replacement of the index is
done or not, the integer part of the index is then ANDed with 2
b
- 1, where b is the
number of bits in the stencil buffer. The resulting stencil indices are then written to the
stencil buffer such that the index read from the ith location of the jth row is written to
location (x
r
+ i, y
r
+ j), where (x
r
, y
r
) is the current raster position. Only the pixel
ownership test, the scissor test, and the stencil writemask affect these write operations.
Summary of Contents for c3700 - Workstation
Page 9: ...Chapter 1 9 1 A ...
Page 18: ...A glArrayElement Chapter 1 18 glNormalPointer glTexCoordPointer glVertexPointer ...
Page 19: ...Chapter 2 19 2 B ...
Page 40: ...B gluBuild2DMipmaps Chapter 2 40 ...
Page 41: ...Chapter 3 41 3 C ...
Page 49: ...C glXChooseVisual Chapter 3 49 See Also glXCreateContext glXGetConfig ...
Page 73: ...C glCopyPixels Chapter 3 73 glReadBuffer glReadPixels glStencilFunc ...
Page 84: ...C glCopyTexSubImage2D Chapter 3 84 glTexParameter glTexSubImage1D glTexSubImage2D ...
Page 93: ...Chapter 4 93 4 D ...
Page 99: ...D glDeleteTextures Chapter 4 99 glTexImage1D glTexImage2D glTexParameter ...
Page 127: ...Chapter 5 127 5 E ...
Page 148: ...E glEvalPoint Chapter 5 148 ...
Page 149: ...Chapter 6 149 6 F ...
Page 161: ...Chapter 7 161 7 G ...
Page 164: ...G glGenTextures Chapter 7 164 glTexImage1D glTexImage2D glTexParameter ...
Page 207: ...G glGetPointer Chapter 7 207 glSelectBuffer glTexCoordPointer glVertexPointer ...
Page 225: ...Chapter 8 225 8 H ...
Page 228: ...H glHint Chapter 8 228 ...
Page 229: ...Chapter 9 229 9 I ...
Page 248: ...I glIsTexture Chapter 9 248 ...
Page 249: ...Chapter 10 249 10 L ...
Page 256: ...L glLightModel Chapter 10 256 See Also glLight glMaterial ...
Page 271: ...Chapter 11 271 11 M ...
Page 291: ...Chapter 12 291 12 N ...
Page 312: ...N gluNurbsSurface Chapter 12 312 ...
Page 313: ...Chapter 13 313 13 O ...
Page 317: ...Chapter 14 317 14 P ...
Page 360: ...P glPushName Chapter 14 360 See Also glInitNames glLoadName glRenderMode glSelectBuffer ...
Page 362: ...P gluPwlCurve Chapter 14 362 ...
Page 363: ...Chapter 15 363 15 Q ...
Page 372: ...Q glXQueryVersion Chapter 15 372 glXQueryVersion ...
Page 373: ...Chapter 16 373 16 R ...
Page 390: ...R glRotate Chapter 16 390 ...
Page 391: ...Chapter 17 391 17 S ...
Page 397: ...S glScissor Chapter 17 397 See Also glEnable glViewport ...
Page 409: ...Chapter 18 409 18 T ...
Page 448: ...T glTexImage3DEXT Chapter 18 448 glTexGen glTexImage1D glTexImage2D glTexParameter ...
Page 457: ...T glTexSubImage1D Chapter 18 457 glTexImage2D glTexParameter glTexSubImage2D ...
Page 465: ...T glTranslate Chapter 18 465 See Also glMatrixMode glMultMatrix glPushMatrix glScale ...
Page 466: ...T glTranslate Chapter 18 466 ...
Page 467: ...Chapter 19 467 19 U ...
Page 469: ...U gluUnProject Chapter 19 469 See Also glGet gluProject ...
Page 471: ...U glXUseXFont Chapter 19 471 See Also glBitmap glXMakeCurrent ...
Page 472: ...U glXUseXFont Chapter 19 472 ...
Page 473: ...Chapter 20 473 20 V ...
Page 482: ...V glVisibilityBufferhp Chapter 20 482 ...
Page 483: ...Chapter 21 483 21 W ...
Page 486: ...W glXWaitX Chapter 21 486 ...