プロが教えるわが家の防犯対策術!

お礼は必ず書きますのでどなたか教えてください。


今趣味で2Dゲームプログラムを色々と作っています。
最近2Dでは物足りなくなってきたので
3Dプログラミングを勉強していきたいなと思っているのですがDirectX Graphics と OpenGL
どちらを勉強しようか悩んでいます。

シューティング、RPG、通信プログラムなどを普段作っています。
今、2人で出来るなんちゃってオンラインゲームも完成したところで
将来オンラインゲームを自分で作れたらなと思っています。

今大学4年生で、去年授業でほんのちょっとOpenGLをかじりました。しかし難しくてほとんどわかりませんでした・・。

こんな私にオススメなのはどちらでしょうか?

(1)RPG,シューティング、などのゲームプログラムを通信プログラムも含めて作りたい

(2)PS2などで作られているソフトはOpenGLよりほとんどがDirectXで作られていると聞きましたがそうなのでしょうか?それはなぜですか?

(3)書籍などが充実しているのはどちらでしょうか?ウェブでの解説などがあればそちらでも。
(こちらの方がわかりやすく書いてある本があるなど)


結局この2つはどう違うのかが知りたいです。
どなたかお詳しい方教えてください。
よろしくお願いします。

A 回答 (6件)

OpenGLはグラフィックライブラリ


DirectXは総合ライブラリ
(音周りからコントローラ周りまで一括で
しかもネットワークがらみのライブラリもある)

>(2)PS2などで作られているソフトはOpenGLよりほとんどがDirectXで作られていると聞きましたがそうなのでしょうか?それはなぜですか?
そもそもPS2でDirectXは使えませんから
    • good
    • 0

 OpenGL/DirectXどちらも似たようなもので同じように使えますが。

。。。あくまでも目的によって選ぶ事になるでしょう。

1.色々なOS/PCで動かしたいならOpenGL
DirectXはどんどんバージョンが更新されており、
 少し古いWindowsでは、動かない事が良く有ります
 (当たり前ですが)。
 ==>
  Windowsの古い物をDirectXでサポートしようと
  したら最新のDirectX9は使用でずに、古いDirectX5
 程度のAPIしか使用出来ませんでした。
 OpenGLは変わらない(?)ので、結構動きます。
 またOSを問いませんし。。

2.最新の機能を使いたいならDirectX
上記1.の逆ですね。最新PCで最新機能を使い、
 最高性能の描画を目指すならDirectXですね。
 少し遅れてOpenGLの拡張機能としてGPUメーカが
 ライブラリィーを出してきますが。。。

(PS1)
 個人的には、初心者にはOpenGLが簡単かも??
 資料はあまり有りません(変わっていない)
(PS2)
 どちらにしろ、覚える事は大して変わらないので、
 どちらかに決めてやってみれば良いと思います。
(PS3)
 資料はDirectXが多いですね。
    • good
    • 1
この回答へのお礼

なるほど、OpenGLは更新されていないということはいつまでたっても古い機能しかない・・?
それなのにDirectXと同等の機能があるとはすごいですね・・。

最新の機能を追及したいものですよね、やっぱ。
資料は多いほうがサンプルなども見る事が出来ると思うので助かります。

ありがとうございました。

お礼日時:2006/07/18 01:37

 no.3の者です。


 ライブラリが用意されていると、ちょっとした3Dポリゴンを移動させるプログラムでも1から書くとかなり長い命令を書かないといけないけど、あらかじめライブラリ登録されてる関数を使えば数行でokとかで済みます。
  まぁ、PS2とかXBOX360はゲーム専用機なのでライブラリ関係とか開発環境はお金&ライセンス登録すればいい環境が整うのでいいんですけどね。(^^;
 自分も一時期ゲームソフトのプログラマーになりたいと志望してましたが、現在は他の職業に就いてて、趣味程度でゲームを作りたいと思って書籍を買っては勉強してました。(地方に住んでるのでゲーム会社は近くにありませんが)
 実車での自動車でのサーキット走行や飛行機が好きなので、そういうレースゲームやフライトシミュレーションゲームを作ってみたいと思うんですけど、最近は作るよりもPS2のグランツーリスモ4とかにのめり込んでしまって、もうレース場でサーキットに行かないでも良くなってしまいました。(^^;
    • good
    • 0
この回答へのお礼

ライセンス登録ってものすごくかかりますよね・・お金が^^;
ライブラリの充実度は2者でどのように違いがあるのでしょうか?

DXライブラリというライブラリを使わせてもらっていますがライブラリが1~9くらいまでやってくれるので
楽々超楽チンでプログラミングさせていただいています^^;
やはり3Dプログラミングは夢ですね~><

お礼日時:2006/07/18 01:40

(1)RPG,シューティング、などのゲームプログラムを通信プログラムも含めて作りたい



 DirectXがいいでしょうね~~。
 いろいろライブラリが揃っています。


(2)PS2などで作られているソフトはOpenGLよりほとんどがDirectXで作られていると聞きましたがそうなのでしょうか?それはなぜですか?

 やはりライブラリが揃っているからではないでしょうか。


(3)書籍などが充実しているのはどちらでしょうか?ウェブでの解説などがあればそちらでも。
(こちらの方がわかりやすく書いてある本があるなど)

 DirectX関連の書籍はかなり販売されてるのでお勧めは「DirectX9.0 3Dアクションゲームプログラミング」です。バイオハザード風のゲームをつくるにはいいかもしれないです。
 本当はネット対戦プログラムが出来るようにと思って買ったのですが、それに関する記述は今回は見送られていました。(新刊があれば対応してるかも。)
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
ライブラリがそろっているというのがどういうことでしょうか?
便利な関数が詰まっているという事でしょうか?
やはり関数がいろいろある方がアクションなどの表現もしやすくなるのでしょうね。
書籍が充実している方がやはりいいですよね。
DirectXの本チェックしておきますね!

お礼日時:2006/07/17 13:45

 簡単にいうとDirectX GraphicsはMicrosoftが作ったWindows限定のライブラリ群であるDirectXの中の一つ。


 OpenGLは名前は忘れましたがどこかの会社がつくったOSに依存しないライブラリのことです。

 なので、WindowsだけでなくUNIX系やMacなどで動くことを目標とするならば必然的にOpenGLになります。
 Windowsだけで動くことを目標とするならば、これは自分の主観ですが、DirectX Graphicsの方がいいように思われます。
 OpenGLは特殊効果よりもポリゴン数、つまり特殊な効果を使うよりポリゴン数を増やして複雑な3Dを表現してね、っていう感じなのでゲームなどを作るのだったら特殊効果に優れているDirectX Graphicsの方がいいと思われます。
 ただ自分の使った感想では、DirectX Graphicsの方はMicroSoftが独自に定義した型のオンパレードだったり、設定が面倒に感じましたが、OpenGLの方がコードがすっきりしているような気がしました。

 なのでどちらもやってみて後は好みで決めればいいと思います。どちらもこれから廃れているものではないと思うのでどちらもやって損はないように思います。
    • good
    • 0
この回答へのお礼

なるほど、確かにOpenGLはRinuxでプログラミングしました。
色んなOSで使えるという事は重要ですね。
ポリゴン数によって表現する方法と、特殊効果によって表現する方法にわかれるというのは知りませんでした。
それにMicroSoftが独自に定義した型のオンパレードというのは想像ができそうです・・。
なるほど、コードをすっきりさせたいのも大きいです。

ありがとうございました。

お礼日時:2006/07/17 06:21

ゲームならDirectX。

画質よりも速度を優先して高速に描画します。
OpenGLはCGやCADなどでよく使われますが、多少遅くとも正確に描画します。

PS2は独自の形式だと思いますが、XBOXはDirectXと互換性があるようです。Direct3DのX形式をそのままXBOXの開発でも使用できます。
    • good
    • 0
この回答へのお礼

あ、そうですよね。
PS2は独自の言語を使っていて、それをシェアにして失敗したとか聞いた事がありました・・。
違ったかな?
OpenGLは正確だとよく聞きますね。
しかしよく意味が分かりません。
ではDirectXは正確じゃないの?
書いた処理は必ず行われるものじゃないのか?
と思ってしまいます。
ゲームならDirectXなのですね。
確かに速度を求める処理が私のプログラムの中にもあります。
ありがとうございました。

お礼日時:2006/07/17 06:19

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