反射贴图
典型的反射映射
标准环境映射
标准环境映射更加常用的名称是球形环境映射,是反射无限远环境物体的纹理球面的应用。使用鱼眼镜头、预渲染或者光探头生成球形纹理,然后将这个纹理映射到空球表面,通过计算物体上个点的光向量到达环境图上的纹素从而确定纹素的颜色。这项技术类似于光线跟踪,但是由于所需物体各点的所有颜色图形处理单元已经预先知道,所以所需做的就是计算入射与反射角度。
1982年 Gene Miller 在 MAGI Synthavision 首次试验了球形环境映射。 在 Christine Chang 的帮助下,他在 MAGI 的停车场拍摄了一幅圣诞装饰照片。通过将球体的照片裁减到直径大小,他将照片映射到空球表面(参见上面的过程)(Fig. 1)。然后,他将这幅纹理用到 Ken Perlin (Fig. 2) 创建的一个斑点狗模型上,并且将环境映射模型添加到停车场照片上,就得到Fig. 3中的照片。这种环境映射的技术最后在真实的环境高动态范围成像中的基于图像的照明中得到了应用(参见这里)。
球形映射有一些明显的限制,其中之一是,由于纹理属性的原因,在球形映射物体的后面有一个突变点。下面的立方映射就是为了解决这个问题而开发出来的,如果能够正确地生成与滤波,立方映射就没有明显的接缝,所以很显然它是旧的球形映射的替代者,目前球形环境映射在当今的图形应用中几乎已经销声匿迹了。
立方环境映射
解释立方映射工作原理的示意图
立方反射映射是用立方映射使得物体看起来如同在反射周围环境的一项技术。通常,这通常使用户外渲染中使用的 skybox 完成。尽管由于反射物周围的物体无法在结果中看到,所以这并不是一个真正的反射,但是通常仍然可以达到所期望的效果。
通过确定观察物体的向量就可以进行立方映射反射,照相机光线在照相机向量与物体相交的位置按照曲面法线方向进行反射,这样传到立方图(cube map)取得纹素(texel)的反射光线在照相机看来好像位于物体表面,这样就得到了物体的反射效果。
在实时三维计算机图形中的应用
标准环境映射
立方环境映射
使用立方反射映射的一个三维模型实例
如果能够正确使用,立方映射反射或许是渲染反射表面最快的方法。为了提高渲染的速度,每个定点都要计算反射光线的位置,然后,在于这些定点相关的多边形中对位置进行插值,这样就可取消对每个像素的反射进行计算。
参见
The Story of Reflection mappingcured by Paul Debevec
Skybox (video games)
立方映射
免责声明:以上内容版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。感谢每一位辛勤著写的作者,感谢每一位的分享。
- 有价值
- 一般般
- 没价值