wglCreateLayerContext 関数 (wingdi.h)

wglCreateLayerContext 関数は、デバイス コンテキストで指定されたレイヤー プレーンに描画するための新しい OpenGL レンダリング コンテキストを作成します。

構文

HGLRC wglCreateLayerContext(
  HDC unnamedParam1,
  int unnamedParam2
);

パラメーター

unnamedParam1

新しいレンダリング コンテキストのデバイス コンテキストを指定します。

unnamedParam2

レンダリング コンテキストをバインドするレイヤー プレーンを指定します。 値 0 は、メイン平面を識別します。 iLayerPlane の正の値はオーバーレイプレーンを識別します。ここで、1 はメイン平面上の最初のオーバーレイプレーン、2 は最初のオーバーレイプレーン上の 2 番目のオーバーレイプレーンなどです。 負の値を指定すると、アンダーレイ平面が識別されます。ここで、1 はメイン平面の下の最初のアンダーレイ平面、2 は最初のアンダーレイ平面の下の 2 番目のアンダーレイ平面などです。 オーバーレイ面とアンダーレイ 平面の数は、PIXELFORMATDESCRIPTOR 構造体の bReserved メンバーで指定されます。

戻り値

関数が成功した場合、戻り値は OpenGL レンダリング コンテキストへのハンドルです。

関数が失敗した場合は、返される値は NULL です。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

レンダリング コンテキストは、すべての OpenGL コマンドが渡されるポートです。 OpenGL 呼び出しを行うすべてのスレッドには、現在アクティブなレンダリング コンテキストが 1 つ必要です。 レンダリング コンテキストは、デバイス コンテキストと同じではありません。レンダリング コンテキストには OpenGL に固有の情報が含まれますが、デバイス コンテキストには GDI に固有の情報が含まれます。

レンダリング コンテキストを作成する前に、 SetPixelFormat 関数を使用してデバイス コンテキストのピクセル形式を設定します。 同じピクセル形式でのみ、ウィンドウの指定されたレイヤー プレーンでレンダリング コンテキストを使用できます。

複数のスレッドを使用する OpenGL アプリケーションでは、レンダリング コンテキストを作成し、スレッドの現在のレンダリング コンテキストとして選択し、指定したスレッドに対して OpenGL 呼び出しを行います。 スレッドのレンダリング コンテキストが終了したら、 wglDeleteContext 関数を呼び出します。

例

次のコード例は 、wglCreateLayerContext の使用方法を示しています。

// The following code fragment shows how to render to overlay 1  
// This example assumes that the pixel format of hdc includes   
// overlay plane 1  
 
HDC hdc; 
HGLRC; 
 
// create a rendering context for overlay plane 1  
hglrc = wglCreateLayerContext(hdc, 1); 
 
// make it the calling thread's current rendering context  
wglMakeCurrent(hdc, hglrc); 
 
// call OpenGL functions here. . .  
 
// when the rendering context is no longer needed. . .  
 
// make the rendering context not current  
wglMakeCurrent(NULL, NULL); 
 
// delete the rendering context  
wglDeleteContext(hglrc);

要件

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

関連項目

Windows 上の OpenGL

PIXELFORMATDESCRIPTOR

SetPixelFormat

WGL 関数

wglCreateContext

wglDeleteContext

wglGetCurrentContext

wglGetCurrentDC

wglMakeCurrent