OKWAVEのAI「あい」が美容・健康の悩みに最適な回答をご提案!
-PR-
締切り
済み

GDIとDIRECT-X

  • 暇なときにでも
  • 質問No.100298
  • 閲覧数411
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 36% (4/11)

 WINDOW上でグラフィック描画を行うプログラムを作成する場合、
普通にウィンドウ上にMoveTo()やLineTo()で描画を行う場合と、
DIRECT-Xを使う場合では、後者にどのような利点があるのでしょうか?(2Dに限っての話です)

それと一昔前にあった(?)WIN-Gというのは何だったのでしょうか??

少し調べればわかることだとは思いますが、
理論的なことより、実際にプログラムを組む人々がどう違いを感じるかを
聞きたいです。よろしくお願いします。
通報する
  • 回答数1
  • 気になる
    質問をブックマークします。
    マイページでまとめて確認できます。

回答 (全1件)

  • 回答No.1
レベル14

ベストアンサー率 62% (6253/9971)

Win-GってのはGAME-SDKかなこれはいわゆるDirectX1,0かその前の世代ですね。 (DirectXAPI群とほぼ同じで機能が少ないだけです) さて、描画での違いですが、まず独自のGDIを使った場合はご存じでしょうけど、プログラムが肥大化して大変です。 そこでGDIでは、Win32アプリ→GDI→デバイスドライバ(DDI)→グラフィックハード(逆方向のやりとりもあり)の順で処理していき画 ...続きを読む
Win-GってのはGAME-SDKかなこれはいわゆるDirectX1,0かその前の世代ですね。
(DirectXAPI群とほぼ同じで機能が少ないだけです)
さて、描画での違いですが、まず独自のGDIを使った場合はご存じでしょうけど、プログラムが肥大化して大変です。
そこでGDIでは、Win32アプリ→GDI→デバイスドライバ(DDI)→グラフィックハード(逆方向のやりとりもあり)の順で処理していき画一された手法を使うことでプログラム開発を容易にしますが、欠点は処理が遅くなるということでした。
GDIの欠点はアプリからビデオボードのメモリに直接アクセス制御できないこと結局は能力を使いこなせず、パフォーマンス的に弱い。

それに対して、DirectXはWin32アプリ→DirectGraphics→HAL(介さないこともある)→DDI→ハード(逆方向のやりとりもあります)
の順でデータのやりとりがされます。
HALデバイスとHELデバイスの処理がありますから、
HAL(Hardware Abstraction Layer)ではDirectX対応ハードでより高速に直接的にハードに命令を渡し処理できるだけではなくHEL(Hardware Emulation Layer)による非対応のハードでも機能をエミュレートすることができるよう工夫されています。それにGDIのプログラムの容易性も含まれて最新のグラフィックス技術、直接的な命令、DirectXSDKによるサポートでソフト開発が容易、DirectXのアップデートのみでの最新処理機能の追加などが可能になります。
特にSDK(Software Development Kit)が配布されてますから、プログラム制作者にはこの上のない制作環境が整います。


このQ&Aで解決しましたか?
関連するQ&A
-PR-
-PR-
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する
-PR-
-PR-
-PR-

特集


いま みんなが気になるQ&A

関連するQ&A

-PR-

ピックアップ

-PR-
ページ先頭へ