Jump to content
  • Advertisement
Sign in to follow this  
Guoshima

2 World Shadows [Canopy Shadows]

This topic is 4453 days old which is more than the 365 day threshold we allow for new replies. Please post a new topic.

If you intended to correct an error in the post then please contact us.

Recommended Posts

Hello, I just took a closer look at the shadows from 2 worlds. The shadows from the trees look extremely detailed. I am really wondering how they achieve such a good quality. Even if I would use a 2K by 2K texture for only 50m on 50m in my engine, the quality wouldn't be that good. Any idea on what tricks they might be using. This has defently nothing to do with using LiSPSM, VSM, PCF or any other trick, but just the shadow quality itself. Regards, Kenzo [Edited by - Guoshima on April 19, 2006 2:51:49 AM]

Share this post


Link to post
Share on other sites
Advertisement
I reckon they use Canopy Shadows for their tree-shadows, in which they project a high-resolution (static) shadow-map on the scene "under" each tree, using projective texturing. It's not 100% correct but very effective, non the less, the shadows of the leafs will even be projected on persons that walk under the tree.

I noticed Bethesda does the same in Oblivion for their tree-shadows, by the way.

Edit: It seems Epic uses the same technique in their Unreal-engines: there is small bit about Canopy Shadows for trees on this page: http://udn.epicgames.com/Two/ExampleMapsAdvLighting#Tree_Canopy_Shadows

A screenshot showing Canopy Shadows:

(This screenshot is from Epic Megagames' developer network)

[Edited by - HolyFish on April 18, 2006 4:16:20 PM]

Share this post


Link to post
Share on other sites
The only problem (which is actually a big one depending on what you want) with the described method, is that it breaks down fairly quickly when the direction of the light source changes significantly with respect to the direction that the original shadow map was baked from. You would have serious trouble getting accurate shadows out of this method if you wanted to have a true day/night cycle with cycling sun/moon.

Share this post


Link to post
Share on other sites
hmm looks very interesting actually :)

Does anyone can give me little bit more explenation about this, or point me to somewhere where I can read/find more information perhaps. A quick google didn't gave me lot on first sight, but I'll take another look tomorrow then.

Regards,
Kenzo

Share this post


Link to post
Share on other sites
Quote:
Original post by HolyFish
I reckon they use Canopy Shadows for their tree-shadows, in which they project a high-resolution (static) shadow-map on the scene "under" each tree, using projective texturing.

Am I missing something, because as I read that 'canopy shadows' is just regular projective texturing, theres nothing new going on except they've given it a special name.

Share this post


Link to post
Share on other sites
Hi Kenzo,

If you want to use Canopy Shadows you'll have to look into Projective Texturing, cause that's really all there is to it, I imagine.
I learned a great deal about Projective Texturing by reading this article (http://www.paulsprojects.net/tutorials/smt/smt.html). It's a shadowmapping tutorial, but has a very nice introduction about Projective Texturing.

If you animate the shadowmap a tiny bit by scrolling it from side to side and up and down randomly (so it looks like the leafs wave in the wind) I bet the result would be very satisfying and convincing, if you can live with the fact it's fake :)

Quote:
The only problem direction of the light source changes significantly with respect to the direction that the original shadow map was baked from.
That's right, but I guess that's one of those things you'll have to sleep about and consider to use higher quality shadows instead of going for 100% realism.

Oblivion comes to mind again, cause it's a recent game that has canopy shadows, which has a full day/night cycle and it's really not that much of an issue there.

Share this post


Link to post
Share on other sites
Quote:
Original post by OrangyTang
Quote:
Original post by HolyFish
I reckon they use Canopy Shadows for their tree-shadows, in which they project a high-resolution (static) shadow-map on the scene "under" each tree, using projective texturing.

Am I missing something, because as I read that 'canopy shadows' is just regular projective texturing, theres nothing new going on except they've given it a special name.

Exactly, like I said above (sorry I was probably typing when you posted your reply), there's nothing fancy about them, but they do the trick.
Sometimes the hardest problems have the simplest solutions :)

Share this post


Link to post
Share on other sites
Quote:
Original post by HolyFish
...cause it's a recent game that has canopy shadows, which has a full day/night cycle and it's really not that much of an issue there.


But what if you could have real shadows?? :)

Share this post


Link to post
Share on other sites
It wouldn't really be that hard to make the projected shadow update once every minute or whatever update rate you needed. Even if it was an extremely high poly tree model, you could easily update the shadowmap once in a while as long as the sun didn't move too fast...

Share this post


Link to post
Share on other sites
Isn't it just a single render pass per light? That isn't as taxing as many people would imagine on modern graphics cards, as long as you don't have too many lights.

Share this post


Link to post
Share on other sites
Sign in to follow this  

  • Advertisement
×

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

We are the game development community.

Whether you are an indie, hobbyist, AAA developer, or just trying to learn, GameDev.net is the place for you to learn, share, and connect with the games industry. Learn more About Us or sign up!

Sign me up!