Just Cause 2

Setting shadow quality to "high" doesn't really help, as the filter is applied only a short distance with a very obvious cutoff. Also, it looks a bit weird, both noisy and smeared out.

"High-res shadows" is no solution either. The shadows still look a bit low-res both at near and medium distance, and the crossover line is all too visible in motion.

Noisy is because we're using a dithered sampling pattern. The alternative is banding. Or much higher performance impact. Not sure what you mean with "smeared", other than that it's soft shadows.

The "cutoff" (which is not a cutoff but a dithered crossover plus a blur radius fade), which is visible in some places and not so visible in others, is very hard to get rid of. The problem is that our shadowing system is carefully tweaked to take maximum advantage of the available resolution. So we have an elaborate system for controlling shadowmap sizes, which changes depending on where you are. For instance if you're flying the outer shadow map gets extended so that we get shadows much farther away. We do have an enormous draw distance in our game, which means that you can't always have super sharp shadows up close and still have shadows in a distant village. All parameters have been carefully tweaked by artists to give the best compromise for all scenarios. Given that shadowmap can cover very different actual area, and the ratios are nowhere close to fixed, it's crossover from soft shadows to regular are not always smooth.

Something that's on my wishlist for the future is another shadowmap level, which should give us much better shadows up close without compromising middle or far shadows. From a pure performance perspective the PC would of course be able to do it, but it was not realistic to have fundamentally different shadowing systems between the platforms. Instead we gave the PC the soft shadows and high resolution shadows to boost the quality compared to consoles.

Moreover, I noticed that some object shadows fade in from nothing. This would perhaps have been a good optimisation if it happened much further away.

We cull objects based on the size they will be in the shadow map. No need to burn a lot of cycles on objects that will only be a few pixels in the shadow map and not really contribute anything to the overall quality. For the PC I think maybe we could let a few more objects pass through though. In particular, now that I think of it, it would make sense to scale down the cull size when using high resolution shadow maps since objects will be four times the pixel count at that resolution. This is something I think would be an easy fix. I won't promise anything, and I'm actually on another project right now, but I'll see if I can do anything about it when I have the time.

Am I right in assuming if this is bought retail it will still link to and download from steam like a normal steam game since it's using steamworks?

Correct.
 
Not sure what you mean with "smeared", other than that it's soft shadows.
It looks overly soft in contrast with the hard shadows further away.

Would it be feasible to extend the distance the soft filter is applied, or use it everywhere? The soft shadows aren't great, but good enough. It's the transition and the aliasing beyond that really annoy me.
 
Humus, for the line
* SwapChain buffer count command line option (/dxbuffers=, default: 1)

Will setting it to 3 get me triple buffering?

Edit: Nope

Benchmark with D3DOverrider on: 37.31FPS


D3DOverrider Off: 30.56FPS


FWIW I don't really care since running D3DOverrider is not a problem. But others may be unknowingly having this issue and needlessly losing FPS.
 
Last edited by a moderator:
I can now play with 8xAA without so much as a hitch! Much, much better...
So, you notice the miniscule difference between 4x and 8x AA, but not the blocky, shimmering shadows? In some places, the shadow texels look about as big as 4x4 pixel blocks, so roughly 1/16 of a sample per pixel. 8x AA, that's 8 samples per pixel. That's something like a factor of 100 difference! It's not quite that simple, there's shadow filtering, etc. But shadow map aliasing is a lot worse in many places than the geometry aliasing you'd get from a humble 2x MSAA.
 
I honestly don't think the shadows look bad at all, I've only noticed how nicely they blend with the rest of the scene. Are you trying to see them as bad or something? :|
 
No, honestly, they just jumped out at me after a minute or two, after I stopped focusing on the info pop-ups and really looked at the scenery. Granted, that was at default settings. It's not quite as bad at high shadow settings, but once I noticed, it became very hard to ignore.
 
So, you notice the miniscule difference between 4x and 8x AA, but not the blocky, shimmering shadows?
I see the AA difference when I use the parachute, yes. I don't see your shadow issues at all, so to each his own.

I would be fine with "just" 4xAA, as the game itself is far more engaging than a few jaggies or an occasional blocky shadow can realistically detract from.
 
I see the AA difference when I use the parachute, yes.
In the air, I think the game looks very good. It's closer up, like in the beginning, that things get nasty. The aliased shadows just draw my eyes to them, much like crawling geometry edges.

I would be fine with "just" 4xAA, as the game itself is far more engaging than a few jaggies or an occasional blocky shadow can realistically detract from.
I would be fine with just 2xAA, or 4xAA at very low res.
 
I actually went back and tried looking for aliased shadows, and I still don't see them. I tried walking, driving, standing on rooftops versus the road... I still don't see them.

I assume they're really there per the technical detail that Humus provided above, but so far it isn't an issue for me.
 
44125760308217642205.png

Looks much worse in-game. The stairstepping and holes in the shadow create intense flicker as they move. And this is not a rare, isolated thing, I see these issues in almost every shadow at this distance.

All right, enough bitching, I'll shut up now.
 
Humus, for the line
* SwapChain buffer count command line option (/dxbuffers=, default: 1)

Will setting it to 3 get me triple buffering?

Yes, setting it to 3 should be give you triple buffering. Not sure why it's not working for you. I don't know what D3DOverrider might be doing differently.
 
OK, perhaps not the best reference point. How about Far Cry then? Maybe my memory is playing tricks on me, but at high settings, the shadow maps never made me think "Wow, that looks crap". In this demo it happened right at the very first area.


Your memory is definitely playing tricks on you. The shadowmaps in that game (when they were used that is, they weren't applied globally as they are here) were hideously low resolution compared to modern standards and had no sort of soft shadowing filter either. I absolutely do understand the complaint, don't get me wrong, but real time shadows are and always have been very resource intensive and in a game with such massive view distances and so many different potential camera angles of course there's going to be scenarios where they don't quite stack up.

What's the alternative though? I've played a lot of openworld games with dynamic shadows and very few hold up to Just Cause 2, big budget games like Assassin's Creed 2 are much worse in comparison. You can't really use the "use simpler graphics instead" card here because the dynamic nature of the game and the day-night cycle absolutely demands dynamic shadows, Unreal Engine 3 games can get away with baking most of the lighting but that's just not an option here. Honestly, its just an unrealistic expectation is all, not unreasonable but I suspect the fact that you say you don't play many modern games is probably why your expectations are out of whack with most others. Yeah, maybe in 2010 one would expect we'd have near "perfect" dynamic shadows but the fact is, we really don't and Just Cause 2 is one of the better examples out there.

Humus , thanks for the explanation of how you tweaked your shadowing algorithm, the information is much appreciated, and as I said before, I think you've actually done a really good job, much better than most of the competition, especially so when you considering your game demands such flexibility. Of course, having the option of even more quality levels would definitely be appreciated all the same. I'll never be fully satisfied until an engine has the option for settings that will damn near set my rig on fire! :p
 
Last edited by a moderator:
Far Cry had a strange shadowing system to me, or at least the way the developers used it when it came to outdoor areas. Even weirder was that over-blockiness that occurs when you go into the sandbox editor, enabling dynamic shadows and other options to objects that normally in the game, do not cast dynamic shadows. Any explanation to this? It's almost as if there is a shadow limit in the game that allows for only so much, and automatically lowers shadow resolution when more objects have shadows enabled.

What I think is stranger is that the PC game did not have an enabled global shadow system, but the Xbox versions did to that certain distance with them shifting to baked to save up on graphical needs. Was a new shadow method developed for the Xbox versions or did Ubisoft just tweak Crytek's code, or what? It would be nice to be able to play Far Cry PC with this shadow method, but of course with the shadow fading into baked at a much farther distance.
 
Far Cry had a strange shadowing system to me, or at least the way the developers used it when it came to outdoor areas. Even weirder was that over-blockiness that occurs when you go into the sandbox editor, enabling dynamic shadows and other options to objects that normally in the game, do not cast dynamic shadows. Any explanation to this? It's almost as if there is a shadow limit in the game that allows for only so much, and automatically lowers shadow resolution when more objects have shadows enabled.

What I think is stranger is that the PC game did not have an enabled global shadow system, but the Xbox versions did to that certain distance with them shifting to baked to save up on graphical needs. Was a new shadow method developed for the Xbox versions or did Ubisoft just tweak Crytek's code, or what? It would be nice to be able to play Far Cry PC with this shadow method, but of course with the shadow fading into baked at a much farther distance.

It also used some stencil shadows for (at least) interiors as well, pretty sure they baked some shadows as well, though my memory may be playing tricks. Either way, as you say it was some weird hybrid system, the only explanation that I could propose is that Crytek perhaps just used whatever they could to achieve the absolute best quality they could on the hardware of the day.
 
It also used some stencil shadows for (at least) interiors as well, pretty sure they baked some shadows as well, though my memory may be playing tricks. Either way, as you say it was some weird hybrid system, the only explanation that I could propose is that Crytek perhaps just used whatever they could to achieve the absolute best quality they could on the hardware of the day.

Yep stencil shadows, shadowmaps and some baked in shadows/lack of shadows. For that time, tech and their implementation. Engine was not capable of dynamic shadows for all objects as that would crash engine/create anomalies and also tank perfomance especially having lots of assets also cast self sahdowing which seemed to be stencil based. Still remember playing with editor and enabling dense grass rendering to ~200m which was playable on my system back then though it was near border of engine capabilities with tweaked config. :LOL:

http://img63.imageshack.us/g/farcrypc1.jpg/ (except I played at 1024x768, 4xAA, 16xAF and default shadowmap res on my 9800pro)
 
Last edited by a moderator:
What's the alternative though? I've played a lot of openworld games with dynamic shadows and very few hold up to Just Cause 2, big budget games like Assassin's Creed 2 are much worse in comparison. You can't really use the "use simpler graphics instead" card here because the dynamic nature of the game and the day-night cycle absolutely demands dynamic shadows, Unreal Engine 3 games can get away with baking most of the lighting but that's just not an option here. Honestly, its just an unrealistic expectation is all, not unreasonable but I suspect the fact that you say you don't play many modern games is probably why your expectations are out of whack with most others.
They could most certainly have simplified something. Does the game need so much foliage? Makes for nice screenshots I guess, but the amount could be cut in half and I wouldn't miss it while playing. There's a heat shimmer effect or something which I find completely redundant. And I'm sure the surface shaders could be trimmed. Heck, just use a basic colour texture and some decent diffuse lighting and call it a day.

Like I stated before (I think), low detail is easy to ignore, while aliasing draws attention to itself.
 
I don't agree. I want the foliage. I want the details. I want the shader effects. And since I'm not having any problems with shadow crawling, then I don't want to go missing half of the effects in the game for someone else's need to have shadows absolutely positively perfect without exception.

Perfection is not necessary.

On a more related note, has anyone's Steam client started preloading the full game yet? It would be nice to have it all preloaded up before opening day (the 23rd!) But mine still says "Not released" :(
 
It also used some stencil shadows for (at least) interiors as well, pretty sure they baked some shadows as well, though my memory may be playing tricks. Either way, as you say it was some weird hybrid system, the only explanation that I could propose is that Crytek perhaps just used whatever they could to achieve the absolute best quality they could on the hardware of the day.

Yep stencil shadows, shadowmaps and some baked in shadows/lack of shadows. For that time, tech and their implementation. Engine was not capable of dynamic shadows for all objects as that would crash engine/create anomalies and also tank perfomance especially having lots of assets also cast self sahdowing which seemed to be stencil based. Still remember playing with editor and enabling dense grass rendering to ~200m which was playable on my system back then though it was near border of engine capabilities with tweaked config. :LOL:

http://img63.imageshack.us/g/farcrypc1.jpg/ (except I played at 1024x768, 4xAA, 16xAF and default shadowmap res on my 9800pro)
Far Cry had the best indoor environments until Doom 3 and to me still had the best looking (or most appealing:p)outdoor environments until Far Cry Instincts Predator came out however, I still preferred the look and color palate of the original PC version. The Xbox iterations were too yellowish and bright for their own good, and the gunplay + sound-effects really felt weak. PC Far Cry actually felt like your were holding some real fire power in your hands, not BB guns.

As for the original Just Cause, I always found it very appealing to look at, especially when at high altitude, though I've always wondered the specific differences between the original Xbox and Xbox 360 versions as far as shadow resolutions/shader quality/etc. I've never played the Xbox version, only the 360 and PC versions. I must note though how well in my opinion Just Cause ran for it's visual fidelity. I first tried the PC demo out on my laptop at the time (Turion x2, 2 GB RAM, Geforce Go 7200) and was surprised at how well it ran - mostly medium settings at 1024 x 768.
 
Back
Top