【逆質問】3D機能について教えて



[ このメッセージへの返事 ] [ 返事を書く ] [ home.html ]



投稿者: じゃいあん @ 133.20.204.32 on 97/12/10 16:17:42

どうやら機能は、あんぽんたんなレスつけてしまったので、
逆に質問します。

3Dカードって要するに、ポリゴンを表示するためのものですよね。
よく、3Dカードのスペックで1秒間に**万ポリゴンと書いてあり
ますけど、これってどういう意味ですか?

単純に、三角形を1秒間に書く数と考えると、三角形が馬鹿でか
い場合は困りますよね。4x4行列の実数計算回数と考えると、
幾何演算機能のないカードでは無意味ですね。
やっぱ、三角形の描ける個数の平均値ですか?
それとも、pixel/sec ÷ ポリゴン1枚あたりの平均ドット数?

もう一つ、

実際に3D表示するために、必要な処理は
1.実行バッファに頂点データ等を入れる。
2.行列計算で座標の幾何変換を行う。
3.Z軸方向でソートする。 (場合により不要)
4.Zバッファの確認、変更を行う。(場合により以下を無視)
5.テクスチャ(ドット)をメモリから読み込んでくる
6.光源やポリゴンの法線などから、ドットの明るさを変える
7.VRAMにドットを書き込む
だと思います。たぶんもっと何かあるでしょうけど、
細かいところは無視です。

一応、これはD3DSDKのドキュメント見て適当に書いた
やつです。

ハードによっては、2〜7までをすべて自動でやってくれるわけ
ですね。または、4〜7という場合もありますね。

で、実際の3Dカードって何処までやっているんですか?

さらに、もう一つ。

頂点数が増えるに従い、1〜3が大変になるのは予想できます。
描画ドット数が増えると4〜7が大変になると思います。
後者はまんまpixel/秒になるんでしょう。

で、実際のソフトだと前者と後者どっちが大変ですか?
D3Dが遅いといわれているのは、どっちの責任ですか?