Sense and Sidedness in the Graphics Pipeline via a Passage Through a Separable Space
Sherif Ghali
In The Visual Computer, 25(4), April 2009.
Abstract: Computer graphics is ostensibly based on projective geometry. The graphics pipeline-the sequence of functions applied to 3D geometric primitives to determine a 2D image-is described in the graphics literature as taking the primitives from Euclidean to projective space, and then back to Euclidean space.

This is a weak foundation for computer graphics. An instructor is at a loss: one day entering the classroom and invoking the established and venerable theory of projective geometry while asserting that projective spaces are not separable, and then entering the classroom the following week to tell the students that the standard graphics pipeline performs clipping not in Euclidean, but in projective space-precisely the operation (deciding sidedness, which depends on separability) that was deemed nonsensical.

But there is no need to present Blinn and Newell's algorithm (Comput. Graph. 12, 245-251, 1978; Commun. ACM 17, 32-42, 1974)-the crucial clipping step in the graphics pipeline and, perhaps, the most original knowledge a student learns in a fourth-year computer graphics class-as a clever trick that just works. Jorge Stolfi described in 1991 oriented projective geometry. By declaring the two vectors (x,y,z,w)Τ and (-x,-y,-z,-w)Τ distinct, Blinn and Newell were already unknowingly working in oriented projective space. This paper presents the graphics pipeline on this stronger foundation.
Keyword(s): Graphics pipeline, Separability, Projective geometry, Oriented projective geometry, Homogeneous coordinates
BibTeX format:
@article{Ghali:2009:SAS,
  author = {Sherif Ghali},
  title = {Sense and Sidedness in the Graphics Pipeline via a Passage Through a Separable Space},
  journal = {The Visual Computer},
  volume = {25},
  number = {4},
  pages = {367--375},
  month = apr,
  year = {2009},
}
Search for more articles by Sherif Ghali.

Return to the search page.


graphbib: Powered by "bibsql" and "SQLite3."