Specular Highlights of the Architectual (mia) Material
Posted: 10 Dec 2014, 15:10
something that gave me a lot of troubles in the past was the way the mia material handled specular reflections.
i always had the feeling that they where too "soft" in comparison with the raytraced reflections.
on top of that, they sometimes seemed to be too dark.
i just recently investigated the issue by comparing the specular reflections at different angles with the raytraced reflections and both the speculars and raytraced reflections of the mila material.
here is what i found out:
1. specular reflections of the mia shader appear to be too soft.
for example: if you want to mimic the results of a glossiness of 0.3 for raytraced reflections you would have to put the glossiness at around 0.75 for the specular reflections (wich is of course impossible within a mia shader since they share the same parameter)
2. the way that the intensity of the specular reflections is handled by the mia material seems to be bugged.
if the specular reflection is on a surface that your looking at from high angel between 90 and 60 degrees it looks fine compared to the raytraced reflections of the architectual shader and both the spec and raytraced reflections of the mila shader. But the lower the angel gets, the darker the specular reflections of the mia material become.
i measured that
at 90 -40 Degrees the "highligt vs reflection" value needs to 1
at 20 Degrees it should be 3
at 10 Degrees : 5
at 5 Degrees around 8
by default the spec of the mia material has a differen appearence than the one of the mila shader or the phong shader) so those values are just rough approximations.
3. the "dark spec at low angel" problem is actally worse if you use the default reflection and slightly better if you only use the "base reflection".
Workaround:
one could use a combination af two architectual shaders with different settings for the glossiness.
one arch mat only handles the raytraced reflections and is plugged into the "additional color" node of the other shader witch does all the rest including the specular reflections. the "highlight vs reflection" factor of this main shader would be set with an "incidence" node to get proper values for low angles. this main shader uses only the "base" reflecion.
i attached a compund that seems to do the trick. i have not yet tested it extensively so there still might be some issues. the compund uses the advanced architectual material so you might need that too in order for it to work.
i always had the feeling that they where too "soft" in comparison with the raytraced reflections.
on top of that, they sometimes seemed to be too dark.
i just recently investigated the issue by comparing the specular reflections at different angles with the raytraced reflections and both the speculars and raytraced reflections of the mila material.
here is what i found out:
1. specular reflections of the mia shader appear to be too soft.
for example: if you want to mimic the results of a glossiness of 0.3 for raytraced reflections you would have to put the glossiness at around 0.75 for the specular reflections (wich is of course impossible within a mia shader since they share the same parameter)
2. the way that the intensity of the specular reflections is handled by the mia material seems to be bugged.
if the specular reflection is on a surface that your looking at from high angel between 90 and 60 degrees it looks fine compared to the raytraced reflections of the architectual shader and both the spec and raytraced reflections of the mila shader. But the lower the angel gets, the darker the specular reflections of the mia material become.
i measured that
at 90 -40 Degrees the "highligt vs reflection" value needs to 1
at 20 Degrees it should be 3
at 10 Degrees : 5
at 5 Degrees around 8
by default the spec of the mia material has a differen appearence than the one of the mila shader or the phong shader) so those values are just rough approximations.
3. the "dark spec at low angel" problem is actally worse if you use the default reflection and slightly better if you only use the "base reflection".
Workaround:
one could use a combination af two architectual shaders with different settings for the glossiness.
one arch mat only handles the raytraced reflections and is plugged into the "additional color" node of the other shader witch does all the rest including the specular reflections. the "highlight vs reflection" factor of this main shader would be set with an "incidence" node to get proper values for low angles. this main shader uses only the "base" reflecion.
i attached a compund that seems to do the trick. i have not yet tested it extensively so there still might be some issues. the compund uses the advanced architectual material so you might need that too in order for it to work.