IDirect3D9::RegisterSoftwareDevice メソッド (d3d9.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 |
ヘッダー | d3d9.h (D3D9.h を含む) |
Library | D3D9.lib |