模様理論

ハーフチャオの見た目の大きな割合を占める「模様」。これがどのように作られているか考えてみましょう。

光の三原色

三原色の図

人間の目は、色を三つの原色に分けて認識していると言われています。
赤(Red)、緑(Green)、青(Blue)……これを光の三原色と言います。略してRGBです。
この三つの光をバランスを変えて混ぜ合わせることによって、人間が認識できる全ての色を作り出すことができます。

色を数値化する

コンピュータの内部では、色を数値化して扱っています。
先ほど述べたRGBの三色の光の強さを数字にしてやれば、あらゆる色を数値によって表すことができます。
例えば、それぞれの光の最大の強さを1、最小を0とすると、代表的な色は、以下のように表すことができます。

赤:[R, G, B] = [1, 0, 0]
緑:[R, G, B] = [0, 1, 0]
黄:[R, G, B] = [1, 1, 0]
白:[R, G, B] = [1, 1, 1]
黒:[R, G, B] = [0, 0, 0]

RとGを最大にすると黄色になる、というのが、初めのうちは理解しづらいかもしれません。
絵の具で赤と緑を混ぜると、普通は茶色になりますからね。でも、これは絵の具じゃなくて光を混ぜるので、ちょっとルールが変わるんです。
そういうものだと思ってください。

RGBによる色の表現に慣れ親しんでもらうため、おもちゃを作りました。
下の入力欄にいろいろな数字をいれると、その数字が表す色が表示されます。
個人的には、茶色を作れるようになったら一人前だと思います。

[R, G, B] = [, , ]

色を計算する

さて、せっかく色を数字で表せるようになったので、色の足し算や引き算をやってみたいと思います。
と言っても簡単なことで、RならRの、GならGの数字同士をそれぞれ足したり引いたりしてやるだけです。
[0.8, 0.6, 0.4] + [0.2, 0.1, 0.3] = [1.0, 0.7, 0.7]
[0.8, 0.6, 0.4] - [0.2, 0.1, 0.3] = [0.8, 0.5, 0.1]
ベクトル計算を知っている人がいたら、それと同じだと思っていただいて構いません。

注意しなければならないのは、光の強さは必ず0以上1以下であるということです。
[0.8, 0.9, 1.0] + [0.8, 0.9, 1.0] = [1, 1, 1]
[0.1, 0.2, 0.3] - [0.8, 0.9, 1.0] = [0, 0, 0]

次に、かけ算をやってみます。先ほどと同じく、これも要素ごとにかけていってやるだけです。
[0.2, 0.5, 1.0] × [0.5, 0.4, 0.3] = [0.1, 0.2, 0.3]
こちらは、ベクトルのかけ算とは、少しやり方が違いますね。

割り算はありません!

模様パターンの色

さて、いよいよここからが本題です。
チャオの模様は、地肌に対して「特定の色を乗算」しているのではないかと考えられています。

白ハーフNS 赤ハーフNS 緑ハーフNS 青ハーフNS

「模様の色」が最もダイレクトに現れているのが白ハーフです。
赤ハーフ、緑ハーフ、青ハーフは、この白ハーフの模様を地肌に対して乗算したものになっています。
実際に計算して、確かめてみましょう。

頭頂部のV字

赤ハーフ:赤[1, 0, 0] × 水色[0, 1, 1] = 黒[0,0,0]
緑ハーフ:緑[0, 1, 0] × 水色[0, 1, 1] = 緑[0,1,0]
青ハーフ:青[0, 0, 1] × 水色[0, 1, 1] = 黒[0,0,1]

手足の先端部分

赤ハーフ:赤[1, 0, 0] × 黃色[1, 1, 0] = 赤[1,0,0]
緑ハーフ:緑[0, 1, 0] × 黃色[1, 1, 0] = 緑[0,1,0]
青ハーフ:青[0, 0, 1] × 黃色[1, 1, 0] = 黒[0,0,0]

白ハーフで黄緑色の部分

赤ハーフ:赤[1, 0, 0] × 黄緑[0.5, 1, 0] = 暗い赤[0.5,0,0]
緑ハーフ:緑[0, 1, 0] × 黄緑[0.5, 1, 0] = 緑[0,1,0]
青ハーフ:青[0, 0, 1] × 黄緑[0.5, 1, 0] = 黒[0,0,0]

このように、白ハーフの模様を地肌に乗算するだけで、簡単に他のハーフチャオの模様を推測することができます。