カリングについて

フォーラム(掲示板)ルール
フォーラム(掲示板)ルールはこちら  ※コードを貼り付ける場合は [code][/code] で囲って下さい。詳しくはこちら
20歳

カリングについて

#1

投稿記事 by 20歳 » 9年前

カリングとは何ですか?
バックフェイスカリング(又はカリング、又はバックフェースカリング)というものは見えない部分は排除して性能を上げるであってますか?

頂点を時計回りにした四角形が頂点は4つしかないのにカリングが適用されているなんて当たり前じゃないですか?

なんで反時計回りに配置したら後ろから見る状態になるのでしょうか!

もしかして時計回りに配置した頂点を〈表〉として見たら

裏から見たら反時計回りに配置されるから裏から見たことになるとか

そんな感じでしょうか!

20歳は混乱しています!

アバター
いわん
記事: 32
登録日時: 9年前

Re: カリングについて

#2

投稿記事 by いわん » 9年前

おおむねその解釈で合ってると思いますよ。
表側からみて右回りに頂点を定義したポリゴンを視線方向にスクリーンに投影したとき、
投影された頂点の位置が左回りになればそれはポリゴンを裏側から見てることになり描く必要は無い。
ということではないでしょうか。
頂点を時計回りにした四角形が頂点は4つしかないのにカリングが適用されているなんて当たり前じゃないですか?
この部分は言ってる意味がちょっと分からないですけど^^;

puy

Re: カリングについて

#3

投稿記事 by puy » 9年前

カリングの解釈はあっています。
四角形ではわかりにくいかもしれませんが立方体の場合は
どの角度から見ても見えない面が存在します。

どうせ見えないなら描画しなくていいじゃんという事で描画しない
またその面は視線方向からすれば裏面になっているので
バックフェイスカリングと呼ばれます。
日本語的に言えば「裏面選抜除去」という感じですね。

実際に除去されるのは裏面ではなく、裏面の描画処理を行わないようにして
描画処理回数を減らすという方法が一般的だと思います。
なんで反時計回りに配置したら後ろから見る状態になるのでしょうか!
三角形の面の向きはベクトルの外積で求める事ができます。
少し語弊がありますが外積の結果は頂点が時計周りか反時計回りかで異なってくるので
面の裏面を判断できてしまいます。

ここら辺は面法線やベクトルの外積などで調べると
詳しいサイトがたくさん出てきますのでそちらにお任せします。

閉鎖

“C言語何でも質問掲示板” へ戻る