Back-face detection is used to determine if a surface of an object is facing away from the viewer and therefore invisible. It tests the orientation of each surface's normal vector - if it points towards the viewer, it is a front face; if it points away, it is a back face. Removing back faces can significantly improve processing efficiency by culling about half the object's surfaces before rendering. The test is simple - if the z-component of the normal vector is positive, it is a back face, and if negative, a front face.
Download as PPT, PDF, TXT or read online on Scribd
100%(1)100% found this document useful (1 vote)
595 views
Back Face Detection
Back-face detection is used to determine if a surface of an object is facing away from the viewer and therefore invisible. It tests the orientation of each surface's normal vector - if it points towards the viewer, it is a front face; if it points away, it is a back face. Removing back faces can significantly improve processing efficiency by culling about half the object's surfaces before rendering. The test is simple - if the z-component of the normal vector is positive, it is a back face, and if negative, a front face.
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 9
BACK FACE DETECTION
back-face detection Determination of whether a face of
an object is facing backward and therefore invisible. The usual test is whether the surface normal points into the screen or not. Special attention is needed for faces on the silhouette of the object
back-face detection Determination of whether a face of
an object is facing backward and therefore invisible. • Back-Face Detection • In a solid object, there are surfaces which are facing the viewer (front faces) and there are surfaces • which are opposite to the viewer (back faces). • These back faces contribute to approximately half of the total number of surfaces. Since we cannot • see these surfaces anyway, to save processing time, we can remove them before the clipping process • with a simple test. • Each surface has a normal vector. If this vector is pointing in the direction of the center of projection, • it is a front face and can be seen by the viewer. If it is pointing away from the center of projection, it • is a back face and cannot be seen by the viewer. • The test is very simple, if the z component of the normal vector is positive, then, it is a back face. If • the z component of the vector is negative, it is a front face. BACK FACE DETECTION Two Main Approaches • Visible surface detection algorithms are broadly classified as: – Object Space Methods: Compares objects and parts of objects to each other within the scene definition to determine which surfaces are visible – Image Space Methods: Visibility is decided point- by-point at each pixel position on the projection plane • Image space methods are by far the more Back-Face Detection • The simplest thing we can do is find the faces on the backs of polyhedra and discard them Back-Face Detection • We know from before that a point (x, y, z) is behind a polygon surface if:
• where A, B, C & D are the plane parameters
for the surface • This can actually be made even easier if we organise things to suit ourselves Back-Face Detection • Ensure we have a right handed system with the viewing direction along the negative z-axis • Now we can simply say that if the z component of the polygon’s normal is less than zero the surface cannot be seen Back-Face Detection • In general back-face detection can be expected to eliminate about half of the polygon surfaces in a scene from further visibility tests • More complicated surfaces though scupper us! • We need better techniques to handle these kind of situations Back-Face Detection • Visibility : Back-Face Detection • Visibility : Back-Face Detection • Fast and simple object-based system • A point (x,y,z) is “inside” a polygon surface with plane parameters A, B, C, D if : • Ax + By + Cz + D < 0 • When an inside point is along the line of sight to the surface, the polygon must be a back face and so cannot be seen