앞면, 뒤로 및 기타 버퍼

OpenGL은 프레임 버퍼에 픽셀 데이터를 저장하고 조작합니다. 프레임 버퍼는 색, 깊이, 누적 및 스텐실 버퍼와 같은 논리 버퍼 집합으로 구성됩니다. 색 버퍼 자체는 논리 버퍼 집합으로 구성됩니다. 이 집합에는 앞 왼쪽, 오른쪽 앞, 뒤로 왼쪽, 뒤로 오른쪽 및 일부 보조 버퍼가 포함될 수 있습니다. 특정 픽셀 형식 또는 OpenGL 구현은 이러한 버퍼를 모두 제공하지 않을 수 있습니다. 예를 들어 Windows에서 Microsoft의 OpenGL 구현의 현재 버전은 입체 이미지를 지원하지 않으므로 픽셀 형식에 왼쪽 및 오른쪽 색 버퍼가 있을 수 없습니다. 또한 현재 버전은 보조 버퍼를 지원하지 않습니다. OpenGL 버퍼 및 해당 버퍼에서 작동하는 OpenGL 함수에 대한 자세한 내용은 OpenGL 참조 설명서OpenGL 프로그래밍 가이드를 참조하세요.

Windows에서 Microsoft의 OpenGL 구현은 이미지의 이중 버퍼링을 지원합니다. 이 기술은 애플리케이션이 오프 스크린 버퍼에 픽셀을 그린 다음, 해당 이미지를 표시할 준비가 되면 화면 오프 스크린 버퍼의 내용을 화상 버퍼에 복사하는 기술입니다. 이중 버퍼링은 애니메이션 이미지에 특히 중요한 부드러운 이미지 변경을 가능하게 합니다.

이중 버퍼링을 사용하는 애플리케이션에는 전면 버퍼와 백 버퍼라는 두 가지 색 버퍼를 사용할 수 있습니다. 기본적으로 그리기 명령은 백 버퍼(화면 끄기 버퍼)로 전달되고 전면 버퍼는 화면에 표시됩니다. 화면 끄기 버퍼를 표시할 준비가 되면 SwapBuffers를 호출하고 Windows는 오프 스크린 버퍼의 내용을 화면 버퍼에 복사합니다.

제네릭 구현에서는 디바이스 독립적 비트맵(DIB)을 백 버퍼로 사용하고 화면은 전면 버퍼로 표시됩니다. 하드웨어 디바이스 및 해당 드라이버는 다양한 접근 방식을 사용할 수 있습니다.

이중 버퍼링은 픽셀 형식 속성입니다. 픽셀 형식에 대한 이중 버퍼링을 요청하려면 ChoosePixelFormat 호출에서 PIXELFORMATDESCRIPTOR 데이터 구조에서 PFD_DOUBLEBUFFER 플래그를 설정합니다.

OpenGL 핵심 함수인 glDrawBuffer는 쓰기 및 지우기용 버퍼를 선택합니다.

버퍼 함수