Download presentation
Presentation is loading. Please wait.
Published byPearl Riley Modified over 9 years ago
1
An Application of Tetrahedrisation to From-Point Visibility Honours Project Proposal Gerard Ryan and Brendon Miszka gyran@cs.uct.ac.za bmiszka@cs.uct.ac.zagyran@cs.uct.ac.zabmiszka@cs.uct.ac.za
2
Introduction In typical 3D scenes most primitives are not visible from a given viewpoint. Thus it would be desirable to determine (quickly) which primitives are invisible to save rendering calculations. Algorithms that eliminate invisible primitives from the rendering pipeline are known as visibility-culling algorithms. We propose tetrahedrising the view-point space (filling the space between objects with pyramid-like structures). The resulting tetrahedrisation will then be used in conjunction with from-point visibility algorithms that can be tuned to be exact, conservative or aggressive.
3
Motivation High quality rendering of complex scenes –Complex lighting and texture calculations. –Performed for every pixel. Realistic lighting effects –Visibility information can be used to determine which polygons a light can “see”. –This allows for advanced lighting effects such as realistic shadows. AI Agent visibility –Determine what an artificial agent is able to ‘see’ in a given scene. –Obtain more intelligent and realistic responses to changes or actions performed in their ‘world’. Portable computers and hand-held devices –Portable and hand-held devices do not come standard with high performance graphics card. –Beneficial to remove as many polygons as possible when rendering. Graphics hardware has improved, can typically render all of the geometry of a scene at such a high rate. Little saving from software visibility culling.
4
Tetrahedrisation 1 In 2D, the triangle is the simplest polygon. Thus convenient to use triangles when partitioning 2D surfaces or connecting point sets. Given a set of points in a plane, there are many methods for connecting those points using triangles. The Delaunay Triangulation is a good example of such an algorithm.
5
Tetrahedrisation 2 Simple Example of a Delaunay triangulation of a point set
6
Tetrahedrisation 3 In 3D, the tetrahedron is the simplest geometric object. Thus in 3D, point sets or polyhedra can be partitioned using tetrahedra. It is proposed to tetrahedrise the polyhedron corresponding to the view- point space that is not occupied by objects.
7
From-Point Visibility 1 A way of determining what is visible from a given view-point. –Not from a given region Computed at run-time –Should be fast Will make use of the tetrahedrisation computed for the scene.
8
From-Point Visibility 2 From a given point; –Determine which tetrahedron is currently occupied by point. –Project outwards through vertices of a single face of the tetrahedron. –Follow projections until ‘objects’ are intersected. Partial intersections will affect continued projection. –Repeat for all faces.
9
From-Point Visibility 3 Different classes of visibility-culling algorithm: –Exact; returns exactly that which is visible. –Conservative; provides an overestimate of what is visible. –Aggressive; may result in false ‘invisibility’ errors. –Approximate; results in both false ‘invisibility’ and ‘visibility’ errors.
10
Collaborative work A simple renderer will need to be implemented. –Aid in testing and demonstration of system. –Provide visual feed-back of results.
11
Key Success Factors Minimize pre-processing times. Tetrahedra should be convenient for use with visibility-culling algorithm. Visibility-culling algorithm should perform within acceptable limits on standard machines. Both algorithms should be robust. System should be scalable, maintaining reasonable performance for larger scenes. Code should be platform independent.
12
Questions?
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.