Introduction
Slowly but surely the number of DX10 titles is steadily increasing. Relic was first out of the gates with a DX10 patch for Company of Heroes, followed quickly by Lost Planet. Now another RTS from developer Massive Entertainment (the minds behind the Ground Control series) is set to offer DX10 support. The game, World in Conflict, is set to debut in a little over a month and, with the highest graphics settings, it looks like it’s really going to push today’s latest systems to the max. We recently tested the public beta with a variety of high-end graphics cards to see how they’d perform with the game, we were particularly interested in the game’s DX10 path, as the game has been hyped to really deliver in this area; more on that later though.
In case you haven’t heard of World in Conflict, we’ll provide a quick summary. The game is set in an alternate reality where the Berlin Wall never fell and the Cold War is still going strong. The year is 1988 and tensions between east and west are at an all-time high. Ultimately the Soviet Union invades western Europe, compelling NATO to invoke Article V, the self defense charter which states that an attack against one ally is an attack against them all. The war front quickly spreads from the fields of Europe to the shores of America itself – before America can send reinforcements to Europe, a Soviet invasion force hiding in unmarked container ships attacks Seattle.
The storyline of the game was created by New York Times best-selling author Larry Bond and uses real-world air and ground forces: if you’ve ever dreamed of an RTS with Hind and Cobra helicopters, and M-1 Abrams and T-80 main battle tanks, this is your game.
Unlike many RTS games, World In Conflict skips the resource gathering and base management tasks, focusing instead on combat. You must also choose from one of four different classes to play (air, armor, infantry, or support); this should make teamwork critical in multiplayer matches. The game even supports dual monitors if you run DX10 under Vista.
We recently had the chance to chat with Christian Seger, Massive’s lead engineer. As you probably know by now there are two basic routes game devs can choose from when designing their games for DX10: improving performance or improving graphics. We were curious to see what route Massive chose and how that choice affected the game in comparison to the DX9 version.
Firingsquad: Which new features in DirectX 10 excite you the most and how are you taking advantage of that in World in Conflict?
Christian Seger: Texture arrays, stream-out, and lesser draw call overhead are features that first come to mind that look the most appealing. However, for World in Conflict, we had limited time to get DX10 features in before we hit our beta date, so we had to choose a feature that would give us high visual impact compared to the time we had available. The feature we choose is having the depth of the scene always available. We do this in DX10 by simultaneously rendering to multiple render targets, this can also be done in DX9, but not without ditching FSAA (if I remember correctly), which we weren't prepared to do. The scene depth buffer gave us the possibility to implement three new features: Soft Particles, Cloud Shadows and Light Shafts.
Massive provided a good description of these features (and a video) on nzone.com. We’re reposting it here:
Soft Particles: One of the great features of DX10 is the Soft Particle effect, which ensures that all the different particle effects (like smoke, explosions and fire) look as realistic as possible. In many games that don’t have this feature, effects like these can sometimes look striped, as if there are a number of two-dimensional objects stacked next to each other. Not so with Soft Particles. The soft particles, or z-feather, make sure that these particle effects act in a realistic manner, as they actually exist in full 3D within the game level. This means that they look and act exactly like the smoke, explosions, etc ought to do in the real world.
Global Cloud Shadows: Another very interesting graphical feature in DX10 is the possibility to make Global Cloud Shadows. This means that we can have our volumetric clouds moving across the level in actual 3D and cast shadows on buildings, hills and forest in a completely realistic way. The shadows are affected by the shape, volume and thickness of the clouds and as the sky gets filled with more smoke and clouds, the shadows reflect the harshness of the battlefield.
Volumetric Lighting, “God rays”: The volumetric lighting makes sure that we can have some excellent lighting to go on the side of our shadow features. This is very noticeable as we see rays of light, or “god rays”, coming through the clouds over the battlefield. It’s a very atmospheric effect that can make even the most intense war scenery look beautiful.
Firingsquad: Is there anything in DirectX 10 that you couldn’t do in DirectX 9.0?
Christian Seger: The scene depth buffer support couldn't be implemented in DX9 at the same quality and with the same performance impact. I'm sure there are plenty of other things, but further DX10 implementation will be a focus of our future projects, where DX9 is likely to be the low-end render path.