DirectXとOpenGL、どちらが動作が軽い?

このQ&Aのポイント
  • Windowsプログラミングを一通り勉強し、次は3Dプログラミングに挑戦したいと考えている。
  • DirectXとOpenGLのどちらを学習すべきか迷っている。最終的には軽く動作する3Dゲームを作りたい。
  • 同じ動作をするDirectXの3Dゲームと、OpenGLの3Dゲームがある場合、どちらが動作が軽いのか知りたい。
回答を見る
  • ベストアンサー

DirectXとOpenGLはどちらが動作が軽い?

環境:Visual Studio 2005 WinXP Win32 C/C++ Windowsプログラミングを一通り勉強したので、 次は3Dプログラミングに挑戦したいと思っています。 DirectXとOpenGL、どちらを学習しようか決めかねています。 最終的にはとても軽く動作する3Dゲームを作りたいです。 そこで、たとえばまったく同じ動作をする DirectXの3Dゲームと、OpenGLの3Dゲームがある場合、 どちらのほうが動作が軽いのでしょうか。 ここでいう「動作が軽い」というのは、 そのゲームが使用するメモリ量、CPU量などが低く動作が快適なものです。 メールソフトやブラウザを同時に起動しても気にならない ほど軽いものが作りたいと思っています。

質問者が選んだベストアンサー

  • ベストアンサー
  • rentahero
  • ベストアンサー率53% (182/342)
回答No.1

結論としては「わからない」ので自信なし。 一般的には 「環境に依存すればするほど軽くなることが多い」です。 それ以前に ・OpenGLはかなり重いけど3D空間の再現性はよい ・Direct3Dは3D空間の再現性はちっとイマイチだけど軽い(速度は対応する3Dアクセラレータの機能に依存する) という特性があったと思うんですが。すなわち動作がそもそも違うのではないかと。 だから、「まったく同じ動作をする」場合は実際にやってみないとわかりません。

tanishi0718
質問者

お礼

なるほど。そういう特性があるんですね。 ではやはり、DirectXのほうを勉強したいと思います。 ありがとうございました。

関連するQ&A

  • DirectXとOpenGL

    ちょっと最近自作ゲームをつくりたくなってきてわからないことがあったんですが、、、2Dゲームを作るときに、DirectXかOpenGLのどちらかを使わなければならないんですか??

  • DirectX Graphics と OpenGLってどちらがいいの?

    お礼は必ず書きますのでどなたか教えてください。 今趣味で2Dゲームプログラムを色々と作っています。 最近2Dでは物足りなくなってきたので 3Dプログラミングを勉強していきたいなと思っているのですがDirectX Graphics と OpenGL どちらを勉強しようか悩んでいます。 シューティング、RPG、通信プログラムなどを普段作っています。 今、2人で出来るなんちゃってオンラインゲームも完成したところで 将来オンラインゲームを自分で作れたらなと思っています。 今大学4年生で、去年授業でほんのちょっとOpenGLをかじりました。しかし難しくてほとんどわかりませんでした・・。 こんな私にオススメなのはどちらでしょうか? (1)RPG,シューティング、などのゲームプログラムを通信プログラムも含めて作りたい (2)PS2などで作られているソフトはOpenGLよりほとんどがDirectXで作られていると聞きましたがそうなのでしょうか?それはなぜですか? (3)書籍などが充実しているのはどちらでしょうか?ウェブでの解説などがあればそちらでも。 (こちらの方がわかりやすく書いてある本があるなど) 結局この2つはどう違うのかが知りたいです。 どなたかお詳しい方教えてください。 よろしくお願いします。

  • APIとDirectXって何?

    DirectXはOpenGLのようなものだと言う事はわかるのですが、DirectXも無償で プログラミングできるんでしょうか? APIとはC言語の標準ライブラリだけではできない作業を補うものである位しか知識が有りません。 現在XPでStudio.NETを使っています。 APIとDirectXについてどのような物なのか知りたいのですが どなたかご指導いただけませんでしょうか。

  • directxとプログラミング言語

    今、Visual Studio 2008 Expressでdirectxを勉強しているのですが、ふと思いました。 (1)最近のwindowsPCでのオンラインゲームやxboxやps3はdirectxを使ってプログラムしているのでしょうか? (2)xboxはC#でプログラムしていると分かったのですが、PS3と最近のwindowsPCでのオンラインゲームはどんなプログラミング言語でプログラムをしているのでしょうか? よろしくお願いします。

  • 基礎からC・C++を学習し、DirectXへの道

    私はゲームにおけるプログラミングを理解したく、C・C++を勉強したいと思っています。 しかしC言語についてはまったく知識がありません。過去にBASICで音楽をつくったりEXCELでVBAをいじった程度のド素人です。 いちおうゲームに関する技術は一通り理解しています。CGソフトでのモデリング、マッピング、アニメーションもできます。 専門用語になりますが、いちばんできるようになりたいのは「シェーダの作成」です。レンダリング部分を自在にいじれるようになりたいのです。 このような状況で、C・C++を学習するにはどうしたらよいでしょうか?私は普段は会社勤めですのでできれば都内で学習できる学校に通いたいと思っています。 ゲーム全般の学習ができなくても、C・C++がある程度理解できるようになれば、あとはDirectXやOpenGL、Cgfxなどの専門書で理解できるのでしょうか? Cの基礎からの学習方法だけのアドバイスでもかまいません。よろしくお願いします。

  • OpenGLでプログラミング

    現在、OpenGLの勉強をしているのですが、 Cのプログラムの中でOpenGLを使いたいと思っています。 でも、いろいろなサイトを見てみたのですが、 OpenGLはVC++では使えるようですがVC++.NETでは使えないのでしょうか? 私が所有しているのはMicrosoft Visual C++.NET Standardで、 PCはNECのバリュースターLシリーズの300/3Dです。 VC++.NETでプログラミングができない場合、 VC++を手に入れたほうがいいのでしょうか?教えてください。

  • OpenGLでの楕円の描き方

    初めて質問させていただきます。 現在OpenGLを勉強中のOpenGL初心者です。 今OpenGLでの楕円の描き方で四苦八苦しております。 どなたか楕円描写のプログラミングを教えていただけませんか? 言語はVisual C++7.0です。

  • メタセコイア+OpenGL+VC++

    開発環境VC++でOpenGLを使ってプログラミングをしているものです。 いまより複雑なモデルを3Dで描きたくて、最近メタセコイアなるものがあることを知りました。 これを使って作成した"***.x"を描画することが「C#とDirectX」の環境下で実現できたのですが、「VC++とOpenGL」の環境下で出力させるにはどうすればよいかわかりません。 ご教授お願いします。

  • DirectXについて

    自分のパソコンはDirectX9.0cをインストールしているんですが・・ DirectX8 が必要なゲームをしようとしたら「DX8がインストールされていません」という意味合いの言葉が出てきます。(ちなみに3Dのゲーム)スペックはみたしています。 Direct3Dは使用可能になっていますし、Direct3Dのテストをやっても正常に見れます。 メモリは256M OSはWINXP です。(古いパソコン) 何か解決方法はありませんか? またDirectX9.0cが自分のPCにあっていないと言う場合があるかもしれませんがその場合どうすればよいでしょうか?

  • DirectX

    ラトルズ株式会社から出版されている15歳からはじめるDirectX9ゲームプログラミングC++編の第5章の関数ライブラリを作成するところでサンプルのソースプログラムを全て打ち込んだにも拘わらずウィンドウが表示されなくて困っています。どなたか同じ本を持ってる方、もしくはDirectXに詳しい方が居ましたら教えてほしいのですがよろしいでしょうか。 開発環境はVisual C++ 2008 Express Edition、DirectX SDK(June 2007)でOSはVistaです。