如何在不增加灰色背景亮度的情况下增加白色的亮度?我有这个光照贴图纹理,它位于地板纹理的顶部,但是当我尝试更多地显示白色三角形白色光时,图像的其余部分变得更加明亮。我是用webgl做的。
我试过了:
//问题是白色太暗了。
vec4 baseColor = texture2D(baseTexture,vUv)* texture2D(lightMapTexture,vUv);
和: vec4 baseColor = mix(texture2D(baseTexture,vUv),texture2D(lightMapTexture,vUv),0.5);
我想要得到的效果是左下图像,其中白色更亮但不影响阴影灰色。
答案 0 :(得分:1)
照明通常通过乘法混合来完成,而不是添加剂混合(如果你在蓝光下照亮红色物体,它应该显示为黑色 - 你的方案会让它看起来是紫色的)。这也有助于阻止你的黑暗区域变亮并保持对比度(照明下的黑色仍然是黑色)。
如果你想过度饱和"您可以尝试通过功率函数来抑制低和中等范围的光,然后通过缩放系数将其缩放,然后将最终的后照明颜色夹在0和1之间。如果您通过此方案过度饱和,那么你会得到剪裁文物。