1.ASE着色器自定义属性设置栏
接着上一篇开始
1.1.General
General常用的属性设置 | 说明 |
Shader Name: | Shader的名称及其路径。 |
Shader Type: | Shader的类型,一般情况下Surface Shader。 |
Light Model: | 光照模型,见下表格。 |
Shader Model: | 在编写表面着色器或常规着色器程序时,可以将 HLSL 源编译成不同的“着色器模型”。更高的着色器编译目标允许使用更现代的 GPU 功能,但可能会使着色器无法在较旧的 GPU 或平台上运行。 |
Precision: | 精度:定义内部计算的最大精度,使用较低的类型提供额外的性能提升以换取一些精度;默认设置为 Float - 此值限制放置在画布中的所有现有属性。 |
Cull Mode: | Front - 剔除正面几何体,Back - 剔除背面几何体,Off - 禁用剔除(双面材质);默认设置为返回。 |
Render Path: | 允许定义着色器支持的模式(前进/延迟);默认设置为全部。 |
Cast Shadows: | 决定是否生成阴影投射Pass。 |
Receive Shadows: | 定义使用着色器的对象是否接收阴影;这包括自阴影(仅适用于前向渲染);也可以在材质渲染器组件中基于每个对象关闭。 |
Queue Index: | 渲染队列偏移值,接受正(稍后)和负(较早)整数。 |
Vertex Output: | 顶点着色器的输出坐标是基于当前位置进行偏移还是绝对的顶点位置坐标。 |
Shader LOD: | 默认情况下,允许的 LOD 级别是无限的,即用户硬件支持的所有着色器都可以使用。但是,在某些情况下,您可能想要删除着色器细节,即使硬件可以支持它们。 |
Fallback: | 设置用于回退的Shader,设置后备着色器。 |
Custom Editor: | 自定义检查器允许您使用自定义材料检查器,默认情况下使用 ASE 自定义材料检查器。 |
Light Model: | 对应的中文 |
Standard | 金属工作流 |
Standard Specular | 高光工作流 |
Lambert | 漫反射 |
Blinn Phong | 镜面反射 |
Unlit | 无光模式 |
Custom Lighting | 自定义光照 |
1.2.Blend Mode
如图,ASE提供了几个常用的Blending预设,在面板的右上角单击箭头就出现下拉列表:
Blend Mode功能名称 | 说明 |
Blend Mode: | Opaque, Masked, Transparent, Translucent, Alpha Premultiplied or Custom. |
Render Type: | 渲染类型,通常的类型有 |
Render Queue: | 渲染队列 |
Mask Clip Value: | Alpha Test 的剔除数值,如果Alpha<MaskClipValue,像素就会被剔除,从而变透明。 |
Refraction Layer: | 指定的抓取通道将被此值偏移时,有效地为折射效果创建分层系统。 |
Alpha To Coverage: | 为透明测试的物体开启MSAA(多重采样抗锯齿) |
Blend RGB: | 混合类型,ASE提供了一系列的预设, |
Src\Dst: | 混合系数与ShaderLab中的混合系数一致。全称SrcFactor 、 DstFactor。Source 是指计算出来的颜色,Destination 是屏幕上已经存在的颜色。 |
Blend Op Alpha: | 渲染图形时,在执行了所有着色器并应用了所有纹理之后,像素被写入屏幕。它们如何与已有的组合由 Blend 命令控制。ASE 目前提供自定义、Alpha 混合、预乘、加法、软加法、乘法和 2x 乘法模式。 |
Color Mask: | 颜色通道的写入遮罩,关闭对应通道,对应通道的颜色不会显示。 |
1.3.Stencil Buffer
模版测试区或者模版缓冲区,勾选面板右上角确认框开启模版测试。
Stencil Buffer功能名称 | 说明 |
Reference: | 参照值 |
Read Mask: | Opaque, Masked, |
Write Mask: | Opaque, Masked, |
Comparison (front and back): | 比较方法,与ShaderLab一致的。 |
Pass: | 如果深度测试和模版测试都通过,对缓存中的数值所进行的操作。如Keep、Zero、Replace等操作,与ShaderLab一致。默认值:Default |
Fail: | 如果模版测试没有通过,对缓存中的数值所进行的操作。如Keep、Zero、Replace等操作,与ShaderLab一致。默认值:Default |
ZFail: | 如果模版测试通过,但深度测试没有通过,对缓存中的数值所进行的操作。如Keep、Zero、Replace等操作,与ShaderLab一致。默认值:Default默认值:Default |
1.4.Tessellation
关于曲面细分的设置在Tessellation面板里,勾选面板右上角的确认框开启曲面细分功能。
Tessellation功能名称 | 说明 |
Phong: | 开启Phong曲面细分。 |
Strength: | Phong曲面细分的强度,只有开启Phong曲面细分之后才可以设置。 |
Type: | 曲面细分类型,ASE提供了Distance Based,Fixed,Edge Length以及Edge Length Cull,四种曲面细分类型,不同类型的曲面细分拥有不同的属性设置。 |
Tess: | 细分等级,当细分类型为Edge Length Cull或者Fixed时可以设置。 |
Min、Max: | 曲面从细分过渡到不细分的最近和最远距离,当细分类型为Distance Based时可以设置。 |
Edge Length: | 最大边长,当细分类型为Edge Length时可以设置。 |
Max Disp: | 在视椎体之外的多边形顶点最大置换高度,当细分类型为Edge Length Cull时可以设置。 |
接下来详细介绍ASE_Output主节点。