Unity CG "shadow catcher" 着色器未显示在 iOS 中

Unity CG "shadow catcher" shader not showing in iOS

我在两个平面上都有这个着色器。它使它们透明并且只显示它们收到的阴影。但是,在 iOS 上编译并 运行 它会使阴影消失,我不明白为什么。有什么想法吗?

Shader "FX/Matte Shadow" {

Properties {

    _Color ("Main Color", Color) = (1,1,1,1)

    _MainTex ("Base (RGB) Trans (A)", 2D) = "white" {}

    _Cutoff ("Alpha cutoff", Range(0,1)) = 0.5

}


SubShader {

    Tags {"Queue"="AlphaTest" "IgnoreProjector"="True" "RenderType"="TransparentCutout"}

    LOD 200

    Blend Zero SrcColor


CGPROGRAM

    #pragma surface surf ShadowOnly alphatest:_Cutoff


fixed4 _Color;

struct Input {

    float2 uv_MainTex;

};


inline fixed4 LightingShadowOnly (SurfaceOutput s, fixed3 lightDir, fixed atten)

{

    fixed4 c;


    c.rgb = s.Albedo*atten;

    c.a = s.Alpha;

    return c;

}


void surf (Input IN, inout SurfaceOutput o) {

    fixed4 c = _Color;

    o.Albedo = c.rgb;

    o.Alpha = 1;

}

ENDCG

}

Fallback "Transparent/Cutout/VertexLit"

}

这个着色器工作得很好。我的问题是在 iOS 设备上测试 AR-App 时,远的裁剪平面不会一直到墙。哎呀