When Will Ray Tracing Replace Rasterization?

A Hybrid Rendering Engine?

If you've read this far into this article, you may think that ray tracing is still far from being ready to replace rasterization, but that in the meantime it might be a good idea to mix the two techniques. And at first look, they do seem to be complementary. It's easy to imagine rasterizing triangles to determine visibility, taking advantage of the excellent performance that the technique offers, and use ray tracing only on certain surfaces to add realism where it's necessary, such as adding shadow or achieving exact reflections or transparency. After all, that's the approach Pixar used to make Cars. The geometric models are rendered with REYES and the rays can be cast on demand to simulate certain effects.

For Cars, Pixar used a hybrid rendering engine combining REYES for visibility and on-demand ray tracing for reflections and AO

Unfortunately, though it sounds very promising, the hybrid solution is not easy to apply. As we've seen, one of the main disadvantages of ray tracing has to do with the data structure needed to organize objects in such a way as to limit the number of tests for ray/object intersection. Using a hybrid rendering model instead of pure ray tracing doesn't change that. The data structure will still have to be put in place, with all the disadvantages that implies. For example, we might consider ray tracing the static data and rendering dynamic data using rasterization. But with that scenario, we lose all the advantages of ray tracing. Since the dynamic data does not exist for the ray tracer, it'll be impossible to make objects cast a shadow or to see their reflections.

What's more, in terms of performance, the biggest problem is with the memory accesses generated by the secondary rays, which are typically the rays we need to keep in our hybrid rendering engine. So, the performance gain won't be as great as one might think. Since most of the rendering time is dominated by calculating secondary rays, the gain from avoiding calculation of primary rays is negligible.

In other words, by attempting to combine the advantages of both methods, this solution could end up combining the disadvantages, while losing the elegance of ray tracing and the high performance of rasterization.

  • IzzyCraft
    Greed? You give an inch they take a mile? Very pessimistic conclusion although it helps drive the industry so hard to really complain. ;)
  • 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.
  • stray_gator
    Great article!
  • 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.
  • 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.
  • 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.
  • shurcooL
    Nice article. Seems to be fairly accurate.
    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.
  • annymmo
    Hopefully GPGPU (OpenCL)
    will make raytracing possible.
    (Together with a huge number of processing cores per graphic card and an advanced raytracing algorithm.)
  • 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.