Platform SDK: DirectX

D3DXCreateContext

D3DXCreateContext 関数は、指定されたデバイスを初期化する。

HRESULT D3DXCreateContext(
  DWORD deviceIndex,
  DWORD flags,
  HWND hwnd,
  DWORD width,
  DWORD height,
  LPD3DXCONTEXT* ppCtx
); 

パラメータ

deviceIndex
デバイスを指定するインデックス値。このパラメータに D3DX_DEFAULT を指定すると、プライマリ サーフェスに関係のあるアクセラレート レベルの最高レベルによりデバイスが初期化される。指定可能なすべての値のリストについては、「ハードウェア アクセラレート レベル定数」を参照すること。
flags
有効なフラグは、D3DX_CONTEXT_FULLSCREEN と D3DX_CONTEXT_OFFSCREEN である。これらのフラグを両方共指定することはできない。フラグを指定しない場合、コンテキストによりデフォルトのウィンドウ モードが適用される。
hwnd
デバイス ウィンドウ。「注意」を参照すること。
width
ウィンドウの幅 (ピクセル単位) または D3DX_DEFAULT。「注意」を参照すること。
height
ウィンドウの高さ (ピクセル単位) または D3DX_DEFAULT。「注意」を参照すること。
ppCtx
選択したデバイスでレンダリングするときに使用するコンテキスト オブジェクトへのポインタのアドレス。

戻り値

成功すれば、S_OK を返す。

失敗すれば、次いずれかの値を返す。

D3DXERR_D3DXNOTSTARTEDYET
D3DXERR_INITFAILED
D3DXERR_INVALIDPARAMETER
D3DXERR_NOMEMORY
D3DXERR_NOZBUFFER
D3DXERR_NOZBUFFERAVAILABLE
D3DXERR_NULLPOINTER
DDERR_CANNOTATTACHSURFACE
DDERR_GENERIC
DDERR_INCOMPATIBLEPRIMARY
DDERR_INVALIDCAPS
DDERR_INVALIDOBJECT
DDERR_INVALIDPARAMS
DDERR_INVALIDPIXELFORMAT
DDERR_INVALIDSURFACETYPE
DDERR_NOALPHAHW
DDERR_NOCLIPPERATTACHED
DDERR_NOCOOPERATIVELEVELSET
DDERR_NODIRECTDRAWHW
DDERR_NOEMULATION
DDERR_NOEXCLUSIVEMODE
DDERR_NOFLIPHW
DDERR_NOMIPMAPHW
DDERR_NOOVERLAYHW
DDERR_NOPALETTEATTACHED
DDERR_NOPALETTEHW
DDERR_NOT8BITCOLOR
DDERR_NOZBUFFERHW
DDERR_OUTOFMEMORY
DDERR_OUTOFVIDEOMEMORY
DDERR_PRIMARYSURFACEALREADYEXISTS
DDERR_SURFACEALREADYATTACHED
DDERR_SURFACELOST
DDERR_UNSUPPORTED
DDERR_UNSUPPORTEDMODE
DDERR_WASSTILLDRAWING

注意

アプリケーションがウィンドウ モードで動作している場合、hwnd は有効なウィンドウでなければならない (NULL または D3DX_DEFAULT は指定できない)。また、width または height のいずれかが D3DX_DEFAULT の場合、両方の値に hwnd クライアント領域のディメンジョンのデフォルト値が設定される。

アプリケーションがフルスクリーン モードで動作している場合、hwnd は有効なウィンドウでなければならない (NULL または D3DX_DEFAULT は指定できない)。また、width または height のいずれかが D3DX_DEFAULT の場合、デフォルト値として width には 640 ピクセルが、height には 480 ピクセルが設定される。

アプリケーションがオフスクリーン モードで動作している場合、hwnd は NULL または D3DX_DEFAULT でなければならない。width または height のいずれかが D3DX_DEFAULT の場合は、エラーが返される。

D3DXCreateContext 関数は、使用可能な Direct3DX 初期化関数の中で最も簡単なものである。パラメータは、D3DXCreateContextEx 関数のパラメータの照合サブセットと同じように処理される。D3DXCreateContext 関数にない D3DXCreateContextEx パラメータは、D3DX_DEFAULT として処理される。

メモ  D3DXCreateContext 関数で作成されるコンテキストでは、マルチ モニタ システムがサポートされていない。マルチ モニタのサポートについては、D3DXCreateContextEx 関数を参照すること。

すべての関数について、D3DXCreateContext が障害発生時に安全であると考えてはならない。サポートされているデバイスの能力は、パラメータ値を選択するためのガイドとして使用すること。パラメータの組み合わせの中には、うまく動作しないものが必ず存在する。

D3DXCreateContext 関数によりセットアップされるデフォルト射影行列は、pi/2 ラジアンの視域 (fov) での左手座標系パースペクティブ射影である。

動作環境

  Windows NT/2000 : Windows 2000 が必要。
  Windows 95/98 : Windows 95 以上が必要。Windows 95 用に再配布可能な形で使用可能。
  バージョン : DirectX 7.0 が必要。
  ヘッダー : d3dxcore.h で宣言。
  ライブラリ : d3dx.lib を使用。

参照

D3DXCreateContextEx