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");
}
}