Как смешать цвета «естественно» с C #?

Я должен смешать некоторые цвета естественным образом. Это означает

blue + yellow = green 
blue + red = purple

И так далее. Я получил цвета как RGB-значения. Когда я пытаюсь их смешать, у меня получаются правильные "RGB" результаты, такие как

green + red = yellow
yellow + blue = white

Но не правильные "натурально-мокрые краски" - результаты. Любая хорошая идея, как смешать RGB естественным образом?

Было бы здорово, если бы кто-то знал решение в рамкахMicrosoft.Xna.Framework.Graphics пространство имен, но общее решение также поможет :)

@ Джей Базузи:

Пожалуйста, отправьте пример кода, который показывает, что вы пытаетесь сделать.

Конечно - это моя функция для смешивания двух цветов RGB.

public Color colorMixer(Color c1, Color c2)
{

    int _r = Math.Min((c1.R + c2.R),255);
    int _g = Math.Min((c1.G + c2.G),255);
    int _b = Math.Min((c1.B + c2.B),255);

    return new Color(Convert.ToByte(_r),
                     Convert.ToByte(_g),
                     Convert.ToByte(_b));
}

То, что я прочитал до сих пор в этой теме, очень многообещающе - я преобразую C1 и C2 в Lab *, смешайте их - конвертируйте обратно в RGB и верните этот цвет.

Ответы на вопрос(0)

Ваш ответ на вопрос