Unity Shader 中各種Tag
阿新 • • 發佈:2018-05-02
應該 order nbsp example bsp 標簽 geo ren 排序。
Unity shaderLab中,經常會看到 各種Tag(標簽)。這裏大致分為兩類Tag,SubShader Tag 和 Pass Tag。·
SubShader Tag
Sub的這些只能是在SubShader中,但是不能再Pass中,我們還能使用material.GetTag 函數查詢他們。
Rendering Order - Queue tag
在3D引擎中,我們經常要對 透明和不透明物體進行排序。先渲染不透明再渲染透明物體,Unity使用 Queue標簽,分別放入不同的渲染隊列中。
-
Background
- 背景,一般天空盒之類的使用這個標簽,最早被渲染 -
Geometry
(default) -
AlphaTest
- 如果Shader要使用AlphaTest功能 使用這個隊列性能更高 -
Transparent
- 這個渲染隊列在AlphaTest之後,Shader中有用到Alpha Blend的,或者深入不寫入的都應該放在這個隊列。 -
- this render queue is meant for overlay effects. Anything rendered last should go here (e.g. lens flares).Overlay 最後渲染的隊列,全屏幕後期的 都應該使用這個
Shader "Transparent Queue Example" { SubShader { Tags { "Queue" = "Transparent" } Pass { // rest of the shader body... } } }
RenderType tag
RenderType tag可以用自定義的字符串,在使用ShadeReplacement,全局替換渲染的時候有用。
Unity Shader 中各種Tag