Shader中颜色的加法和乘法的区别

 

 

371b1aa6e074468ab47f1407fcd41302

 

最近在抽空复习图形学,我一开始没注意到环境光、漫反射、镜面反射的处理方式是通过向量加法,即ambient + diffuse + specular

直到后来研究多光源时,才发现不同光源的最终光照值也是通过向量加法计算的。这时我才突然想到,之前的颜色向量相乘和颜色向量相加有什么区别呢?

经过一番google搜索,在知乎上找到了些答案

简单来说:

当两个颜色相乘时,表示的是两种颜色的叠加效果

而颜色相加则是为了增强光源的亮度效果

从最终计算结果来看,乘法产生的值通常较小,会相互抵消一些原有的颜色

而加法的值会向1靠近,即向白色方向靠近,这意味着光照效果更亮

posted @ 2026-01-19 23:06  pipicfan  阅读(1)  评论(0)    收藏  举报