ライティングの解説をしたい その5
こんばんは、かすみんです。3DCGにおけるライティングの解説第五弾。モニターの色について考察します。
まず光と関係の深い色についておさらいしてみたいと思います。光の三原色と言われるようにRGB、赤(Red)緑(Green)青(Blue)の三色で色を表現することが多いですね。他の色も3つを混ぜることで再現できます。
インクなどの場合は色を混ぜると暗くなって黒(Black)になります。光は混ぜると白(White)になります。光の場合は加法混色によって色を表現しRGBが光の三原色と呼ばれるのに対し、インクなどは減法混色によって色を表現しシアン(Cyan)マゼンダ(Magenta)イエロー(Yellow)が色の三原色と呼ばれます。
そもそも人が色を感じるのは目に錐体細胞(すいたいさいぼう)があり、それぞれ赤や緑や青の波長に反応するからだ。詳しい話は難しいので、なんとなく色を感知しているセンサーがあるくらいに思ってもらいたい。それを脳で処理し……。他にも明るさに反応する錐体細胞があり、色覚には関与しないものであったり……。
逆に色は反射した光で、吸収されなかった色が見えます。緑の葉は赤と青の光が吸収されたから残った緑を感じるのです。光にはいろんな色が混ざっていると考えることもできますし、実際に混ぜることで色々な色を作ることができます。
色相(Hue)彩度(Saturation)明度(Value)は色の三属性と呼ばれ様々な色を表現したりデータとして記録するときに使われます。HSV色空間と呼ばれるようなものは色相を円にし、0°なら赤、60°で黄色などで表現します。
さて実際モニターではどういった表現がされているだろうか。個別で性能や精度に差があるだろうが、一般的なもので考えてみよう。フルカラーと呼ばれるRGBが各0から255までの256段階(2の8乗 8ビット)で1677万7216色を表している。三色で24ビットだが、データとして扱いやすいように32ビット単位で使われることがあるが、残りの8ビットはダミーデータか透明度(アルファ値)の場合がある。
液晶モニターはLEDなどのバックライトの光をカラーフィルターで色付けしたピクセル単位で構成されていますが、白なら255,255,255で三色が一番明るい時にこの色になります。厳密には明るさの設定や色のバランスで客観的な見え方は変わってくるとは思いますし、無視できない問題ですが、一旦置いておきましょう。
前述したとおり加法混色なので、赤を強くしたいと思ったら赤を255で他を0にしないと白の方へどんどん変わっていきます。建物や服などの色を鮮やかに見せたいが、明るくしたいと思ってライトを強くすると薄くなっていきます。
これは画像編集などの加工をしていて色の変化に気付いたのですが、彩度を思った以上に上げたいとか明るさやコントラストをもっと上げたいと思っていても、データ的にまたはディスプレイの表示的にはない部分があります。これ以上がないという意味で。
レンダリングや撮影前なら明るさを変更したり調整することでレンジの中に収めることができると思います。しかし画像として作られたものは当然白く飛んだ部分や黒くつぶれた部分を元に戻すことはできません。白や黒といった部分も単体だと違いが分かりにくいですが、グラデーションになった時は境目が気になることがあります。
照明などでは無限に明るくしたりできますが、ソフトのカメラやデータ的には超えた分は全て白くなってしまいます。綺麗な白を見せたい時もあるでしょうが、逆に白くなりすぎて質感が全て消えてしまうことがあります。明るさの限界というべきなのでしょうか、適切な露出を考える必要がありそうです。
色に関しても赤ならR255、緑ならG255、青ならB255で彩度の高い色が出ますが、黄色はR255とG255でB000です。二つの色が明るく、単純に赤や緑よりも明るい色になっているのではないかと思ったりもします。モニター側やソフト側で正確な色に制御されている可能性もありますがわかりません。
様々なことを詰め込んでまとまってない気もしますが、色と明るさは切り離せない要素ということです。様々なレベルで考えていると色に関する奥深さは客観的なものから主観的なものまであるのだなと認識させられます。
素材を作った時の色、撮影による色、印刷した時などの色など、環境によって変わってくるかもしれない。そのことを認識しつつもっと色について理解できればと思っています。
最後まで読んでくれてありがとうございます。