j'écrit ce qui suit Shader
: me ditPourquoi ce Shader génère-t-il une erreur d'analyse lorsqu'il est donné en tant que chaîne au constructeur Material?
Shader "Custom/SimpleShader" {
Properties {
_MainTex("Base (RGB)", 2D) = "white" { }
}
SubShader {
Pass {
ZTest Always
Cull Off
ZWrite Off
/* LINE 16*/CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "UnityCG.cginc"
struct v2f {
float4 pos : SV_POSITION;
float2 uv : TEXCOORD0;
float2 uvb : TEXCOORD1;
};
uniform sampler2D _MainTex;
uniform sampler2D _Texture0;
uniform fixed _Alpha0;
v2f vert(appdata_img v)
{
v2f o;
o.pos = mul(UNITY_MATRIX_MVP, v.vertex);
o.uv = MultiplyUV(UNITY_MATRIX_TEXTURE0, v.texcoord);
o.uvb = MultiplyUV(UNITY_MATRIX_TEXTURE0, v.texcoord);
return o;
}
fixed4 frag(v2f i) : SV_Target
{
fixed4 col = tex2D(_MainTex, i.uv);
col.rgb += (tex2D(_Texture0, i.uvb).rgb * _Alpha0);
return col;
}
ENDCG
}
}
Fallback off
}
Unité
qu'il ya une "Syntax Error"
en ligne 16 (voir note). Cela se produit, lorsque je mets ce texte dans un string
et que je donne ce string
au constructeur Material(string contents)
. Cependant, lorsque je place le texte dans un fichier .shader
et l'importe de la manière habituelle, le shader est accepté et ne produit pas d'erreur.