2017-03-20 4 views
0

私はユニティ3Dにかなり新しいですし、ちょうどこのチュートリアルを実装しようとしている:http://bernieroehl.com/360stereoinunity/無効添字「TEXCOORD」

彼は私が新しい消灯シェーダーと入力コードの彼の2行をした記述されて適応シェーダを作成する場合Cull frontv.texcoord.x = 1 - v.texcoord.x;

今、私は '消灯/ insideOut' で例外

シェーダのエラーを取得: ライン43(d3d11上)

0123で無効添字 'TEXCOORD' を

何が間違っている可能性がありますか?

全体シェーダ:

Shader "Unlit/insideOut" 
{ 
Properties 
{ 
    _MainTex ("Texture", 2D) = "white" {} 
} 
SubShader 
{ 
    Tags { "RenderType"="Opaque" } 
    Cull front 
    LOD 100 

    Pass 
    { 
     CGPROGRAM 
     #pragma vertex vert 
     #pragma fragment frag 
     // make fog work 
     #pragma multi_compile_fog 

     #include "UnityCG.cginc" 

     struct appdata 
     { 
      float4 vertex : POSITION; 
      float2 uv : TEXCOORD0; 
     }; 

     struct v2f 
     { 
      float2 uv : TEXCOORD0; 
      UNITY_FOG_COORDS(1) 
      float4 vertex : SV_POSITION; 
     }; 

     sampler2D _MainTex; 
     float4 _MainTex_ST; 

     v2f vert (appdata v) 
     { 
      v2f o; 
      o.vertex = UnityObjectToClipPos(v.vertex); 
      v.texcoord.x = 1 - v.texcoord.x; 
      o.uv = TRANSFORM_TEX(v.uv, _MainTex); 
      UNITY_TRANSFER_FOG(o,o.vertex); 
      return o; 
     } 

     fixed4 frag (v2f i) : SV_Target 
     { 
      // sample the texture 
      fixed4 col = tex2D(_MainTex, i.uv); 
      // apply fog 
      UNITY_APPLY_FOG(i.fogCoord, col); 
      return col; 
     } 
     ENDCG 
    } 
} 
} 

答えて

1

texcoordappdataのメンバーではありません。 v.uvを使用して、次のいずれか

v.uv.x = 1 - v.uv.x; 

またはtexcoord

uvメンバーの名前を変更
関連する問題