凹凸贴图(bump
映射),也称为凸凹纹理映射或皱面贴图,是计算机图形学中的一项技术,用于在三维环境中通过纹理方法产生表面凹凸不平的视觉效果。它通过改变表面光照
方程的
法线,而非表面的几何法线,来模拟凹凸不平的视觉特征,如褶皱、波浪等。凹凸贴图的实现方法主要有偏移
向量凹凸纹理和改变高度场。此技术通过在渲染像素前加上从高度图中找到的扰动,使得结果表面更加丰富和细致,更接近物体在自然界中的真实模样。
凹凸贴图是一种在3D场景中模拟粗糙表面的技术,它允许将带有深度变化的凹凸
材质贴图赋予3D物体。通过光线渲染处理,物体表面会呈现出凹凸不平的感觉,而无需改变物体的几何结构或增加额外的点面。例如,将一张
砾石的
贴图赋予一个平面,经过处理后,这个平面就会变成一片铺满碎石、高低不平的荒原。使用凹凸贴图产生的效果其光影方向角度不会改变,也不会产生物理上的起伏效果。
法线贴图是一种常用的凹凸贴图技术,它通过将高度图转换成法线图(Normal Map),其中RGB值分别代表该点的法线方向:Nx、Ny、Nz。这张
法线图可以通过
Direct3D的专门函数计算得到。在渲染时,将高度图的每个像素与光源
向量进行点乘,得到表示每一点明暗系数的图。这样,模型在背光的凹处会有阴影,在面向光源的地方则更亮,从而使3D模型看起来具有真实的凹凸感。这些计算可以直接在渲染
流水线中由硬件完成。
三维计算机图形程序员有时使用计算量较小的假凹凸贴图来模拟凹凸贴图效果。这种方法使用纹素
索引变化取代
曲面法线变化,常用于二维凹凸贴图。例如,在GeForce 2类型的图形加速硬件中就采用了这项技术。全屏的二维假凹凸贴图可以通过简单快速的渲染循环实现,在二十世纪九十年代的示范影像中是一个常见的视觉效果。
位移映射与凹凸贴图的区别在于,凹凸贴图只改变
法线的方向,而不改变几何体本身,导致的结果是物体轮廓的人为改变,而物体本身的形状保持不变。凹凸贴图仅仅是视觉上的改变,类似于透视画法的效果;而位移映射则真正地改变了3D物体的几何形状,使其表面呈现出实际的凹凸不平。