Next: C Version 1.1
Up: The OpenGL Graphics System:
Previous: A.4 What All This
The following observations are derived from the body and the other appendixes
of the specification.
Absence of an observation from this list in no way impugns its veracity.
- The CURRENT_RASTER_TEXTURE_COORDINATES must be maintained
correctly at all times,
including periods while texture mapping is not enabled,
and when the GL is in color index mode.
- When requested,
texture coordinates returned in feedback mode are always valid,
including periods while texture mapping is not enabled,
and when the GL is in color index mode.
- The error semantics of upward compatible OpenGL revisions may
change.
Otherwise,
only additions can be made to upward compatible revisions.
- GL query commands are not required to satisfy the semantics of the
Flush or the Finish commands.
All that is required is that the queried state be consistent with complete
execution of all previously executed GL commands.
- Application specified point size and line width must be returned as
specified when queried.
Implementation dependent clamping affects the values only while they are
in use.
- Bitmaps and pixel transfers do not cause selection hits.
- The mask specified as the third argument to StencilFunc affects
the operands of the stencil comparison function,
but has no direct effect on the update of the stencil buffer.
The mask specified by StencilMask has no effect on the stencil
comparison function;
it limits the effect of the update of the stencil buffer.
- Polygon shading is completed before the polygon mode is interpreted.
If the shade model is FLAT,
all of the points or lines generated by a single polygon will have the
same color.
- A display list is just a group of commands and arguments, so errors
generated by commands in a display list must be generated when the list is
executed.
If the list is created in COMPILE mode,
errors should not be generated while the list is being created.
- RasterPos does not change the current raster index
from its default value in an RGBA mode GL context.
Likewise,
RasterPos does not change the current raster color
from its default value in a color index GL context.
Both the current raster index and the current raster color can be queried,
however, regardless of the color mode of the GL context.
- A material property that is attached to the current color via
ColorMaterial always takes the value of the current color.
Attempts to change that material property via Material calls
have no effect.
- Material and ColorMaterial can be used to modify the
RGBA material properties, even in a color index context.
Likewise, Material can be used to modify the color index material
properties, even in an RGBA context.
- There is no atomicity requirement for OpenGL rendering commands,
even at the fragment level.
- Because rasterization of non-antialiased polygons is point sampled,
polygons that have no area generate no fragments when they are rasterized
in FILL mode,
and the fragments generated by the rasterization of ``narrow'' polygons
may not form a continuous array.
- OpenGL does not force left- or right-handedness on any of
its coordinates systems.
Consider,
however,
the following conditions:
(1)
the object coordinate system is right-handed;
(2)
the only commands used to manipulate the model-view matrix are
Scale (with positive scaling values only),
Rotate , and Translate ;
(3) exactly one of either Frustum or Ortho is used to
set the projection matrix;
(4) the near value is less than the far value for DepthRange .
If these conditions are all satisfied,
then the eye coordinate system is right-handed
and the clip, normalized device, and window coordinate systems are left-handed.
- ColorMaterial has no effect on color index lighting.
- (No pixel dropouts or duplicates.)
Let two polygons share an identical edge (that is,
there exist vertices A and B of an edge of one polygon,
and vertices C and D of an edge of the other polygon,
and the coordinates of vertex A (resp. B) are identical
to those of vertex C (resp. D), and the state of the
the coordinate transfomations is identical when A, B, C,
and D are specified). Then, when the fragments produced
by rasterization of both polygons are taken together,
each fragment intersecting the interior of the shared
edge is produced exactly once.
- OpenGL state continues to be modified in FEEDBACK mode and
in SELECT mode. The contents of the framebuffer are not modified.
- The current raster position, the user defined clip planes, the spot directions
and the light positions for LIGHTi, and the eye planes for texgen are transformed
when they are specified. They are not transformed during a
PopAttrib , or when copying a context.
- Dithering algorithms may be different for different components.
In particular, alpha may be dithered differently from red, green, or blue,
and an implementation may choose to not dither alpha at all.
Next: C Version 1.1
Up: The OpenGL Graphics System:
Previous: A.4 What All This
David Blythe
Sat Mar 29 02:23:21 PST 1997