- Home /
Surface Shader - Emission
I would like to know more about the Emission in the surface Output.
struct SurfaceOutput {
half3 Albedo;
half3 Normal;
half3 Emission;
half Specular;
half Gloss;
half Alpha;
};
When you write your own SurfaceOutput, you can't delete the Emission Output. When you write to the Emission output, you have no control over its application.
How is the Emission applied, is it a simple Add ? Is it possible to control its application ?
Answer by AlkisFortuneFish · May 23, 2014 at 09:45 AM
Emission is additive,
so if you do not want any emission just set it to 0 and it will have no effect.
Edit: Actually, if you set it to anything, even 0, the surface shader compiler inserts its addition to the final colour. While the GLSL compiler will probably happily discard the addition of a 0 literal, leaving it unset will not insert that at all to start with, which is probably what you want. You can verify this by reading the compiled shader source.
Your answer
Follow this Question
Related Questions
Material doesn't have a color property '_Color' 4 Answers
Changing Emission Scale UI with Script 0 Answers
Unity HDRP, Objects not using emission 0 Answers