- Home /
Question by
AggregatGames · Dec 16, 2014 at 10:25 AM ·
shadermaterialstexturesprojector
Image Projector
I wrote a little shader for projected images
Shader "Sticker" {
Properties {
_ColorTint ("Main Color", Color) = (1, 1, 1, 1)
_MainTex ("Texture", 2D) = "white" {}
}
Subshader {
Tags {"Queue"="Transparent"}
Pass {
AlphaTest Greater 0
Blend DstColor zero
CGPROGRAM
#pragma exclude_renderers d3d11 xbox360
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
struct v2f {
float4 color : Color;
float2 uv_MainTex;
float4 uvShadow : TEXCOORD0;
float4 pos : SV_POSITION;
};
float4x4 _Projector;
float4x4 _ProjectorClip;
v2f vert (float4 vertex : POSITION) {
v2f o;
o.pos = mul (UNITY_MATRIX_MVP, vertex);
o.uvShadow = mul (_Projector, vertex);
return o;
}
float4 _ColorTint;
sampler2D _MainTex;
fixed4 frag (v2f i) : SV_Target {
i.color = _ColorTint;
fixed4 texS = tex2D(_MainTex, i.uv_MainTex);
texS.rgb *= _ColorTint;
return texS;
}
ENDCG
}
}
}
But the underground shines through the image so you can see the material projected on and I want to prevent that.
I'm not really good with shaders (I kind of guessed this script) and tries didn't work.
I searched through the internet to find codes but I hadn't find any.
Comment
Your answer
Follow this Question
Related Questions
The name 'Joystick' does not denote a valid type ('not found') 2 Answers
How to Best Implement a Tileset 1 Answer
Transparency Drawing issues 0 Answers
Material doesn't have a color property '_Color' 4 Answers
How can I edit Material Textures without creating a new Shader?,How to edit Material Texture 1 Answer