Rendering and Ray Tracing In Computer Animation


photo of John Michael Pierobon By: John Michael Pierobon

On October 2, the movie "Antz" will be released. I am excited about this movie because I know some of the animators, and in particular my good friend Juan Buhler. Juan also worked on the movie "Space Jam".

The history of animation is similar to the history of aviation. Earlier this century airplanes were made out of wood, and engines were turbo prop. Today airplanes are made out of special fibers or aluminum, and most aircraft have jet engines. Back when Disney pioneered animation in film, each frame was drawn by hand. Today, almost all animation is done by computer.

Computers are not able to draw curves, they can only draw straight lines. So how do computers manage to draw those flying circular logos like the "ABC" logo we see on Channel 10? Or manage to draw a round basketball?

Computers draw circles by drawing 360 straight lines, with each adjacent line one degree off from its neighbor.

Round or circular objects, in fact all objects in computer graphics are modeled into triangles and polygons which are called "primitives" because they are primitive geometric shapes. These primitives make up an object. These tiny triangles, composed of straight lines, create the illusion of a round or curved shape because the lines are not quite parallel. Each ant in "Antz" is made up of thousands of primitives. The primitives which are specified in object coordinates (x, y, z) are converted into a "framebuffer" by a technique called "rendering" which maps three-dimensional geometric objects on to a two-dimensional computer screen. A computer screen is made up of "pixels", or picture elelments. A "pixel" constitutes an (x,y) coordinate on the screen.

Rendering assigns to pixels the color of the primitive being rendered. This may result in jagged lines. This is caused by "aliasing" which occurs when one color covers the entire pixel area. Therefore it is best to use an "antialiasing" rendering technique which assigns pixel colors based on a fraction of the pixel area that is coverd by the primitive being rendered. This eliminates the jagged edges.

Drawing all of these primitives and rendering them requires lots of computer cycles, but not as much as "ray tracing". Ray tracing is tracing the path of each ray of light. Light tends to bounce off of shiny objects more so than dark opaque objects. Computing the trajectory of each ray of light is mathematically intense, especially when you have multiple light sources and objects with different reflective properties. Next time you watch "Toy Story" be sure to notice the excellent job they did with the shadows and how the objects shine.

The computer graphics in these animated movies is great, but the plot is also very good.

John Michael Pierobon is an Internet consultant based in Fort Lauderdale.
John Michael may be reached by sending electronic mail to pierobon@pierobon.org


Home | Résumé | Courses | Comments | HTML | Definitions | Articles | Books


Thank you for visiting.

© 1998 - 2006 John Michael Pierobon