DirectXでの3D描画を軽くするには?

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

DirectXでの3D描画を軽くするには?

#1

投稿記事 by kon » 13年前

DirectXで3D描画を行うプログラムを作成しています。現在はデスクトップマシンでプログラムを作成していますが、ノートPCでもプログラムの作成ができればいいなと思っています。

プログラムの内容としては、2Dのテクスチャ上にメタセコイアで作成した車などのモデル(.Xファイル)をキーボード入力で動かしています。

ノートPCの性能的に厳しいのは分かっていますが、どなたかアドバイスお願いします。

デスクトップマシンのスペック
・CPU:i5-750
・グラボ:GeForce8600GT
・メモリ:4GB
・OS:Windows7(32ビット)

ノートPC
Let's Note CF-W5
・CPU:CoreDuo U2400 1.06GHz
・グラボ:オンボード
・チップセット:モバイルインテル 945GMS Express チップセット
・メモリ:1.5GB
・OS:XP(32ビット)

アバター
lriki
記事: 88
登録日時: 13年前

Re: DirectXでの3D描画を軽くするには?

#2

投稿記事 by lriki » 13年前

DirectXのヘルプにパフォーマンスの最適化というページがあるので
この辺を参考にしてみるといいかもしれません。
http://msdn.microsoft.com/ja-jp/library ... S.85).aspx

あと、どのようにモデリングをしているのかはわかりませんが
モデルを作るときにマテリアルの数(テクスチャの数)は
できるだけ減らしておくといいと思います。(DrawSubset の回数を減らすために)

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: DirectXでの3D描画を軽くするには?

#3

投稿記事 by softya(ソフト屋) » 13年前

DirectX9には対応しているので、とりあえず動くとは思います。
パフォーマンス的には、GPUの8600GTとGMA950(945GMS Express内蔵)では雲泥の性能差が有りますのでどのぐらいの表示に成るかは試してみるしか無いと思います。

こちらで差を確認してみてくだしさい。
http://hardware-navi.com/gpu.php
ここのサイト独自の評価ですが、性能スコアで30倍近い開きがあります。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

kon

Re: DirectXでの3D描画を軽くするには?

#4

投稿記事 by kon » 13年前

梨樹さん、softya(ソフト屋)さん、お返事並びに参考サイトを教えていただきありがとうございます。

>>梨樹さん
マテリアルの数をできるだけ減らしてみたいと思います。

>>softya(ソフト屋)さん
8600GTとGMA950(945GMS Express内蔵)ではグラフィック性能が違うのは分かってましたが30倍近くも差が有るとは思ってもいませんでした。

kon

Re: DirectXでの3D描画を軽くするには?

#5

投稿記事 by kon » 13年前

さっき、デスクトップマシンで作成したプログラムをノートPCで実行してみましたが予想通りカクカクでした。

「Fraps」というOpenGLやDirectXのFPSを表示してくれるソフトを見つけたので使ってみました。

デスクトップでFrapsを実行すると60と表示されたのですが、ノートPCだとなぜか25~35と表示さえます。 酷い時は9とか1ケタ台が表示されます。

これはグラフィックドライバなどが関係あるのでしょうか?

なお、デスクトップはVisualStudio2008Profesional、ノートPCはVisualStudio2005Profesionaを使ってます。

・Frapsに関する記事
http://www.gigafree.net/media/recording/fraps.html

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: DirectXでの3D描画を軽くするには?

#6

投稿記事 by softya(ソフト屋) » 13年前

kon さんが書きました:さっき、デスクトップマシンで作成したプログラムをノートPCで実行してみましたが予想通りカクカクでした。

「Fraps」というOpenGLやDirectXのFPSを表示してくれるソフトを見つけたので使ってみました。

デスクトップでFrapsを実行すると60と表示されたのですが、ノートPCだとなぜか25~35と表示さえます。 酷い時は9とか1ケタ台が表示されます。

これはグラフィックドライバなどが関係あるのでしょうか?

なお、デスクトップはVisualStudio2008Profesional、ノートPCはVisualStudio2005Profesionaを使ってます。

・Frapsに関する記事
http://www.gigafree.net/media/recording/fraps.html
ノートの描画が遅くてFPSがふらついてる可能性が高いです。
もともとのGPUの性能の可能性が高いので、ドライバを更新しても改善するかは分かりません。
だめ元でドライバ更新してみては?
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

kon

Re: DirectXでの3D描画を軽くするには?

#7

投稿記事 by kon » 13年前

softya(ソフト屋) さん、お返事ありがとうございます。

ドライバが更新されてないかPanasonicのHPで調べてみましたがダメでした。

ちなみにDirectXのプログラムでFPSを60に固定して、ノートPC で実行したらどうなるんでしょうか?

アバター
softya(ソフト屋)
副管理人
記事: 11677
登録日時: 13年前
住所: 東海地方
連絡を取る:

Re: DirectXでの3D描画を軽くするには?

#8

投稿記事 by softya(ソフト屋) » 13年前

そもそもDirectXはFPSを固定に出来ない(描画優先)な仕様だと思いますので、1/60秒より描画早ければ固定できますが描画に1/60秒以上かかれば遅延するはずです。
まぁ、もしFPS優先に出来たとしたら途中で描画を打ち切るしか無いので半分しかポリゴン描画しないとか悲惨なことになりそうですよ。
by softya(ソフト屋) 方針:私は仕組み・考え方を理解して欲しいので直接的なコードを回答することはまれですので、すぐコードがほしい方はその旨をご明記下さい。私以外の方と交代したいと思います(代わりの方がいる保証は出来かねます)。

kon

Re: DirectXでの3D描画を軽くするには?

#9

投稿記事 by kon » 13年前

softya(ソフト屋)さん、お返事ありがとうございます。

現在、描画処理を軽くしようと試行錯誤してますがなかなか上手くいってない状況です。

閉鎖

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