Published in Reviews

Nvidia GTX 980 reviewed

by on19 September 2014

Index

Nvidia’s two first design goals for the GM204 were to deliver extraordinary gaming performance for the latest high-resolution displays and to provide improved energy efficiency. The third goal was to deliver dramatic leap forward in lightning with Voxel Global Illumination (VXGI).

Since the early days of computer generated graphics, engineers and designers did their best to develop technologies and techniques that would eventually deliver photorealism. Lighting was always a part of the equations.  A direct solution to the rendering equation proposed by Kajia, 1986 is the path tracing. This includes following a huge number of rays as they bounce around the scene, but unfortunately the equation is not simple and even the most powerful PCs cannot compute it in real time at an adequate frame rate.

VXGI-1

 VXGI-2

 VXGI-3

Today’s game engines use creative combination of different techniques. Use of pre-computed lighting is a very common technique, but it can only be applied to static objects. VXGI can be accelerated natively by the GPU and it allows real-time calculation of approximated dynamic global illumination as well as ambient occlusion. While VXGI’s software algorithm will run on all GPUs, the performance benefits of VXGI hardware acceleration will only be available on Maxwell GPUs.

VXGI will become interesting for gamers only if it is able to compute dynamic global illumination at playable frame rates on all Maxwell cards rather than just high-end cards. According to Nvidia, VXGI works great on the GTX 980 and this card can render dynamic global illumination at frame rates that have never been possible. VXGI is accessible for developers using UE4 and Q4 engines, but other major engines should be supported too.

VXGI is based on the concept of using a 3D structure (voxels) to capture coverage and lightning information at every point of the scene. This data structure can then be traced during the final rendering stage to accurately determine the effect of light bouncing around in the scene.

VXGI incorporates three main steps: render geometry, evaluate light, and gather indirect light.

VXGI-4

At first the geometry (polygons) are translated into voxels. Each voxel is one element in a 3D grid. Voxelized objects are created of little cubes arranged in a grid.  

VXGI-5

Since objects are constructed of primitives, the set of voxels intersected by each primitive is determined, and the voxel opacity is computed (the amount of opaque material contained in the voxel). In the second step, direct light reflected by the voxels is calculated and in the third step bounced light from the environment is collected.

VXGI-6

The original VXGI concept was developed in 2011 by Nvidia researcher Cyril Crassin. The concept relied on voxels that were stored in an octree structure, but in order get native GPU acceleration a new structure was implemented as well as improved algorithm. In his original paper Crassin said he used a ‘voxel cone’ as an approximation of the effect of secondary rays. He stated that when it comes to rendering glossy reflections, just one ‘voxel cone’ is used per voxel, while for rendering diffuse materials (color bleeding effects) only a few scattered cones are needed, resulting in very realistic results at a much lower computational cost.

VXGI-7

The original demo delivered good results and we are convinced that the full implementation can only be better. Nvidia will demo new technologies including the latest developments in VXGI at the GAME24 event. http://game24.nvidia.com/info.

We can only show you a couple of pictures provided by Nvidia and which are actual screenshots from Apollo 11 demo, based on UE4 engine.

VXGI-Apolo-11-tech-demo-1

VXGI-Apolo-11-tech-demo-2

VXGI-Apolo-2-tech-demo-3

VXGI-Apolo-11-tech-demo-5


VXGI-Apolo-11-tech-demo-4

 


Last modified on 19 September 2014
Rate this item
(1 Vote)

Read more about: