Skip to main content

四、材质

接上文,当我们的模型有了一层未上色的皮后,我们就需要考虑给这层皮上色了,但是我们又不能像涂颜料一样给我们的模型上色,程序只能把图片贴到皮上面,而且我们的皮是圆圆的不平的,这时候我们就需要制作对应的材质来适应我们的网络,材质记录一个在3D世界中存在的物体拥有的纹理,颜色等表面特征,材质可以用来描述物体的纹理、质感、反射、折射等效果为了解决表面不平的问题我们把网络展开成平面,我们用UV投射将网络分成几个片域展平image.png

这样我们就可以轻松的为对应区域上色形成贴图,顺带一提贴图有以下几个基础的样式,以一个苹果贴图为例

基础色调:

记录面的颜色/色彩信息,决定面的色彩

image (2).jpg

材质散射度:

决定面的粗糙度

image (3).jpg

环境光遮蔽:

记录面之间不同材质/网格体间的平滑阴影

image (4).jpg

法线贴图:

用于丰富物体在光照下的细节,通过贴图记录高精度模型表面的角度变化,使其能在较低面数的情况下表达更加丰富的表面结构信息

image (5).jpg

上完色了以后我们还不能直接运用到网络上,对应程序来说你做的贴图不过是一张图片一串数据,我们还需要一个东西去解释贴图运用到网络上是什么样的,于是着色器就产生了,着色器是用来控制贴图如何在显示其中呈现和渲染的程序或代码,它可以让3D模型看起来更加真实或美观,也可以改变模型的光照、阴影、反射、透明等属性。它可以控制各种属性的贴图会以什么样的形式附着到模型上,目前VRC几个常用的着色器为:

Liltoon

Poiyomi(Pro)

UTS2(Unity Toon Shader 2)

Arktoon Shader

Sunao Shader(已停止更新)

Crystal Reflection

UnlitWF