IBM®
Skip to main content
    United States change      Terms of use
 
 
Select a scope:    
     Home      Products      Services & industry solutions      Support & downloads      My account     
alphaWorks  >  Research topics  >  Cell Broadband Engine technology  >  

Interactive Ray Tracer for Cell Broadband Engine

A proof-of-technology visual demonstration of the graphics power of the Cell Broadband Engine for realistic real-time animation on the Playstation 3 or QS21 platforms.


Date Posted: August 29, 2007
Overview Requirements DownloadFAQsForum Reviews

1. How are Interactive Ray Tracer ray-traced graphics different than my video game raster graphics?
2. Where can I find information on other uses for the Cell Broadband Engine™ processor?
3. Where can I get the Cell Broadband Engine SDK or other information on programming for the Cell Broadband Engine processor?
4. Where can I find programmer's guides, white papers, specifications, or other documentation on the Cell Broadband Engine?
5. Where can I find out the meaning of terms such as ambient occlusion, supersampling, etc., or further information on the process of ray tracing?
6. How scalable is the Interactive Ray Tracer?


1. How are Interactive Ray Tracer ray-traced graphics different than my video game raster graphics?

Ray-traced reflections are optically correct. Objects self-reflect and reflect other objects correctly. Games today use reflection maps that texture-map static images onto the objects, producing the illusion of reflections. If you look carefully at these objects they don't self-reflect or reflect other objects in the scene.

Ray-traced refractions are optically correct. Light bends through transparent surfaces according to physical rules that include the index of refraction. Games today simply depth-sort and render a transparent object with a simple blend factor in order to pick up some of the underlying color. Other tricks used by games include texture look-ups into an environment map with texture coordinates that are bent to approximate the index of refraction. With this technique, only the environment map texture is visible through the transparent surface, not other objects.

Lighting in Interactive Ray Tracer is evaluated at every sample. Because we multi-sample, this calculation can be computed four to twenty times for each pixel in the finished frame. The lighting calculations include generating a normal for each sample through interpolation (Phong shading) followed by a Phong lighting model evaluation. This method produces clean, specular highlights and smooth shading across even large polygons. Because it's computed for each sample, every frame it is truly dynamic: You can move the light source and see the results immediately. In games today, much of the lighting is pre-computed and baked into textures that are applied at run time. This method results in fixed lighting that doesn't vary with the eye point and can't be changed dynamically. Specular highlights don't move and lights can't be repositioned. The next step up from this in games is evaluating the light at each vertex of a polygon and then Gouraud-shading (interpolating) the resulting colors across the surface. In this case, the lighting is dynamic, but specular highlights appear and disappear as the eye or object moves. This is because it's sampled from only three locations per triangle, instead of every pixel, which creates under-sampling artifacts.

Shadows are another important component of image quality. Ray-tracing produces correct dynamic shadows for every object in the scene every frame. Games once again pre-compute and bake the shadows into the textures which results in a static scene. Simple character shadows are projected onto the floor plane dynamically but no global lighting or shadow effects are computed at run time.

Global illumination is the reflected light transferred from surface to surface in a scene. Game systems today can't compute such effects because they process only one polygon at a time and therefore are unaware of how each polygon relates to the others in a scene. Again, such effects must be pre-computed and baked, which results in static lighting and, more importantly, the loss of the global illumination effect from moving objects. Ray tracing, on the other hand, knows the relationship of polygons in the scene and therefore can dynamically compute these effects at run time.

The Enzo model used in this demonstration comprises over 300,000 triangles. Typical game models are in the range of 10,000 to 20,000 triangles. We wanted to show a production class object in this demonstration that is more typical of the print and film industry.

Back to top Back to top

2. Where can I find information on other uses for the Cell Broadband Engine™ processor?

IBM's Cell Broadband Engine technology page lists industry solutions, upcoming events, and more.
Back to top Back to top

3. Where can I get the Cell Broadband Engine SDK or other information on programming for the Cell Broadband Engine processor?

The Cell Broadband Engine Resource Center on developerWorks® is the repository for the SDK and further information on programming for the Cell Broadband Engine.
Back to top Back to top

4. Where can I find programmer's guides, white papers, specifications, or other documentation on the Cell Broadband Engine?

IBM's Semiconductor Solutions Support Documentation page references a great deal of documentation.
Back to top Back to top

5. Where can I find out the meaning of terms such as ambient occlusion, supersampling, etc., or further information on the process of ray tracing?

Wikipedia might be a good resource for researching ray tracing terms and concepts.
Back to top Back to top

6. How scalable is the Interactive Ray Tracer?

The Interactive Ray Tracer scales very well across both SPEs and clusters of IBM QS20 blades. These IBM QS20 performance results were measured using 1080p images with reflection, refraction, shadows, and 4x supersampling.

iRT SPE Performance Scaling

iRT Blade Performance Scaling


Cell Broadband Engine and Cell/B.E. are trademarks of Sony Computer Entertainment, Inc., in the United States, other countries, or both and are used under license therefrom.
developerWorks is a trademark of IBM Corporation in the United States, other countries, or both.
Other company, product, or service names may be trademarks or service marks of others.

Back to top Back to top
View screenshots:
Reflective Ambient Occlusion (Indirect Lighting) Shader

Download now Download now

Related technologies

For platform(s):
Multi-Platform

For topics:
Cell Broadband Engine Architecture (CBEA), Graphics, linux, visualization


Related resources

summary with pictures (PDF)

PS3 real-time ray tracing (video)

Interactive Ray Tracer in action (movie)

Press Articles

 

    About IBM Privacy Contact