The State of DirectX 10 - Image Quality & Performance


Company of Heroes: Image Quality & Features

StateOfDX10_COH_logo.jpg
Company of Heroes is a WWII real-time strategy game developed by Relic Entertainment and originally released just over a year ago. Relic took the formula they had used in their highly successful Warhammer 40k series and adapted it to the much-trodden setting of World War II with great success. Company of Heroes' unique blend of excellent graphics and steller gameplay won more than its fair share of 'Game of the Year' awards and it went on to become one of the most highly rated RTS games of all time.

Company of Heroes uses the Essence Engine which Relic developed in-house specifically for the game and at the time of release, it featured the best graphics of any strategy title. Company of Heroes is a very impressive looking game and it supports many features and technologies previously reserved for first-person shooters. In addition to steller graphics, the game also makes use of the Havok 3 physics engine, allowing the game to impliment a more realistic physics system than previous strategy games.

small_StateOfDX10_CoH_Img1.jpg small_StateOfDX10_CoH_Img2.jpg small_StateOfDX10_CoH_Img3.jpg
Company of Heroes Screenshots (DirectX 10)

Company of Heroes is the first of only two currently available real-time strategy games to impliment DirectX 10 elements, although it was not always that way. Company of Heroes was initially a DirectX 9.0c title, but at the end of May, over eight months after it was originally released, Company of Heroes recieved DirectX 10 support in the form of a patch, bringing the game to version 1.7. A patched game automatically detects DirectX 10 compatibility and if available, makes a couple new options available in the video settings menu. On a DirectX 10 capable rig, the game gives the user the option of using DX10 shaders as well as increasing the Terrain Detail setting to 'Ultra'. Both of these options are not selectable on a rig not capable of DX10.

Enabling these DX10 exclusive options nets the player a couple new graphical effects. The most noticable difference is the addition of grass in the game. In DX9, grass in Company of Heroes is represented by greenish terrain textures with the occasional bush, but in DX10, individual blades of grass can be seen where appropriate. The two images below illistrate the difference between grass in DX9 and DX10. The first image shows a zoomed in view of a patch of grass in the game. In DX9, we see a somewhat blurry grass texture while DX10 gives us a patch of 'fuzzy' grass. You can clearly see individual blades of grass, although the effect isn't terribly convincing. However, remember that this is a RTS where you're likely to spend most of your time zoomed out to get a better view of the battlefield. The second image shows the same patch of grass from a comfortable distance similar to the distance you would normally view the battlefield during gameplay. From this distance and angle, the grass effect is slightly more realistic, although it's also more difficult to notice.

small_StateOfDX10_CoH_Grass.jpg small_StateOfDX10_CoH_Gras2.jpg
Grass Effects in Company of Heroes

Another difference between DX9 and DX10 is the use of higher quality terrain textures. The difference is quite subtle and we found it difficult to notice outside of a side-by-side comparison. However, the difference in texture quality is definitely there as you can see in the second image above. The difference in texture quality is most noticable on the gravel road. In DX10, details in the road are better defined and sharper than in DX9.

In Company of Heroes, each level has a predefined global light source that is used for all shadow and lighting calculations. While this makes perfect sense in a day-time setting where the gobal light source simply represents the sun, Company of Heroes offers several night-time levels. In a night time setting, the global light source isn't sufficient since there are almost always more than one light source in the vacinity of any given object. When DX10 shaders are enabled, point lights gain the ability to cast shadows. The difference between how lighting is handled in DX9 and DX10 in Company of Heroes is shown in the image below. In DX9, each member of the engineer squad only casts a single shadow dictated by the global light source for that level. However, the lamp they are standing next to has no effect on lighting and shadow calculations at all. In DX10, each engineer now has a second shadow cast by the lamp.

small_StateOfDX10_CoH_Light.jpg
Shadows in Company of Heroes

Notice that this lighting effect isn't just limited to units, it also effects level objects. In the image above, the lamp is hanging from one side of the lamp post. In DX9, the lamp post only has one shadow, cast by the global light source. Notice that in DX10, the lamp light also casts a shadow so that the lamp post now has two shadows. Another effect enabled through the use of DX10 shaders is softer shadow edges. In all of the comparison images so far, the shadows in DX9 have ridged, aliased edges despite an anti-aliasing setting of 4X. In DX10, shadows have smoother edges, making them appear softer and more natural. The difference in shadow aliasing is most noticable in the images of the grass patch where the shadow of the flag pole is significantly smoother in DX10 than DX9.

small_StateOfDX10_CoH_Rocks.jpg
Litter Objects in Company of Heroes

The last difference in image quality between DX9 and DX10 that we noticed is the addition of 'litter objects' in DX10. A litter object is any small geometric object whose only purpose is to increase image quality and realism. Litter objects in Company of Heroes usually take the form of rocks. In the image above, we can see an example of litter objects. In the DX9 image, the terrain is 'flat' while in DX10, there are several small rock-like objects on the ground. Another property of litter objects is that they are not static. Since they are geometric objects, they are interactive and can be moved. For example, an explosion could throw a rock into the air or a tank could crush it with its tracks.

Image Quality Impressions

The DirectX 10 support introduced by patch 1.70 brought several noticable image quality enhancements to Company of Heroes, many of which add a significant amount of realism to the game, although the slightly improved terrain textures are much too subtle to be noticed, and we didn't particularly notice the addition of point-light shadows. However we did notice the new grass effects and we felt that litter objects did their job of fleshing out the terrain to make it appear more realistic. The DX10 enhancement we noticed the most, however, was the improved shadow effects. Something about the rough, jagged and primative shadow effects in DirectX 9 just didn't sit well with us and we thought that it really stuck out, especially when all of the other graphical effects are cranked to the max.

Despite being a strategy game, Company of Heroes has some excellent graphics. Unfortunitely, since it's a strategy game, you're also less likely to notice how great everything looks. Unlike a first-person shooter where your smack in the thick of the action, you spend most of your time in a strategy game hovering well above the battlefield and graphics play a much smaller roll in your experience. This doesn't bode well for DirectX 10 image quality enhancements which are quite subtle to begin with. Like the other games we have looked at so far, we rarely noticed the additional DX10 effects during gameplay.


 Discuss This Article

Related content