Thursday Nov 04, 2004

Rendering Convergence

The Incredibles open tomorrow. It looks to be another great film from Pixar. Way back when, I was very seriously considering a career in special effects/computer animation. Back then, Pixar was doing short films to better its rendering technology. They still do this. Many times, the shorts are experimenting grounds for features needed in bigger projects. Instead of going that route, I decided to stick with the real-time graphics path. And in that time, things have progressed amazingly fast. In the past few years people like to use cool marketing phrases to sell their wares. The most common in this space is the ability to render Toy Story in real time.

I have the fortune of having a pretty good understanding of what happens under the covers in three related technologies - real time rendering, offline rendering, and real-time simulations (ie: games). While we are getting close to do some of that Pixar magic in real time, we still have a long long ways to go. It is amazing how far we have come. When Nvidia announced some hardware a year or two ago they actually did show Luxo Jr. being rendered in real-time on their hardware. This is impressive but still quite a bit off of even Toy Story - let alone something like Monsters Inc, Finding Nemo, or The Incredibles.

There are three basic technical challenges that still need to be solved in the real-time space to get closer to what off line renderers do. First is programmable shader complexity. Real-time hardware has come a long ways recently - we have gone from less than a dozen instructions into the thousands, but this is still quite small compared to what offline renderers process. A related problem is texture usage. Graphics hardware will need to get into the multi-gigabyte texture memory space to compete with offline rendering. And the third challenge is global illumination. Pixar did many films without utilizing global illumination, but has recently started using it more. This is a very hard problem in the real-time space because of the desire to not access a whole scene at once. There has been some interesting research recently in implementing global illumination techniques on real-time hardware. There is also a new software product from Nvidia that can help do offline rendering preview and acceleration. It will be interesting to see if it gets adopted. We still have quite a ways to go before we get to rendering convergence.

I find it very interesting now that many of the challenges being faced by Pixar are also being attacked by the games industry. I just read an article about the making of The Incredibles and they were lamenting about creating a scene where a food fight happens, and all of those objects/food needed to be tracked while being rendered. That sounds a lot like some of the systems that real-time games are needed to make their environments seem so real. So maybe we aren't that far of simulation convergence.

Comments:

I would sure like to see some hardware that could render Toy Story in realtime. Particularly the part where the toys are jumping on the quilted bed...I seem to recall an interview where they stated it took 24 hours to render a single frame due to the deformations of the quilt.

Posted by PatrickG on November 04, 2004 at 02:53 PM PST #

Interesting review. Is global illumination in hardware really practical from an economics and marketing standpoint?

Posted by M. Mortazavi on November 05, 2004 at 09:32 AM PST #

That's why that component is still in research mode. It isn't quite practical yet.

Posted by Doug Twilleager on November 08, 2004 at 11:24 AM PST #

Post a Comment:
Comments are closed for this entry.