1 / 24

Computer Graphics

By :Abed Elrahman Al-Najjar ID : 120080075. Computer Graphics. University of Palestine. ITGD3107. Supervision: Assistant Professor Dr. Sana’a Wafa Al-Sayegh 2 nd Semester 2008-2009. ITGD3107 Computer Graphics. Chapter 13 Visible-Surface Detection. Visible-Surface Detection.

lorne
Download Presentation

Computer Graphics

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. By :Abed Elrahman Al-Najjar ID : 120080075 Computer Graphics University of Palestine ITGD3107 Supervision:Assistant Professor Dr. Sana’a Wafa Al-Sayegh 2nd Semester 2008-2009

  2. ITGD3107Computer Graphics Chapter 13 Visible-Surface Detection

  3. Visible-Surface Detection Jehee Lee Seoul National University

  4. Visible-Surface Detection Methods • Determine what is visible within a scene from a chosen viewing position • Two approaches • Object-space methods: Decide which object, as a whole, is visible • Image-space methods: The visibility is decided point-by-point • Most visible-surface algorithms use image-space methods • Sometimes, these methods are referred to as hidden-surface elimination

  5. Approaches • Back-Face Removal • Depth Buffer • A-Buffer • Scanline • Depth Sorting • BSP Tree • Area Subdivision • Octree

  6. Back-Face Removal (Culling) • Used to remove unseen polygons from convex, closed polyhedron • Does not completely solve hidden surface problem since one polyhedron may obscure another

  7. Back-Face Removal (Culling) • Compute the equation of the plane for each polygon • A point (x,y,z) is behind a polygon surface if • Determine back-face • In projection coordinates, we need to consider only the z component of the normal vector N

  8. Depth-Buffer (Z-Buffer) • Z-Buffer has memory corresponding to each pixel location • Usually, 16 to 20 bits/location.

  9. Depth-Buffer (Z-Buffer) • Initialize • Each z-buffer location  Max z value • Each frame buffer location  background color • For each polygon: • Compute z(x,y), polygon depth at the pixel (x,y) • If z(x,y) < z-buffer value at pixel (x,y), then • z buffer(x,y)  z(x,y) • pixel(x,y)  color of polygon at (x,y)

  10. Depth Calculation • Calculate the z-value on the plane • Incremental calculation

  11. Depth-Buffer (Z-Buffer) • Advantages/Disadvantages • Lots of memory • Linear performance • Polygons may be processed in any order • Modifications needed to implement antialiasing, transparency, translucency effects • Commonly implemented in hardware  very fast

  12. Depth-Buffer (Z-Buffer) Backface culling Z-buffer algorithm

  13. Accumulation Buffer (A-Buffer) • An extension of the depth-buffer for dealing with anti-aliasing, area-averaging, transparency, and translucency • The depth-buffer method identifies only one visible surface at each pixel position • Cannot accumulate color values for more than one transparent and translucent surfaces • Even more memory intensive • Widely used for high quality rendering

  14. Accumulation Buffer (A-Buffer) • Each position in the A-buffer has two fields • Depth field: Stores a depth value • Surface data field • RGB intensity components • Opacity parameter (percent of transparency) • Depth • Percent of area coverage • Surface identifier

  15. Scan Line Method • Intersect each polygon with a particular scanline and solve hidden surface problem for just that scan line • Requires a depth buffer equal to only one scan line • Requires the entire scene data at the time of scan conversion • Maintain an active polygon and active edge list • Can implement antialiasing as part of the algorithm

  16. Depth Sorting • We need a partial ordering (not a total ordering) of polygons • The ordering indicates which polygon obscures which polygon • Some polygons may not obscure each other • Simple cases

  17. Depth Sorting • We make the following tests for each polygon that has a depth overlap with S • If any one of these tests is true, no reordering is necessary for S and the polygon being tested • Polygon S is completely behind the overlapping surface relative to the viewing position • The overlapping polygon is completely in front of S relative to the viewing position • The boundary-edge projections of the two polygons onto the view plane do not overlap

  18. Depth Sorting • Example

  19. Depth Sorting • Cyclically overlapping surfaces that alternately obscure one another • We can divide the surfaces to eliminate the cyclic overlaps

  20. BSP Trees • Binary space partitioning is an efficient method for determining object visibility • Paint surfaces into the frame buffer from back to front • Particularly useful when the view reference point changes, but the objects are at fixed positions

  21. BSP Tree Construction • Choose a polygon T and compute the equation of the plane it defines • Test all the vertices of all the other polygons to determine if they are in front of, behind, or in the same plane as T. • If the plane intersects a polygon, divide the polygon at the plane • Polygons are placed into a binary search three with T as the root • Call the procedure recursively on the left and right subtree

  22. Area Subdivision • Image-space method taking advantage of area coherence in a scene • Recursively subdivide a square area into equal-sized quadrants if the area is too complex to analyze easily

  23. Area Subdivision • Four possible relationships between polygon surfaces and a rectangular section of the viewing plane • Terminating criteria • Case 1: An area has no inside, overlapping, or surrounding surfaces (all surfaces are ourside the area) • Case 2: An area has only one inside, overlapping or surrounding surfaces • Case 3: An area has one surrounding surface that obscures all other surfaces within the area boundaries

  24. Octrees • Visible-surface identification is accomplished by searching octree nodes in a front-to-back order

More Related