版本:Unity 6 (6000.0)
语言:英语
使用标准着色器配置平滑度
内置渲染管线中的标准着色器真实设置参考

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

当你更改 渲染模式 时,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;
        }

The helmet visor in this image is rendered using the Transparent mode, because it is supposed to represent a real physical object that has transparent properties. Here the visor is reflecting the skybox in the scene.
此图像中的头盔面罩使用透明模式渲染,因为它应该代表具有透明属性的真实物理物体。 这里面罩反射了场景中的天空盒。
These windows use Transparent mode, but have some fully opaque areas defined in the texture (the window frames). The Specular reflection from the light sources reflects off the transparent areas and the opaque areas.
这些窗户使用透明模式,但在纹理中定义了一些完全不透明的区域(窗户框架)。 光源的镜面反射会从透明区域和不透明区域反射。
The hologram in this image is rendered using the Fade mode, because it is supposed to represent an opaque object that is partially faded out.
此图像中的全息图使用淡入淡出模式渲染,因为它应该代表一个部分淡出的不透明物体。
The grass in this image is rendered using the Cutout mode. This gives clear sharp edges to objects which is defined by specifying a cut-off threshold. All parts of the image with the alpha value above this threshold are 100% opaque, and all parts below the threshold are invisible. To the right in the image you can see the material settings and the alpha channel of the texture used.
此图像中的草地使用切出模式渲染。 这为物体提供了清晰的锐利边缘,通过指定一个截止阈值来定义。 所有图像中 alpha 值高于此阈值的区域均为 100% 不透明,而所有低于阈值的区域均不可见。 在图像右侧,您可以看到材料设置和所用纹理的 alpha 通道。
使用标准着色器配置平滑度
内置渲染管线中的标准着色器真实设置参考