IDirect3D9::RegisterSoftwareDevice メソッド (d3d9helper.h)
プラグ可能なソフトウェア デバイスを登録します。 ソフトウェア デバイスはソフトウェア ラスタライズを提供し、アプリケーションがさまざまなソフトウェア ラスタライザーにアクセスできるようにします。
構文
HRESULT RegisterSoftwareDevice(
[in] void *pInitializeFunction
);
パラメーター
[in] pInitializeFunction
型: void*
登録するソフトウェア デバイスの初期化関数へのポインター。
戻り値
種類: HRESULT
メソッドが成功した場合、戻り値はD3D_OK。 メソッドが失敗した場合、戻り値は次のいずれかになります: D3DERR_INVALIDCALL。 メソッド呼び出しが無効です。 たとえば、メソッドのパラメーターに無効な値 (D3DERR_OUTOFVIDEOMEMORY) が含まれる場合があります。
解説
ユーザーのコンピューターが 3D 操作に特別なハードウェア アクセラレーションを提供しない場合、アプリケーションはソフトウェアで 3D ハードウェアをエミュレートする可能性があります。 ソフトウェアラスタライズデバイスは、ソフトウェアのカラー3Dハードウェアの機能をエミュレートします。 ソフトウェア デバイスの実行速度は、hal よりも遅くなります。 ただし、ソフトウェア デバイスは、CPU でサポートされている特別な命令を利用してパフォーマンスを向上させます。 命令セットには AMD 3DNow! 一部の AMD プロセッサの命令セットと、多くの Intel プロセッサでサポートされている MMX 命令セット。 Direct3D では 3D-Now が使用されます。 変換と照明の操作を高速化する命令セットと、ラスター化を高速化するための MMX 命令セット。
ソフトウェア デバイスは、ハードウェア デバイス ドライバー インターフェイス (DDI) と同様のインターフェイスを介して Direct3D と通信します。
ソフトウェア デバイスはアプリケーションによって読み込まれ、 IDirect3D9 オブジェクトに登録されます。 Direct3D では、レンダリングにソフトウェア デバイスが使用されます。
Direct3D Driver Development Kit (DDK) には、プラグ可能なソフトウェア デバイスを開発するためのドキュメントとヘッダーが用意されています。
要件
対象プラットフォーム | Windows |
ヘッダー | d3d9helper.h (D3D9.h を含む) |
Library | D3D9.lib |