렌더링 컨텍스트 만들기 및 현재 상태로 만들기
다음 코드 샘플에서는 WM_CREATE 메시지에 대한 응답으로 OpenGL 렌더링 컨텍스트를 만드는 방법을 보여줍니다. 렌더링 컨텍스트를 만들기 전에 픽셀 형식을 설정합니다. 또한 이 시나리오에서는 디바이스 컨텍스트가 로컬로 릴리스되지 않습니다. 렌더링 컨텍스트를 최신 상태가 아닌 상태로 만든 후 창을 닫을 때 해제합니다. 자세한 내용은 렌더링 컨텍스트 삭제를 참조하세요. 마지막으로 wglGetCurrentContext 및 wglGetCurrentDC 함수를 사용하면 필요에 따라 해당 컨텍스트에 대한 핸들을 가져올 수 있으므로 디바이스 컨텍스트 및 렌더링 컨텍스트 핸들에 지역 변수를 사용할 수 있습니다.
// a window has been created, but is not yet visible
case WM_CREATE:
{
// local variables
HDC hdc ;
HGLRC hglrc ;
// obtain a device context for the window
hdc = GetDC(hWnd);
// set an appropriate pixel format
myPixelFormatSetupFunction(hdc);
// if we can create a rendering context ...
if (hglrc = wglCreateContext( hdc ) ) {
// try to make it the thread's current rendering context
bHaveCurrentRC = wglMakeCurrent(hdc, hglrc) ;
}
// perform miscellaneous other WM_CREATE chores ...
}
break;