This was completely throwing me for a curve. Didn’t know what was going on. Presumed it was me making mistakes… turns out…no… Unity. Again.
There should be popups happening in the Editor UI: “You’ve hit a known bug… here’s the link, we’re planning to fix it… don’t know when.”
I’m using an additive Particle Shader, now, which required jumping through hoops, too, to get working. And has no alpha handling. Need black background on textures instead of using alpha.
Just boggled that it’s all this primitive and requires so much effort and consideration to switch to an additive blend mode.
not saying it is friendly or simple… just trying to explain how i did it. don’t need to install them or compile them just copy an edit one (change blend and name) text file from it and copy that to your project…
now you have a new shader you can use standard sprite shader or the modified blend mode shader you copied
you just have to get the right shader for the version you are using because it changes a lot…
yes it sucks that you cannot just change blend mode without performing this crazy quest but
This was actually super easy to do. If your shader is the only shader in the project it will apply it to the material automatically. Then you just edit the sprite renderer to use that material. I had it running in about 10 minutes - thanks to rakkarage’s code which I shamelessly stole for my additive blending. I had my animation (which is where I actually applied the blend to) showing the blending mode in under 10 minutes. Very cool and thank you for this!
Going back to the original topic, wouldn’t it make sense for Unity to “ship” with at least a basic set of common shaders? Click, select, done. The request for an Additive Blend is quite frequent and also crucial for any game that uses simulated lights, fire, etc.
I’ve seen other threads that say to use on of the the Particles shaders, so at least there’s that.
A multiply/subtractive shader (for dark smoke, etc) would also be useful as a basic core shader.
I just had this same question today. Disappointed that the recommended solution is to hunt down the default shader and edit it. I’ve done it before, but it’s still annoying.
The “Particles/Standard Unlit” shader has blend options right at the top of the inspector, so why can’t we have something similar for the default sprite shader. Seems like a pretty major oversight to me.
One last thing, for anyone stumbling on this thread who doesn’t have the know-how to do modify a shader:
The “Particles/Standard Unlit” shader seems to work for sprites but not for UI. The “Legacy Shaders/Particles/Additive” shader seems to work on both (as far as my minimal testing goes). So, if you don’t want to mess with shaders, you can just right-click in the Project view and select Create/Material, and then change the shader on the new material to one of those. Legacy Shaders are at the very bottom of the shader list.