Unity Shader - Heightmap 高度贴图

目录:Unity Shader - 知识点目录(先占位,后续持续更新)
原文:Heightmap
版本:2019.1

Heightmap

在这里插入图片描述
高度贴图(也称为视差映射)是一个类似于法线映射的概念,但是这种技术更复杂,因此性能也更昂贵。高度贴图通常与法线贴图一起使用,通常它们用于想给表面定义一个很大的凹凸效果使用。

当法线贴图纹理修改表面的光照时,视差高度贴图又进一步修改了,以达到一种表面的遮挡效果。离相机近的表面的凹凸很明显很多,而远离相机的话凹凸效果变小,有的似乎被遮挡在相机视野外。

这种效果,它可以产生一个非常令人信服的3D几何效果,表面的凹凸效果有些会相互遮挡住,看起来真的像是3D几何体,但真实的几何体没有任何修改,因为这仅仅是绘制一个表面的效果。

高度贴图正常应该是张灰度图,白色代表凸起的部分,黑色代表凹下的部分。下面就是Albedo贴图和高度贴图的匹配使用。
An albedo colour map, and a heightmap to match.
一张Albedo色彩贴图,和一张高度贴图匹配。

在这里插入图片描述
从左向右说明:

  1. 岩石墙材质只设置了Albedo贴图,没有设置法线贴图和高度贴图。
  2. 设置了法线贴图。修改了表面的光照,但岩石间没有相互遮挡效果。
  3. 这个精致的效果是使用了法线贴图和高度贴图。岩石看起来就像是从表面凸起来似的,靠近相机的岩石看起来可以遮挡着后面的岩石。

通常灰度图在高度图中使用很适合,但在遮挡贴图使用也非常适合。了解Occlusion Maps(遮挡贴图)的信息,我们下节将讲到。

猜你喜欢

转载自blog.csdn.net/linjf520/article/details/91411042