2012年11月18日日曜日

Direct3D10.1の概要と導入

Direct3Dのバージョン10.1は、バージョン10にこんな機能 が追加されています。また、Direct2Dとの連携が出来ます(Direct2D と GDI の相互運用性の概要)。
対応OSはVistaのサービスパック1適用以降みたいです。つまり、ほとんどDirect3D10の要件と同じです。ただし以前のビデオカードには、10までしか対応していないものがあるので、少し動作環境が狭まります。

APIの扱い方は10時代とほとんど変わりません。Direct3D10のチュートリアルを以下の様に変更すれば使えます。

・「d3d10.h」の代わりに「d3d10_1.h」をインクルードします。
・ リンクするライブラリは「D3D10.lib」ではなく「D3D10_1.lib」です。
(プロパティー→リンカー→入力の追加の依存ファイルを変えましょう。)
・ID3D10DeviceではなくID3D10Device1を使います。
そしてD3D10CreateDeviceAndSwapChain()ではなく、最後に1が付く
D3D10CreateDeviceAndSwapChain1()を使って初期化します。
これは10時代のメソッドと違い、第5引数に
D3D10_FEATURE_LEVEL1   HardwareLevel,
が加わっています。ここには
D3D10_FEATURE_LEVEL_10_1
を入れましょう。
またその次の第6引数はSDKのバージョンなのですが、
  D3D10_1_SDK_VERSION,
を入れましょう。

0 件のコメント: