
Written by: Matt Butrovich
When Company of Heroes was released at the end of last summer, gamers were left wondering if perhaps Relic had pulled the trigger too soon on their flagship RTS, shipping it only months before the availability of DirectX 10 hardware and Windows Vista. With games like Supreme Commander on the horizon touting DX10 support (which never came, and likely never will), Relic and THQ made the decision to work on a DirectX 10 patch, to be released for free to the community. While other companies have been canceling their DX10 patches or rolling them in to retail expansion packs, Relic followed through with its promise and yesterday released the 1.70 patch for Company of Heroes.
Company of Heroes is the first retail game to get DirectX 10 capabilities, so it's something of a landmark release, and gives gamers their first opportunity to weigh the potential benefits against the lofty costs of DX10 compatibility. Until now, all we could do was speculate. Along with a couple of bug fixes and balance corrections, the most important aspect of version 1.70 is the unlocked DirectX 10 rendering path. When combined with Windows Vista and a DirectX 10 capable card, Company of Heroes will use the new Shader Model 4.0 to render all of its effects, resulting in a much improved visual experience - at least that's the selling line.
According to the patch notes provided by Relic, DirectX 10 provides several opportunities to improve the graphics of Company of Heroes. There are now thousands of additional "litter" objects throughout the game like rocks, garbage, and other debris. The lighting model has been given a complete overhaul to be a per-pixel calculation, resulting in much more accurate lighting on characters and objects. The number of and quality of in-game shadows have improved, and short grass on the terrain is now rendered in full 3D. All of these improvements sound like great additions to an already beautiful game, but are they really noticeable? Also, what sort of performance penalties do they bring with them? That's what I set out to determine. The screenshots below represent the best graphical settings Company of Heroes can provide in each of its code paths (DX9 and DX10). All of the images were taken from the game's built in performance test, which takes place entirely during nighttime scenarios. I've adjusted the brightness and contrast on some of the screenshots in order to make any differences more apparent. The images on the left were all captured with the game running in DirectX 9 mode, while the images on the right used the new DirectX 10 mode.
These first comparison shots actually provide quite a lot to look at. Most noticeable is the self-shadowing on the foreground character, and the more realistic lighting on his face. Notice that flak gun on the left now casts a shadow on itself, and that the sand bags now catch the ambient light, providing a better sense of depth to the objects. The overall texture quality appears to have improved slightly as well.
Here we get our first look at a potential problem with the DirectX 10 patch. Once again the character is lit in a more natural way, and you'll notice a new glow effect on the bright area on his left shoulder. But the most important thing to observe in these shots is that the water looks distinctly different. At this point I still hadn't quite figured out why, but we'll see some more examples shortly.
These screenshots provide maybe the best evidence of the new water shaders and the possibility that something is not quite right with them. It's quite obvious the water renders in the two scenes are entirely different, but what's going on? You'll notice in the DirectX 10 shot on the right, that the water now reflects land near the shorelines, and also manages to catch some of the new 3D grass in the reflection as well. What's clearly missing from the scene is the reflection of the weather. In the DirectX 9 shot on the left, you can see that there are clouds in the sky from the reflection in the water. From the same angle in the DirectX 10 scene you'd think it was a clear night. You can also spot what Relic calls more "litter" objects in the DirectX 10 scene. In this case there are lots of rocks strewn about on the terrain.



























