Direct3D 12 の機能を用いて Direct3D 11 機能を提供するデバイスを作成する。Direct3D 11 との相互運用に使う既存の Direct3D 12 デバイスを指定する。
D3D11On12CreateDevice pDevice, Flags, pFeatureLevels, FeatureLevels, ppCommandQueues, NumQueues, NodeMask, ppDevice, ppImmediateContext, pChosenFeatureLevel
pDevice : [var] 型: IUnknown* Direct3D 11 との相互運用に使用する既存の Direct3D 12 デバイスを指定する。NULL にできない。 Flags : [int] 型: UINT D3D11_CREATE_DEVICE_FLAG のフラグを 1 つ以上ビット単位 OR で組み合わせた値。D3D11CreateDeviceAndSwapChain が使うのと同じフラグで、有効にするランタイムレイヤーを指定する。フラグはデバイスフラグと互換性がなければならず、NodeMask は present API に渡した NodeMask のサブセットでなければならない。 pFeatureLevels : [var] 型: const D3D_FEATURE_LEVEL* 以下のいずれかを含む配列。 FeatureLevels : [int] 型: UINT *pFeatureLevels* 配列のサイズ (要素数)。 ppCommandQueues : [var] 型: IUnknown* const * D3D11On12 が使用する一意なキューの配列。これらのキューは 3D コマンドキュー種別でなければならない。 NumQueues : [int] 型: UINT *ppCommandQueues* 配列のサイズ (要素数)。 NodeMask : [int] 型: UINT 使用する Direct3D 12 デバイスのノード。1 ビットだけを設定できる。 ppDevice : [var] 型: ID3D11Device** 返される ID3D11Device へのポインタ。NULL を指定してもよい。 ppImmediateContext : [var] 型: ID3D11DeviceContext** 返される ID3D11DeviceContext へのポインタ。NULL を指定してもよい。 pChosenFeatureLevel : [var] 型: D3D_FEATURE_LEVEL* 返される機能レベルへのポインタ。NULL を指定してもよい。
(プラグイン / モジュール : d3d11.dll)
Direct3D 12 の機能を用いて Direct3D 11 機能を提供するデバイスを作成する。Direct3D 11 との相互運用に使う既存の Direct3D 12 デバイスを指定する。 [戻り値] 型: HRESULT このメソッドは D3D11CreateDevice に記載されている Direct3D 12 の戻りコードのいずれかを返す。Flags に D3D11_CREATE_DEVICE_DEBUG を指定したがコンピュータ上に不適切なバージョンのデバッグレイヤーしかインストールされていない場合、DXGI_ERROR_SDK_COMPONENT_MISSING を返す。正しいバージョンを入手するには最新の Windows SDK をインストールすること。 [備考] 関数シグネチャ PFN_D3D11ON12_CREATE_DEVICE は typedef として提供されているので、静的リンクせずに動的リンク技法 (GetProcAddress) を使うこともできる。
| プラグイン / モジュール | d3d11.dll |
| バージョン | 1.0 |
| 作成日 | 2026/04/16 |
| 著作者 | IronHSP / CsWin32 bridge |
| URL | https://github.com/inovia/IronHSP |
| 備考 | Win32 API の d3d11.dll 関数群。CsWin32 + win32metadata から自動生成。
hsp3net 専用 (intptr / NSTRUCT / wstr を使用)。 |
| タイプ | 拡張命令 |
| グループ | Win32API |
| 対応環境 |
|
| hs ファイル | hsphelp\win32_d3d11_gen2.hs |