- 81 Views
- Uploaded on
- Presentation posted in: General

Real-Time Rendering of Trimmed Surfaces

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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.

- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Real-Time Rendering of Trimmed Surfaces

SIGGRAPH 89

Alyn Rockwook, Kurt Heaton,Tom Davis (SGI)

- Modern graphics systems have hardware support for polygon rendering:
- hundreds of thousands or even millions of polygons per second (including transformations, clipping, lighting, smooth shading, and z-buffering)

- We need efficient methods to convert free-form surfaces to polygons.

- Goals:
- real-time performance
- high quality images
- portability

- Previous work:
- does not take advantage of hardware support
- does not account for trimming
- exhibits too many unwanted visual artifacts

- Reminders:
- object space is the 3D coordinate system in which the surface is defined
- image space is to where the viewing transformations map the object space
- screen space is the 2D coordinate system by projecting image space on the xy-plane
- parameter space is the rectangle of (u,v) coordinates

- Definition:
- a region is monotone with respect to an axis if any line perpendicular to that axis has a convex intersection with the region

- 7 main steps:
- 1. convert to Bezier:
- surfaces are converted to Bezier patches
- trimming regions are loops of Bezier or piecewise linear curves

- 2. calculate step sizes:
- in parameter space, for each curve and surface, to guarantee the size of facets in screen space will not exceed a user specified tolerance

- 1. convert to Bezier:

- 3. find extrema
- find the points on the trimming curves where the tangents are parallel to the u or v axes

- 4. divide into uv-monotone regions
- each region is defined by a closed loop of curves

- 5. cove and tile
- each uv-monotone region is uniformly tessellated into a grid of rectangles connected by triangles to points evaluated along the curves

- 6. evaluate surface functions
- polygons in (u,v) space are transformed to facets in object space
- surface normals are calculated

- 7. render facets
- each facet is transformed to screen space, clipped, lighted, smooth shaded, and z-buffered using standard 3D graphics hardware

- Met the goals:
- 15,000 triangles per second (1989)
- same image quality as the polygon hardware supports
- the IRIS-4D GTX implementation was ported to a Personal IRIS in only two days

- More good things:
- patches can be processed in parallel
- tile size smaller than a user specified tolerance (tradeoff image quality/rendering speed)
- different size tiles without cracking
- modular architecture:
- steps with well defined interfaces
- we can select the best way to implement each step
- easier to develop and to maintain