You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The version and platform I'm using doesn't pertain here, as this is a problem general to a lot of software.
Probably as an artifact of treating zero as a substitute for invalid, not a number, infinity or whatever result you want to assign to n / 0, gray colors are treated as reds in hue operations. There are certain cases where this is probably intended, such as HSV+ and HSL+ hue adjustments. There are other cases, as in the color picker, where this is avoided - when a color's saturation is dragged to zero, its hue is preserved for a time.
In hue gradients it leads to results like this
Green and cyan are most adversely impacted, as they are furthest away from red on the color wheel (depending on which color wheel you use, the complement of red varies).
You could argue that this is conventional: it is how many other software packages handle hue gradients. I tested GIMP, Krita, Blender. I think it would make more sense to default to an sRGB gradient in cases where either the origin or the destination is desaturated. Think for example of a case where a gradient for a metallic surface is being created.
Sorting a gradient like this by hue
gives this result
Ideally, the grays would be clumped together before any of the other hues.
The text was updated successfully, but these errors were encountered:
behreajj
added a commit
to behreajj/aseprite
that referenced
this issue
Aug 28, 2021
Removes switch case with fall through. Removes nested switch cases. Refactors color sorting method to 1. push zero alpha colors to the front of the palette; 2. resort to value as a criterion for gray colors; 3. use saturation and value as back up comparisons for each other for equivalent values; 4. approximate gamma-to-linear when perceptual lightness is chosen.
Partial fix for aseprite#2901.
Removes switch case with fall through. Removes nested switch
cases. Refactors color sorting method to 1. push zero alpha colors to
the front of the palette; 2. resort to value as a criterion for gray
colors; 3. use saturation and value as back up comparisons for each
other for equivalent values; 4. approximate gamma-to-linear when
perceptual lightness is chosen.
Partial fix for #2901.
Hello,
The version and platform I'm using doesn't pertain here, as this is a problem general to a lot of software.
Probably as an artifact of treating zero as a substitute for invalid, not a number, infinity or whatever result you want to assign to n / 0, gray colors are treated as reds in hue operations. There are certain cases where this is probably intended, such as HSV+ and HSL+ hue adjustments. There are other cases, as in the color picker, where this is avoided - when a color's saturation is dragged to zero, its hue is preserved for a time.
In hue gradients it leads to results like this
Green and cyan are most adversely impacted, as they are furthest away from red on the color wheel (depending on which color wheel you use, the complement of red varies).
You could argue that this is conventional: it is how many other software packages handle hue gradients. I tested GIMP, Krita, Blender. I think it would make more sense to default to an sRGB gradient in cases where either the origin or the destination is desaturated. Think for example of a case where a gradient for a metallic surface is being created.
Sorting a gradient like this by hue
gives this result
Ideally, the grays would be clumped together before any of the other hues.
The text was updated successfully, but these errors were encountered: