CGの原理みたいなものを勉強をしています。
HPをいろいろ探したのですが、わかりやすいページがみあたらなくて、
ここに載せました。

「レンダリング」の隠面消去のところで「奥行きソート法」でつまづきました。
奥行き値を求めて降順、または昇順に並べて、多面体の前後関係を決めるのはわかるのですが・・・。ソートのアルゴリズムもわかるのですが。

本には「データ列をデータのキー項目について並べること」
「データはポリゴンとその奥行き値、キー項目は奥行き値」
とかかれているのですがよくわかりません。

たぶん「ポリゴン」がよくわからないのでイメージがわかないのです。
「ポリゴン」のなにから「奥行き値」が求められるのですか?
「ポリゴン」とはなんですか?
解説またはわかりやすいHPを教えてください。

このQ&Aに関連する最新のQ&A

A 回答 (3件)

面を分割していくと、最終的にはいくつかの三角形になるのはわかりますか?


(四角形に対角線を1本引くと三角形2つになる)
これをサイコロ(立方体)にあてはめると・・・

1の面の頂点を左上(A)、右上(B),左下(C),右下(D)とします。
1の面はA,B,C と B,C,D の頂点を持つ2つの三角形になります。

6の面の頂点を左上(E)、右上(F),左下(G),右下(H)とします。
6の面はE,F,G と F,G,H の頂点を持つ2つの三角形になります。
他の(2,3,4,5)面はA~Hの頂点のどれか3つを使うと表せます。

以上のことから、サイコロは、8つの頂点と、12の三角形ポリゴンからできることになります。(適当な箱に線を引いたりするとわかりやすいと思います)

まだまだ、付き合いますので、追加をどうぞ。
    • good
    • 0

>例えば、立方体があって、そのポリゴンはどうやってきまるのですか?



デザイナーのポリゴン分割による(笑)
何か勘違いなされているようですが、立方体があってポリゴンが決まるのではなく、ポリゴンがあって立方体が表示される、というのが現状の3Dシステムでは一般的です。
ポリゴンとは多角形を意味していますが、いわゆる「板切れ」です。
リアルタイム3Dシステムではこの「板切れ」をいくつも表示して立体を表示しています。
なので、たとえば直方体、さいころなどでは6つの面がありますので6つの正方形ポリゴンを用いて表示されたりします。
(実際には正方形ポリゴンが使われる事は余りありません。3角形のポリゴンがよく使われます。理由はポリゴンの描画方法に関係しますが、現行の方法では凹面ポリゴンの表示ができない事、また4つ以上の座標点は必ず同一の平面上に存在する事が決まっていないという事等から避けられる事が多いです。データ側でちゃんと保証できるのであれば問題ないんですけどね)

>確かに3次元だもん、(x、y、z)座標をもっているんですけど、
>どのx座標とどのy座標とどのz座標のくみあわせで、三角形(ポリゴン)をつくるのかな?

多角形の頂点座標をもつのが一般的です。
なお、普通はポリゴンの表面から適当な頂点を一つ決定し、辺を右回り、または左回りにたどる順で頂点座標をセットで保持する事が一般的かと思います。(面付けができますし、法線を求める場合に便利なので)

んでポリゴンの奥行き値ですが、これ、といった求め方はありません。プログラマの裁量で決められます。良くある手法としてはポリゴンの第一頂点のZ値をそのまま採用とか、ポリゴンの頂点全部の平均取って・・・とか色々考えられます。元々Zソート(奥行きソート)法自体が結構いい加減な結果しか出ないためあまりまじめにやっても意味がありません。
というのも射影側から見てZ方向に奥行きを持つポリゴンが2つあり、近いZ値を持つ場合、その前後関係はかなりいいかげんにしか決定できません。
また、「ポリゴン単位でソートし、描画する」という事実からポリゴンを貫通したポリゴンはまともに表示されません(どちらかが手前に表示されます)。

ちゃんとした方法を取るのであればZバッファ等の描画方法を使うのがスジです。(昔ならともかく今ではハードウェアで実装されてないものの方が珍しいですし)

で解説ですがDirect3DやOpenGLなど実際に実装されて動いてる3Dシステムの入門書などがよいと思います。
実際に物があるわけですし、いざとなればプログラムを組んで動かす事ができますので。

後はCG検定(名前変わってたかも)の参考書なんかも結構使えるかもしれません。
    • good
    • 0
この回答へのお礼

実はCG検定の本を使って勉強しているのです。

おかげでなんとなくつかむことができました。
本屋で3Dシステムの入門書をみてみようと思います。
それで少し3Dを動かしてみようかな・・・と。
がんばってみます!!

お礼日時:2001/11/10 18:44

ポリゴンは多角形という意味です。


CGで扱う場合、主に小さな三角形のポリゴンを組み合わせて、モデルを作ります。
三角形のポリゴンの場合頂点は3つあります。
各頂点毎に(x、y、z)の座標を持ち、空間での位置を表します。
xが横、yが縦、zが奥を表します。
三角形ポリゴンは3頂点あるので、基準になるZは、
1、もっとも値の大きいもの
2、もっとも値の小さいもの
3.3つのzの平均
などから、そのポリゴンの基準となる奥行き値(Z)を求めます。

奥行きソートの場合、このZをキーにしてポリゴンをソートします。
Zの値を基準にして並べるので、「Zソート」とも呼ばれます。
このように、ポリゴンを並べておいて、奥から順に描画していけば、次々手前にくるポリゴンによって上書きされるので、隠面消去ができます。

わかりにくければ、追加を・・・

この回答への補足

空間図形が苦手なので、イメージがわきにくい(T_T)

例えば、立方体があって、そのポリゴンはどうやってきまるのですか?
確かに3次元だもん、(x、y、z)座標をもっているんですけど、
どのx座標とどのy座標とどのz座標のくみあわせで、三角形(ポリゴン)をつくるのかな?

お時間ありましたら、説明お願いしますm(_'_)m

補足日時:2001/11/03 13:49
    • good
    • 0
この回答へのお礼

お返事おそくなりまして。
立方体についてはよくわかりました。
例えば球の場合はどんな三角形のポリゴンを考えるのかな?
めちゃくちゃ小さな三角形でかんがえるのかな?

お礼日時:2001/11/10 18:36

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qソート(データの並べ替え)の逆概念はシャッフル?

ソートは、データの集合を一定の規則に従って並べること。
バブルソート、シェーカーソート、コムソート、選択ソート、
挿入ソート、シェルソート、ヒープソート、マージソート、
クイックソート、バケットソート、基数ソート、
逆写像ソート、ボゴソート、奇偶転置ソート、シェアソート
などがあるそうです。

ではその逆概念の、データの集合を一定の規則に従ってバラバラにすることってなんといいますか?

トランプ(カードマジック)でよく見かけるシャッフルのことでしょうか?
ディールシャッフル、ヒンズーシャッフル、オーバーハンドシャッフル、リフルシャッフル、ファローシャッフル
などがあるそうです。

それらを数学的に扱ったものってありますか?

Aベストアンサー

#2の方の意見と同じです。
一定の規則にしたがっているならシャッフルになっていませんよね。

思うに、ソートするした結果からもとの並びは再現できませんから、不可逆な過程じゃないですか?
1,3,2という並びも3,1,2という並びも昇順にソートすれば、1,2,3で同じになります。
もともと1,3,2だったのか3,1,2だったのかとかは決められません。
ソート前とソート後が1対1で対応しないからです。
そういう意味でソートする過程で情報を捨ててしまっています。

1対1関数でなければ逆関数が定められないように、ソートにも逆の過程は定められないと思いますよ。

Q英語で、わかりやす無料レンタル掲示板

今、HPを外国でもみられるように
英語でつくっています。
HPビルダーでつくってます。
 そこで外国のかたにも
BBSにカキコミがほしいので
日本語の「投稿」とかがなくて
英語でかいている
無料レンタル掲示板ってないでしょうか?
さがしてるのにみつからなくって
どなたか知っていましたらおしえてくださいませ

Aベストアンサー

無料レンタル掲示板ではなくて、フリーのCGIスクリプトならば投稿欄を英語に書き換えることで英語圏の方も利用できるようにはなると思います。

Qファイルメーカのソート項目変更のスクリプト

ファイルメーカーProで、あるボタンを押すと、年齢でソートした一覧、あるボタンを押すとアイウエオ順でソート、あるボタンでは住所でソート、といったものを作るためのスクリプトをを考えていました。しかしソートは一度決めてしまうと、ソート設定画面を呼び出してソート項目を変えないとソート項目を変更できないように思えます。
 上記のようなソート項目の変更をスクリプトでできるでしょうか。
 

Aベストアンサー

スクリプトではソート順や検索条件などを記憶させておくことが出来ます。

スクリプト編集で「ソート」を選択すると、下にオプションとして
「ソート順を記憶する」「ダイアログなしで実行」のチェックボックスがあります。

先に「ソート順を記憶する」のみにチェックしてスクリプト実行させ、
ダイアログでスクリプト順を指定します。
そのあとで、「ダイアログなしで実行」にチェックをすれば
ご希望の動作になると思います。

Qこのブログを書いている方に、メールを出したいのですが、メールアドレスらしきものがみあたりません。

このブログを書いている方に、メールを出したいのですが、メールアドレスらしきものがみあたりません。

ブログのコメント欄に書き込んで、返答を待つしかないでしょうか?
できれば、直接メールをして、お聞きしたいことがあるのですが。

ブログのアドレスです。

http://plaza.rakuten.co.jp/ishtar/profile/

詳しい方いらっしゃいましたら、
どうぞよろしくお願いします。

Aベストアンサー

aki80さんの望む回答でなくて申し訳ありませんが、見たところ、メールアドレスどころかメールフォームもありませんね。
おそらく、この人は、そういったやり取りは望んでいないのだと思います。

メールでやり取りをするのは残念ながら、あきらめた方がいいかと思います。
ここのコメントは管理人が確認してから表示する承認制でもないですから、うかつにコメント欄にメール下さいとアドレスを書き込めば、望まない相手から大量に迷惑なメールが来てしまう事になりかねません。

ブログ上で返答を待つしかないと思います。

Qシェルソートの順位性

 このカテゴリーのNo.137(#35189)の続きなのですが、シェルソートについてご存知の方お願いします。

 上記の質問にて、ヒープソートは完全二分割木型で、同一の値であってもその順序は保証されない、ということがわかりました。
 そこで、配列の内容をソートする処理をシェルソートで組んでみました。

 やろうとしているのは、n1、n2 の2つの配列に値を入れ、n1 が同じ値だったら n2 の値を使ってソートする、という処理です。
 しかし実際には、n3、n4と無制限に続く2次元配列なので各配列を個別にソートしなければならず、n2 を先にソートしてから n1 をソートする、という処理を入れています。
 ところがこれだと、n1 のソート時に同一の値の順序が崩れると、せっかく行った n2 のソートが無駄になってしまいます。

 シェルソートの場合、こういうことは起こるのでしょうか。
 よろしくお願いします。 

Aベストアンサー

ソートには2種類あり、
安定なソート(キーになる値が同値の場合もとの順位が保証される)と
安定でないソートがあります(元の順位が保証されない)

安定なソートでないと多分上記の用件は満たせないでしょう
ソートのアルゴリズムについてはweb上で検索するなり、その手の書籍を買えば
色々載っているでしょう

シェルソートは安定ではないので同値の順位は崩れてしまいますので
安定なソートを使う必要があると思います

参考URLに各種ソートアルゴリズムのソースコードがあります

参考URL:http://www.vector.co.jp/soft/data/prog/se002453.html

Q自分の質問がみあたらない

昨日悩み事があって、ここに質問しました
その回答があったことをメールで確認しましたので
お礼の返事などしなくてはと思い「マイページ」にいくと、質問履歴には何も載っていませんでした
回答があったことのメールの下のほうに
詳しくはこちらってあったので、クリックしたところ
この質問は削除されたかみっかりませんと出ました
自分の質問への回答はみれないんでしょうか?
回答された方に申し訳ないです。

Aベストアンサー

何らかの理由で削除されたのだと思いますが。
削除された旨のEメールが登録アドレスに届いていると思います。
お確かめ下さい。
簡単な理由説明も付いています。
納得がいかなければ、質問を事務局へして下さい。

Qexcel ソート(容量大?)すると 2分割でソートされるけど解決方法は

500行25列くらいのデータを、ある列の種別順でソートすると全部の行が一度にソート出来ずに、途中まで行くとそこから再度ソートされます
(例)名前あいうえお順でソート
1 青山
2 木村

200 和田
201 青木
202 川村

500 和久
本当は1~500行まで通じてソートしたいのですが、なぜか途中でソートが分割されてしましいます。何か一度にソート出来る容量等の制限が有るのでしょうか。初心者なので出来るだけ簡単に教えてください
宜しくお願いします。

Aベストアンサー

二つに分割される理由として考えられる事

名前欄(漢字)をキーにしてソートしている場合
「ふりがな」が、有るセルと無いセルが別々にソートされます
たぶん、上のグループがふりがなが有り、下のグループにはふりがなが無いのでは?
「書式」「ふりがな」で、確認できます

Q運営HPでmidi音楽が流れるHPと、流れないHPが・・・

非常に困っております。良いご回答をお願い致します!
現在3つ程HPを運営しておりまして、そのHP上でmidi音楽を流して
いたのですが・・・先日長年使用しておりましたPCが壊れてしまい
しょうがなくPCを買い換えました。その後以下の様な問題が解決出来ずに
困っております。なるべく詳しく詳細を列記致します。

※旧PCはウインドウズ98で、現在はXPを使用しています。

(1)旧PCではどのHPの音楽も問題無く聞けたのですがPC買い替え後は
 音楽の鳴るHPと鳴らないHPが発生してしまいました。
(2)HP作成ソフトのプレビュー画面では音楽を確認出来ますがネット経由
 だと音の鳴らないHPがあります。
(3)自分のHP以外のHPへ行けば100%音楽は聞こえてきます。
(4)使用しているmidi素材をどのHP共同じものにして試しても結果は同じ。
(5)ジオシティーズ提供のHPでは音楽はなっていますが有料で借りている
 HPスペースでは私のPCからは音が流れてきません。
(6)友人のPC(XP)で確認した所全ページ問題無く音楽が流れている。
上記の様な現象で一体何処に問題の重きがあるのか分かりません。

後、聞こえなくなったHPのダウンロード完了時にブラウザの下の方に
「DONE」と言う表示が出るのも気になりました。
何だか凄く分かり辛い書き方で申し訳ありません。他に必要な情報あれば
また補足させて頂きますのでどうか宜しくお願い致します。

非常に困っております。良いご回答をお願い致します!
現在3つ程HPを運営しておりまして、そのHP上でmidi音楽を流して
いたのですが・・・先日長年使用しておりましたPCが壊れてしまい
しょうがなくPCを買い換えました。その後以下の様な問題が解決出来ずに
困っております。なるべく詳しく詳細を列記致します。

※旧PCはウインドウズ98で、現在はXPを使用しています。

(1)旧PCではどのHPの音楽も問題無く聞けたのですがPC買い替え後は
 音楽の鳴るHPと鳴らないHPが発生して...続きを読む

Aベストアンサー

>聞こえなくなったHPのダウンロード完了時にブラウザの下の方に
>「DONE」と言う表示が出るのも気になりました。
ダウンロード用の補助ソフト
(reget とか RealDownload とか、それとも
midi再生にQuickTime使っているとか)
使ったことありませんか?

Qwindows7でのフォルダ内ソート順について

windows7でフォルダ内のソートをしたいのですが
例えば、1.アーティスト名、2.曲名 という風なソートはできないのでしょうか?

以前XPでは、曲名でソートしてからアーティスト名でソートを行うと
上記のような順序に並んでいたと思うのですが…

見た感じ7では開くたびに毎回ソートしているようなので
以前のソート順を覚えていないのでしょうか??

よろしくお願いします。

Aベストアンサー

まずアーティスト名でソートして、
Shiftを押しながら曲名でソートして下さい。

http://d.hatena.ne.jp/hikouseki/20120702

Qところで・・・OKwaveの質問

OKwaveで質問した内容とか削除してもらいたいのですが・・・
それってどうやったらいいの?
どうも 会社の他人にみられているようですので・・・
ごめんなさい・・・

Aベストアンサー

・24時間以上経過している
・1度も回答がついたことがない(1度ついたが削除されて見た目回答0件のケースはコレにあたらないので要注意)
以上の2つの条件を満たしている質問に限り、マイページの質問履歴で削除のチェックが入れられるので自力で削除可能です。

条件に該当しないものは「明らかに規約違反している」ものなら管理者に削除依頼を出す(出し方はヘルプ等を参照)ことで削除可能です。
なお規約に違反してもいないのにただ単に削除したいというような要望は却下されます。

なお、退会しても「質問自体は残ったまま(IDがnoname~になるだけ)」ですよ。


人気Q&Aランキング

おすすめ情報