이중 버퍼를 사용하여 그리기
이중 버퍼는 화면의 한 이미지와 다른 이미지 간의 전환을 부드럽게 합니다. 버퍼 교환은 일반적으로 그리기 명령 시퀀스의 끝에 있습니다. 기본적으로 Windows에서 OpenGL의 Microsoft 구현은 화면 끄기 버퍼에 그립니다. 그리기가 완료되면 SwapBuffers 함수를 호출하여 화면 오프 스크린 버퍼를 화면 버퍼에 복사합니다. 다음 코드 샘플에서는 그리기를 준비하고 그리기 함수를 호출한 다음 이중 버퍼링을 사용할 수 있는 경우 완성된 이미지를 화면에 복사합니다.
void myRedraw(void)
{
// set up for drawing commands
glMatrixMode(GL_PROJECTION);
glLoadIdentity();
gluPerspective(45, 1.0, 0.1, 100.0);
// draw our objects
myDrawAllObjects(GL_FALSE);
// if we're double-buffering ...
if (bDoubleBuffering)
// ...draw the copied image to the screen
SwapBuffers(hdc);
}
다음 코드 샘플은 창 디바이스 컨텍스트를 가져오고, 장면을 렌더링하고, 이미지를 화면에 복사하여 렌더링을 표시한 다음, 디바이스 컨텍스트를 해제합니다.
hdc = GetDC(hwnd);
mySceneRenderingFunction();
SwapBuffers(hdc);
ReleaseDC(hWnd, hdc);
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기