7.5 环境光
前面提到,我们的光照模型不处理由场景中的其他物体反弹的间接光。不过,我们在现实生活中看到的很多光线都是间接光。例如,在一条通往房间的走廊里,我们不会直接看到房间里面的光源,但是光线会照射在墙壁上,通过墙壁把一部分线反弹到走廊中,间接地把走廊照亮。再比如,我们坐在一间屋子里,面前摆着桌子、茶壶和台灯。茶壶放在桌子上,并且只有一个侧面面向台灯;我们可以看到茶壶背面并不是全黑的。因为有一些光线会通过墙壁或其他物体间接地反弹到茶壶背面。为了模拟间接光,我们在光照方程中引入了一个环境光项:
A=la⨂ma
颜色la指定了表面从一个光源收到的间接(环境)光的总量。环境材质颜色ma指定了表面反射和吸收的入射环境光的总量。环境光只是将物体的亮度稍微提高一点儿——这根本不是真实的物理计算。之所以这样做是因为间接光会在场景中散开和多次反弹,从每个方向均匀地照亮物体。将环境项与漫反射项组合在一起,得到新的光照方程:
LitColor = la⨂ma + kd•ld ⨂ md (公式7.2)
文件下载(已下载 610 次)发布时间:2014/8/5 下午8:34:29 阅读次数:4346