Я пытаюсь реализовать простой шейдер Фонга, который поддерживает нефизические материалы и текстуры. Несмотря на то, что материал имеет текстуру для каждого компонента света, я все же хочу, чтобы соответствующий коэффициент материала имел какой-то эффект. Я сомневаюсь, как справиться с ними обоими. Должен ли я смешивать, умножать или суммировать их? Прямо сейчас я умножил их:
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;
Это кажется немного мрачным, это правильный способ комбинирования коэффициентов материалов и текстур?