图形学基础——BUMP图改进

Bump Mapping 凹凸映射百人计划学习地址:图形 2.5 BUMP图改进一、基础概念凹凸映射技术是对物体表面贴图进行变化然后再进行光照计算的一种技术。例如给法线分量添加噪音,或者在一个保存扰动值的纹理图中进行查找。这是一种提升物体真实感的有效方法,但却不需要额外的提升物体的几何复杂度。这种方式在提升物体的表面细节或者表面的不规则性方面有显著效果。二、凹凸映射的分类Bump Mapping的种类主要有:法线映射、视差映射、浮雕映射。下图分别是:没有使用,使用了发现,使用了视差贴图
摘要由CSDN通过智能技术生成

Bump Mapping 凹凸映射

百人计划学习地址:图形 2.5 BUMP图改进


一、基础概念

凹凸映射技术是对物体表面贴图进行变化然后再进行光照计算的一种技术。

例如给法线分量添加噪音,或者在一个保存扰动值的纹理图中进行查找。这是一种提升物体真实感的有效方法,但却不需要额外的提升物体的几何复杂度。这种方式在提升物体的表面细节或者表面的不规则性方面有显著效果。
在这里插入图片描述

二、凹凸映射的分类

Bump Mapping的种类主要有:法线映射、视差映射、浮雕映射。
下图分别是:没有使用,使用了发现,使用了视差贴图
在这里插入图片描述
最常用的是法线映射,一般的增加法线贴图后,会对局部的物体表面进行法线扰动,进而改变明暗关系,从而达到增加表面细节的效果。其中三种映射中都用到的法线贴图也是本次介绍的重点内容。

三、Normal Mapping 法线映射

原理: Normal Map 是一张存有物体局部表面法线信息的一张贴图。在计算光照的时候,程序会去读取法线图,并获取到当前像素点的法线信息,结合光线信息进行光照计算。使用法线贴图计算光照,可以让物体表现出更加丰富的细节,并随着光照方向的变换实时变化。
在这里插入图片描述
法线贴图一般由高模映射到对应的底模上来生成。
但像金属,木头等这些细节丰富的物体,可借助程序化的软件如:Photo Shop,Substance Designer等生成对应法线贴图。

而法线的存储,一般会放到模型的切线空间中。

什么是切线空间?

切线空间是以法线向量为Z轴以顶点为原点定义的坐标系,另外两个坐标轴就是和该点相切的两条切线(Tangent)。

这样的切线本来有无数条,但模型一般会给定该顶点的其中一个Tangent。

坐标系如下

  • Normal:法线,一般软件生成,可编辑
  • Tangent:切线,引擎生成
  • B-Tangent:根据N和T的叉乘计算得到
    在这里插入图片描述

为什么一定要用切线空间?

实际上,法线本身存储在哪个坐标系中都是可以的,例如存储在世界空间、或者模型空间、或者切线空间中。

但问题是,我们并不是单纯的想要得到法线,后续的光照计算才是我们的目的。不管使用哪个坐标系,都面临着一个选择,就是最后光照计算使用的坐标系究竟是哪个。

对于切线空间,我们需要把视线方向、光照方向在顶点着色器中转换到切线空间中,然后在片元着色器对法线纹理采样后,直接进行光照计算。

世界和切线空间如何转换
  1. 将世界坐标系下的顶点法线(Normal)和切线(Tangent)以及副切线(Bitangent)作为切线空间坐标系的正交基。
  2. 并用这三个向量的标准正交基来构建转换矩阵。对应关系为法线作为Z轴,切线作为X轴,副切线作为Y轴。
  3. 构建一个3*3的矩阵来做空间向量的坐标系转换。一般的叫该矩阵为TBN矩阵。其逆矩阵就是从切线空间到世界空间的转换矩阵记TBN-1,因为TBN为正交阵,所以其逆矩阵为TBN的转置矩阵。
    在这里插入图片描述
使用切线空间有什么好处?
  • 自由度很高。切线空间记录的是相对法线信息,这意味着,即便把该纹理应用到一个完全不同的网格上,也可以得到一个相对合理的结果。
  • 可进行UV动画。比如,我们可以移动一个纹理的UV坐标来实现一个凹凸移动的效果,这种UV动画在水或者火山熔岩这种类型的物体比较类似。
  • 可以重用Normal Map。比如,一个砖块,我们可以仅使用一张Nor
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值