Abstract
This chapter introduces global visibility computation using Grassmann Algebra. Visibility computation is a fundamental task in computer graphics, as in many other scientific domains. While it is well understood in two dimensions, this does not remain true in higher-dimensional spaces.
Grassmann Algebra allows to think about visibility at a high level of abstraction and to design a framework for solving visibility problems in any n-dimensional space for n≥2. Contrary to Stolfi’s framework which allows only the representation of geometric lines, its algebraic nature deals means general applicability, with no exceptional cases.
This chapter shows how the space of lines can be defined as a projective space over the bivector vector space. Then line classification, a key point for the visibility computation, is achieved using the exterior product. Actually, line classification turns out to be equivalent to point vs. hyperplane classification relative to a nondegenerate bilinear form. This ensures it is well defined and computationally robust.
Using this, the lines stabbing an n-dimensional convex face are characterized. This set of lines appears to be the intersection of the decomposable bivectors set (i.e., bivectors that represent a line) and a convex polytope. Moreover, this convex polytope is proved to be minimal. This property allows useful algorithmic improvements.
To illustrate the use of our framework in practice, we present the computation of soft shadows for three-dimensional illuminated scenes.