Platform SDK: DirectX

ステップ 2.1 : デバイスを取得する

[C++]

ここでは、Visual Basic でのアプリケーション開発について説明する。C++ については、「Direct3D 直接モードの C/C++ チュートリアル」を参照すること。

[Visual Basic]

デバイスをテストする前に、テストするデバイスを取得しなければならない。以下のトピックでは、現在のディスプレイ設定と、デバイス参照を取得する方法について説明する。これにより、そのデバイスでサポートされているすべてのディスプレイ設定でデバイスをテストすることができる。

サンプル Enumeration では、DirectDraw7.GetDisplayMode メソッドを使って、現在のディスプレイ モード情報を DDSURFACEDESC2 型で取得する。

g_dd.GetDisplayMode desc
currMode = desc.ddpfPixelFormat.lRGBBitCount

上記のコードでは、現在のディスプレイのビット/ピクセル設定を currMode に保存する。次に、現在のディスプレイ モードをコンボ ボックス cmbMode に追加する。このボックスの内容がユーザーに表示される。

cmbMode.Clear
cmbMode.AddItem Str(currMode) + "- ビット ディスプレイ ウィンドウ"

ここで、テストするデバイスを取得するには、Direct3DEnumDevices.GetDesc メソッドを使って、コンボ ボックス cmbDevice でユーザーが選択しているデバイスを確認する。

Call g_d3dEnumDevices.GetDesc(cmbDevice.ListIndex + 1, deviceDesc)

上記のコードでは、DDSURFACEDESC2deviceDesc を使って、テストするデバイスのサーフェス記述情報を保持する。このデバイスでサポートされるディスプレイ モードのリストが作成される。最終的には、これらのサポートされるディスプレイ モードがコンボ ボックスに表示されるので、ユーザーがサンプル Enumeration でディスプレイ モードを選択することができる。

 :  このチュートリアルでは、サンプル Enumeration のグラフィカル ユーザー インターフェイス (GUI) の設計と構造については取り上げない。このチュートリアルのサンプル コードと GUI の関係については、SDK に含まれるサンプル Enumeration 全体のコードを参照すること。

これで、テストするデバイスへの参照を取得したので、デバイスをテストすることができる。デバイスのテストについては、「ステップ 2.2 : デバイスをテストする」で説明する。