Win32 API 日本語リファレンス
ホーム › Graphics.Direct3D11 › PFN_D3D11_CREATE_DEVICE_AND_SWAP_CHAIN

PFN_D3D11_CREATE_DEVICE_AND_SWAP_CHAIN

コールバック

シグネチャ

HRESULT PFN_D3D11_CREATE_DEVICE_AND_SWAP_CHAIN(
    IDXGIAdapter* param0,
    D3D_DRIVER_TYPE param1,
    HMODULE param2,
    DWORD param3,
    D3D_FEATURE_LEVEL* param4,
    DWORD FeatureLevels,
    DWORD param6,
    DXGI_SWAP_CHAIN_DESC* param7,
    IDXGISwapChain** param8,
    ID3D11Device** param9,
    D3D_FEATURE_LEVEL* param10,
    ID3D11DeviceContext** param11
);

パラメーター

フィールド型説明
param0IDXGIAdapter*
param1D3D_DRIVER_TYPE
param2HMODULE
param3DWORD
param4D3D_FEATURE_LEVEL*
FeatureLevelsDWORDpFeatureLevels の要素数です。
param6DWORD
param7DXGI_SWAP_CHAIN_DESC*
param8IDXGISwapChain**
param9ID3D11Device**
param10D3D_FEATURE_LEVEL*
param11ID3D11DeviceContext**

公式ドキュメント

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

戻り値

型: HRESULT

このメソッドは、Direct3D 11 の戻り値コード のいずれかを返すことがあります。

セッション 0 のプロセスで呼び出した場合、このメソッドは DXGI_ERROR_NOT_CURRENTLY_AVAILABLE を返します。

pAdapter パラメーターに NULL 以外の値を設定し、DriverType パラメーターに D3D_DRIVER_TYPE_HARDWARE を設定した場合、このメソッドは E_INVALIDARG を返します。

Flags に D3D11_CREATE_DEVICE_DEBUG を指定し、コンピューターにインストールされている デバッグレイヤー のバージョンが正しくない場合、このメソッドは DXGI_ERROR_SDK_COMPONENT_MISSING を返します。正しいバージョンを入手するには、最新の Windows SDK をインストールしてください。

解説(Remarks)

メモ セッション 0 のプロセスでこのメソッドを呼び出した場合、DXGI_ERROR_NOT_CURRENTLY_AVAILABLE が返ります。
このエントリポイントは 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 インターフェイスを取得します。

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

pAdapter パラメーターに NULL 以外の値を設定する場合は、DriverType パラメーターに D3D_DRIVER_TYPE_UNKNOWN も設定する必要があります。pAdapter パラメーターに NULL 以外の値を設定し、DriverType パラメーターに D3D_DRIVER_TYPE_HARDWARE を設定した場合、D3D11CreateDeviceAndSwapChain は E_INVALIDARG の HRESULT を返します。

関数シグネチャ PFN_D3D11_CREATE_DEVICE_AND_SWAP_CHAIN は typedef として提供されているため、静的リンクの代わりに動的リンクの手法 (GetProcAddress) を使用できます。

使用上の注意

メモ D3D11CreateDeviceAndSwapChain 関数は Windows ストアアプリには存在しません。Windows ストアアプリでは代わりに D3D11CreateDevice 関数を使用し、続いて IDXGIFactory2::CreateSwapChainForCoreWindow メソッドを使用します。
メモ この関数は、スワップチェーン作成に関する最近の追加機能に対応するようには更新されていません。最新のスワップチェーン作成方法については、IDXGIFactory2 の各メソッド (CreateSwapChainForHwnd、CreateSwapChainForCoreWindow、CreateSwapChainForComposition など) を参照してください。
Windows Phone 8: この API はサポートされています。
出典・ライセンス: 上記「公式ドキュメント」の内容は Microsoft の Win32 API ドキュメント(MicrosoftDocs/sdk-api)を日本語に翻訳・改変したものです。© Microsoft Corporation. CC BY 4.0 で提供。
Microsoft 公式リファレンス: 英語 (en-us) · 日本語 (ja-jp) · 原文ソース (GitHub)