Doc:JA/2.6/Manual/Lighting/Lights/Light Attenuation
Light Attenuation
(光の減衰)
Description
(解説)
Point(ポイント) と Spot(スポット) 光源のための、光の減衰用の主要コントロールは二つあります。
- 光源の Falloff(減衰) 種類のドロップダウンリスト
- Sphere(球) ボタン
Falloff types
(減衰の種類)
Lin/Quad Weighted
(ウェイトつき線形/二次式)
Lin/Quad Weighted Falloff(線形/二次式ウェイト) 設定が選ばれると表示される二つのスライダー Linear(リニア) と Quadratic(二次式) は、それぞれ減衰曲線の「線形らしさ」と「二次式らしさ」を調整します。
照明減衰のウェイトは二つを混合させることができます(linear と quadratic 減衰タイプ)。
Linear
(リニア/線形)
スライダー入力欄には 0.0 から 1.0 の値が入ります。 Linear(リニア) 欄の値 1.0 と Quadratic(二次式) 欄の値 0.0 の組み合わせは、この光源から届く光の減衰が完全な線形で表せることを意味します。これは、Distance(距離) 欄で指定された距離(単位は Blender Units)において、この光源の強度が元の強度の半分になるということです。
Quadratic(二次式) スライダーが 0.0 に設定されると、完全な線形減衰の特定範囲の減衰計算式は次のようになります:
I = E × (D / (D + L × r))
ここで
I
は計算された光の強度(Intensity)E
は現在の Energy(エネルギー) スライダーの設定D
は現在の Distance(距離) 欄の設定L
は現在の Linear(リニア) スライダーの設定r
は光の強度を計測した場所とランプの距離
Quadratic
(二次式)
このスライダー入力欄には 0.0 から 1.0 までの値が入ります。Quadratic(二次式) 欄の値 1.0 と Linear(リニア) 欄の値 0.0 の組み合わせは、この光源からの光の減衰が完全な二次式で表せることを意味します。
二次式の減衰タイプの照明は、(現実世界の)光の減衰のしかたをより正確に表現します。実際に Lin/Quad Weighted(線形/二次式ウェイト) 用のデフォルト設定は、完全な二次式の減衰です(図「デフォルト設定の Lin/Quad Weighted 減衰を持ったランプ」をご覧ください)。
ここでも光の強度は、ランプから Distance 値だけ離れた場所で半分になります。二次式の減衰と線形の減衰を比べると、強度はセットした Distance より手前までははるかに遅く衰えますが、Distance に到達後ははるかに早く減衰します。
Linear スライダーが 0.0 にセットされると、完全な二次式の減衰の特定範囲での減衰の計算式は次のようになります:
I = E × (D2 / (D2 + Q × r2))
ここで
I
は計算された光の強度(Intensity)E
は現在の Energy(エネルギー) スライダーの設定D
は現在の Distance(距離) 欄の設定Q
は現在の Quad(二次式) スライダーの設定r
は光の強度を計測した場所とランプの距離
Mixing “Linear” and “Quad”
(線形と二次式の混合)
Linear と Quad の両方のスライダーに 0.0 を上回る値が入ると、光の減衰の計算式は次のように変わります:
I = E × (D / (D + L × r)) × (D2 / (D2 + Q × r2))
ここで
I
は計算された光の強度(Intensity)E
は現在の Energy(エネルギー) スライダーの設定D
は現在の Distance(距離) 欄の設定L
は現在の Linear(リニア) スライダーの設定Q
は現在の Quad(二次式) スライダーの設定r
は光の強度を計測した場所とランプの距離
Zeroing both “Linear” and “Quad”
(線形と二次式のゼロ化)
Linear と Quadratic の両方のスライダーに値 0.0 が入ると、光の強度は距離によって減衰しなくなります。これは光が暗くならないことを意味しません。光は暗くなります。ただ、暗くなるのは光の持つエネルギーが広範囲にどんどん遠くまで広がった場合だけです。とは言え、広がった光のエネルギーの合計は同じままです。光の角度も、目に見える光の量に影響します。実際のところ、これは深宇宙の真空空間での光の振る舞いです。
減衰せず衝突の起きたどの場所においても同量の光の強度を持つ光源を作りたいなら、Constant(一定) タイプの Falloff(減衰) のような属性を持つ照明が必要です。
また Linear と Quad のスライダーがどちらも 0.0 なら、上の式で示されるように、Distance 欄は光の減衰に一切影響しなくなります。
Graphical Summary
(グラフによる要約)
下のグラフは線形/二次式減衰の種類をまとめたもので、Sphere(球) オプション(後述)を使う場合と使わない場合の減衰を示しています。
Custom Curve
(カスタムカーブ)
Custom Curve(カスタムカーブ) タイプの照明減衰は非常に柔軟です。
他のほとんどのランプの減衰は、光の強度を最大値で開始し(光源に一番近いとき)、光源からの距離が増すにつれ、光の強度を規定のパターンで下げることで動作します。
カスタムカーブ 照明減衰タイプを使うと新たに Falloff Curve(減衰曲線) と呼ばれるパネルが作られます。この減衰曲線を使うと光の減衰グラフに沿って、特定箇所での(光源から一定距離での)光の強度を変えることができます。
減衰曲線のグラフは二つの軸“Distance(距離)
”と “Intensity(強度)
” を持ちます。
- 距離の軸
- 光源の減衰経路上の、特定箇所での位置を表します。左端は光源の位置、右端は光源の影響が通常は完全に弱まる位置です。「通常は」と言ったのは減衰曲線は必要なら正反対を行うように変えられるからです。
- 強度軸
- 光源の減衰経路上の、特定箇所での強度を表します。高い強度は強度軸が高くなり、一方低い強度の光は強度軸上低くなることで表されます。
減衰曲線の形状グラフを変えるのは簡単です。グラフの変更したい部分を LMB クリックして好きな場所にドラッグするだけです。小さな黒点のハンドルの上か近くをクリックすると色が白に変わり、このハンドルがいま選択されていることを表します。このハンドルをドラッグして新たな位置に動かすことができます。ハンドルの近くでないところをクリックすれば、クリックした箇所にハンドルが作られ、好きな場所にドラッグできます。また Ctrl キーを押しながら LMB クリックすると、グラフの特定箇所にハンドルを作ることができます(付近に既存ハンドルがあっても新規作成します)。
下の例(デフォルトの減衰曲線のグラフ)では、グラフは、光の強度が最大値(光に近い側)で始まり、右に動くにつれて(光源から遠い側)線形に減衰していることを示しています。
光の減衰グラフを光源から離れるほど強くしたい場合は、次のようにグラフを変えることができます:
もちろん減衰グラフを反転させるような簡単な変更に限られることはなく、ほぼどんなグラフも作れます。
次の図は別の形をした減衰曲線のグラフと、そのレンダリング結果です:
Inverse Square
(逆二乗式)
この照明減衰タイプは、 Distance 値で拡大縮小された逆二乗式に従って強度を減衰させます。逆二乗式はより鮮明で現実味のある減衰で、卓上ランプや街灯用に役立ちます。これは昔の Quad オプションに似ていますが、少し変更があります(新しい Lin/Quad Weighted オプションの Linear が 0.0、Quad が 1.0 になる点です)。
Inverse Linear
(逆線形)
この照明減衰タイプは Dist 値で拡大縮小した線形に従って強度を減衰させます。これはデフォルト設定で以前のバージョンの Blender とほぼ同じ振る舞いをします(違うのは Quad スイッチがオンで、その結果新しい Lin/Quad Weighted オプションの Linear が 1.0 に、Quad が 0.0 になることです)。物理的に正しくはありませんが、照らしやすくなります。
Constant
(一定)
この照明減衰タイプは距離によって強度を減衰させません。これは太陽や空のような、非常に距離が離れていて減衰が目立たない、遠い光源用に便利です。Sun(サン) と Hemi(ヘミ) ランプは常に一定の減衰を持ちます。
Sphere
(球)
Sphere(球) オプションは Point(ポイント) または Spot(スポット) ランプの照射範囲に制限をかけます。つまりランプから Distance 欄で指定された距離(単位は Blender Units)に一度達すると、照射が完全に止まります。
Sphere オプションを有効にすると破線の球が光源の周りに現れ、光の強度が無効になる境界点を示します。
Sphere オプションは選ばれた減衰の原理(それが何であれ)に項をひとつ付け加えます:
r < D ならば I’ = I × (D - r) / D; それ以外は 0
ここで:
I’
必須の光の強度です(Sphere オプションが有効なとき)I
は選ばれた減衰原理で計算された光の強度です(Sphere オプションを使わないとき)。D
は現在の Distance 欄の設定です。r
は光の強度を測定した場所とランプの距離です。
Lin/Quad Weighted 減衰オプションの説明の終わりにある、グラフをご覧ください。
Examples
(例)
Distance
(距離)
この例では ポイントランプ は平面のグループの非常に近くに置かれています。このため前、中央、後ろの平面への光がより著しく影響されます。図「様々な Distance 設定」を見てください。Distance が増えるほどだんだんと多くのオブジェクトが徐々に明るくなります。
様々な Distance 設定(影は無効)。 |
Distance(距離) パラメータは光の弱まる場所を操作します。デフォルトでは線形の比率で、光の元の強さからその半分まで弱まります。この値を増減するたびに、この「半減衰」の発生する場所を変えることになります。Distance を球の表面と考えると、この表面は光の強さが全方向に、弱まって半分になった場所です。なお光の強さは Distance を越えても減衰し続けます。Distance はただ、光のエネルギーの半分が弱まる場所を指しているだけです。
図「Distance: 1000」では一番遠くにあるオブジェクトが非常に明るいことに注目してください。これは減衰がはるか遠くに延ばされたからで、最後の数オブジェクトに当たるときには光が非常に強いということです。光の強さが元の強さの半分まで弱まることは 1000 BU に遠ざかるまでありません。
これを、減衰がすぐに起き、遠いオブジェクトがほとんど照らされていない図「Distance: 10」と比べてみてください。光の強さは10番目のオブジェクトに達する時には半分まで衰えています。
最初の数枚の平面がなぜ薄暗いのか不思議に思いませんでしたか? 光と、オブジェクト表面の法線が成す角が斜めに近づいているからです。これは Point(ポイント) ランプオブジェクトの特性です。光源を無限遠に動かすことで、Sun(サン) ランプの特性に近づけるかもしれません。
Inverse Square
(逆二乗式)
Inverse Square(逆二乗式) は光の強度を非線型の比率で、厳密には二次式の比率で減衰させます。Inverse Square の特性は、光の強さが非常に遅く減衰し始めますが、続いて非常に敏速に減衰し始めることです。図「Inverse Square を選択」でこの様子を見ることができます。
Inverse Square を選択(Distance に指定値をセット) |
大まかにいえば Inverse Square が選択されると、Distance 値は光が速く減衰し始める場所を指し示します。詳しくは 光の減衰の解説を ご覧ください。
図「Inverse Square with 10」では、光の強度はとても速く減衰し、最後の数オブジェクトは照らされてもいません。
図「Inverse Square with 100」と「Inverse Square with 1000」はどちらもほとんど同じに見えますが、これは Distance が一番遠くのオブジェクトの距離である約 40 BU を超えているからです。このためすべてのオブジェクトがほぼ最高の強度の光を受けています。
上のように、最初の数オブジェクトはそれより奥のものより暗く見えますが、これは光源に非常に近いためです。オブジェクト表面の明るさは、オブジェクトの表面法線とランプから届く光線の成す角度にもとづいていることを忘れないでください。
つまり表面の明るさを操作するものが少なくとも二つあるということです。光の強度と、光源と表面法線の成す角度です。
Sphere
(球)
Sphere(球) は光の強度が、選択した照明の減衰に関わらず Distance(距離) を超えると無効になることを示します。図「クリッピング球」は Sphere を有効にし Distance を 10 にした設定例(の側面図)です。
球の向こう側にあるオブジェクトは、ランプから光を一切受け取りません。
Distance(距離) 欄は照明の光線が無効になる位置と強度の減衰設定の両方を表すようになります。なお球の位置で急に切り替わるわけではありません。光の減衰は進行します(詳細は上記 Sphere オプション と 光の減衰 をご覧ください)。
指定距離で Sphere を有効化、Inverse Linear の光減衰 |
図「Sphere with 10」では、クリッピング球の半径は 10 BU で、これは光の強度が距離 10 BU ごとに操作されるということです。線形の減衰を使うと、最初のオブジェクトにたどり着く前であっても光の強度は非常に低い値に減衰します。
図「Sphere with 20」では、クリッピング球の半径が今度は 20 BU で、光の一部は中央のオブジェクトに達しています。
図「Sphere with 40」では、クリッピング球の半径は 40 BU で、これは最後のオブジェクトを超えています。しかし光が最後の数オブジェクトに達していないのは、強度がほぼ 0 に減衰したからです。
Hints
(ヒント)
ランプ の光が影を作らないように設定すると、光は壁や同種のものを貫通して照らします。窓の外から見える炎やろうそくで照らされた屋内装飾のような素敵な効果を作りあげるなら、Sphere(球) オプションは必須です。Distance(距離) 値を慎重に調整することで、暖かな火の光が部屋の中だけで発せられ、外では冷たい月の光が照らすようなことができます。後者は Sun(サン) か Hemi(ヘミ) 照明、またはその両方を使って作ることができます。