数码资源网·下载

展开

Maya教程-Depth Map 基础

作者:网友整理
Autodesk mayav1.5

Autodesk mayav1.5 96.63M / 简体中文

点击下载
玛雅maya最新网站地址1.1.71.5.7

玛雅maya最新网站地址1.1.71.5.7 38.95M / 简体中文

点击下载
豪华泡泡龙 Maya Stonesv1.7.4

豪华泡泡龙 Maya Stonesv1.7.4 91.88M /

点击下载

Depth Map(深度图)阴影计算工作原理

Depth Map是对于某盏灯可见(照明)的各物体表面到该灯的距离数据纪录。它相当于在某盏灯的位置摆放一个灯光主方向一致的相机,通过此相机进行渲染而得到的画面,画面上各点的数值即为对应物体表面某点到相机的距离(与渲染Z-depth通道意义相近)。Depth Map纪录数值的精度是浮点,较一般渲染彩色RGB通道的每通道8位(即256级)灰度精确得多。

判断空间某一点是否在某盏灯的阴影中(或者说未受该灯照明),可用它到该灯的距离,与同一直线上对应的Depth Map值做比较。若前者大于后者,则该点处于阴影中。

Self-Shadowing自投阴影

自投阴影,意思就是一个物体某些区域处于同一物体另一些区域产生的阴影区内。

关注自投阴影,主要是因为同一物体的表面各处间的距离很近,某些颗粒或闪烁阴影等问题较为突出。

利用Depth Map计算阴影时,由于Depth Map采样的精度有限,故在许多情况下会产生不应有的自投阴影。如下图中,红点代表Depth Map纪录距离信息的采样点,物体表面上各红点对应的区域内,红点右边的部分离灯光近一点,故被正常照亮;而左边的部分到灯光的距离较红点远,故会被判别为“在阴影区中”,从而产生不该存在的条纹状的自投阴影。

用Dmap Bias(偏移)纠正自投阴影

为克服自投阴影的问题,实用中采取的一种方法,是Dmap Bias。Dmap Bias的工作原理,即是将Depth Map中各采样的距离值加上一个小数值(等价于将要计算的表面点到某灯的距离减去一个小数值)。

注意Dmap Bias不可太大,否则离产生阴影处较近的区域会出现明显的丢失阴影的问题。


利用Mid Distance(中距)纠正自投阴影

Mid Dist类似Dmap Bias。开启Mid Dist,其实会计算两张图,一是一般意义的Dmap,另一图则是计算对于某盏灯“第二层可见”的物体表面的距离值与第一层值的平均值为Dmap。如果光径只经过一层面,则会取灯光的far clipping plane远切面距离值。在渲染中判断某点是否在阴影中时,拿该点与光径经过的第二张Dmap值做比较。



同时使用Dmap Bias和Mid Dist

Use Mid Dist Dmap可以避免一些自投阴影的问题。但是,由于物体表面细节和灯光等情况变化很大,适当的小值Dmap Bias通常还是需要的。

Depth Map Resolution分辨率

Dmap的采样,类似一般颜色通道的相机取景渲染,其数据存储也是一种类似一般图片的矩形点阵。例如,当其分辨率设置为512时,就相当于512X512个象素点的“深度”采样。显然,Dmap Resolution值越大,计算获得的阴影就越清晰,错误的自投阴影问题也更为改善。但计算Dmap的过程仍是相当消耗时间的。


Depth Map Filter Size过滤尺寸

Filter Size帮助柔化Dmap阴影的边缘。注意提升Filter Size值时,渲染消耗时间也会增加。故因谨慎地限制该值的大小




Shadow Color阴影颜色

现实中阴影是无光照的区域。在此,可用阴影颜色模拟间接光照下的阴影区域等效果。


加载全部内容

相关文章
相关专题