« Can't live without Aero Peek | Main | Why we may never see a Core i7 Apple machine »
Rays Per Pixel - the new benchmark for graphical realism?
While reading New Scientist's summary of how computing power is being used to create more realistic virtual worlds, I stumbled across a term that could be a major discussion topic over the next few years.
Currently, the majority of software that creates and draws a 3D scene in real time (games being the main example) uses a technique called rasterisation. This involves splitting complex 3D objects into triangles, which can be easily processed by a graphics card. The visual complexity of a 3D scene depends on the number of triangles used, while the performance of graphics hardware can be measured by how many triangles it can draw per second. The more triangles, the more detail and realism in a scene.
However, the next decade could see rasterisation thrown out of the window, as real-time ray tracing could become possible. Ray tracing is a rendering technique used by film studios (such as Pixar) which produces far more believable visuals than rasterisation. Ray tracing a 3D scene involves calculating the paths of individual rays of light, and how each ray affects the appearance of objects. The amount of calculations a computer has to perform for any ray tracing algorithm is phenomenal, especially when taking into account how multiple rays can bounce off objects onto others.
During the early 1990's, films such as Terminator 2 and Jurassic Park, which made heavy use of ray tracing (more commonly known as CGI, or computer generated imagery) became the most expensive films ever produced, partly because ray tracing required super computers that cost millions of dollars each. Even with these monsters of graphical computing, such as Silcon Graphics' workstations, rendering a single frame would take a very long time, and the idea of ray tracing at 30 frames per second was pure fantasy.
Computers are far more powerful now, and computer hardware design is currently on the verge of a renaissance, which could potentially see both CPU and graphics card merge into a single entity. One of the advantages of such new hardware, such as Intel's Larrabee, is that it will allow games to be drawn using ray-tracing, in real time, with a massive improvement in visual quality and realism.
Although this is still some way off, and may not even be possible with the first generation of Larrabee cards, the metric for measuring ray-tracing performance is already in place. In the same way that increasing the number of triangles raises graphical detail, so too does increasing the number of rays (which adds an enormous amount of calculations for your poor computer to keep up with).
Intel's Daniel Pohl states that the number of rays used, per screen pixel, determines how realistic the appearance of a scene is. He argues that photorealism (where a computer generated image is indistinguishable from a photograph) would require 100s of rays per pixel. Intel's demo of real-time ray tracing, including impressive reflection and refraction effects, uses around 10 rays per pixel and is only a 512 pixel-wide video. Even then it doesn't run at 30 frames per second.
Currently, the majority of software that creates and draws a 3D scene in real time (games being the main example) uses a technique called rasterisation. This involves splitting complex 3D objects into triangles, which can be easily processed by a graphics card. The visual complexity of a 3D scene depends on the number of triangles used, while the performance of graphics hardware can be measured by how many triangles it can draw per second. The more triangles, the more detail and realism in a scene.
However, the next decade could see rasterisation thrown out of the window, as real-time ray tracing could become possible. Ray tracing is a rendering technique used by film studios (such as Pixar) which produces far more believable visuals than rasterisation. Ray tracing a 3D scene involves calculating the paths of individual rays of light, and how each ray affects the appearance of objects. The amount of calculations a computer has to perform for any ray tracing algorithm is phenomenal, especially when taking into account how multiple rays can bounce off objects onto others.
During the early 1990's, films such as Terminator 2 and Jurassic Park, which made heavy use of ray tracing (more commonly known as CGI, or computer generated imagery) became the most expensive films ever produced, partly because ray tracing required super computers that cost millions of dollars each. Even with these monsters of graphical computing, such as Silcon Graphics' workstations, rendering a single frame would take a very long time, and the idea of ray tracing at 30 frames per second was pure fantasy.
Computers are far more powerful now, and computer hardware design is currently on the verge of a renaissance, which could potentially see both CPU and graphics card merge into a single entity. One of the advantages of such new hardware, such as Intel's Larrabee, is that it will allow games to be drawn using ray-tracing, in real time, with a massive improvement in visual quality and realism.
Although this is still some way off, and may not even be possible with the first generation of Larrabee cards, the metric for measuring ray-tracing performance is already in place. In the same way that increasing the number of triangles raises graphical detail, so too does increasing the number of rays (which adds an enormous amount of calculations for your poor computer to keep up with).
Intel's Daniel Pohl states that the number of rays used, per screen pixel, determines how realistic the appearance of a scene is. He argues that photorealism (where a computer generated image is indistinguishable from a photograph) would require 100s of rays per pixel. Intel's demo of real-time ray tracing, including impressive reflection and refraction effects, uses around 10 rays per pixel and is only a 512 pixel-wide video. Even then it doesn't run at 30 frames per second.



Very nice article.
I am personally not an app or software person myself, but the ray tracing technology is very intriguing.
I am wondering how much difference there is between ray tracing and future graphics technology will be. We can become realistic, but there is a limit to realism that just makes some films somewhat uninteresting.
Cheers!
Posted by ImIcarus | June 30, 2009 4:55 AM
You said that it might be possible for ray tracing to be used in a few years. Do you think that it will someday come to that, that real actors won't be needed for movies because graphics will look reality-like?
Posted by Odette Célibataire | July 3, 2009 9:40 AM
That's been mooted for the last ten years or so... people talking about news broadcasts with a virtual presenter rather than a real person. Currently though, even the best CGI lacks certain human attributes that make it look a bit weird, enough to distract you, and its cheaper and simpler to get a real person and put them in front of a camera.
In ten years maybe this will be different.
Posted by Orestis | July 3, 2009 10:47 AM
You might want to check the website www.qwrt.de for more up to date numbers on resolution and frame rate.
Posted by Anonymous Coward | July 17, 2009 12:48 AM