UE4材质节点详解:BumpOffset视差偏移
UE4材质节点详解:BumpOffset视差偏移
BumpOffset是虚幻引擎4中的一个重要材质节点,它通过使用高度贴图来实现视差效果,从而在不增加几何体的情况下为材质添加深度感。本文将详细介绍BumpOffset的定义、属性、输入以及其工作原理,并通过示例展示其实际应用。
一、定义
凹凸贴图偏移(BumpOffset)是虚幻引擎4术语,就是通常所谓的"视差贴图"。BumpOffset表达式可以使材质产生深度错觉,而不需要额外的几何体。BumpOffset材质使用灰阶高度贴图来提供深度信息。高度贴图中的值越亮,材质的"凸出"效果越明显;当摄像机在表面上移动时,这些区域将产生视差(移位)。高度贴图中较暗的区域将显得"距离较远",其移位程度最小。
属性 | 说明 |
---|---|
高度比(HeightRatio) | 从高度贴图中取得的深度的乘数。这个值越大,深度越极端。典型值的范围是0.02到0.1。 |
参考平面(ReferencePlane) | 指定纹理空间中要应用此效果的近似高度。值为0将使纹理完全离开表面,而值0.5(默认值)表示部分表面凸起而部分区域凹陷。 |
Inputs | 说明 |
---|---|
坐标(Coordinate) | 接收此表达式所要修改的基本纹理坐标。 |
高度(Height) | 接收要用作高度贴图的纹理(或值)。 |
高度比输入(HeightRatioInput) | 从高度贴图中取得的深度的乘数。这个值越大,深度越极端。典型值的范围是0.02到0.1。如果使用此输入,那么它将取代"高度比"(Height Ratio)属性中的任何值。 |
二、分析
高度输入接收要用作高度贴图的纹理,BumpOffset使用高度贴图来提供深度信息。高度贴图中的值越亮,材质的"凸出"效果越明显;当摄像机在表面上移动时,这些区域将产生视差(移位)。高度贴图中较暗的区域将显得"距离较远",其移位程度最小。
根据原理说明,砖缝是往外凸的,砖是往里凹的,因为砖缝颜色亮,砖是往里凹的,颜色暗。至于如何实现外凸或者凹应该是对uv根据深度的位置移动。让其贴在物体上的颜色发生了错位。所以它应该是连接在uv上的。
以下的输出证明了uv的偏移是根据深度信息即高度值所得到的。
我们再来看一下连上贴图产生的变化。
物体离我们更近了!我们现在用一个灰度图来替代数值,让其有离摄像机近的,有离摄像机远的看看效果。为了让效果更加强烈,我们把数值的值放大10倍。
三、示例应用
(此处省略具体示例应用)
四、总结
BumpOffset材质使用灰阶高度贴图来提供深度信息。高度贴图中的值越亮,材质的"凸出"效果越明显;当摄像机在表面上移动时,这些区域将产生视差(移位)。高度贴图中较暗的区域将显得"距离较远",其移位程度最小,一切都是通过uv的错位来实现的。