ログインしてさらにmixiを楽しもう

コメントを投稿して情報交換!
更新通知を受け取って、最新情報をゲット!

Computer Graphicsコミュの【質問】隠面消去がうまくいきません

  • mixiチェック
  • このエントリーをはてなブックマークに追加
注視面の法線ベクトルと視線ベクトルとの角度が鋭角、つまり、注視面の法線ベクトルと視線ベクトルとの内積が正の場合、注視面は不可視となるのでしょうか?

携帯電話向けFlashLite2で作っているのですが、まだ見えるはずの面まで消えてしまいます。
http://test.vexil.jp/Cyan3D.swf

どうすれば正確に隠面消去できるでしょうか?

コメント(5)

> 注視面の法線ベクトルと視線ベクトルとの内積が正の場合
そうですよね。

どちらかのベクトルの計算が間違ってるとか。

ポリゴンは四角なんですよね。法線はどう算出してるんですか? 二辺の外積ですか?

視線ベクトルは、視点からポリゴンのどれかの頂点へのベクトルですか?
[1]luxideaさん、ありがとうございます。

視線ベクトルを(0,0,1)に固定していました。

視線ベクトルを、カメラ視点から各ポリゴンのインデックス0番の頂点へのベクトルにしたのですが、まだうまくいきません。

ポリゴンは三角と四角があり、二辺の外積です。

もう少し試行錯誤してみます。
視線ベクトルでうまくいきました。

計算間違いでした。
> 視線ベクトルを(0,0,1)に固定していました。
Z軸方向の平行投影カメラならそれで問題ないですが。
というか、視点がポリゴン平面の裏にあるか調べればいいのではないかと。
 n・e + d > 0  ※ n:法線ベクトル,e:視点位置ベクトル,d:平面の原点からの距離
なら可視です。
あ、入れ違いで投稿しちゃいました。上手くいって良かったです。(^ ^)

ログインすると、みんなのコメントがもっと見れるよ

mixiユーザー
ログインしてコメントしよう!

Computer Graphics 更新情報

Computer Graphicsのメンバーはこんなコミュニティにも参加しています

星印の数は、共通して参加しているメンバーが多いほど増えます。

人気コミュニティランキング