1 Reply Latest reply on Oct 16, 2015 12:49 PM by allan_intel

    GLSL pow method broken in driver?


      Seems like the pow method in GLSL (version 400 core) is broken in this Intel HD Graphics driver release.

      For instance we had to fix our point light attenuation code using the following expression:


      clamp(NoL * pow((1.0 - (length(Delta) / (fRadius))), 3.0), 0.0, 1.0);




      float distAttenuation = (1.0 - (length(Delta) / (fRadius)));

      float Att= clamp(NoL * distAttenuation*distAttenuation*distAttenuation, 0.f, 1.f);

      Now everything works again as expected, but of course this workaround isn't applicable for situations with variable or higher exponents.


      Just wanted to give everybody a heads up as this might affect a lot of OpenGL implementations!