スライド 1

WindowsグラフィックスとDirectX
OS環境の変化
CUI
(MS-DOSやLinux)
GUI
(MacOSXやWindows)
OSの進化とグラフィックの進化
Windows Game SDK (DirectX1)・・・DirectDraw (GDI ベース)
DirectX2・・・Direct3D など、3Dグラフィックスに対応
DirectX8 ・・・DirectX Graphics「DirectDrawとDirect3Dの統合」
Windows2000・・・GDIの改良が必要になってくる。
(半透明効果・アルファチャンネル)
WindowsXP・・・.NET Framework の登場、GDI+
Windows Vista・・・.NET Framework 3.0
DirectX 9レベルのハードウェア・アクセラレーション
DirectXを使う理由、必要な場面


互換性
VRAMを使った高速な描画が可能
Win32の描画API ・・・OSのライフサイクルで変化していくAPIセット
DirectX・・・ハードウェアの世代と同期したAPIセット
DirectXプログラムの流れ
初期化処理
「コンソールプログラムの場合」
初期化処理
↓
プログラム処理
↓
開放
(DirectX初期化とダブルバッファリング )
↓
「windowプログラムの場合」
初期化処理
↓
イベント処理関数(ループしながら対応した処理を実行)
↓
開放
↓
開放
イベント処理のみ設計した場合
main() {
}
main() {
}
while(WM_QUIT != msg.message) {
if(GetMessage(&msg, NULL, 0,0)){
TranslateMessage( &msg );
DispatchMessage( &msg );
}
}
while(WM_QUIT != msg.message) {
if(PeekMessage(&msg,NULL,0,0,PM_REMOVE)){
TranslateMessage( &msg );
DispatchMessage( &msg );
} else {
UpDate
Draw();
}
}
参考資料



MicrosoftMSDN
DirectXの真実(N2Factory著)
DirectXグラフィックスプログラミングVer.2.0 (N2Factory著)