 #ifdef USE_ROUGHNESS_MAP
     uniform sampler2D uRoughnessMap; //assumes sRGB color, not linear
     float getRoughness() {
-        return texture2D(uRoughnessMap, vTexCoord0).r;
+        return texture2D(uRoughnessMap, vTexCoord0).r + 0.01;
     }
 #else
     uniform float uRoughness;
     float getRoughness() {
-        return uRoughness;
+        return uRoughness + 0.01;
     }
 #endif
 

            vec3 brdf = nominator / denominator;

            vec3 lightColor = toLinear(light.color.rgb);
            lightColor *= light.color.a;
            vec3 light = NdotL * lightColor * illuminated;
            directDiffuse += kD * baseColor / PI * light;
            directSpecular += brdf * light;
        }

            vec3 kD = vec3(1.0) - kS;

            kD *= 1.0 - metallic;

            float NDF = GGX(N, H, roughness);

            float G = GeometrySmith(N, V, L, roughness);
