维基百科上找来的一些基本知识:
Bump mapping: 凹凸贴图
通过调整表面的法相来影响光照计算,从而展现出凹凸的效果。通常使用Phong或类似的反射模型。
与位移贴图相比,凹凸贴图不修改定点位置,计算速度快,消耗资源少。
两种实现方法:
1. 高度图 Heightmap
2. 法相贴图 Normal Map
Normal mapping: 法线贴图
是最常用的一种凹凸贴图的变化,使用3通道位图,贴图记录像素点的法相值Normal
Parallax mapping: 视差贴图
是凹凸贴图/法线贴图的增强,如一个石墙效果,会有更好的高度差的感觉。视差贴图的通过位移渲染的多边形上的点在贴图上的坐标,位移根据该点的切向空间(与表面法线的夹角)和这一点的高度值。再大角度斜视的时候,视差贴图有更好的位移效果
Shadow mapping: 阴影贴图
通过深度检测判断一点是否被光源可见,检测结果被渲染到一张贴图
流程:
1. 以光源为摄像机,渲染场景,此时只有深度信息需要被储存到Depth Map中,颜色不需要计算和更新
2.每个光源都要有一张单独的Depth Map
3. 光源或者物体变化时,需要重新绘制Depth Map
4. 从摄像机角度渲染场景,此时需要增加Shadow map的绘制
PCF Percentage-Closer Filtering
http://http.developer.nvidia.com/GPUGems/gpugems_ch11.html