Version: 6000.3
语言: 中文
使用标准着色器配置平滑度
内置渲染管线参考中的标准着色器真实设置

使用脚本在标准着色器中设置渲染模式

当您更改渲染模式时,Unity 会对材质应用许多更改。没有单一的C# API可以更改材质的渲染模式,但你可以在代码中进行相同的更改。

要查看 Unity 在更改渲染模式时所做的更改,请执行以下作:

  1. 下载 Unity 内置的源代码着色器在 GPU 上运行的程序。更多信息
    请参阅术语表
    .有关说明,请参阅制作自己的着色器
  2. 打开文件StandardShaderGUI.cs
  3. 找到文件中如下所示的区域,并观察每个渲染模式的变化。
switch (blendMode)
        {
            case BlendMode.Opaque:
               // Changes associated with Opaque Rendering Mode are here
                break;
            case BlendMode.Cutout:
                // Changes associated with Cutout Rendering Mode are here
                break;
            case BlendMode.Fade:
                // Changes associated with Fade Rendering Mode are here
                break;
            case BlendMode.Transparent:
                // Changes associated with Transparent Rendering Mode are here
                break;
        }

此图像中的头盔遮阳板是使用 透明(Transparent) 模式渲染的,因为它应该表示具有透明属性的真实物理对象。这里的遮阳板反射了场景中的天空盒。
此图像中的头盔遮阳板是使用 透明(Transparent) 模式渲染的,因为它应该表示具有透明属性的真实物理对象。这里的遮阳板反射了场景中的天空盒。
这些窗口使用透明模式,但在纹理中定义了一些完全不透明的区域(窗口框架)。来自光源的镜面反射从透明区域和不透明区域反射。
这些窗口使用透明模式,但在纹理中定义了一些完全不透明的区域(窗口框架)。来自光源的镜面反射从透明区域和不透明区域反射。
此图像中的全息影像是使用淡入淡出模式呈现的,因为它应该表示部分淡出的不透明对象。
此图像中的全息影像是使用淡入淡出模式呈现的,因为它应该表示部分淡出的不透明对象。
此图像中的草是使用 剪切(Cutout) 模式渲染的。这为对象提供了清晰的锋利边缘,这是通过指定截止阈值来定义的。alpha 值高于此阈值的所有图像部分都是 100% 不透明的,低于阈值的所有部分都是不可见的。在图像的右侧,您可以看到所用纹理的材质设置和 alpha 通道。
此图像中的草是使用 剪切(Cutout) 模式渲染的。这为对象提供了清晰的锋利边缘,这是通过指定截止阈值来定义的。alpha 值高于此阈值的所有图像部分都是 100% 不透明的,低于阈值的所有部分都是不可见的。在图像的右侧,您可以看到所用纹理的材质设置和 alpha 通道。
使用标准着色器配置平滑度
内置渲染管线参考中的标准着色器真实设置