Color palette support?

Here’s a quick math only hack I came up with. The idea is to stretch out the yellow area using a smooth function like sin(), taking only a quarter of the waveform. Notice that green is usually at 1/3, is now right in the middle. Both teals and purples are compressed to favor orange/yellows.

  h = h % 1 //make sure h is a value between 0 and 1, or this doesn't work
  h2 = h * sin(h * PI * .5)

Here’s the regular HSV next to this:
mod hsv

Here’s another variant that stretches out red quite a bit, compressing the distance between green and blue. This uses a full half wave, so it eases in and out and has a wide band of purples and orange/yellow.

h3 = wave(h/2 + .75)

mod2 hsv

1 Like