通常、赤、緑、青で色を作成します。ただし、ユーザーにスクロールホイールで簡単に色を選択してもらいたいため、ユーザーに3つのカラーチャンネルを指定させることはできません。
256 * 256 * 256 にインクリメントできる変数があります。
ただし、ビットシフトを使用してカラーチャネルを取得すると、色が突然「ジャンプ」します。
整数の連続カラー パレットを使用してカラー チャネルを取得するにはどうすればよいですか?
直線的かつ連続的に歩きたい立方体があります。
幸いなことに、反転イメージが連続している必要はありません!
ここを見ると: http://xkcd.com/195/ 2 次元空間を直線的かつ連続的に歩く方法がわかります。この歩行を 3 次元の歩行に変更することは、基本的に難しいことではありません。
000 から 111 としてエンコードされた 8 つの位置を持つ 2x2 キューブがあります。
000 001
010 011
100 101
110 111
これらは立方体の上部と下部のスライスの座標です。
次の順序で説明します。
1 -> 2
|
V
/-- 4 <- 3
|
| 6 -> 7
| ^ |
| | V
\-> 5 8
その結果、「遠い隅」で立方体を終了します。
ここで、立方体のサイズを各次元で 2 倍にするには、同じアルゴリズムで上記の 8 つの角をそれぞれ取得します。
8 層の深さで、256 x 256 x 256 の立方体を連続して歩いています。
実際には、これは悪い考えかもしれませんが、試してみると楽しいかもしれません。:)
位置のビット値には比較的単純なパターンがあります。
000
001
011
010
110
100
101
111
つまり、0102101 は座標で変更されるビットです。
または、別の見方をすると、次元をたどる方法はグレイ コード パターンであるということです。
いくつかの異なる自由度で遊ぶことができるので、直感的な方法は思いつきません。任意の RGB 値ではなく基本色のみが必要な場合は、HSV を使用して色相値をスクロールします。