art-各种贴图详解
art-各种贴图详解
前篇
相关资料
- Unity中凹凸贴图、法线贴图、视差贴图和位移贴图 - http://gad.qq.com/article/detail/286417
- Shader中贴图知识汇总: 漫反射贴图、凹凸贴图、高光贴图、 AO贴图、环境贴图、 光照纹理及细节贴图 - http://www.cnblogs.com/zsw-1993/archive/2013/04/11/4880187.html
- 笔记 - 贴图 - https://zhuanlan.zhihu.com/p/53105329
- 游戏贴图基础和术语 - https://www.jianshu.com/p/c1ed26cbb6b4
- 主要参考: 《Real-Time Rendering 3rd》 提炼总结
一个 pbr 效果包含的贴图
直接看 substance designer
名词
- basecolor : 基础颜色. (也就是 albedo, 基础贴图)
- normal : 法线
- roughness : 粗糙度
- metallic : 金属度
- ambient occlusion ( AO ) : 环境光遮蔽
- height : 高度图 (也叫 凹凸度)
- diffuse : 漫反射
- specular : 高光 或者 镜面反射
- glossiness : 光泽度
其它相关名词
- saturation : 饱和度
- lightness : 明亮度
- hue : 色彩
凹凸贴图 Bump Mapping
Blinn 于 1978 年提出了凹凸贴图方法。使用凹凸贴图,是为了给光滑的平面,在不增加顶点
的情况下,增加一些凹凸的变化。他的原理是通过法向量的变化,来产生光影的变化,从而
产生凹凸感。实际上并没有顶点(即 Geometry)的变化。
表示凹凸效果的另一种方法是使用高度图来修改表面法线的方向。每个单色纹理值代表一个
高度,所以在纹理中,白色表示高高度区域,黑色是低高度的区域(反之亦然)。 示例如图
14。
转成 法线贴图
- 虚幻4高度图转法线 - https://blog.csdn.net/qq_16756235/article/details/75729467
- 在线转换器 - http://cpetry.github.io/NormalMap-Online/
原理是:
获取周围高度并且获取高度平面的向量之后,求两个高度平面向量的叉乘就可以获取法向量了
置换贴图 Displacement Mapping
- displacement map置换贴图 - https://blog.csdn.net/sinat_27456831/article/details/51086438
- 置换贴图 - https://absolute.iteye.com/blog/189133
- 位移贴图 - https://zh.wikipedia.org/wiki/%E4%BD%8D%E7%A7%BB%E8%B4%B4%E5%9B%BE
也叫 移位贴图
置换贴图
置换贴图是使用高度图将经过纹理化的表面上实际几何点位置沿着表面法线根据保存在纹理中的数值进行移位的技术,这是与凹凸贴图、法线贴图以及视差贴图不同的技术。
多年以来,置换贴图一直是 RenderMan 这样的高端渲染系统的一个特性,如 OpenGL 与 DirectX 这样的应用程序编程接口则没有这样的特性,其中一个原因就是置换贴图的最初实现为了得到与屏幕上的像素匹配的微多边形(en:micropolygon)需要自适应的表面镶嵌。
在最新一代的图形处理硬件上,置换贴图可以解释为一种顶点-纹理贴图。在这种方法中,纹理贴图的数值将不再改变像素的颜色,而是用来改变顶点的位置。与凹凸贴图和法线贴图不同,置换贴图可以用这种方法生成真正粗糙的表面。目前只在一小部分的桌面图形处理器上实现了这种功能,并且为了生成非常细致的网格、得到更好的三维感觉以及更好的纹理深度与细节需要与自适应的镶嵌术配合使用,自适应镶嵌技术可以根据当前的观察参数设定增加渲染的多边形数目。
Displacement Mapping,移位贴图,也有人称为置换贴图,或称高度纹理贴图( Heightfield
Texturing)。这种方法类似于法线贴图,移位贴图的每一个纹素中存储了一个向量,这个向
量代表了对应顶点的位移。 注意,此处的纹素并不是与像素一一对应,而是与顶点一一对
应,因此,纹理的纹素个数与网格的顶点个数是相等的。在 VS 阶段,获取每个顶点对应的
纹素中的位移向量,(注意,直到 3.0 版本的 vs 才支持纹理数据的获取,之前的版本只有 ps
才能获取纹理数据),施加到局部坐标系下的顶点上,然后进行世界视点投影变换即可
MR 制作 ao
- 游戏制作3DMAX使用MR烘焙AO贴图 - https://wenku.baidu.com/view/344199b2f111f18582d05a78.html
AO 贴图
法线贴图 Normal mapping
法线贴图( Normal mapping)是凸凹贴图( Bump mapping)技术的一种应用,法线贴图有时也
称为“Dot3(仿立体)凸凹纹理贴图”。 凸凹与纹理贴图通常是在现有的模型法线添加扰动
不同,法线贴图要完全更新法线。与凸凹贴图类似的是,它也是用来在不增加多边形的情况
下在浓淡效果中添加细节。但是凸凹贴图通常根据一个单独的灰度图像通道进行计算,而法
线贴图的数据源图像通常是从更加细致版本的物体得到的多通道图像,即红、绿、蓝通道都
是作为一个单独的颜色对待。
简单来说, Normal Map 直接将正确的 Normal 值保存到一张纹理中去,那么在使用的时候直接
从贴图中取即可。
视差贴图 Parallax Mapping
视差贴图 Parallax Mapping,又称为 Offset Mapping,以及 virtual displacement mapping),于
2001 年由 Kaneko 引入,由 Welsh 进行了改进和推广。 视差贴图是一种改进的 Bump Mapping
技术,相较于普通的凹凸贴图,视差贴图技术得到凹凸效果得会更具真实感(如石墙的纹理
将有更明显的深度)。视差贴图是通过替换渲染多边形上的顶点处的纹理坐标来实现的,而
这个替换依赖于一个关于切线空间中的视角(相对于表面法线的角度)和在该点上的高度图
的方程。 简单来说, Parallax Mapping 利用 Height Map 进行了近似的 Texture Offset。如图
6.32。
浮雕贴图 Relief Mapping
关于浮雕贴图( Relief Mapping),有人把它誉为凹凸贴图的极致。我们知道, Parallax
Mapping 是针对 Normal Mapping 的改进,利用 HeightMap 进行了近似的 Texture Offset。而
Relief Mapping 是精确的 Texture Offset,所以在表现力上比较完美。
ID 贴图
- ID map贴图是什么意思,是什么来的,求解释 - http://www.hkcgart.com/zhidao/detail/id/900163.html
- 制作材质ID图 - https://www.jianshu.com/p/ae3352995f4c
快速选区的作用. 可當作遮罩使用,在繪製貼圖的軟體中提升製作效率
ID map 就是不同材质的区域用不同的颜色选区标识出来,比如一张贴图上,用红色填充整个金属区域;用绿色填充整个木头区域;用蓝色填充整个橡胶区域,最后得到一张只有红 绿 蓝 三个颜色的贴图。
生成id贴图
- 使用顶点色方式
- ID map From 3DS Max to Substance Painter - https://www.youtube.com/watch?v=o1zy3a3vi9M , 这种方式是 max 中涂好 顶点色, 然后在painter 烘焙id贴图时指定使用 顶点色 烘焙
- 使用max渲染 漫反射贴图
- How to generate a color map in 3dsMax - https://www.youtube.com/watch?v=leLlovbqn_4