ライトの影のタイプを、ソフト、ハード、エリアから指定します。たとえば、エリアライトはエリアシャドウだけでなく、ハードシャドウも使えます。

このタブにあるパラメータを使って、影の働きを細かく調整します。

影の種類を選ぶのに、別のメニューもあります。同じ名前の項目が一般タブにもあり、同じ機能になっています。

シャドウマップ (ソフト)

実在するオブジェクトは、それが野生の樹木か、部屋に置いた花瓶かに関係なく、多くの方向から多くのライトによって照らされています。その結果、明るく照明された部分と暗い影の部分との間には、必ず中間的な明るさのボケた部分が存在します。Cinema 4Dでは、ソフトシャドウ(いわゆるシャドウマップ)を使うことで、このボケた影を表現できます。シャドウマップとは、ライトからシーンを見た時に、ライトからオブジェクトまでの距離をグレースケールで表した画像です。Cinema 4Dは、レンダリングを始める前にまず全てのシャドウマップを作成し、これを使って、どのオブジェクトが影の部分に入っているかを判断します。

シャドウマップの長所は、計算が速く、影がボケることです。

しかしソフトシャドウには、大量のメモリを必要とし、制約が多く、ボケの幅をうまくコントロールできないという短所もあります。例えば、無限遠ライトにソフトシャドウを組み合わせた場合、シャドウマップの外側には影が描かれません。また、全方向ライトにソフトシャドウを組み合わせた場合、ライトから遠ざかるにつれて影は無制限にボケます。シャドウマップの設定は、必要とするメモリの量や画質に大きく影響するので、慎重に行ってください。

レイトレース (ハード)

レイトレーシングを使うと、ハードシャドウをレンダリングできます。カメラから放射され、オブジェクトにぶつかった光線は、鏡面反射や屈折されると同時に、影を計算するためにライトの方向にも分岐して反射されます。このためソフトシャドウに比べると計算時間が長くなります。

ハードシャドウの長所は、メモリを必要とせず、制約がなく、計算速度もそんなに遅くないことです。しかし、ライトが大きさを持たない「点」であるため、完全にシャープな影が描かれるという特徴があります。これはテクニカルイラストレーションには適していますが、自然な画像を表現したい場合には短所となるでしょう。

エリア

シャドウマップは、レイトレースシャドウよりも自然な影を表現できますが、完全に自然とは言えません。注意深く観察すると、オブジェクトに近い部分と離れた部分で、影のボケ幅が同じであることが分かります。自然な影は、このようにはなりません。オブジェクトに近い部分の影はシャープになり、離れるに従ってボケ幅が大きくなるはずです。エリアシャドウを使うと、このような完全に自然な影を表現できます。

エリアシャドウは基本的にハードシャドウと同じで、レイトレーシングによって計算します。異なるのは、ライトに「大きさ」がある点だけです。この大きさによって自然にボケた影を表現できるわけですが、それにはハードシャドウの計算を何回もくり返す必要があり、計算時間が長くなってしまいます。しかし、ソフトシャドウのような制約はなく、ボケ幅も自由に指定できます。

ただし、非常に計算が重くなるので、「エリアシャドウのサンプル数」の値を適切に下げて下さい。

濃度[0..10000%]

この値は、影の濃さを指定します。この値が100%の場合、光はオブジェクトを透過できず、黒い影が生じます。この値が50%の場合、半分の光はオブジェクトを透過し、影の部分を照明します。この値が0%の場合、全ての光がオブジェクトを透過するので、影は生じません。オブジェクトが半透明な場合は、さらに多くの光がオブジェクトを透過します。また、値は100%以上を入力できます。

カラー

ここで影の色を指定できます。これは周囲からの間接照明をシミュレートする機能です。自然界には、完全に黒い影というものはほとんど存在しません。したがって、影に少し色をつけたほうがより自然に見えるはずです。また、周囲の色に対してコントラストを与えるために、意図的に影の色を変えてもいいでしょう。

透過

このオプションを選択すると、上図のように影の中にオブジェクトの透過色が反映されます(アルファチャンネルによる切り抜きも反映されます)。

「透過」オプションを指定した場合。
「透過」オプションを外した場合。
ソフトシャドウに対して、「透過」オプションを指定すると、より多くのメモリが必要になります。また「全方向」ライトは、上下左右前後の6方向にシャドウマップを生成するので、1方向にしか生成しないスポットライトなどに比べて、6倍のメモリを必要とします。

クリップの設定を適用

このオプションを選択すると、詳細タブで指定したクリップ(ニアクリップ)の設定が、照明の計算と同時に影の計算にも適用されます。つまり、ニアクリップより手前にあるオブジェクトの影が描かれません。

ソフトシャドウ

シャドウマップ

シャドウマップの設定は、ソフトシャドウを選択した場合のみ可能です。影のタイプとしてソフトシャドウを選択した場合、Cinema 4Dはレンダリングの直前に自動的にシャドウマップを作成します。その中には、ライトからある方向に放射された光線がオブジェクトにぶつかるまでの距離が記録されています。したがって、位置Aからライトまでの距離を計算し、シャドウマップに記録されている値と比較すれば、位置Aが他のオブジェクトの影になっているかどうかを判定できます。例えば、もしライトから位置Aまでの距離がシャドウマップの値より短ければ、位置Aの方が他のオブジェクトより手前にあるということですから、ライトに照らされることになります。

ここでは、シャドウマップの大きさ(ピクセル数)を指定します。シャドウマップを小さくすると、ボケてピクセルが目立つ影が描かれます。シャドウマップを大きくすると、シャープでスムーズな影を描けますが、その分必要なメモリの量が多くなります。シャドウマップのデフォルトの大きさは、250x250ピクセルです。シャドウマップの大きさは10,000x10,000ピクセルまで指定できますが、このように大きなシャドウマップを必要とすることはまずありませんし、なるべく使わないことをお薦めします。ソフトシャドウの使用に問題がある場合は、ハードシャドウやエリアシャドウを選択して下さい。

影の境界をシャープにしたい場合は、シャドウマップを大きくするしかありません。影の境界をボカしたい場合は、2つの方法があります。シャドウマップを小さくすると、メモリを必要とせず短時間でボケた影を表現できますが、影の中にピクセルが目立ってしまいます。

「サンプル半径」を大きくすると、スムーズにボケた影を表現できますが、レンダリング時間は増加します。

ライトに小さなシャドウマップを指定し、離れた場所にある球体オブジェクトに影を描かせると、影がボケた正方形になる場合があります。これは、球体の影がシャドウマップの1ピクセルに相当するほど小さくなってしまったために起こる問題です。この場合、サンプル半径を大きくすると影が消えてしまいます。シャドウマップを大きくするしかありません。あるオブジェクトが、シャドウマップの中にどのぐらいの大きさで記録されているかは、エディタビューをライトにリンクしてみるとよく分かります(ライトを選択し、エディタビューでカメラ / 選択したオブジェクトにリンクを選択して下さい)。

シャドウマップの大きさ250x250ピクセル
シャドウマップの大きさ750x750ピクセル

X 解像度[40..10000]

シャドウマップの大きさがプリセットにある値では不適切な場合、X解像度(横)の値を直接指定できます。通常は、X解像度とY解像度の値を同じにして下さい。そうしないと影のボケる量が方向によって変ってしまいます。

Y 解像度[40..10000]

スポットライトの断面を楕円形や長方形にする場合は、それに合わせてY解像度を使いシャドウマップも長方形にして下さい。

必要メモリ:

Cinema 4Dは、選択したライトの放射タイプとシャドウマップの大きさを元に、このライトが必要とするメモリ量を計算し、ここに表示します。これにより、シャドウマップにどれくらいメモリを使っているか分かります。

サンプル半径[1..20]

この値は、ソフトシャドウの計算において、参照するシャドウマップの範囲を指定します。指定できる値の範囲は、1~20ピクセルです。この値を大きくすると、より多くのピクセルが参照され、スムーズな影を表現できますが、その分ボケます。またレンダリング時間も長くなります。この値を小さくすると、シャープな影を表現できますが、影の中にシャドウマップのピクセルが見えてしまいます。ボケ方と画質のバランスを考えて設定してください。

サンプル半径拡張

動くライトは、落ちる影のチラツキを発生させ、正しく動きません。これは、シャドウマップの解像度が固定されていることが原因です。影が正しく動くために、解像度を下げる必要があります。もちろん、解像度が上がるにつれ、シャープな輪郭の影が得られますが、それを補うために大きなサンプル半径の値にする必要があります。これによりレンダリング時間が延びます。

サンプル半径の値を上げすぎないようにするため、サンプル半径拡張の選択メニューが追加されました。サンプル半径を上げてサンプル数をランダムに分散させる機能を有効にするためのものです。これは、ノイズを含んだステップ効果に置き換え、アニメーションで目立たなくなります。

絶対バイアス

通常はこのオプションを選択しておいて下さい。このオプションを外すと、オブジェクトから影までの距離が、オブジェクトからライトまでの距離に依存するようになります。これを相対バイアスと呼びます。

相対バイアスでは、ライトがオブジェクトから離れると、影もオブジェクトから離れていってしまいます。相対バイアスはCinema 4D R5までで使われていた古いモードで、このオプションは互換性を維持する目的で設けられています。

相対バイアス

絶対バイアス[0..+∞m]

ソフトシャドウには原理的な問題があるので、影が始まる位置をオブジェクトの後に少しずらします。このずれを「シャドウバイアス」と呼び、デフォルトの値は1mになっています。しかし、状況によってはこの値を調整して、影の位置を変える必要があるでしょう。

小さなオブジェクトを拡大していくと、下図1のようにオブジェクトの後に光が漏れてしまいます(このオブジェクトは床に密着していますが、影が離れることにより浮いて見えます)。そこで「バイアス」の値を小さくすると、下図2のように光漏れを減らすことができます。しかしバイアスを小さくすると、今度は逆にオブジェクトの手前に影が漏れてしまいます(下図2)。また、さらにバイアスを小さくすると、下図3のように誤差によってオブジェクトの手前(つまりライトに照らされた面)にまで影が描かれるようになります。このような場合はバイアスの値を大きくして下さい。

図 1
図 2
図 3
小さなオブジェクトをカメラでズームする場合、バイアスの値は小さくしなければなりません。オブジェクトと影にギャップがないようにします。もし、オブジェクトが非常に大きく、自己影が出ないようにしたい場合、バイアスの値を上げる必要があります。一般的に、大きさが10,000m以内のオブジェクトに対する適切なバイアスの値は1mです。

シャドウマップのプロジェクトに対する大きさ[-∞..+∞m]

このオプションは、ライトの放射タイプを「無限遠」か「平行」に、影のタイプを「ソフトシャドウ」にしている場合だけ意味を持ちます。無限遠や平行ライトでは、光を放射する面自体が無限に大きいため、全ての光に対してシャドウマップを生成することができません。つまり影を生成できるのは、Z軸を中心としたある範囲だけです。この範囲を、「シャドウマップのシーンに対する大きさ」で指定します。この範囲の外にあるオブジェクトに対しては、一切影が生成されないので注意して下さい。

この範囲はいくらでも大きくできますが、大きくするとどんどん影がボケます。影をシャープにするにはシャドウマップを大きくする必要がありますが、シャドウマップを大きくするとどんどんメモリを消費します。したがって、無限遠や平行ライトにソフトシャドウを適用する場合は、影が必要なエリアを限定するようにシーンやビューを構成して下さい。また、広い範囲に影が必要な場合には、ライトの放射タイプをスポットに変更するか、ハードシャドウに切り替えて下さい。

一般的に、ソフトシャドウに使われるシャドウマップの大きさを小さくし過ぎると、影の中にシャドウマップのピクセルが見えてしまいます。また、シャドウマップの大きさや「シャドウマップのシーンに対する大きさ」の値はアニメートできます。しかしこれらの値をアニメートすると、シーンに対するシャドウマップの大きさが変化し、影のボケ量が変化したり、影の中に見えているシャドウマップのピクセルが流れる、といった問題が生じます。この問題を解決するには2つの方法があります。一つはシャドウマップの大きさや、「シャドウマップのシーンに対する大きさ」の値をアニメートしないこと。もう一つは、シャドウマップの大きさと「サンプル半径」の値を十分に大きくして、シャドウマップのピクセルが見えないようにすることです。

アウトラインシャドウ

このオプションを選択すると、影の輪郭だけが表示されます。

このオプションを使うと、シャドウマップのピクセルが非常に目立ちます。スムーズな輪郭を表現するには、シャドウマップの大きさと「サンプル半径」の値を十分に大きくすることをお勧めします。

高品質

全方向ライトは、内部で6つのシャドウマップを生成します。高い サンプル半径の値が使われていると、各シャドウマップのつなぎ目が発生してしまいます。このオプションを有効にすると、これらのつなぎ目の品質を向上させます。(ただし、レンダリング時間は延びます)

高品質オプションが、左:オフ、右:オン。

シャドウマップを1枚にする

投影角度[0..170°]

ライトの放射タイプを「全方向」にし、影のタイプを「シャドウマップ」に指定した場合にも二つの問題が生じます。一つは前後左右上下方向に6枚のシャドウマップが生成されるため、多くのメモリを必要とし、計算時間も長くなることです。もう一つは、立方体のエッジに当たる部分で各シャドウマップを接続するため、多少のつなぎ目が生じることです。「シャドウマップを1枚にする」オプションを使うと、ある限られた状況では、これらの問題点を解決できます。

このオプションを選択すると、ライトのZ軸方向にシャドウマップが1枚だけ作成されます。そして、Z軸を中心としてシャドウマップを生成する角度を「投影角度」の値で指定します。

エッジをソフトに

このオプションを選択すると、影の境界がソフトに減衰するようになります。これによって、影が突然消滅する不自然さを多少ごまかすことができます。

エリアシャドウ

エリアシャドウの利用は、あなたに時間の余裕が多少ある場合に限って行うことが望ましいでしょう...

そして今回、エリアシャドウの形状が、より正確に調整できるようになりました。これは、エリアシャドウを生成するために使用される光源を、詳細タブ内にある設定を使って定義できるようになったためです。

つまり、エリアシャドウは次の2つの方法によって"調整”することが可能です:

計算精度[0..100%]

最小サンプル数[2..10000]

最大サンプル数[2..10000]

エリアシャドウのクオリティ

計算精度最小サンプル数最大サンプル数のこれら 3つの設定は現在、エリアシャドウのクオリティを調整するために使用することができます。

基本のアルゴリズムは非常に複雑なので、ここでその説明は行いません。ただし、あなたに知っておいてもらいたいことがあります:エリアシャドウのレンダリングには、サンプル数が必要であるということです。サンプル数が多いほど、レンダリングはより均一な仕上がりに(粒子の粗さの程度が低く)なります。そしてまた、レンダリングにかかる時間も長くなります。反対に、サンプル数が少ないほど、レンダリング時間が短くなります。

当然サンプル数に、できるだけ最大の値を入力してシーンをレンダリングすることも可能なのですが、これは意味がないでしょう。なぜなら、シーンを構成するパーツによっては、最小のサンプル数のみを必要とする場合があるため、結果としてシーンをレンダリングする時間が単純に長くなってしまうだけになるからです。

ここで、最小サンプル数最大サンプル数の設定が、役に立つわけです。これによって、必要に応じて大小の適切な値のサンプル数を設定できます(それらの補間を設定することもできます)。

そして計算精度の設定を用いて、最良のレンダリング結果を得るために、どのように(そしてどれだけの)サンプル数を割り当てるかを定義します。処置が必要なほとんどのエリアにおいては、最大サンプル数は最大値に設定するとよいでしょう。

サンプル数の値が高いということは、より多くのサンプルが使用されることを意味するため、つまり計算精度の設定は、処置が必要なエリアに対して最も影響を与える存在となります。処置の必要性が低めのエリアには、最小サンプル数を適用します。

シーンの最適な設定をセットするには、次のステップに従って設定を行ってください。:

  1. シーンにおいて、処置が必要なエリア(粒子が粗いエリア)を探し出す。
  2. 最小サンプル数最大サンプル数に同じ値を入力し、部分レンダリングを使ってシーンをレンダリングする。
  3. 良い結果が得られるまで、最小サンプル数最大サンプル数の値を同等に上げていく。
  4. 最小サンプル数の値を、最大サンプル数の値の25%相当の値に下げる。そして計算精度50%にセットする。
  5. 最後に、満足いく結果を得られるところまで、計算精度の値を上げる。

そして同時に、次の経験則にもご注意ください:

例:

この図において、上半分は計算精度100%にセットされています。ご覧の通り、クオリティが良いとは言えません(粒子が非常に粗い仕上がりになっています)。最大サンプル数の値の設定が低すぎます。

そこで、最大サンプル数の値を上げて、計算精度の値を低くすれば、もっと良い結果が得られます。

次に挙げる図では、2つの最も重要な設定である計算精度最大サンプル数、そしてレンダリング時間の概算のバリエーションを説明しています。これらのレンダリング時間は、あくまでも目安としてご参考ください。使用するライティング効果によって、結果は異なってきます。例えば最大サンプル数の値を2倍にした場合にレンダリング時間がどう変わるのかを調べたいときなどに、この参考例が役に立つでしょう。

上:さまざまな計算精度の値。 下:さまざまな最大サンプル数の値。左上:エリアライトに照らされて、オブジェクトが影を落とす様子。
アンチエイリアスを用いることによって、粒子の粗さを減少させることができます(タイプ: ベスト)。これはまた、レンダリング時間にも影響を及ぼしますので、これが必要であるのであれば、どの程度まで必要なのかを判断する作業を、まず最初に行ったほうが良いでしょう。ベストなアンチエイリアスがどのオブジェクトに影響を及ぼすのかということについては、(レンダリング)タグ対タグのベースにおいて決定することが可能である、ということもどうぞお忘れなく。

制限

エリアシャドウは、PyroClusterの雲と一緒には機能しません。これらはハードシャドウと一緒にレンダリングされます。