I'm getting the following weird specular light:
[attachment=17112:weird_specular.png]
Here is the light pixel shader (Directional light):
float4 PS( VS_OUTPUT IN ) : COLOR
{
float3 lightDir = -lightDirection;
float3 viewDir = cameraPos - IN.worldPos;
float3 halfVector = normalize(normalize(lightDir) + normalize(viewDir));
float3 n = normalize(IN.normal);
float3 h = normalize(halfVector);
float3 l = normalize(lightDir);
float nDotL = saturate(dot(n, l)) + materialAmbient;
float nDotH = saturate(dot(n, h));
float power = (nDotL == 0.0f) ? 0.0f : pow(nDotH, materialPower);
float3 diffuse = lightDiffuse * materialDiffuse * nDotL;
float3 specular = lightSpecular * power;
float3 texDiffuse = tex2D(colorMap, IN.UV).rgb;
return float4(texDiffuse * globalAmbient * (diffuse + specular), 1.0);
}