Je souhaite réaliser un shader qui permet d'afficher les ombres sur un objet invisible. Le problème est que ce shader fonctionne parfaitement en standalone et dans l'editor mais pas en WindowsApp . J'ai fait la mise à jour et je suis sous Unity 5.4.
Je vous joins aussi le shader que j'utilise sur un plan invisible devant un rawImage (qui récupère la webcam).
(Le shader a été trouvé sur internet)
Code : Tout sélectionner
Shader "Custom/transparentwithshadow"
{
Properties
{
_Color("Main Color", Color) = (1,1,1,.5)
_ShadowIntensity("Shadow Intensity", Range(0, 1)) = 0.6
}
SubShader
{
Tags{ "Queue" = "AlphaTest" }
Pass
{
Tags{ "LightMode" = "ForwardBase" }
Cull Back
Blend SrcAlpha OneMinusSrcAlpha
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#pragma multi_compile_fwdbase
#include "UnityCG.cginc"
#include "AutoLight.cginc"
uniform fixed4 _Color;
uniform float _ShadowIntensity;
struct v2f
{
float4 pos : SV_POSITION;
LIGHTING_COORDS(0,1)
};
v2f vert(appdata_base v)
{
v2f o;
o.pos = mul(UNITY_MATRIX_MVP, v.vertex);
TRANSFER_VERTEX_TO_FRAGMENT(o);
return o;
}
fixed4 frag(v2f i) : COLOR
{
float attenuation = LIGHT_ATTENUATION(i);
return fixed4(0,0,0,(1 - attenuation)*_ShadowIntensity) * _Color;
}
ENDCG
}
}
Fallback "VertexLit"
}
Edit: j'ai oublié de dire le problème. Le plan est transparent mais ne reçois aucune ombre...