もきもき3D

アクセスカウンタ

zoom RSS NodalAccess->illuminate()・・('A`)

<<   作成日時 : 2009/07/02 15:43   >>

なるほど(納得、参考になった、ヘー) ブログ気持玉 1 / トラックバック 0 / コメント 0

 int NodalAccess->illuminate(light, wPos, dir, color);

 lightが通常のライトの場合、dirにはライト側からspotへのベクトルが返る。
 何かしらの計算モデルに使うなら符号を反転してsoptから外部へ向かうベクトルにしないと混乱の元になる。
 戻値intは、有効なら 1、rayがhitしないなら(?) 0。 だと思う。

 lightがLWITEM_RADIOSITYの場合、dirには評価の為のベクトルを与える。
 素直に使う場合(?)は spotのNormalを与えれば良いと思う。
 が、必要なのは外部からspotへ向かうベクトルなので、na->wNorm値をそのまま与えてはダメっぽい。
 符号反転したna->wNormを使うのが妥当っぽい。

 戻値intは、有効なら 1、無効なら 0。 だと思う。

----
 あるぇ〜(・з・)
 符号は影響しないっぽい。
 単に、nodeEditorとsurfEditorで一貫性が無いプレビューの動作に翻弄されただけかも(・з・)

 それはそうと、ambient==0、surfColor==1、diffuse==1で
  na->illuminate(LWITEM_RADIOSITY, na-wPos, na-wNorm0, color);
  dest = color * surfColor * diffuse;
 として、そのまま返してるのに、LW標準(node無し&Orennayarでrough0)と結果が違うのは何故・・・
 使うべきはwNormでなく視点ベクトル??

 てか、何を与えてもcolorは変わらないわけで(・з・)

 わかんねぇ('A`)

----
 9.3.1だと、LW標準と同じ結果を得られるし、dirを変な値にすると変な結果になる。
 9.6だと、LW標準と違う結果になり、dirがデタラメでも結果は変わらない。

 ・・・(#^ω^)

----
 9.6のNodalで取れる結果は9.3.1の結果に酷似してるんだよねぇ・・・
 てか、Radioのパラメータは似てるはずなのに、9.3.1と9.6のRadioの結果が違うんだよねぇ。
 その癖、Nodalで取得すると9.3.1とほぼ同じになるとか・・・。
 Radiosityが壊れてるのか、Nodal->illuminate系のRadiosityに対する処理だけが壊れてるのか、両方壊れてるのか、はてさて。

 標準品のノードでなら他の手法でのRadioの結果と同じ結果を得られるとか。
 ノード単品をDiffuseShadingに繋いだ時、標準品(Orennayarとか)の場合はDiffuseShadingバッファとShadedDiffuseバッファの両方が埋まるのに、SDKで組んだ物だとShadedDiffuseしか埋まらないとか。
 無規則なその場凌ぎの作りになってねぇ?(・з・)

テーマ

注目テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ
気持玉数 : 1
なるほど(納得、参考になった、ヘー)

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
NodalAccess->illuminate()・・('A`) もきもき3D/BIGLOBEウェブリブログ
文字サイズ:       閉じる