我正在寻找一个算法来做RGB值的加色混合。
是否只需将RGB值一起添加到最大256?
(r1,g1,b1) + (r2,g2,b2) = (min(r1+r2,256),min(g1+g2,min(b1+b2,256))
解决方法
这取决于你想要什么,它可以帮助看看不同方法的结果是什么。
如果你想
Red + Black = Red Red + Green = Yellow Red + Green + Blue = White Red + White = White Black + White = White
然后添加一个钳工作(例如min(r1 r2,255))这更像是你参考的灯模型。
如果你想
Red + Black = Dark Red Red + Green = Dark Yellow Red + Green + Blue = Dark Gray Red + White = Pink Black + White = Gray
那么你需要平均值(例如(r1 r2)/ 2)这对于减轻/变暗颜色和创建渐变更好。