             //https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#acknowledgments AppendixB
             f_diffuse += intensity * angularInfo.NdotL *  BRDF_lambertian(materialInfo.f0, materialInfo.f90, materialInfo.albedoColor, angularInfo.VdotH);
 
-            #ifdef MATERIAL_ANISOTROPIC
+            #ifdef MATERIAL_ANISOTROPY
             f_specular += intensity * angularInfo.NdotL * BRDF_specularAnisotropicGGX(materialInfo.f0, materialInfo.f90, materialInfo.alphaRoughness,
                 angularInfo.VdotH, angularInfo.NdotL, angularInfo.NdotV, angularInfo.NdotH,
-                BdotV, TdotV, TdotL, BdotL, TdotH, BdotH, materialInfo.anisotropy);
+                BdotV, TdotV, TdotL, BdotL, TdotH, BdotH, u_AnisotropyFactor);
             #else
             f_specular += intensity * angularInfo.NdotL * BRDF_specularGGX(materialInfo.f0, materialInfo.f90, materialInfo.alphaRoughness, angularInfo.VdotH, angularInfo.NdotL, angularInfo.NdotV, angularInfo.NdotH);
             #endif

// Specular
uniform float u_MetallicRoughnessSpecularFactor;

// Subsurface
uniform float u_SubsurfaceScale;
uniform float u_SubsurfaceDistortion;

    materialInfo.f90 = vec3(clamp(reflectance * 50.0, 0.0, 1.0));

    vec3 normal = getNormal(false);
    vec3 tangent = normalize(v_TBN[0].xyz);
    vec3 bitangent = normalize(v_TBN[1].xyz);
    vec3 view = normalize(u_Camera - v_Position);

    float TdotV = dot(tangent, view);
    float BdotV = dot(bitangent, view);

    materialInfo.normal = normal;

