docs.unity3d.com
    目次を表示する/隠す

    既知の制約

    サーフェスシェーダーにおける Alpha Test pragma について

    Built-in Render Pipeline を使用するプロジェクトで、サーフェス シェーダーを使用するオブジェクトをレンダリングする場合 alphatest pragma を使用すると、Render ノードがそれらのオブジェクトのアルファ値を正しく出力しないことがあります。 これは Compositor Graph 内の後続のノードに影響します。

    このようなシェーダーの一例として、Unity の Tree Editor で使用されているリーフシェーダーがあります。

    この問題を回避するためには、現時点では、シェーダーファイルを変更してalphatest を clip に置き換える必要があります。 以下のコードスニペットを参照してください。

    float _Cutoff;
    
    void surf (Input IN, inout SurfaceOutput o) {
        half4 c = tex2D(_MainTex, IN.uv_MainTex) * _Color;
        o.Albedo = c.rgb;
        o.Alpha = c.a;
        clip(o.Alpha - _Cutoff);    
    }
    
    トップに戻る
    Copyright © 2023 Unity Technologies — 商標と利用規約
    • 法律関連
    • プライバシーポリシー
    • クッキー
    • 私の個人情報を販売または共有しない
    • Your Privacy Choices (Cookie Settings)