it is possible to use multi blend

Is it possible to have two or more distinct blending for each pass?
there is this example here but the syntex error

SubShader{
        ZWrite Off
        Tags { "QUEUE"="Transparent" "IGNOREPROJECTOR"="true" "RenderType"="Transparent" "PreviewType"="Plane" }
        Pass{
            Blend SrcAlpha One
            CGPROGRAM
                #pragma surface surf Lambert
                #pragma target 3.0
                struct Input{
                    //
                };
                sampler2D //;
                void surf (Input IN, inout SurfaceOutput o){
                    //
                }
            }
         ENDCG
         }
        Pass{
            Blend SrcAlpha OneMinusSrcAlpha
            CGPROGRAM
            #pragma surface surf Lambert
            #pragma target 3.0
             sampler2D//;
             fixed4 //;
             struct Input {
              //;
             };
             void surf(Input IN, inout SurfaceOutput o){

Yes, you can have multiple passes with different blend modes. However surface shaders aren’t normal shaders, they’re shader generators, and don’t belong inside a Pass. They have to be in the SubShader as they generate several passes, each with a preset blend mode depending on the alpha setting used for the #pragma surface line.

1 Like