Skip to main content

四、材质

当我们的模型有了一层未上色的皮后,我们便需要考虑给这层皮上色。然而,我们又不能像涂颜料一样给我们的模型上色,程序只能把图片贴到皮上面。而且,我们的皮是圆圆的且不平整的,这时候我们就需要制作对应的材质来适应我们的网络。

UV

材质记录一个在 3D 世界中存在的物体拥有的纹理,颜色等表面特征,材质可以用来描述物体的纹理、质感、反射、折射等效果为了解决表面不平的问题我们把网络展开成平面,我们用 UV 投射将网络分成几个片域展平。

这样我们就可以轻松的为对应区域上色形成贴图,

image.png

贴图

提贴图有以下几个基础的样式,以一个苹果贴图为例

画板 2.png

  • 基础色调:记录面的颜色/色彩信息,决定面的色彩
  • 材质散射度:决定面的粗糙度
  • 环境光遮蔽:记录面之间不同材质/网格体间的平滑阴影
  • 法线贴图:用于丰富物体在光照下的细节,通过贴图记录高精度模型表面的角度变化,使其能在较低面数的情况下表达更加丰富的表面结构信息
  • 采用3d图形学,优化注意

着色器

在上完色之后,我们还不能直接将结果运用到网络上。对于程序来说,你所制作的贴图只是一张图片和一串数据。我们需要一个东西来解释这张贴图如何在网络上呈现和渲染。因此,着色器便应运而生。

着色器是一种用于控制贴图如何在显示中呈现和渲染的程序或代码。它可以让3D模型看起来更加真实或美观,也可以改变模型的光照、阴影、反射、透明等属性。它可以控制各种属性的贴图会以什么样的形式附着到模型上。

目前,VRChat 中常用的着色器有:

  • Liltoon
  • Poiyomi(Pro)
  • UTS2(Unity Toon Shader 2)
  • Arktoon Shader
  • Sunao Shader(已停止更新)
  • Crystal Reflection
  • UnlitWF