次の方法で共有


wglSwapLayerBuffers 関数 (wingdi.h)

wglSwapLayerBuffers 関数は、指定したデバイス コンテキストによって参照されるウィンドウのオーバーレイ、アンダーレイ、およびメインプレーン内のフロント バッファーとバック バッファーをスワップします。

構文

BOOL wglSwapLayerBuffers(
  HDC  unnamedParam1,
  UINT unnamedParam2
);

パラメーター

unnamedParam1

レイヤ プレーン パレットを物理パレットに表示するウィンドウのデバイス コンテキストを指定します。

unnamedParam2

前面バッファーと背面バッファーを入れ替えるオーバーレイ、アンダーレイ、およびメインプレーンを指定します。 PIXELFORMATDESCRIPTOR 構造体の bReserved メンバーは、オーバーレイプレーンとアンダーレイプレーンの数を指定します。 fuPlanes パラメーターは、次の値のビットごとの組み合わせです。

 

説明
WGL_SWAP_MAIN_PLANE
メイン プレーンの前面バッファーと背面バッファーを入れ替えます。
WGL_SWAP_OVERLAYi
オーバーレイ 平面 i の前面バッファーと背面バッファーを入れ替えます。 ここで、i は 1 ~ 15 の整数です。 WGL_SWAP_OVERLAY1は、メインプレーン上の最初のオーバーレイ プレーンを識別WGL_SWAP_OVERLAY2、最初のオーバーレイ プレーン上の 2 番目のオーバーレイ プレーンを識別します。
WGL_SWAP_UNDERLAYi
アンダーレイ平面 i の前面バッファーと背面バッファーを入れ替えます。 ここで、i は 1 ~ 15 の整数です。 WGL_SWAP_UNDERLAY1は、メイン平面の下の最初のアンダーレイ 平面を識別し、WGL_SWAP_UNDERLAY2は最初のアンダーレイ平面の下にある 2 番目のアンダーレイ平面を識別します。

戻り値

関数が成功した場合、戻り値は TRUE になります。 関数が失敗した場合、戻り値は FALSE になります。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

レイヤー プレーンにバック バッファーが含まれていない場合、 wglSwapLayerBuffers 関数を呼び出しても、そのレイヤー プレーンには影響しません。 wglSwapLayerBuffers を呼び出すと、バック バッファー コンテンツの状態は、レイヤー プレーンの対応する LAYERPLANEDESCRIPTOR 構造体、またはメイン プレーンの PIXELFORMATDESCRIPTOR 構造体で指定されます。 wglSwapLayerBuffers 関数は、指定されたレイヤー プレーン内のフロント バッファーとバック バッファーを同時にスワップします。

一部のデバイスでは、レイヤー プレーンを個別にスワップできません。すべてのレイヤ プレーンをグループとしてスワップします。 PIXELFORMATDESCRIPTOR 構造体のPFD_SWAP_LAYER_BUFFERS フラグを設定すると、デバイスが個々のレイヤー プレーンをスワップでき、wglSwapLayerBuffers を呼び出すことができることを示します。

複数のスレッドを使用するアプリケーションでは、 wglSwapLayerBuffers を呼び出す前に、同じウィンドウに描画されているすべてのスレッドのすべての描画コマンドをクリアします。

要件

   
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー wingdi.h
Library Opengl32.lib
[DLL] Opengl32.dll

関連項目

LAYERPLANEDESCRIPTOR

Windows 上の OpenGL

PIXELFORMATDESCRIPTOR

SwapBuffers

WGL 関数