ディスプレイアダプタを表すデバイスを作成する。(D3D11CreateDevice)
D3D11CreateDevice pAdapter, DriverType, Software, Flags, pFeatureLevels, FeatureLevels, SDKVersion, ppDevice, pFeatureLevel, ppImmediateContext
pAdapter : [var] 型: IDXGIAdapter* デバイス作成時に使用するビデオアダプタへのポインタ。既定のアダプタを使う場合は NULL を渡す。既定のアダプタは IDXGIFactory1::EnumAdapters が最初に列挙するアダプタである。注意 DXGI 1.0 (IDXGIFactory) と DXGI 1.1 (IDXGIFactory1) を 1 つのアプリケーションで混在させてはならない。IDXGIFactory または IDXGIFactory1 のどちらか一方だけを使う。 DriverType : [int] 型: D3D_DRIVER_TYPE 作成するドライバ種別を表す D3D_DRIVER_TYPE。 Software : [intptr] 型: HMODULE ソフトウェアラスタライザを実装する DLL へのハンドル。DriverType が D3D_DRIVER_TYPE_SOFTWARE の場合、Software は NULL であってはならない。ハンドルは LoadLibrary、LoadLibraryEx、GetModuleHandle のいずれかで取得する。 Flags : [int] 型: UINT 有効にするランタイムレイヤー (D3D11_CREATE_DEVICE_FLAG を参照)。複数の値をビット単位 OR で組み合わせ可能。 pFeatureLevels : [var] 型: const D3D_FEATURE_LEVEL* 試行する機能レベルの順序を決める D3D_FEATURE_LEVEL 配列へのポインタ。pFeatureLevels に NULL を設定した場合、この関数は以下の既定の機能レベル配列を使用する。 FeatureLevels : [int] 型: UINT pFeatureLevels の要素数。 SDKVersion : [int] 型: UINT SDK バージョン。D3D11_SDK_VERSION を指定する。 ppDevice : [var] 型: ID3D11Device** 作成されたデバイスを表す ID3D11Device オブジェクトへのポインタのアドレスを返す。このパラメータが NULL の場合、ID3D11Device は返されない。 pFeatureLevel : [var] 型: D3D_FEATURE_LEVEL* 成功時、pFeatureLevels 配列のうち最初に成功した D3D_FEATURE_LEVEL を返す。どの機能レベルがサポートされているか判定する必要がない場合は NULL を指定する。 ppImmediateContext : [var] 型: ID3D11DeviceContext** デバイスコンテキストを表す ID3D11DeviceContext オブジェクトへのポインタのアドレスを返す。このパラメータが NULL の場合、ID3D11DeviceContext は返されない。
(プラグイン / モジュール : d3d11.dll)
ディスプレイアダプタを表すデバイスを作成する。(D3D11CreateDevice) [戻り値] 型: HRESULT このメソッドは Direct3D 11 の戻りコードのいずれかを返すことがある。 pAdapter に NULL 以外を設定しつつ DriverType を D3D_DRIVER_TYPE_HARDWARE にすると、このメソッドは E_INVALIDARG を返す。 Flags に D3D11_CREATE_DEVICE_DEBUG を指定したがコンピュータ上に不適切なバージョンのデバッグレイヤーしかインストールされていない場合、このメソッドは DXGI_ERROR_SDK_COMPONENT_MISSING を返す。正しいバージョンを入手するには最新の Windows SDK をインストールすること。 [備考] このエントリポイントは Direct3D 11 ランタイムによりサポートされる。Direct3D 11 ランタイムは Windows 7、Windows Server 2008 R2、および Windows Vista の更新プログラム (KB971644) として提供されている。 Windows 8、Windows Server 2012、および Platform Update for Windows 7 がインストールされた Windows 7 / Windows Server 2008 R2 で利用可能な Direct3D 11.1 デバイス (ID3D11Device1) を作成するには、まずこの関数で ID3D11Device を作成し、その後 ID3D11Device オブジェクトの QueryInterface メソッドを呼び出して ID3D11Device1 インターフェースを取得する。 Windows 8.1 および Windows Server 2012 R2 で利用可能な Direct3D 11.2 デバイス (ID3D11Device2) を作成するには、まずこの関数で ID3D11Device を作成し、その後 ID3D11Device オブジェクトの QueryInterface メソッドを呼び出して ID3D11Device2 インターフェースを取得する。 デバイスを作成せずに pFeatureLevel だけでサポートされる機能レベルを判定するには、ppDevice と ppImmediateContext の両方を NULL に設定する。 例については How To: Create a Device and Immediate Context を参照。デバイスとスワップチェーンを同時に作成するには D3D11CreateDeviceAndSwapChain を使用する。 pAdapter パラメータに NULL 以外の値を指定する場合、DriverType パラメータには D3D_DRIVER_TYPE_UNKNOWN 値を指定しなければならない。pAdapter に NULL 以外を設定しつつ DriverType を D3D_DRIVER_TYPE_HARDWARE にすると、D3D11CreateDevice は E_INVALIDARG の HRESULT を返す。 このドキュメントは省略されている。
| プラグイン / モジュール | 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 |