在Blender中通过法线贴图和顶点位移实现石块地面的凹凸感

发表于2018-08-13
评论0 5.1k浏览
为了让地面场景更加的真实,在开发的过程中可能会给地面增加一些凹凸感。那下面就来看看在Blender中通过法线贴图和顶点位移实现石块地面的凹凸感的方法。

先看最终效果:

这个地板在mesh层面其实就只是一个切割(Subdivide)了很多次有很多顶点的Plane:

其实如果只加法线贴图而不做顶点位移的话,一个只有四个顶点的Quad也可以。

添加颜色贴图(可通过3DView的TextureMode查看贴图应用效果):

和法线贴图:

注意贴图要做些设置才能成为法线贴图:

并且要选择GLSLShading才会有法线贴图的效果:

不过法线贴图的缺点是,当视角很平的时候,凹凸感就非常微弱甚至会消失,因为法线贴图呈现的凹凸感是靠光照“做假”呈现的:

为了解决这一问题,需要采用顶点位移(Displacement)实现顶点层面的真正凹凸。因此我给planesubdivide之后,又加了Subsurf、Displace和Smooth三个Modifier。

Subsurf是为了在渲染时细分出更多的顶点,类似曲面细分技术(Tessellation),只不过Tessellation是动态的,相比之下更加能节省资源。

Displace是为了根据凹凸贴图上的高度信息对顶点进行上下位移,实现真正的凹凸感。当然,为此还需要一张凹凸贴图:

Smooth顾名思义是为了平滑,不加平滑的话效果会是这样:
有点恐怖。

加上顶点位移之后,以平视角去看地板也会有凹凸感了,而且凹凸感会比只有法线贴图时更强(见文章开头):

这是因为这个mesh本身已经有了凹凸,不再是一个光滑的plane了:
来自:https://blog.csdn.net/zzxiang1985/article/details/55518463

如社区发表内容存在侵权行为,您可以点击这里查看侵权投诉指引