Far Cry 3 is an open world first-person shooter video game developed by Ubisoft Montreal in conjunction with Ubisoft Massive, Ubisoft Reflections and Ubisoft Shanghai and published by Ubisoft. The game was developed on the Dunia 2 Engine. For Far Cry 3, the Dunia Engine was updated to support DirectX 10/DirectX 11 and other various features like: New Water Technology, Realistic Weather System, New A.I. Technology, New Animation System, Realistic Facial expressions, Motion Capture Technology and Global Illumination.
These are the same developers (Ubisoft Montreal) that gave us Assassin’s Creed 3, the worst optimized game since Grand Theft Auto IV and I’m curious to see if Far Cry 3 suffers from the same CPU optimization issues. If you played Far Cry 2, you know how hardware intensive that game was and how good it looked for its time. Far Cry 3 is no different, because the Dunia engine is a modified version of the CryEngine, the game “borrows” all the strengths and weaknesses of Crysis.
The scene that was used to test Far Cry 3 can be seen in the following video, it’s the perfect scenario for this kind of game, 100% repeatability.
The settings used were: Ultra Preset + Enhanced Alpha to Coverage (transparent AA applied on foliage, DX11 only) + No MSAA + SSAO (DX11 only) + 0 Buffered Frames.
FPS was recorded using the Beepa Fraps 3.5.9 for 60s.
CPU usage was recorded using Windows Performance Monitor. Processor(_Total) with a sample interval of 1 second.
GPU Usage was recorded using MSI Afterburner 2.3.0.
Far Cry 3 is updated to 1.01
|Test Hardware | Far Cry 3 Benchmark|
Intel Core i5-2500K (Sandy Bridge)
3.3 GHz, OC = 4.5 GHz, 6 MB L3 Cache, power-saving settings disabled, Turbo Boost disabled.
|Motherboard||MSI P67-C43-B3, Intel P67 Chipset|
|Memory||2 x 2 GB DDR3 1600MHZ|
WD 500 GB SATA III (OS)
Samsung 750 GB Sata II (Game)
|Graphics Card||Sapphire HD6950 1 GB|
|Power Supply||Corsair TX 650 W|
|System Software And Drivers|
Windows 7 x32 SP1
Windows 7 x64 SP1
Windows 8 Pro x32 build 9200 (RTM)
Windows 8 Pro x64 build 9200 (RTM)
|Driver||AMD Catalyst 12.11 Beta 8|
Operating Systems Comparison
Far Cry 3 works exactly the same on both Windows 7 (x32/x64) and Windows 8 (x32/x64). Windows 8 is starting to look more like a gaming OS even though it was designed to be nothing like that.
CPU and Cores Comparison
In DirectX 9, there’s absolutely no CPU bottlenecking, even when using only 2 cores (the game doesn’t start with 1 core) but if you look at the CPU/GPU Usage Table you can spot a small inconsistency. Even though the CPU Usage is well bellow 100%, the GPU isn’t used at full capacity. It’s not as bad in Assassin’s Creed 3, in fact it’s nothing like AC3 but those few percentages could mean more than a couple of extra frames rendered per second.
Not all of you know that Far Cry 3 supports DirectX 11 Multithreading (more info). Unlike nVidia, AMD’s Catalyst Drivers don’t exactly support this feature (maybe because it’s not being used so often by devs, Civ 5 is one of the VERY few games that make use of it) but I still decided to give it a shot, see how “things” work with and without DirectX 11 Multithreading, the results are disappointing…
Basically, DirectX 11 Multithreading doesn’t work with AMD GPUs and drivers, instead of improving performance (creating more than one “rendering thread”) it kills it. You can’t penalize Ubisoft for this because this option is hidden in the xml config file (only available for nVidia GPUs in-game). If you look at Civ 5 performance difference between two AMD and nVidia Cards (similar in performance) you’ll see a huge FPS difference (100% improvement in some cases) in favor of nVidia, that’s what DX11 Multithreading does…
Again, the GPU isn’t fully utilized. On the other hand the CPU needs of Far Cry 3 aren’t very high and that’s excellent news. These CPU Cores tests have nothing to do with how performance scales with more added cores because these tests are not designed to do that. What these tests show is how much “CPU Power” the HD6950 needs for the best performance. In these scenarios the system is GPU bottleneck (GPU bottleneck is good, m’kay!) and performance will not scale with more added cores.
|DirectX 9||DirectX 9||DirectX 11||DirectX 11||DirectX 11 MT||DirectX 11 MT|
|CPU Usage||GPU Usage||CPU Usage||GPU Usage||CPU Usage||GPU Usage|
|2 Cores OC||63%||96%||71%||94%||32%||33%|
|3 Cores OC||43%||97%||46%||96%||28%||47%|
|4 Cores OC||34%||97%||36%||95%||51%||94%|
Because the GPU isn’t fully utilized, overclocking it won’t make a big difference but it still makes sense to do it on highly overclockable GPUs, just don’t expect miracles.
Note: Because 12.11 Beta 8 crashes my whole system while running Far Cry 3 (DirectX 9 only) with the GPU overclocked I was forced to use 12.10 WHQL for the DirectX 9 GPU Overclock test.
AMD Catalyst Drivers Comparison
Far Cry 3 is a AMD Gaming Evolved title meaning that the developers worked close with AMD’s Catalyst Driver Team to ensure the best performance on the game’s release date. All three tested drivers showed the same performance, like most AMD titles on release date. If you have Crossfire you might want to use the latest CAP (Catalyst Application Profiles 12.11 CAP 1) because it includes a Far Cry 3 profile that should increase CFX Scaling.
As you can see, performance differences between using DirectX 9 and DirectX 11 are almost inexistent, especially on higher settings. All the D3D 11 features (SSAO, Alpha to Coverage) don’t seem to affect performance very much. When using lower quality settings, using DirectX 11 is actually faster than DirectX 9, a direct effect of the game’s inefficient usage of the GPU which is more evident on lower settings.
Leaving that aside, Far Cry 3 has a multitude of graphical settings, most of them are addressing foliage, which let me tell you looks amazing. But anything below very high settings makes it look like it’s made out of cardboard, especially trees.
Lacking support for D3D10/10.1 means that all DirectX 10 or 10.1 GPUs will automatically default Far Cry 3 to DirectX 9. Dunia 2 fully supports DX10 but the developers didn’t use it, doesn’t make much of a difference because the game looks about the same in DX9 as in DX11, the difference between the two are in fine details.
It’s no secret that Far Cry 3 is a console port, a rather good one. The performance issues the tests revealed are nothing but fixable by a patch and a better display driver. Taking a look back at Assassin’s Creed 3, the problems that game has haven’t been fixed yet; though Far Cry is actually playable by decreasing the quality settings whereas AC3 isn’t…
The DirectX 11 addition is a welcomed one, unfortunately it doesn’t make a huge difference in how the game looks because the D3D11 features added aren’t many, as I said earlier, the differences are in small details. How something looks (good,bad) is more of a personal area, extremely hard to quantify, it’s up to you to judge this.
On the other hand I’m happy to report that the drops in FPS are very small, the average difference between minimum FPS and average FPS is of about 20% and this makes the game feel very smooth.
- Works the same on both Windows 7 and Windows 8.
- Doesn’t require a very powerful CPU, 2 cores of a 2500k are enough.
- Great Graphics on higher levels of quality; above decent on lower settings
- Massive variety of quality settings.
- Addition of DirectX 11 features while still supporting DirectX 9.
- Small difference between minimum and average FPS
- Far Cry 3 fails to fully utilize the GPU.
- Crashes in DX9 with the GPU OC’ed (Catalyst 12.11 Beta only)
- MSAA is locked to DirectX 11
- Lack of DirectX 10/10.1