The Failure of Soft Shadows and Parallax Mapping

Soft Shadows

We've seen how soft shadows can be used effectively in games like The Chronicles of Riddick, and Monolith has decided to add this as an option in FEAR. Used correctly, soft shadows greatly enhance lighting in a game by giving shadows cast by objects different levels of darkness making them more realistic. This process can take up a lot of processing power however, and that's no exception for FEAR.

Basically, soft shadows are an effect that show how shadows tend to fade at the edges or cast overlapping lines on walls or objects depending on different factors such as light angle and distance. If you've ever made a shadow-puppet, you can see this clearly, as multiple outlines of your hand shadow overlap on the wall with varying degrees of darkness (depending on the light source). And if you were to move your hand closer or farther away from the light, you can see how the soft shadows change dynamically.

The idea is to capture this effect in a game environment, but as any programmer would know, translating this to a game engine can be a very complex undertaking. Not only that, but as we mentioned before, calculating multiple shadows in real time can quickly become a major leech of processing power. With FEAR, we've seen how big of a performance hit that we had when we enabled soft shadows, but you may wonder, "does the effect at least look good?"

The short answer is "no". The way that FEAR incorporates soft shadows ends up looking unrealistic; more stratified and strange than soft. It simply looks as though the game draws multiple shadows at the edges of objects and offsets them up, down, left and right very slightly at different degrees of darkness regardless of the light source. This wouldn't be so bad if the multiple shadows were not readily noticeable as such. It also would have been nice if the "blur factor" were more dynamic; in other words, moving the shadows closer together or farther apart given where the object (say an enemy soldier) is in relation to the light sources and shadowed surfaces.

This is difficult to understand until you see it happening in the game, but you can get a better idea of it by looking at a few pictures. We took some screen shots of a scene with and without soft shadows enabled with both NVIDIA and ATI cards. Please ignore the slight lighting and position differences of these screens.

Seeing the pictures gives you a little better idea of how the soft shadow option looks in FEAR. Since it's not impressive and it gives the game a major performance hit, we don't see any reason to enable it. It might look good with AA enabled, but unfortunately as of right now, both soft shadows and AA can't be enabled at the same time. They might allow this in some later patch, but as we've shown by our performance tests, the cost to performance would be almost too great to think about.

Parallax Mapping

While the detailed textures, excellent lighting, well done static and dynamic shadows (in spite of the soft shadow issue), large intricate particle systems, and various beautiful effects of FEAR come together to form an immersive and fluid graphical experience, there are a few caveats. To their credit, Monolith was very aggressive with the features that they included and are on the leading edge of technology. The use of a deep parallax mapping algorithm to represent damage is a very cool idea, but the implementation used in FEAR doesn't include key features such as self-occlusion and self-shadowing. When passing a wall with a chunk blown out, the hole will swim around, flatten out, and eventually look like unidentifiable goo stuck to the wall as the angle gets very steep.

The parallax mapping used looks great from angles where the entire interior of a hole can be seen. The problem occurs at viewing angles where a near edge would need to block the view of part of (or the entire) interior of the indention. Rather than occluding anything, parts of the texture that should become invisible are still shown (albeit distorted). This completely destroys the illusion of depth at steep angles by making the texture kind of swim until it totally loses its three-dimensionality. There are algorithms available that can represent correctly self-occlusion in parallax mapping. While we can appreciate cheaper parallax mapping algorithms as a kind of upgraded bump mapping, dramatic surface deformation should either be done more correctly or not at all in cases where the viewer can move to angles that break the effect.

But again, we would love to give credit where credit is due. We would rather see game developers experiment with new technology and put something out there than let the true power of our graphics cards remain dormant. Monolith was ahead of the curve with the graphics in Tron 2.0, and they haven't let us down with the quality of FEAR.

The Game/Test setup No Soft Shadows and No AA/AF Performance Tests
POST A COMMENT

115 Comments

View All Comments

  • xsilver - Thursday, October 20, 2005 - link

    6800gt's are high mid range cards, whereas the ultras are not good value pricewise... plus not many people have them

    the card that is missing is the 16 pipe last gen ATI cards, x800 pro/xt etc...
    could that card be added please?

    also, people might want a point of reference for old systems that want to see their card splutter on this game (9800pro / 5900fx) -- it would be great to see if these cards are still playable since they are using ps2.0 and generally older tech
    Reply
  • ZobarStyl - Thursday, October 20, 2005 - link

    Because more people have GT's than Ultras and it's not too terribly hard to extrapolate out the change between the two. Reply
  • Bingo13 - Thursday, October 20, 2005 - link

    Very good article, would 2gb of ram help in this game as it does in BF2? Reply
  • DerekWilson - Thursday, October 20, 2005 - link

    this game is very GPU limited, as you can tell by how steeply the resolution scaling graphs drop off. The game won't run at over 1600x1200 without a little hacking.

    We will look into testing with more RAM, but our initial thought is that performance (especially at higher resolutions or with AA enabled) will not be incredibly affected by RAM. We will update the article if we find anything.
    Reply
  • Z3dd - Friday, October 21, 2005 - link

    What about http://www.digit-life.com/articles2/video/giga-1.h...">this issue?
    Scoll down to the analasysis of local videomemory usage in F.E.A.R.

    Though their conclusion is that F.E.A.R is so taxing on the GPU that you won't
    notice that your card runs out of local memory.
    Reply

Log in

Don't have an account? Sign up now