Additive Shader with 'highlight' ability

Hi all, I don’t know shader lab at all and I have a simple problem I hope someone can help with!

I have a car, and I am projecting logos onto it.
Thanks to housewarmer for his additive projector shader, which helps me do this (1st pic).

Now, I want to be able to ‘highlight’ the areas i’ve projected logos onto, by ‘adding’ a semi transparent green colour over it. (2nd pic). I want this effect to be toggleable.

Can anyone help? I’ve attached housewarmer’s shader as a start below:

Shader "FX/Projector Additive" {
   Properties {
      _ProjTex ("Logo", 2D) = "gray" { TexGen ObjectLinear }
   }

   Subshader {
      Pass {
         ZWrite Off
         Offset -1, -1
         
         AlphaTest Less 1
         ColorMask RGB   
         Blend  OneMinusSrcAlpha   SrcAlpha
         SetTexture [_ProjTex] {
            combine texture, ONE - texture
            Matrix [_Projector]
         }
      }   
   }
}

This shader was originally was posted under http://forum.unity3d.com/viewtopic.php?t=12198&highlight=

197851--7250--$additiveproj_126.jpg
197851--7251--$additiveprojhi_113.jpg

Ok, I did exactly what I didn’t have time to do, which was hack around until I made something ok.

I didn’t achieve what I originally wanted - instead this shader ‘tinges’ the non transparent parts of the logo. If anyone can solve my initial conundrum (making the green fill the projector rectangle) I’d be interested to hear how you did it! Anything I tried made the entire car turn green!

Anyway, here’s my code:

Shader "FX/Projector Additive Highlight" {
   Properties {
      _ProjTex ("Image", 2D) = "gray" { TexGen ObjectLinear }
      _IllumColor ("Highlight", Color) = (1, 1, 1, 1)
   }

   Subshader { 
      Pass {
         ZWrite Off
         AlphaTest Less 1
         Offset -1, -1
         Blend OneMinusSrcAlpha One
         
         SetTexture [_ProjTex]{
         	constantColor[_IllumColor]
         	combine texture * constant, constant - texture
         	Matrix [_Projector] 
         }              
      }   
   }
}

And I was able to access the “_IllumColor” property in unity via:

myProjector.material.SetColor(“_IllumColor”, newColor);

where newColor is green or white, depending on the toggle state.

Here’s a screenshot of what it looks like:

198129--7268--$picture_2_198.png
198129--7269--$picture_1_514.png