我正在为我的游戏制作一个灯光系统,我几乎完成了它。 但我有一个颜色固有的问题:我如何正确地混合它们?
我找到并使用的最简单的答案是平均它们的RGB值,但是当它们被平均多次时,结果会趋于灰色。 为了简要解释一下,我使用的方法如下:
// XNA, where there isn't a FromARGB method, and the
// values are given in the constructor.
Color result = new Color(
(C1.R + C2.R) / 2,
(C1.G + C2.G) / 2,
(C1.B + C2.B) / 2
);
但如果我必须在保留最正确值的同时混合许多不同的颜色,我该怎么办?我提出了一个新问题,因为我对颜色知之甚少,不确定不同情况(例如灯光)是否需要不同的方法。 提前感谢您的回复。