游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4200|回复: 7

ShadowMap和ShadowVolume 怎么抉择?

[复制链接]

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
发表于 2007-8-6 18:39:00 | 显示全部楼层 |阅读模式
最近搞了比较多的shader 方面的东西,很多特技都弄处来了,也快差不多了
现正看到阴影这一块,如题ShadowMap和ShadowVolume 怎么抉择?

我想了解一下,游戏里面更多的是用什么方式?
希望从灵活,效率,各方面来讨论讨论

1

主题

149

帖子

149

积分

注册会员

Rank: 2

积分
149
QQ
发表于 2007-8-6 21:04:00 | 显示全部楼层

Re:ShadowMap和ShadowVolume 怎么抉择?

1.ShadowMap:
a.算法的时间复杂度跟渲染的象素数目成正比,强烈依靠GPU
b.空间复杂度(这里仅看显存)跟使用的ZMAP大小相关,如果需要阴影质量高,那必须采用大图,举个例子,如果你使用1024*1024,考虑精度,采用D3DFMT_R32F,那这张图是4*1024*1024=4M.很大啊...如果你需要更加高质量的效果,使用2048*2048 的图,那这图句占到4*4=16M显存了.看看你的显卡显存有多大吧........
c.效果方面,可以使用技巧实现柔和阴影

2.ShadowVolume
a.时间复杂度跟渲染的三角形数目成正比.非常依赖CPU.
b.空间复杂度,也跟三角形数目成正比,必须为每个需要渲染阴影的物体配一套三角形.
c.效果上讲,可以实现边沿非常清晰的影子,质量比较高.
d.另外,它对模型的要求很高,对于有裂缝的模型,则比较难产生正确的阴影.

3.使用什么当然根据具体项目特点来选取.

2

主题

41

帖子

62

积分

注册会员

Rank: 2

积分
62
发表于 2007-8-7 09:58:00 | 显示全部楼层

Re:ShadowMap和ShadowVolume 怎么抉择?

ShadowVolume 是快要淘汰的技术,现在很少有游戏使用。 ShadowMap的衍生算法很多,是现在阴影的主流技术,当然还有更NB的什么dynamic ambient occlusion map...

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
 楼主| 发表于 2007-8-7 11:38:00 | 显示全部楼层

Re:ShadowMap和ShadowVolume 怎么抉择?

可感觉 ShadowMap 的边缘锯齿很严重,精度效果不好。

1

主题

149

帖子

149

积分

注册会员

Rank: 2

积分
149
QQ
发表于 2007-8-7 12:08:00 | 显示全部楼层

Re: ShadowMap和ShadowVolume 怎么抉择?

你可以进行多重采样+模糊,消除锯齿,并且得到柔和阴影

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
 楼主| 发表于 2007-8-7 12:56:00 | 显示全部楼层

Re:ShadowMap和ShadowVolume 怎么抉择?

多重采样+模糊 ?有这方面的介绍和资料吗?
如果可以的话,发个shader或demo给看看也行。

1

主题

149

帖子

149

积分

注册会员

Rank: 2

积分
149
QQ
发表于 2007-8-8 12:17:00 | 显示全部楼层

Re:ShadowMap和ShadowVolume 怎么抉择?

http://xmchang.bokee.com/4439176.html
这有讲
xmchang的BLOG

119

主题

1367

帖子

1393

积分

金牌会员

Rank: 6Rank: 6

积分
1393
 楼主| 发表于 2007-8-8 13:23:00 | 显示全部楼层

Re:ShadowMap和ShadowVolume 怎么抉择?

多谢多谢
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2026-1-25 13:03

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表