Skip to main content

When Will Ray Tracing Replace Rasterization?

Conclusion

As we've pointed out, a lot of challenges still need to be met before ray tracing can become a credible alternative to rasterization for real-time rendering. And when you think about it, is that really desirable? The advantages of ray tracing aren't really revolutionary enough to justify the impact of its cost on performance. The algorithm's strong points essentially concern reflections and transparence, since those are the two effects that are most difficult to render with current rasterization algorithms. But that's not really as big a disadvantage as you might think. The world around us is not really made up of very shiny or very transparent objects, and because of that, our eyes can easily be satisfied with rough approximations.

A look at the simulations used in recent auto-racing games like Gran Turismo and Forza is enough to realize that, in spite of the totally fake reflections on the bodywork, the overall rendering is very satisfactory. The exact reflection of a side-view mirror on the paintwork wouldn't be enough to create the impression that a major new step has been made towards photorealism.

Admittedly, the reflections are off. There's no sign of the side mirror on the car body, for example. But do you honestly prefer the ray-traced rendering of the Audi R8?

Most people think of ray tracing as being intrinsically better than rasterization based on images generated by offline rendering engines, the results of which are greatly superior to what any new game can even dream of doing. But that impression has more to do with the confusion surrounding the ray tracing algorithm. The images people compare to those with rasterization effects are actually a combination of several techniques, such as ray tracing for direct reflections, radiosity for diffuse reflections, photon mapping for caustics, etc. All these techniques are combined to come as close as possible to the rendering equation written by Kajiya.

To achieve photorealistic rendering, several techniques need to be combined. Ray tracing in itself is insufficient for simulating complex interactions between different types of materials and light

In its basic version, ray tracing, as far as the attempts currently being made to implement it in real time go, is suitable only for perfect reflections and hard shadows. Doom 3 proved a few years ago that it was possible to create a robust 3D engine that handles dynamic shadows perfectly with rasterization, but in retrospect, it also showed that hard shadows aren't really realistic. 

To create soft shadows or diffuse reflections (like those you see in brushed metal, for example), more advanced ray tracing techniques like path tracing or distributed ray tracing are needed. But such techniques require a much greater number of rays and are still far from being feasible in real time.

Some people feel that eventually so much processing power will be available that the performance advantage of rasterization will no longer be a determining factor. Applying the law of diminishing returns, they say, the performance gain with rasterization will quickly be forgotten when compared to the elegance of ray tracing, just as the point was reached where the performance gain from programming in assembly language wasn't enough to compensate for the advantages of programming with high-level languages.

However, we're not yet convinced. In any case, we're still far from the time when we'll be able to sacrifice performance for elegance and simplicity. Just look at what's happened in the last 10 years in the world of offline rendering. While one frame from the movie Toy Story took an average of two hours to be created, a frame from Ratatouille took six and a half hours, despite processing power that was multiplied by a factor of more than 400 in between the two movies. In other words, the more processing power and resources you give artists, the quicker they'll absorb it.

If a company like Pixar, which can afford to devote several hours of processing to produce one frame, chooses to use ray tracing sparingly because of its impact on performance, it follows that the time when we'll have enough processing power in the world of real-time 3D to be able to afford to do all the rendering using ray tracing is far off. And people will surely have better things to do with that processing power.

  • IzzyCraft
    Greed? You give an inch they take a mile? Very pessimistic conclusion although it helps drive the industry so hard to really complain. ;)
    Reply
  • Ramar
    I'm definitely the kind of person that would prefer to lose some performance in exchange for elegance and perfection. The eye can tell when something is done cheaply in a render. I've made this argument that quite often we find computationally cheap methods of doing something in a game, and after time it seems to me that we've got a 400 horsepower muscle car that, on close inspection, is held together with duct tape and dreams. I'd much rather have a V6 sedan that's spotless and responds properly.

    Okay, well in real life, the Half Life 2 buggy would be a lot cooler to drive around than a Jetta, but you get the analogy.
    Reply
  • stray_gator
    Great article!
    Reply
  • zodiacfml
    i still like the simplicity of ray tracing and how close it is to physics/science. it is just how it works, bounce light to everything.

    there are a lot of diminishing returns i can see in the future, some are, how complex can rasterization can get? what is the diminishing returns for image resolution especially on the desktop/living room?
    ray tracing has a lot of room for optimization.

    for years to come, indeed, raster is good for what is possible in hardware. look further ahead,more than 5 years, we'll have hardware fast enough and efficient algorithm for ray tracing. not to mention the big cpu companies, amd & intel, who will push this and earn everyones money.
    Reply
  • stray_gator
    aargh. start typing, then sign in to find your first words posted.
    Anyway, what I liked about this article is its being under the hood, but not related to a new product, announcement or such.
    "deep tech" articles accompanying product launches tend inevitably to follow the lines of press kits, PR slides, etc.
    Articles like this, while take longer to research, are exactly that - they are researched rather than detailing "company X implemented techniques Y and Z in their new product, which works this way, benefits performance that way and is really cool.". it gives an independent, comprehensive view of the subject, and gives the reader real understanding in the field.
    Reply
  • enewmen
    The ray-tracing code on the business card was way cool. I was hoping (real-time)ray-tracing and photo-realistic rendering will come with DX11 and GPGPU offloading - this seems completely unrealistic.
    I still never read of any dedicated ray-tracing hardware, at any price. It seems the better we understand ray-tracing and it's limitations, the more cloudy the future becomes.
    Reply
  • shurcooL
    Nice article. Seems to be fairly accurate.
    Reply
  • LORD_ORION
    Ray tracing will inevtiably replace rasterization. It will just flat out look better to the human perception, when in motion, than pure rasterization, and that is all that is required.

    Heh... this article brought to you by Nvidia.
    Reply
  • annymmo
    Hopefully GPGPU (OpenCL)
    will make raytracing possible.
    (Together with a huge number of processing cores per graphic card and an advanced raytracing algorithm.)
    Reply
  • Inneandar
    nice article.
    I wouldn't mind having just a little bit more technical depth, but I'd be glad to seem more like this on Tom's.
    Reply