Well, you’ve got two lines, already, that you don’t need: ZWrite On, and Lighting Off, because those are the defaults. You also don’t need to have “texture * constant” written twice. What comes after the comma is the calculation for the alpha channel; if you don’t use the comma, the same calculation happens for all four channels. The _Color property defines a color, that in your current code, will do the same thing as using a “Solid Color” “adjustment layer” in Photoshop, with the multiply blending mode. So that’s a way to “tint” your texture, the exact same as Photoshop (I wasn’t suggesting scripting in Photoshop - I was really just talking about layering and Blend modes.)
You really can think of what you do in Photoshop’s Layers panel as constructing a shader. If you do’t have too many layers, or different blending modes, you can often replicate what you do in Photoshop, in ShaderLab. You just typically don’t need, or want, to do that, because anything static that can be done by Photoshop, before coming into Unity, should. Learn to think of lighting as a multiplied layer, because that’s what is generally going on in other people’s shaders. I don’t know if you already paint like this, but it can be very helpful - I can give you some more tips on this if you need some.
So, here’s what you should do:
- Decide if you need a solid color tint. Not having it will simplify and improve performance, marginally.
- Read this page to see how to get better control over your trees. Not having control over the AlphaTest Cutoff tends to suck. (You need what’s in the second code example.)
- You need to multiply in “primary” somehow. Your shader already binds the vertex colors, with the Bind “color”, color line, so that’s done.
The syntax isn’t important for you to memorize - those brackets can seem a little arbitrary, and although you need them in the right place, for the shader to work, they’re not “artistic intentions”. However, all the actual words and numbers are just things you would use in a “painting app”. It’s important for you to understand what every single one of them means. Again, try editing the shader, yourself. Most of the length of that shader is white space; this can literally be done in less than five seconds if you know what you’re doing, but nobody started off knowing what they were doing, so don’t expect that, with your current understanding. Just make sure, if you don’t completely understand even one thing, you mention it here, so that you can make the art you want to make, and not be limited by not having a clue what’s going on with the shader. 