baobao
7/24/2017 - 2:29 AM

A1.shader

Shader "A1"
{
	SubShader
	{
		Tags { "Hoge"="Piyo" }
		Pass
		{
			CGPROGRAM
			#pragma vertex vert_img
			#pragma fragment frag
			#include "UnityCG.cginc"
			fixed4 frag (v2f_img i) : SV_Target
			{
				return fixed4(0,1,0,1);
			}
			ENDCG
		}
	}
}
Shader "A2"
{
	SubShader
	{
		Tags { "Hoge"="Foo" }
		Pass
		{
			CGPROGRAM
			#pragma vertex vert_img
			#pragma fragment frag
			#include "UnityCG.cginc"
			fixed4 frag (v2f_img i) : SV_Target
			{
				return fixed4(1,0,0,1);
			}
			ENDCG
		}
	}
}
Shader "A3"
{
	SubShader
	{
		Tags { "Hoge"="Bar" }
		Pass
		{
			CGPROGRAM
			#pragma vertex vert_img
			#pragma fragment frag
			#include "UnityCG.cginc"
			fixed4 frag (v2f_img i) : SV_Target
			{
				return fixed4(0,1,1,1);
			}
			ENDCG
		}
	}
}
Shader "Replace"
{
	SubShader
	{
		Tags { "Hoge"="Piyo" }
		Pass
		{
			CGPROGRAM
			#pragma vertex vert_img
			#pragma fragment frag
			#include "UnityCG.cginc"
			fixed4 frag (v2f_img i) : SV_Target
			{
				return fixed4(1,1,0,1);
			}
			ENDCG
		}
	}

	SubShader
	{
		Tags { "Hoge"="Foo" }
		Pass
		{
			CGPROGRAM
			#pragma vertex vert_img
			#pragma fragment frag
			#include "UnityCG.cginc"
			fixed4 frag (v2f_img i) : SV_Target
			{
				return fixed4(0,0,0,1);
			}
			ENDCG
		}
	}
}
using UnityEngine;

public class ReplacementShaderTest : MonoBehaviour
{
	void Start ()
	{
		var replaceShader = Shader.Find ("Replace");
		Camera.main.SetReplacementShader (replaceShader, "Hoge");
	}

}