Texture(纹理贴图)和Material(材质)概念上的区别

我的理解是:纹理更偏向于“图”,而材质更偏向于“属性”。

打个比方说,对同一个立方体模型进行处理:

加纹理信息,可以认为是贴上图,比如木头的纹理图,大理石的纹理图。

加材质信息,可以认为是为这个立方体加上属性(这些属性主要是指反射系数、折射系数等),比如木头的属性或大理石的属性。

从另一个角度来看,加了纹理的模型是静态的和表面的,不会因为外界环境变化而变化(比如光照)。但是加了材质的模型是动态的和本质的,当外界环境变化的时候能做出相应的变化,所以更真实。

最简单的例子就是,我们可以做出有木头光泽的大理石模型,有大理石光泽的木头模型,有木头光泽的木头模型,有大理石光泽的大理石模型。在上面的描述中,有“什么光泽”的“什么”,这是材质信息;“什么模型”的“什么”,这是纹理信息。

说了那么多,具体的只能自己体会啦。这也只是我个人的理解,:)

一般在CG中,“材质”(Material)指的其实是颜色,准确的说,指的是物体表面对射到表面上的色光的RGB分量的反射率。通常材质都包括环境光、漫射光、镜面光和自发光等成分,指的就是对不同的光线,不同颜色分量的反射程度。
“纹理”(texture)指的是位图,把一张图贴到一个表面上去,实际是摹拟了自然事物的漫射材质。因为材质一般只对顶点指定,你不可能对这个平面上的每个像素都指定一种材质。纹理其实就是起这个作用,相当于对这个平面上的每个像素都指定了不同的漫射材质。
不知道我的解释你明白了没有?
其实说穿了,材质和纹理都只是“颜色”而已。

“物体表面的颜色”,这种说法似是而非。物体表面哪来的颜色?
我们看到树是绿的,花是红的,只不过是因为树叶表面反射G分量最强而RB分量被吸收;花表面反射R分量最强而GB分量被吸收而已。说到底,物体的颜色都是外界给的,颜色并不是物体本身的属性。对RGB分量的反射率才是物体本身的属性。
你当然可以说“石膏是白的”,但把石膏放在红色灯下,石膏也就成了红的。你只能说“石膏在白色光下是白的”——这不是一句废话吗?
纹理实际上是对漫反射率的一个摹拟,准确的说,纹理摹拟的是物体表面在白色漫射光照下,各点的反射率。而材质反映的是物体在环境光、漫射光、直射光甚至自发光照射下的反射率,仅此而已,没有什么内部外部,本质表象的。  

猜你喜欢

转载自blog.csdn.net/UIUCGOGOGO/article/details/82749171