Real-Time Ray Tracing – The biggest advance in computer graphics?

If you’ve ever watched a film or the television in the 21st century then ray-tracing may be most important algorithm you’ve never heard of. (Unless, that is, you are making films or TV programmes.)

10 April 2018

Man Playing Video Games With Headset On

By Mark Westwood, Innovation Funding Consultant

If you’ve ever watched a film or the television in the 21st century then ray-tracing may be most important algorithm you’ve never heard of. (Unless, that is, you are making films or TV programmes.)

What is it?

Ray tracing is a technique for ‘rendering’, the last stage in creating the realistic high-resolution images demanded by modern viewers. So many films and TV programmes today show scenes that could not have started with a camera:
dinosaurs fighting, cities succumbing to 50m tsunamis, and worlds colliding in the spaces between the stars. Even the films which do start with a camera are likely to be rendered by a computer at some stage, to make sure that reality looks its best.

We all know that an image is formed on our retinas by light reflected from the objects we see, light that might originate with the Sun or an electric lamp. Before it gets to our eyes, though, the light that starts with a lamp, is reflected first off a wall, then the ceiling, and then the vase on the table.

Ray tracing runs this backwards, it sends a ray of light outwards from our eyes and traces its path through a scene, reflecting (and refracting, sometimes diffusing too) back to sources of illumination. Of course, this is a computer we’re talking about and it’s all going on inside and the light rays are entirely mathematical and the ray tracing is done with an enormous amount of number crunching.

What are the practical applications?

Films are usually shown at 24 frames-per-second, so for a 90 minute film there will be 129,600 frames to render. The film industry is rather coy about revealing how much computer power it uses but Pixar published data to suggest that each frame from for Cars took 106 minutes to ray trace. Incidentally, this doesn’t meant that it would have taken 300,000 hours to ray trace Cars (running time 1h 57m) from start to finish, ray tracing is rather easy to parallelise and all the big studios use large parallel computer systems.

It should be obvious that for the high-resolution images beloved of cinema audiences ray tracing is not real time, and this explains why your videogames are not rendered using ray tracing, it simply takes too much computer power to keep up with the 30 - 60 frames-per-second of high-end videogames.

This explains too you might be disappointed when the game you play doesn’t look as good as the trailer did on TV. Did you see the small print ? The bit where it said something like ‘Sequences not representative of actual gameplay’. That’s where they tell you they’ve rendered the sequences off-line. Perhaps not so much a trailer as a teaser.

Where’s the R&D?

Modern videogames, and the emerging virtual- and augmented-reality experiences, use other techniques for rendering their imagery, and you can see the difference between scenes of actual gameplay and the broadcast teasers. But increasingly capable computers, consoles and smartphones, combined with ever smarter algorithms for ray tracing, mean that real time ray tracing is within reach, and you can expect to see (literally!) the benefits in your videogames within a year or two.

NVidia, one of the principal suppliers of both the hardware and the software used for ray tracing, has recently announced its Quadro® GV100 GPU with real time ray tracing. Other major hardware suppliers in the sector are expected to announce similar products in the near future.

We expect to be talking to existing clients jumping on this technology in the coming months, and we’d like to be talking to new clients too. It’s going to take a good deal of R&D to make productive use of these new systems.