【发布时间】:2018-07-07 08:41:06
【问题描述】:
我正在尝试实现一个简单的 Phong 着色器,它支持非基于物理的材质和纹理。即使材质对每个光分量都有纹理,我仍然希望各自的材质系数产生一些效果。我的疑问是如何处理这两个问题。我应该混合、相乘还是相加?现在我已经将它们相乘了:
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;
好像有点黑,这样结合材质系数和贴图的方式正确吗?
【问题讨论】:
-
没有对错之分,因为它不是基于物理的。选择任何适合您的需求。
标签: opengl glsl shader phong shading