107Fermer109
ZerosquareLe 01/05/2012 à 13:45
bearbecue > bon je me disais bien qu'il y avait un truc louche tongue :

Imaginons que tu fasse un blend additif d'un truc qui n'émet pas de lumière, donc Y=0, U=0 et V=0. Normalement ça ne doit avoir aucun effet. Mais avec la méthode du gars, Y ne change pas, mais U et V sont divisés par deux, donc la couleur cible est désaturée de 50% à chaque fois triso

r_cible += r_source; g_cible += g_source; b_cible += b_source; m = max(r_cible, g_cible, b_cible); if (m > 1) { r_cible /= m; g_cible /= m; b_cible /= m; }En fait, la méthode "propre" que j'imagine pour faire du blend additif avec saturation en RGB, c'est (toutes les composantes sont en flottant dans l'intervalle [0,1]) : comme ça tu préserves la proportionnalité des composantes RGB (donc la teinte et la saturation) sans sortir du cube [0,1]3. Et pareil pour le YUV.