PDA

View Full Version : Getting things straight: Shadow Maps.



et_cg
July 10th, 2007, 10:47 AM
Well in Halo 2, both for Xbox and Windows Vista, there's one thing I've noticed people whining about. It was about real time shadows. Shadows that are calculated to the world as a texture. So how does that explain why its all pixelated? Well, textures are comprised of pixels! So... when you expand this image, say it's rendered pretty small so it saves memory, it shows some errors, which people blame on the engineers.

Hey, if they made it that way, it's the way they could do it without blowing up your Xbox/PC. (Well, now a days on PC's, a tad bit more is possible) So just quit your whining and take a look at what I've got here:

DirectX SDK Shadow Map Example:

http://img467.imageshack.us/img467/5885/shadowmapsdkor6.jpg

Take a look at the shadow cast form both the airplanes and the cones. They display pixelation. Proving my point.

Now, Halo 2 Vista:

http://img380.imageshack.us/img380/5865/h2vistashadowmappingax0.jpg

So there you all go. Pretty similar techniques. Just used in different samples.

I know there's no code to prove it, but I think the pictures just pretty much explain themselves.

The other technique for shadows that people seem to prefer is Shadow volumes.

SMASH
July 10th, 2007, 10:50 AM
Makes sense, I think the real problem is, how do you fix it?

Skyline
July 10th, 2007, 10:52 AM
Hmmm I see no errors.
http://img490.imageshack.us/img490/7751/noerrosgq3.jpg

As you can see there is none here.

http://www.h2vista.net/forums/showthread.php?t=3454

It seems this "error" only happens when your playing on a low resolution.

et_cg
July 10th, 2007, 11:16 AM
Hmmm I see no errors.

<PICTURE>

As you can see there is none here.

http://www.h2vista.net/forums/showthread.php?t=3454

It seems this "error" only happens when your playing on a low resolution.

I'm talking about real time lighting. "Shadow Maps"

Those shadows you see casted by the sun are shading techniques used since halo 1. And on many other game engines before it.

I am sorry about not clarifying that it was about "Real Time" shadows.

Those shadows you see that are clear, are in relevance to pre-rendered shadows that are much higher quality - but not necessarily at a higher pixel count. (They are rendered as a part of the main scene, not one of those fancy after effects, like a hanging physically interactable light.) Don't quote me on that, or this, but I think that those shadows aren't calculated as a texture, then cast onto the world.

Kornman00
July 10th, 2007, 11:36 AM
I've never looked into it myself, but I think I remember something saying that they do their shadow casting using the collision model. I would say try removing the reference to the collision model but yeah....

et_cg
July 10th, 2007, 12:02 PM
... but I think I remember something saying that they do their shadow casting using the collision model...

Hmm, that's interesting. I think I'll look into that. I always love finding out something about all of these game engines... Bah, it's crazy to think that this stuff sticks in my mind more/better than school does. And here I am at school. *Sarcastic* Yay */Sarcastic*

Skyline
July 10th, 2007, 12:03 PM
Oh, so you mean a dynamic light basically?

et_cg
July 10th, 2007, 12:11 PM
Yep, dynamic lights.

I don't know why one person can't recognize the difference in Halo 2. That is, between an environment shadow and a dynamic shadow.

Kornman00
July 10th, 2007, 02:06 PM
I don't know why

:iiam:? and i was the same way back then et.

et_cg
July 10th, 2007, 03:35 PM
lol. Let's edumacate the world.

Skyline
July 10th, 2007, 03:38 PM
Well in Zanzibar when you go under the light you can see both although the one is hard to see.

et_cg
July 10th, 2007, 03:40 PM
Yes, but the environmental shadow does not change in position relative to the light. It stays at the same angle that the sun is shining from. Well, opposite, of course. The dynamic shadow, moves around in reaction to the lights movements.

TheGhost
July 10th, 2007, 06:18 PM
I've never looked into it myself, but I think I remember something saying that they do their shadow casting using the collision model.

What? How can that be? Collision models are usually low-poly boxes and that's not what the shadows look like at all.

jahrain
July 10th, 2007, 06:37 PM
In halo 2, I think the collision models are much higher res. The only problem with the shadow maps is that they need better filtering, or any filtering at all. Probably somewhere in the dx configuration, it can be set to enable shadow map filtering.

Zeph
July 10th, 2007, 06:43 PM
Erm, yeah, it is their fault, as they had the chance to implement something to keep it from looking like that.

Kornman00
July 10th, 2007, 10:02 PM
What? How can that be? Collision models are usually low-poly boxes and that's not what the shadows look like at all.
Like I said. Stop.
I've never looked into it myself. Stop.
I my be confused with another game engine. Stop.
So don't quote me on it. Stop.