S.T.A.L.K.E.R. – Call of Pripyat (DirectX 10 vs. DirectX 11)
S.T.A.L.K.E.R.: Call of Pripyat is the third game in the acclaimed survival based F.P.S. series from Ukrainian developer GSC Game world. The events of S.T.A.L.K.E.R.: Call of Pripyat unfold shortly after the end of S.T.A.L.K.E.R.: Shadow of Chernobyl. Having discovered the open path to the Zone's centre, the government decides to stage a large-scale operation to take control of the Chernobyl nuclear plant. According to the operation's plan, the first military group is to conduct an air scouting of the territory to map the anomalous fields. Thereafter, making use of the maps, the main military forces are to be dispatched. Despite thorough preparations, the operation fails. Most of the advance helicopters crash. In order to collect information on the reasons for the operation's failure, Ukraine's Security Service send their agent (protagonist - Alexander Degtyaryov) into the Zone. From now on everything depends on the player!
Call of Pripyat was tested at 1920x1200. The base settings for our test were the maximum available for the DirectX 10, Extreme profile. From there the DirectX 11 was manually enabled in the games configuration file. The Russian to English translation files were also applied to the game engine.
As mentioned above, to run the DirectX 11 version of Call of Pripyat we need to manually configure the game settings. By default it runs in DirectX 10 mode at most. Through the manual configuration and DirectX 11 renderer we are able to add higher quality shadows, sun and SSAO/HDAO as well as enable tessellation.
With DirectX 11 enabled the game runs well although it is clear there is some optimisation to be done, even the time taken to load levels is longer at the moment. ATI tell us that in the next week there will be a patch released for the game which will improve the user experience further and they are also hard at work optimising the drivers for better performance in both render modes.
When looking at the game performance the first point of note is that the game is playable with maximum detail in each DirectX mode. Looking at little closer we can see that although DirectX 11 takes advantage of advanced tessellation any benefit to framerates are overruled by the performance hit from higher detail shadows, sun etc. It will be interesting to see how this performance difference changes as the game and drivers mature.
In terms of the image quality differences between modes, there are two main areas which benefit from the DirectX 11 code. The first is how the look of in-game objects is more natural when using DirectX 11. In the example below the “can” on the side of this STALKER’s mask is much more round in DX11, with additional detail added to the grill.
Earlier in the article we spoke about how tessellation breaks up the image into smaller parts to allow more detail in a scenario such as the one above and that DirectX 11 allows these sections to be processed much faster than they could be in DX10. To demonstrate this we can show a wireframe version of the STALKER in which it is possible to see the large number of small triangles which make up the “can” surface.
In addition to tessellation the DirectX 11 version of COP allows us to enable contact hardened shadows. In DirectX 10 mode the shadows cast by objects have a single level of depth and clarity, in DirectX 11 mode the shadows throughout the game environment vary more naturally. For example they are darker when closer to the object casting them. Shadows also blur the further away they are. Here are two examples of the contact hardened shadows at work.
Direct X 10.1 |
Direct X 11 |
|
|
|
|
Finally as far as S.T.A.L.K.E.R: Call of Pripyat is concerned, we are aware that as this game has to be imported from Russia at this time there will be very few of you who have seen any independent screenshots. Therefore, here are a few of our screenshots taken from early testing in DirectX 11 mode.