3DMark05 Engine Overview
Futuremark has developed a brand-new engine for its 3DMark05 benchmark. The company says its new software’s engine is more game-like than that of the previous version of 3DMark. Though, Futuremark points out that the 3DMark05 does not sport any physics, AI and other CPU tasks, which is why the benchmark is not really dependant on the central processing units.
The engine in 3DMark05 dynamically builds shaders for each material in HLSL format. These shaders are then runtime compiled to best fit the installed hardware, or the user may manually set which compilation profile to use. The developer insists that such approach allows every hardware to benefit from its capabilities, but do not leave hardware with somewhat limited set of capabilities to render every scene in multiple of passes. Basically, 3DMark05 compares how NVIDIA’s GeForce 6800 Ultra does Shader Model 3.0 render-path to ATI’s RADEON 9700 PRO working using Shader Model 2.0 path.
“We have mostly just one single HLSL shader per material, and for NV40 it is compiled using the SM3 profile and for R420 it’s using PS 2_b for example. 3DMark05 then shows which is faster. Shaders exceeding SM2 limits would show more dramatic differences, but that would basically rule out all SM 2.0 hardware, and we don’t want to do that. We could, for example, add some feature test with some later update showing such extremely long and complex shader difference. But currently we are happy with the game tests, with all shaders fitting into a single rendering pass even on SM 2.0 hardware,” says Patric Ojala from Futuremark.
So, from fixed render-path, the new 3DMark05 goes to a more hardware-specific approach or choosing the render-path. While the software does allow to choose different rendering profiles on feature-rich hardware, such as NVIDIA GeForce 6800 Ultra that sports everything up to Shader Model 3.0, the default score should be achieved on “dynamic” profile.