Sign in to follow this  
spek

ShadowMapping in the year 2015?

Recommended Posts


Each time when not taking attention, the 3D-rendering world has been drastically changed, so I wondered what the current / common way of shadowmapping is.

 

VSM, ESM, EVSM (all derivatives of SM) are being used in current titles I believe.

 

Some engines like Unity™ (saw in one forum one day) still prefer constantly varying from methods such VSM to PCF with a bunch of blur filters or HW accelerated filters (but I don't know why).

 

The future of rendering looks like it is path tracing (see here), and until there it will be a lot of possibilities regarding to shadow casting.

Share this post


Link to post
Share on other sites

It's semi-on topic, so I'm gonna ask the question here: A couple months ago the I saw one or two fresh blog posts about someone who experimented with ray traced shadows on a fairly complex scene (couple million polys). I can't find the blog post anymore. The scene in question was some kind of small village/city surrounded by castle walls.  Does anyone know what I'm talking about and could link me to it? 

Edited by agleed

Share this post


Link to post
Share on other sites

Thanks everyone! That's a lot of information ... but my head wasn't able to process it today due a little hang-over :p  Tomorrow I'll try again hehe.

 

Camera-Space-ShadowMapping sounds really interesting, and the movie on the webpage looks correct to me. But has it been really applied these days (I don't see it in the Crysis or Warfare papers for example)? I guess there are some "catches"? In my case, lighting is typically indoor. No large distances, but quite a lot local lights. And something I forgot to mention, lighting is often done in background passes as well (for water mirrors, realtime ambient kind of stuff, updating cubeMaps, ...). Currently these background passes also use the same shadowMap(atlas) but simplified techniques (no soft edges) to get a bit extra speed.

Share this post


Link to post
Share on other sites

Camera-Space-ShadowMapping sounds really interesting, and the movie on the webpage looks correct to me. But has it been really applied these days (I don't see it in the Crysis or Warfare papers for example)? I guess there are some "catches"? In my case, lighting is typically indoor. No large distances, but quite a lot local lights. And something I forgot to mention, lighting is often done in background passes as well (for water mirrors, realtime ambient kind of stuff, updating cubeMaps, ...). Currently these background passes also use the same shadowMap(atlas) but simplified techniques (no soft edges) to get a bit extra speed.

 

CSSM is not used in commercial engines as far as I know. Having said that, Cevat Yerly did offer me a job at Crytek at the time, but recruiters somehow figured that I would be ideal for working on GUI for sandbox editor (“not being experienced and all” was the reason they specified). I said: "Thanks, but no thanks".

 

CSSM with Depth Histogram is a new beast entirely. I think it’s the only algorithm that (almost) achieves ultimate goal of shadow mapping: 1 to 1 texel to pixel matching.

 

Great thing is: if you have geometry on only 50% of the scene (the rest is sky), then you can use 50% smaller shadow map than the scene and still get near perfect 1to1 shadow map.

 

I really should write a new API. This time I should include support for Oculus Rift (dual cameras but only one shadow map). Nicely put everything into one function so that it only takes one line of code to implement it (for all imaginable cases).

 

Actually, Oculus could indirectly benifit from this algorithm since they want to achieve a goal of 90+ fps at high resolutions so I’m guessing 5 times faster rendering of shadows would help a lot (I’m guessing this number but since there is only one small shadow map – it is not hard to compare it with other cascaded approaches being used).

I don't really have time right now to do it, but if there is interest, I'll make time.

 

Explanation of CSSM with Depth Histogram is in the attached picture.n8IbTJN.png?1

Edited by IvicaKolic

Share this post


Link to post
Share on other sites

 


No one likes VSM anymore, shadow leaking sucks and evsm is very expensive to fix it


The Order is shipping with EVSM, by the way. smile.png 
 

 

 

TIL, expensive (yay multi channel render target!) but I guess if you want the really nice filtering that comes with it happy.png

Share this post


Link to post
Share on other sites

How about Percentage-Closer Soft Shadow and Sub-Pixel Shadow Mapping?

The first is used used by NVIDIA in its GameWorks brand, so no source for poor mortals. The second looks amazing but it seems to be a performance smasher.

Are those two still out-of-reach for common humans? D:

Edited by Alessio1989

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

Sign in to follow this