程序员只需认识Material,Sahder的大概功能和作用

  • Material材质:物体的地质,指色彩,纹理,光滑度,透明度,放射率,折射率,反光度等等。实际上就是Shader的实例。
  • Shader 着色器 :专门用来渲染图形的技术,可以使纹理以某种方式展示。实际上就是一段嵌入到渲染管线中的程序,可以控制GPU运算图像效果的算法。
  • Texture纹理:就是附加到物体表面的贴纸

unity material 赋值 unity material shader_着色器


Main Maps

程序员常用到的以下几种参数,其他的基本上美工会解决

  • Albedo : 基础贴图 决定物体表面的纹理和颜色
  • Metallic: 金属 使用金属特性模拟外观
  • unity material 赋值 unity material shader_着色器_02

  • Rendering Mode 即渲染模型
    渲染模型有以下几种:
    Albedo颜色的alpha通道控制材质的透明度程度。这小过只对材质中的Rendering Mode为透明模式(Transparent、Fade)有效
    渲染模式为Opaque时:物体的透明度不会发送改变
  • unity material 赋值 unity material shader_渲染管线_03

  • 渲染模式为Transparent时:物体的透明度会随A值发生改变
  • unity material 赋值 unity material shader_unity material 赋值_04

  • Opaque: 不透明的 (一般渲染模式默认为这个)
  • CutOut:将图片的透明通道去掉,只显示不透明的通道
  • Fade: 可以通过调节透明度将物体调节为 渐入渐出样式
  • Transparent:可以调节透明度将物体透明

Shader
Shader可以理解为是一段代码,是一段程序,决定了Material的功能,选择不同的shader,Material具有不同的功能,所有的功能都来自Shader,而Material只是一个设置数值的面板。(功能指的是色彩,纹理,光滑度,透明度,放射率等等)

Shader默认为Standard

unity material 赋值 unity material shader_渲染管线_05


其功能有:

unity material 赋值 unity material shader_unity_06


设置为其他的shader 功能将会不同 例如设置为

unity material 赋值 unity material shader_unity_07


只能调节颜色,连贴图的功能都没有了。

总结为不同的Shader决定了不同的功能,而功能的参数在Martial面板上设置。