元記事:
Shadow buffer- Halfway average
ハーフウェイシャドウバッファ
(Halfway average: 中間平均)
Classical シャドウバッファ、Bias 1.0。足の下の影がないことに注意
Classical シャドウバッファ、Bias 0.2。いたるところにバイアスが発生し、はっきりとした粒状年輪パターンが見られる
Halfway シャドウバッファ、Bias 1.0。デフォルト値で良好な動作
Halfway シャドウバッファ、Bias 0.001。非常に小さい値でもバイアスの問題が最小に押さえられている(足の上側、耳の内部、口、手首、指、肩)。
標準のシャドウバッファ(現在、"Classical" と呼ばれているもの)は、"Bias" 値を慎重に設定することが要求されます。この Bias は影の計算におけるオフセット値で、Face が自分自身へ投影(セルフシャドウ)するのを防ぎます。
このセルフシャドウのエラーは、シャドウバッファが相対的に小さい(もしくは遠い)場合、(Z値が一つのみの)シャドウバッファの1ピクセルが、レンダリング時に大きな領域にかかってしまうため、非常に顕著になります。
とはいえ、大きな Bias 値では正確さが失われるという欠点があり、短い距離の Face 間では投影されなくなります。横の画像をクリックし、ブラウザの戻ると進むを使用して違いを見比べてみて下さい。
このエラーを解決すると判明している方法が、シャドウバッファを二つの値、一番近い Z 値と二番目に近い Z 値を使用してレンダリングすることです。最終的には、これら二つの Z 値が平均され、効率よくバイアスエラーが取り除かれます。本当に極端なケースでのみ、Bias の調整が必要になるでしょう。
しかし、この方法は3D シーンに重なっている Face がない時のみ、うまく動作します。重なっている場合、「二番目に近い Z 値」が一番近い Z 値と同じになってしまい、バイアスが再び起こります。
この理由と後方互換性のため、"Shadow and Spot" パネルに、新しいオプションとして、"Classic-Halfway" がバッファタイプとして選択できるようになりました。非常にいい結果が得られるため、現在のデフォルトになっています。
また、"Halo Step" オプションがこの方法では、正しく動作しない場合があろことを付け加えておきます。特に(厚みのない)Plane を使用している場合、中間のZ値を使用するため、エラーを目にすることになるでしょう。
Last update: Oct 15 2006.
This section is maintained by Ton Roosendaal.
元記事:
Shadow buffer- Halfway average