Hi, I try to learn coding surface shaders. I have written a couple of simple Cg and openGL shaders so far and I wish to use surface shaders because they behave well on different platforms. I went through the examples, made some modifications, liked the results. Problem is that I have many gaps in my knowledge. In this documentation page says : Great. The meaning of the Alpha is clear. Now, what is the meaning / definition of Albedo, Normal, Emission, Specular, Gloss in this context ? I understand more or less that Albedo = comes from this texture mixed with that texture Normal = comes from the normal map Specular = makes things shine Gloss = makes thing shine too (!) Emission = totally lost I wish to know more, so I can use surface shaders in their full potential. Now, it is clear to me that it is my problem, not Unity's that I have no idea about those things. But I have to ask somewhwere ! I would appreciate any explanations and references regarding these parameters, so I can start using them efficiently. Thanks for your time, -Ippokratis
Albedo is the diffuse reflectance of a surface. It is like _MainTex in most shaders. Normal is of course the normal of the surface at that point. Gloss and Specular control specular exponent (from the Blinn-Phong equation) and brightness, which is just a multiplier on the specular result. I can never remember which is which, though, because their names are completely opaque, to the point where I believe they are mixed up even internally. Emission is light emitted from the surface itself. The colour in emission will be shown at the same brightness regardless of whether the surface is in light or shadow.
Hi, Thanks a lot for the feedback I now understand that Albedo : shades the texture input. Emission : does not shade the texture input. Specular is a measure of roughness for the specular highlights ( fading between the specular highlights center and edges ). Gloss determines how bright the specular highlights will be.
Other way around, I think. Gloss controls the breadth of the specular highlight (high gloss = pin-point highlight, low gloss = broad highlight). Specular controls the strength of the specular highlight (high spec = bright, low spec = dull highlight). Or at least, it should be that way around. Unity seems to swap them then swap them back in side the surface shaders.
(Bookmarked) Thank you! I'm surprised at how hard this was to find. (Maybe I just don't know what to search for)