What's New in 1.2?
We have, unfortunately, not had the chance or pleasure of speaking with CryTek on the subject, but NVIDIA has given us a heads up on what the new patch includes in the way of SM3.0 support and the features of the SM3.0 rendering path. From what we can gather, there are two performance enhancing developments in the CryEngine made possible by SM3.0 in the new patch.As for VS3.0, instancing is implemented when rendering grass. Instancing helps to reduce CPU and bus overhead by allowing the engine to send one model to the vertex shader where multiple "instances" of the object are manipulated and moved about the scene as necessary. With all the grass in FarCry, it's easy to see how this could be beneficial.
Under PS3.0, CryTek has apparently implemented single-pass per-pixel lighting. With this per-pixel lighting model, a pixel shader is run that takes into account and processes all light sources in the level that affect a particular pixel in one pass. The PS2.0 implementation apparently uses multiple rendering passes (one for each light) for each affected pixel. This means that in heavily lighted scenes, one (more intense) lighting pass can run, which eliminates the time it takes to setup and execute another pass, even if both implementations have the same result. It is unclear to us exactly why this is possible in PS3.0 and not in PS2.0 (we have even seen examples of technology like this running on PS2.0 hardware). We would really love the chance to go more in-depth with Crytek about their lighting algorithms.
At this point, this is all we know about the new SM3.0 rendering path in FarCry. So, theoretically, running around with your flashlight on in an outdoor (very grassy) night scene with lots of lights everywhere would offer the best performance boost that NVIDIA could see from the new rendering path. There are scenes like this in the game. We actually test a night scene with grass (the regulator level), though it doesn't have an abundance of light sources (or a flashlight).
If these are the only differences between the SM2.0 and SM3.0 paths, then all we heard about were the performance enhancing features. We do appreciate NVIDIA providing us with the patch and information before it went live on Ubisoft's website, but we would still rather have had some of this information directly from the source. Obviously, we want to present a fair and unbiased account of what's actually happening, and we should be fine as long as we take proper precautions and consider as many angles as possible.
And on that note, we've been in touch with ATI about a rendering issue that we noticed with the FarCry 1.2 patch under WinXP SP2, DX9.0c, and ATI's latest public driver (4.6). The problem appears to be incorrect mipmap selection on particular sections of the ground (usually on uneven ground) throughout the game. We've seen this appear as the result of an incorrectly set LOD in the past, but we don't know what is causing this. To be very clear about the issue, here's a portion of a screenshot of the ground right out in front of us in the volcano level.
ATI assures us that they have also been working with CryTek on their efforts. Since we have seen a performance improvement with the latest driver and new 1.2 patch, we don't have any reason to think that anything extraordinarily fishy is going on behind the scenes between NVIDIA and Crytek. We would obviously like to see this texturing issue fixed.
Since performance characteristics in FarCry are dominated by shader performance rather than the texel fill rate or the size of the texture used (especially if it's still being trilinearly filtered as it appears to be the case from the screenshot), our opinion is that this issue will not significantly artificially improve the performance numbers that we see from ATI.
36 Comments
View All Comments
DerekWilson - Friday, July 2, 2004 - link
Thanks Pete, we'll be setting AA and AF in the benchmark batch file from now on ... We've updated the site to reflect the fact that the first run of numbers had NV 4xAA set in the control panel (which means it was off in the game).We appologize for the problem, and these new numbers show an acurate picture of the NV vs. ATI playing field.
Again, we are very sorry for the mistake.
Bonesdad - Friday, July 2, 2004 - link
Wait till you see the numbers for NV's 6800 Ultra Extreme with Cheese!!!Pete - Friday, July 2, 2004 - link
Derek, was AA on for the nV cards? Apparently nV's latest drivers change behavior once again, to require AA to be set in-game, rather than via CP (which does nothing).Perhaps you could avoid this mess of ever-changing AA settings by using AA+AF for comparison screens? It'd also have the added benefit of showing the games in a more positive light. :)
joeyd - Friday, July 2, 2004 - link
gordon151 - Friday, July 2, 2004 - link
pio!pio! x-bit labs tested the difference between performance with the 1.2 and 1.1 patch on the NV3x (5900 Ultra) and well it wasn't pretty. NV3x actually saw a rather big performance drop using the new patch. I dunno if nVidia is gonna do anything about this since they seem to be turning a blind eye to the NV3x line with respect to future optimizations.DerekWilson - Friday, July 2, 2004 - link
trilinear optimizations are onanisotripic filtering optimizations are off
AA has less noticable benefit as resolution increases, but nearly vertical and nearly horizontal lines are still obvious in games with high contrast scenes.
kmmatney - Friday, July 2, 2004 - link
Do you really need AA on when running at 1600 x 1200, as in these these benchmarks? Just wondering if its much of a benefit at this high of a resolution. I never go past 1024 x 768, so I wouldn't know.pio!pio! - Friday, July 2, 2004 - link
So how about just the performance jump from FarCry 1.1 to 1.2 w/o using these high end shaders? (Ie for the previous generation Geforce 5900 crowd and lower)AnnoyedGrunt - Friday, July 2, 2004 - link
Does that mean trilinear optimizations on, or trilinear filtering on?Thanks,
D'oh!
DerekWilson - Friday, July 2, 2004 - link
we used driver default:trilinear on
anisotropic off