Fix #36882: cycles gamma node not working with glsl materials.

This commit is contained in:
2013-09-30 12:11:27 +00:00
parent 31e6181187
commit ae25238f41
2 changed files with 20 additions and 0 deletions

View File

@@ -2134,6 +2134,20 @@ void node_fresnel(float ior, vec3 N, vec3 I, out float result)
result = fresnel_dielectric(I, N, (gl_FrontFacing)? eta: 1.0/eta);
}
/* gamma */
void node_gamma(vec4 col, float gamma, out vec4 outcol)
{
outcol = col;
if(col.r > 0.0)
outcol.r = compatible_pow(col.r, gamma);
if(col.g > 0.0)
outcol.g = compatible_pow(col.g, gamma);
if(col.b > 0.0)
outcol.b = compatible_pow(col.b, gamma);
}
/* geometry */
void node_attribute(vec3 attr_uv, out vec4 outcol, out vec3 outvec, out float outf)