セルフシャドウ

セルフシャドウとは、影を落とす技法のことです。
セルフシャドウを使うと、モデルの影を、自身および他のモデルに落とすことができます。



セルフシャドウで影を落とすためには、影になっているかどうかを判断することが必要になります。
この判断は、大雑把に言うと以下のような仕組みで行われます。
(分かりやすいよう、内容として正確ではない部分もあります。ご了承ください)

1. 前提

ライトとカメラは下図のような位置にあると思ってください。

2. ライトから写真を撮る

最初に、ライトから見た写真を撮ります。
その写真には、ライトからの距離を入れておきます。この例では大雑把に、床がライトから距離100、ミクさんはライトに近いので距離90とします。

ライトから見たときの写真



3. カメラから写真を撮る

次に、カメラから見た写真を撮ります。
このとき、カメラに写った場所からライトまでの距離を計算します。
この"ライトまでの距離"というのが重要ポイントです。

すると、ある部分の床は、前に測った距離90よりも大きい距離100と計算されます。
つまり、ライトから見たら、何かにさえぎられているのです。
この部分を、影と判断することになります。

カメラからの写真


そのため、距離の差が小さい部分は、影の判断が非常に難しくなります
この影の判断が難しい部分は、浮動小数点の誤差によりマッハバンドと呼ばれる現象が出る場合があります。


これは、ライトの位置を調整したりすることで、ある程度抑えることができます。
ライト位置を面に垂直に当てれば当てるほど、距離がはっきりするためです。


■セルフシャドウバッファサイズとは

MMMにはセルフシャドウバッファサイズというパラメータがあります。
これは、最初にライトから撮る写真の大きさ、つまり細かさとほぼイコールです。
写真の解像度のようなものです。

つまり、写真が細かければ、影かどうかの判断も、細かくすることができます。

ライトから見たときの写真


■距離倍率とは

MMMには距離倍率というパラメータがあります。
これは、最初にライトから撮る写真の距離のことを指します。

この距離が近ければ近いほど、写真が細かくなりますが、写真に写る範囲が狭くなります。
なので、被写体がズームされている場合は、影の範囲が狭くても大丈夫なので、距離を近く、
被写体が遠い場合は、影の範囲を広くするために距離を遠くすると大体うまくいきます。

ライトから見たときの写真