Me and my (occluder depth) shadows ...

I wont repeat myself too much here - nyone interested in the occluder distance attenuated shadows I’ve been playing with can see previous posts in the not too distant forum history

First of all, what happens when you use a traditional single depth shadow map for occluder distance effects:
http://www.baddoggames.com/cg/badshadow.jpg

Notice how the torus shadow wipes out the shadow from the ball and bust closer to the viewer. That’s because the only shadow depth stored is the one closest to the light, in this case the torus, so any occluder distance effects will be determined by this occluder distance.

Now, by depth peeling into the shadow buffer we can capture multiple occluder depths. In this case 4 passes fits nicely in an RGBA16 floating point buffer although we could pack 8 depths into RGBA32. (In both shots it’s a 512x512 shadow buffer)
http://www.baddoggames.com/cg/deepshadow.jpg

Notice how the arch shadow does not override the ball group shadows, which stay dark.

The effect is stylistic rather than photorealistic and tries to capture the effect of ambient light on shadows. The different shadow strengths on the arch struts looks nice - the arch geometry closer to the ground casting stronger shadows.

If anyone is interesed I’ll post some movies, but they take all day to render due the demo being OpenGL1.4+NV30 emu!

R.

Those shadows look really nice. I am glad that you make clear that you are not going for photorealism, it means that I would have no reason to argue with you, because it would all boil down to our opinions

it does look nice and not photorealistic, so its what you want.

the last time i thought you wanted photorealism, and for that, it looks… nice but buggy.

but its nice anyways

Nakoruru, davepermen

I thought adding the non-photorealistic disclaimer would keep you two quiet

The occluder distance effect is one that does happen in reality. Sure it all depends on the light source size, location (distance) etc, but given a scene where the light distance and size don’t change then the important factor is occluder distance.

One thing I wanted to try and achieve is the realy dark shadow you get very close to the shadowing object - that really helps visually pin an object down to the surface it’s sitting on.

Anyway, my depth peeling/deep shadow map technique works

R.

Hum… Your effect is not existing in reallity !
What you are performing is looking like the shadow atenuation resulting of a global ilimunation model… But this exact shadow distance atenuation effect is not looking something real. This effect, in global illumination model, is done by the reflexion of light on surface around lit parts of the scene : but it’s not what you compute.

Regards,

Gaby

Originally posted by gaby:
[b]Hum… Your effect is not existing in reallity !
What you are performing is looking like the shadow atenuation resulting of a global ilimunation model… But this exact shadow distance atenuation effect is not looking something real. This effect, in global illumination model, is done by the reflexion of light on surface around lit parts of the scene : but it’s not what you compute.

Regards,

Gaby[/b]

PPPPPPPPPPSSSSSSSSSSSSSSSSSST
he doesn’t like to hear that his technique has nothing to do with the reality, pssssssssssssst. just say you like it

Gaby,

Pocketmoon did make a disclaimer at the beginning that he was going for an appealing if not accurate shadow :slight_smile:

I now think that his hard coded occluder distance attenuation is actually a pretty good idea. It is a lot like the way that people just throw in an ‘ambient light’ term. I doubt very many people actually think about how there actually is no such thing as ‘ambient light’. What I mean is that ‘ambient light’ is more of an an aethetic term, than a scientific term.

I think that occluder distance fade is a good hack, which adds in the effects of global illumination the same way that ambient light is a good hack.

Specular lighting is another example of a lighting equation that is completely aesthetic, with little basis in reality. I would argue that Pocketmoon’s occluder distance fade is a better model of reality than specular lighting (which makes everything in Doom 3 look like its made of plastic).

Of course, that is just my opinion, and it is also apples and oranges, so I really don’t want to argue about it

Originally posted by gaby:
[b]Hum… Your effect is not existing in reallity !

Sorry, are you saying that shadow attenuation does or does not exists in reality? Or are you just saying that my shadows don’t look realistic, in which case you, Davepermen and Nakoruru can form a club

Of course it’s not what I compute. Using Global Illumination I would expect the shadows to look near perfect!

Nakoruru - your last reply is spot on
On the scale of HACK to REALITY, the Ambient+Diffuse+Specular lighting model is towards the left and so am I.

Rob

P.S.

I’ll have a bash at rendering the Cornell Box The image below, and others on the same page, show the close occluder effect at the base of the opaque spheres that I manage to get.
http://graphics.stanford.edu/~henrik/images/cbox.jpg

[This message has been edited by pocketmoon (edited 10-14-2002).]

Originally posted by pocketmoon:
Sorry, are you saying that shadow attenuation does or does not exists in reality? Or are you just saying that my shadows don’t look realistic, in which case you, Davepermen and Nakoruru can form a club

well, teh shadow attentuation does not exist the way you do it at all in reality. but we discussed that yet. and still, it looks neat. i don’t like it anyways, as it really is not based on any approximation formula at all.

i prefer softshadows over attentuated shadows. bether attentuate your light and make softshadows. looks far nicer to me… and then the shadow fades out like your one as well, just, fades out by blurring, not by staying sharp

i don’t like it. it looks nice anyways.

Hey, it may not be scientifically true, but those shadows look a lot better than the stencil shadows that seem to be the current fad…

Actually, whether these shadows are soft or attenuated is completely orthogonal, so its not a matter of preference, but of whether you have one, both, or neither of the effects.

I think having just attenuation (like in his first screenshots) is not very realistic. It was so unrealistic that I wondered if he had any idea what he was doing ^_^. But if you look at Pocketmoon’s new screens, you will see that they are both soft and attenuated, which is fairly compelling.

Compelling enough that I’ve changed my mind about what he is doing (a picture is worth a thousand arguments ^_^)

I guess the final words in any graphics debate should be “Show me the screenshots!”

The next generation of cards is going to open up whole new worlds of creativity. It is nice that we can argue about which way, out of many many ways, to do a particular effect, and base those arguements on the way it --looks–. Before we only had one or two ways to acheive an effect, and those ways where handed down by the hardware gods. And if it did not work or look exactly the way we wanted we had to live with it.

I think that for some it will be hard to adjust to there not being just one way to do something.

Pocketmoon,

Are you actually headed in the direction of using deep shadow maps, created using depth peeling, to implement shadows for transparent geometry?

You needed a deep shadow map to do proper distance attenuation correct? If you already do deep shadow maps, then maybe it would not be a large leap to do deep shadow mapping (at least, shallow, deep shadow mapping ^_^)

Originally posted by Nakoruru:
But if you look at Pocketmoon’s new screens, you will see that they are both soft and attenuated, which is fairly compelling.

where is soft shadow? (and no, the blurry shadow i see on one image is not a soft shadow. its just a blurred sharp shadow…)

some soft shadow around?

Who needs shadows anyways?

We all still live the dark ages; well not quite there yet but we will get there.

Originally posted by Nakoruru:
Are you actually headed in the direction of using deep shadow maps, created using depth peeling, to implement shadows for transparent geometry?

In fact that’s what I wanted to do when I started the Cg demo You can implement n-levels of shadows for n-depths you store, so yes, I could have transparent objects each, say, occluding 25% of the light.

You needed a deep shadow map to do proper distance attenuation correct? If you already do deep shadow maps, then maybe it would not be a large leap to do deep shadow mapping (at least, shallow, deep shadow mapping ^_^)

I suppose so, the papers I’ve seen on ‘real’ deep shadow maps store functions which represent the changing ligth level between the start (near plane ?) and end of the shadow map.

My next Cg entry uses the technique for something other than shadows

R.

I think it’s a compelling effect. For a physical analog I think it approximates a somewhat diffuse point source with largish indirect contribution too. For example the Sun shining through clouds on a lightly overcast day. Or a light in a room with lots of indirect illumination from reflections.

[This message has been edited by dorbie (edited 10-14-2002).]

I think this effect is confusing the understanding of the scene, and this is the biggest problem : in very large view, it look cool, but if you are walking in the scene and looking for details shadows to understand volumes and geometry, the shadows are unrealistic. Imagine the doomIII with this shadows : you will have a lot of shadow edge with many diferent shadow level. This description is tipically a multi light shadow combination, not a single light whadow with atenuation. Stencil buffer shadows look realistic because they behave exactly as if the light is infinitly small : this is why DoomIII is based on this simple algo. Your effect of “deep” shadow was never used in CG rendering engine, but real soft shadows where the next step from hard shadows, after what we jump to the GI.

That’s only my opinion !

Regards,

PS : excuse me for my bad english ! :wink:

Originally posted by dorbie:
<SNIP> Or a light in a room with lots of indirect illumination from reflections.

Dorbie understand! Dorbie my special friend

Originally posted by dorbie:
Or a light in a room with lots of indirect illumination from reflections.

But this is not entirely correct. While close to the object the shadow is dark because the object blocks much of the indirect lighting this effect vanishes very fast because slightly away from the occulder most of the indirect lighting is not blocked. The linear attenuation from the screenshot looks more like an attempt to fake the real blurring of soft shadows by attenuating the shadow.

[This message has been edited by GeLeTo (edited 10-15-2002).]

thinking about some way to do softshadows really easy, i thought, in lightspace they could be more easy to blur (and then to just map back as a texture… we all know that by rendering a mesh from the lightview black, blur it a little to the headpart (as this one is normally up) and project this onto the ground… it looks cute)

my idea: we need to get the shadow in lightspace.

so we render the distance from light in cameraspace, and then use this as projected texture in lightspace to determine there the shadow. like that we get directly a shadow texture we can backproject (thought, we’ll still need the depthtest there again). but, before of this backprojection we blur the shadows, according to statistical approaches of where is what edge shading how much. that is (me thinks) very simple in lightspace to set up, and could result in quite good results…

anyone?