I'm trying to implement a simple Phong shader that supports non-physically-based materials and textures. Even though the material has a texture for each light component I still want the respective material coefficient to have some effect. My doubt is how to handle both of them. Should I mix, multiply or sum them? Right now I've multiplied them:
ambient = material.ambient_color * light.ambient * texture_ambient;
diffuse = material.diffuse_color * light.diffuse * diffuse_strength * texture_diffuse;
specular = material.specular_color * light.specular * specular_strength * texture_specular;
It seems kinda dark, is this the correct way to combine material coefficients and textures?