Como misturar cores "naturalmente" com C #?
Eu tenho que misturar algumas cores de uma maneira natural. Isso significa
blue + yellow = green
blue + red = purple
E assim por diante. Eu tenho as cores como valores RGB. Quando tento misturá-los, obtive os resultados "RGB" certos, como
green + red = yellow
yellow + blue = white
Mas não os resultados corretos de "tinta úmida natural". Alguma boa idéia de como misturar RGB de maneira natural?
Seria ótimo se alguém soubesse uma solução dentro doMicrosoft.Xna.Framework.Graphics
namespace, mas uma solução genérica também ajudaria :)
@Jay Bazuzi:
Poste um exemplo de código que mostre o que você está tentando fazer.
Claro - esta é a minha função para misturar as duas cores 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));
}
O que eu li até agora neste tópico é muito promissor - vou converter C1 e C2 em Lab *, misture-os - converta-o novamente em RGB e retorne essa cor.