Tuesday, April 29, 2008

Semester Wrapup

Another semester at an end. Just have some final grading to do and that'll be another one for the books. This semester I taught 805 again (Advanced Computer Graphics) to a number of graduate students. We covered four major modeling approaches: ray tracing (modeling light transport), fractal terrain generation (procedural modeling), particle systems and the jello cube (physics-based animation modeling basically, including collision detection and response), and surface reconstruction (surface modeling, in a nutshell). The latter project is fairly involved, as it is based on the following paper: Hoppe, H., DeRose, T., Duchamp, T., McDonald, J., and Stuetzle, Werner, ``Surface Reconstruction from Unorganized Points'', in Computer Graphics (Proceedings of SIGGRAPH), 26, 2, July, 1992, ACM. The idea behind it is to figure out how to cover a bunch of points with a surface. The points might be what you'd get if you shone a laser scanning device on a simple object. You just get a bunch of points in space as your input data set (inset; you and I can see that the points make up the shape of a cat, but with just this information it's impossible for a computer to display it nicely with good lighting—for that you need surfaces that will reflect light; points generally do not). Obtaining the surface means calculating the triangles that would (more or less) drape over the set of points if you dropped them from above. It's not easy—Hoppe lays out the 4-step process in his PhD dissertation. Eventually you end up running the marching cubes algorithm to generate the triangles and you end up with a picture like the one at left (created by the program of one of the students in my class).

No comments: