Los “Tags” son etiquetas que permiten indicar cómo y cuándo son procesados nuestros shaders
Al igual que un tag de un GameObject, estos pueden ser utilizados para reconocer la manera en la que un shader será renderizado o bien qué comportamiento gráfico tendrá un grupo de ellos.
La sintaxis para todos los Tags es la siguiente:
Tags
{
"TagName1" = "TagValue1"
"TagName2" = "TagValue2"
}
Los Tags pueden ser escritos en dos campos distintos, ya sea dentro del SubShader o dentro del Pass. Todo esto va a depender del resultado que deseamos obtener. Si escribimos un tag dentro del SubShader, este afectará a todos los pases que se encuentren incluidos en el shader, pero si las escribimos dentro del Pass, solamente afectará al pase seleccionado.
Un Tag que utilizaremos con mayor frecuencia corresponde a “Queue” ya que este nos permite definir cómo va a lucir la superficie de nuestro objeto. Por defecto, toda superficie es definida como “opaca”, quiere decir, que no posee transparencia.
Si prestamos atención a nuestro shader USB_simple_color, nos encontraremos con la siguiente línea de código dentro del SubShader, el cual define una superficie opaca para nuestro shader.
SubShader
{
Tags { “RenderType” = “Opaque” }
LOD 100
Pass {} ...
}