3DMax
3dsMAX逆引き辞典

影が割れる。これを除去するには?

キャストシャドウの輪郭が乱れるなら、考えられる原因は次の通り。

  1. SpotlightのFall offが大きすぎる。
  2. Shadow Map ParamsのSizeが小さい。
  3. Shadow Mapの限界
  4. ReyTraced Shadowの限界

影が割れている

影のジャギーは、光源にSpotlight、影のレンダリングにshasow mapを使った時に出やすい。光源のShasow Map Params.のSample Rangeを大きくすればある程度のジャギーはとれるが、おそらくそれは望まない結果となるだろう。以下の説明は、光源がSpotlightで、影のレンダリングがshadow mapであるときの対策。

1.SpotlightのFall off
まず、「Spotlight Prams」ロールアウトのFall offを小さくしてみる。Fall offの範囲を、影をつけたいオブジェクトをぎりぎり照らす範囲にすると通常、キャストシャドウのジャギーは消える。

Fall offを小さくする

2.Shadow Map ParamsのSize
Fall offの変更でジャギーが消えない場合は、「Shadow Map Params」ロールアウトのsizeの値を大きくする。このロールアウトも、Spotlightのルートスタックにある。sizeは影を構成するピクセル数に比例し、数が大きいほど多くのピクセルで影が作られるので、結果的に影のエッジのジャギーが減る。しかしながら、影のプロファイルが乱れることがあるので、できるだけFall offの設定でジャギーを消したほうがよい。sizeのディフォルトは512で10.000まで可。二乗数がビットマップ計算に用いられるので値を大きくとった場合、RAMが十分でないとレンダリングに時間がかかる。

3.Shadow Mapの限界
それでもジャギーが消えないなら、「Shadow Parameters」ロールアウトのShadow MapをReyTraced shadowに変えるしかない。影のエッジをぼかすことは不可能になる。

4. ReyTraced Shadowの限界
RayTraced shasowでもジャギーが出るなら、影の設定をいくら変えてもジャギーは除去できない。これは細長いチューブなどのオブジェクト、あるいはオブジェクトをワイヤーでレンダリングした時に顕著におきる現象である。レンダラーのAAを変更しても、おそらく望ましい結果は出ないだろう。この場合、影が落ちるオブジェクトに対してマテリアルエディタのオーバーサンプリングを試みる。(AAを参照)

ヒント:

マテリアルエディタのワイヤーの設定はレンダリングする画像に対するPixcelの大きさなので、ディフォルトの1.0だとほぼまちがいなくジャギーになる。

 

最後の手段
MAXのレンダラー技術はけして最新のものではない。不満であれば3rd partyのレンダラーを使用する。

a. Luminaire

エリアライト、ラジオシティなど。

b. InSight

MAXのStandardマテリアルを使える点が便利。レンダリングした後、スライダーで明暗と彩度の調整ができる。

c. Brazil

モンテカルロシュミレーションによるグローバルイルミネーション。