bit-tech.net

Content archived from www.custompc.co.uk

Ray tracing is not the answer, says Nvidia

Nvidia’s chief scientist says that ray tracing will be a part of 3D graphics in the future, but won’t replace rasterisation

Quake 4 ray traced by Daniel Pohl

Now that Intel is pouring a lot of resources into ray tracing, as well as announcing its discrete graphics part, codenamed Larrabee, with multiple x86 cores, there’s a lot of talk about ray tracing eventually replacing rasterisation and making the current GPU as we know it redundant. However, Nvidia’s chief scientist David Kirk has disputed this.

‘I do believe that ray tracing is not the answer,’ said Kirk, but added that it was ‘part of an answer.’ In an excellent interview on PC Perspective, Kirk provided a reality check on the requirements for ray tracing in games, saying that ‘reality intrudes into the most fantastic ideas and plans.’

One of the main problems, unsurprisingly, is speed. ‘Notwithstanding some contrived demos,’ says Kirk, ‘ray tracing is currently significantly slower than rasterisation. Given a complex scene with lots of triangles, lots of changes from frame to frame, lots of lights, and complex shaders, modern ray tracers running on multi-core CPUs are not fast enough for high-quality, real-time rendering.’

Of course, Nvidia would say this as it’s been putting all of its 3D rendering resources into the rasterisation basket for many years. However, Kirk said that the main reason for this was that ‘virtually all games and professional applications make use of the modern APIs for graphics: OpenGL and DirectX. These APIs use rasterisation, not ray tracing. So, the present environment is almost entirely rasterisation-based. We would be foolish not to build hardware that runs current applications well.’

Nvidia’s vice president of content relations, Roy Taylor, concurred, telling Custom PC that ‘I don’t think DirectX is just going to pack up and walk off to the sidelines.’ However, Taylor also pointed out that there’s no reason why you couldn’t use a GPU’s stream processors to render ray tracing using Nvidia’s CUDA language. ‘We have a very good C programming environment in CUDA,’ said Taylor, ‘and if someone wants to develop a game with CUDA then we’ll do it and we’ll support it. And if at some point ray tracing is the way to go, then we’ll run that on the GPU too. There’s absolutely no reason why you can’t use the GPU for any of those.’

Kirk says that he expects ‘APIs will evolve to embrace ray tracing as part of the 3D graphics "bag of tricks."’ Will there always be a place for 3D rasterisation, or could ray tracing eventually takeover many years in the future? Let us know your thoughts.

Subscribe to Custom PC