D3D11CreateDeviceAndSwapChain

ディスプレイ アダプターを表すデバイスとレンダリングに使用するスワップ チェーンを作成します。

HRESULT D3D11CreateDeviceAndSwapChain(
  IDXGIAdapter *pAdapter,
  D3D_DRIVER_TYPE DriverType,
  HMODULE Software,
  UINT Flags,
  CONST D3D_FEATURE_LEVEL *pFeatureLevels,
  UINT FeatureLevels,
  UINT SDKVersion,
  CONST DXGI_SWAP_CHAIN_DESC *pSwapChainDesc,
  IDXGISwapChain **ppSwapChain,
  ID3D11Device **ppDevice,
  D3D_FEATURE_LEVEL *pFeatureLevel,
  ID3D11DeviceContext **ppImmediateContext
);

パラメータ

pAdapter
デバイスの作成時に使用するビデオ アダプターへのポインターです (「IDXGIAdapter」を参照)。既定のアダプターを使用するには NULL を渡します。既定のアダプターは、IDXGIFactory::EnumAdapters によって最初に列挙されたアダプターです。
DriverType
作成するデバイスの種類を表す D3D_DRIVER_TYPE です。
Software
ソフトウェア ラスタライザーを実装する DLL のハンドルです。DriverTypeD3D_DRIVER_TYPE_SOFTWARE の場合、Software を NULL に設定することはできません。このハンドルを取得するには、LoadLibraryLoadLibraryEx、または GetModuleHandle を呼び出します。この値は、D3D_DRIVER_TYPED3D_DRIVER_TYPE_SOFTWARE の場合は NULL 以外に設定し、それ以外の場合は NULL に設定する必要があります。
Flags
有効にするランタイム レイヤーです (「D3D11_CREATE_DEVICE_FLAG」を参照)。値はビット単位の OR 演算で指定できます。
pFeatureLevels
作成を試みる機能レベルの順序を指定する D3D_FEATURE_LEVEL の配列へのポインターです。使用できる最大の機能レベルを取得するには、既定のパラメーターを使用します。pFeatureLevels を NULL に設定すると、次のような機能レベルの配列が使用されます。
 {     D3D_FEATURE_LEVEL_11_0,     D3D_FEATURE_LEVEL_10_1,     D3D_FEATURE_LEVEL_10_0,     D3D_FEATURE_LEVEL_9_3,     D3D_FEATURE_LEVEL_9_2,     D3D_FEATURE_LEVEL_9_1, };           
FeatureLevels
pFeatureLevels の要素数です。
SDKVersion
SDK のバージョンです。D3D11_SDK_VERSION を指定します。
pSwapChainDesc
スワップ チェーンの初期化パラメーターを格納するスワップ チェーンの記述 (「DXGI_SWAP_CHAIN_DESC」を参照) へのポインターです。
ppSwapChain
レンダリングに使用するスワップ チェーンを表す IDXGISwapChain オブジェクトへのポインターのアドレスを返します。
ppDevice
作成されたデバイスを表す ID3D11Device オブジェクトへのポインターのアドレスを返します。入力として NULL を指定すると、pFeatureLevel でサポートされている最高の機能レベルが返されます。
pFeatureLevel
このデバイスでサポートされている機能レベルの配列にある最初の要素を表す D3D_FEATURE_LEVEL へのポインターを返します。
ppImmediateContext
デバイス コンテキストを表す ID3D11DeviceContext オブジェクトへのポインターのアドレスを返します。

戻り値

このメソッドは、「Direct3D 11 のリターン コード」のいずれかを返します。

解説 

このエントリーポイントと D3D11.DLL には Direct3D 11 ランタイムが必要です。Direct3D 11 ランタイムは、Windows 7、Windows Server 2008 R2、および Windows Vista の更新プログラム (KB971644) に付属しています。

また、入力パラメーターの依存関係の詳細については、「D3D11CreateDevice」の「解説」を参照してください。スワップ チェーンを作成せずにデバイスを作成するには、D3D11CreateDevice 関数を使用します。

要件

ヘッダー: D3D11.h 宣言

ライブラリ: D3D11.lib 内容

関連項目

コア関数

表示: