>>Delta

フレネル効果の計測

2006年8月24日

フレネル効果の計測

Shadeの表面材質設定にある、“フレネル”の項目について、少し調べてみました。ここで扱っているフレネル反射というのは、物体表面での光の反射率が

  • 偏光
  • 屈折率
  • 入射角

に依存するという、フレネルの式によって導かれる反射の様子のことです。光の全反射は有名ですが、全反射に限らず、物体表面での反射率は入射角や屈折率によって変わってきますよ、というお話。

CGでリアリティを追求するとき、フレネル反射の再現は重要な要素の一つです。にもかかわらず、市販のShade解説書をめくってみてもフレネルの項目は簡単な効果解説にとどまっている場合が殆どで、具体的にどのような値を入力するのが適切か、という議論は見たことがありません。(実はフレネルに限った話ではなくて、多くの設定項目において「出力を見て設定を調節する」ように指示する解説書が多いことには驚かされます。)

物理的に正しい設定値や正しい結果を得る設定値を知っていることは大切なことだと思うのに、「長年の勘ですよ」とでも言いたいのか、誰も具体的なところを教えてくれません。仕方がないので自分で調べてみることにしました。

ちなみに、Shadeは屈折率による物理的に正しい反射の計算を行うことができません。そのために“フレネル”という設定値を用いて擬似的にこのフレネル反射を再現している、ということは了承しておいてください。

今日、はフレネルの実験のために、こんな装置を用意してみました。

  • フレネル実験室

詳しく見てみたい方は、fresnel.zipをダウンロードしてください。実験に使ったセットが入ってまいす。

簡単にだけ説明しますと、カメラの先にあるフレネル板(円板)に映ったエミッタの色からフレネル板表面での反射率を測定します。エミッタの明るさは (R,G,B) = (192,192,192) ですので、反射光をカラーピッカで拾って (192,192,192) の色なら反射率100%、(96,96,96) なら50%と判ります。

具体的にはフレネルスライダを動かした場合

  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】

入射角を動かした場合

  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】
  • 【図: フレネル効果の実験結果サンプル】

それぞれ上の写真のように観測されます。写真の上にポインタを乗せると、"F050A030"のように表示されるのは、「フレネルスライダ 0.50、入射角 30度」という意味ですので参考にしてください。この画像から円板の色をPhotoshopのスポイトツールで拾っています。できるだけ円板の真ん中から拾うようにはしていますが、マクロとか組んだわけではないので多少のずれは測定誤差ということでお願いします。

以下は集計結果と考察です。

まずは、フレネルの強さと反射率の関係。結果は次のグラフの通り。

  • 【グラフ: フレネルの強さと反射率の関係】

フレネル板の反射率スライダは1.00で固定してあるので、フレネルを設定すると、それに伴って反射率が低下することが判ります。0度付近ではサインカーブのような曲線を描きます。

次に、入射角と反射率の関係。

  • 【グラフ: 入射角と反射率の関係】

フレネル0.00では、反射率は常に100%。1.00では常に0%でした。中間の値では減衰曲線のようなグラフを描きます。入射角90度付近では反射率100%(反射率スライダの設定値)であることは共通で、0度付近の値は異なります。(1つ前のグラフとあわせてみると、他のフレネル強さのグラフも推定できます。)

最後に、フレネル 0.90のグラフをより細かくサンプリングしたグラフも描いてみましたので掲載しておきます。

  • 【グラフ: 角度と反射率 フレネル0.90 詳細】

どんな関数使ってるんでしょうか…。どこかで見たことある気がするんですが、数学苦手ので、これ以上何も言えないです。

さて、以上の結果から、フレネルを使うときは

  • 90度のときの反射率を反射率スライダに入力する。
  • 0度のときの反射率が正しくなるようにグラフを見てフレネル値をセットする。

という作戦はいかがでしょう?プレビュー画面見ながら勘で入力するよりは良い結果が得られそうな気がします。

っつーか、こういう大事な仕様はリファレンスにちゃんと書いておいて欲しいです。 >> ef様

投稿者 CASPAR003
投稿時刻 23:14
カテゴリー Shade
コメント 0 件
トラックバック 0 件
記事へのリンク http://www.caspar003.info/delta/archive/2006/08/24/2314.html
コメント
投稿者
コメント
トラックバック
  • トラックバック

ブログ情報

カレンダー
2018年2月
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28
最近のエントリー
最近のコメント
コメントを頂いたエントリー
コメントをくださった方一覧
コピー用紙の裏表
でった☆
CASPAR003
あのー
CASPAR003
amumo
CASPAR003
mariko
kazu
お仕事で青ざめた話
iun
iun
CASPAR003
AcrobatでPDFの一括印刷
Caesar
CASPAR003
Shadeのレンダラー仕様メモ
iun
CASPAR003
ブログ同盟本 C87 3日目 東S-04b
CON$
CASPAR003
Ca3 Post_Effector 2.0
sisioumaru
CASPAR003
sisioumaru
CASPAR003
Shade15について雑感
iun
CASPAR003
iun
色について
iun
CASPAR003
Lv67
iun
CASPAR003
雪まつり行ってきたよ
iun
CASPAR003