Image Quality And Settings
Rage is powered by id’s new Tech 5 engine, successor to the id Tech 4 engine, which was used as far back as Doom 3. While the modernized platform features a host of visual and technical improvements over the previous version, the really important changes will undoubtedly be most appreciated by game developers. For example, the Virtual Texturing feature pioneered in Enemy Territory: Quake Wars allows artists to directly sculpt and paint the game world as though it was a unique canvas instead of a repetitive, tiled environment. Secondly, the platform-agnostic development tools change what used to be a grueling porting process into a relatively trivial, mostly automated affair.
This approach has a profound effect on the PC player’s experience. The Tech 5 engine's goal is to generate a 60 frame-per-second (FPS) output, regardless of whether it's running on PC, Xbox 360, PS3, or Mac. The software does whatever it has to in order to achieve a steady 60 FPS, going so far as to alter a number of variables on the fly, including model complexity and texture resolution.
As a result, Rage shipped to PC customers early this month with almost no visual detail options, since the engine is trusted to adjust detail on the fly. The problem is that the game doesn’t do an exceptional job of optimizing textures on the PC, often displaying a lower level of detail when the hardware can easily handle more. Add to that the panic of a botched quick-fix driver release from AMD (later updated with the correct version) and various texture popping issues across different configurations with older drivers, and the Rage launch quickly became a PR fiasco.
In response, id released a Rage patch that gives PC users slightly more control over detail settings: anisotropic filtering and texture detail are the key additions. The changes were welcome. Though some game textures are still less detailed than we’d expect from a leading-edge game, the most apparent offenders were cleaned up. Using the highest settings, in conjunction with AMD’s Catalyst Rage Performance Driver and Nvidia’s 285.38 beta driver, I haven't run across any show-stopping issues.
The most egregious problems seem to be solved, despite a less-than-perfect launch. Texture popping is still observable, though less often with the new drivers installed. Perhaps more disturbing than the rocky start, however, is id’s irreverent approach to the PC. Even if the engine’s priority is to automatically deliver 60 FPS, why didn’t Rage come with a default auto-detail setting with optional granular graphic options in the first place? For a company that literally invented the first-person shooter on the PC, it's frustrating to see such a powerful platform treated like a gaming console constrained by comparatively ancient innards.
Fortunately, we now have control over a few more quality-oriented features. The list isn't exhaustive, but the texture resolution and anisotropic options do help. Before the patch, both items could be tweaked with a custom configuration file, but now there’s no need for one. Here’s how the game looks with the lowest and highest settings:
The new vsync option doesn’t increase rendering quality. It can improve game play on PCs that suffer from screen tearing, though. The side effect is that enabling vsync can force performance down to 30 FPS if your hardware isn’t capable of sustaining the 60 FPS target. The Smart setting biases to 60 FPS tearing if your graphics card supports the "swap-tear" extension, as this is considered less jarring than a sudden drop down to 30 FPS. The Rage patch update mentions this feature but doesn’t’ specify the graphics cards that support it.
Update: AMD let us know that, "The swap-tear extension is an extension to the original WGL_swap_control that allows the driver to dynamically toggle v-sync based on frame rate. This feature was implemented by our engineering team and is supported on all of our ASICs. However, it's never been documented." The good news is that it's implemented in Vista and Windows 7 Radeon drivers. We're still waiting on a response from Nvidia.
Finally, there’s a GPU transcoding option available exclusively to owners of GeForce graphics cards. This feature employs CUDA to convert texture files from the disk into a format the game can use. As explained by Nvidia's own configuration guide:
"In Rage, id Software uses a compressed texture format to hold tens of gigabytes of assets in 12GB of files in the game’s virtualtextures directory. Each time a texture is required in-game it is uncompressed via DXT, a texture compression algorithm originally developed by S3 Graphics, a company known for its Savage GPUs in the late 90s.
As this process requires a significant amount of computational power, and is used every second as the player moves around the world, the CUDA GPU Transcoding feature offloads much of the work from the CPU to ensure that is completed as quickly as possible in an attempt to prevent texture streaming and pop-in issues."