본문 바로가기

OpenGL 3.2

Create OpenGL 3.x RenderingContext with WGL WGL을 사용하여 OpenGL 3.x 렌더링 컨텍스트(RC)를 얻어내는 과정은, 이전의 RC를 얻어내는 과정과 크게 다르지 않다. 간단히 설명하면, 원하는 RC를 얻어내기 전에, 레거시(legacy) RC를 생성하고, 이를 바탕으로 원하는 속성을 기술한 구조체와 함께 wglCreateContextAttribsARB를 호출하는 것이 전부이다. 사실, OpenGL 3.0 이상의 구현에서 wglCreateContext는 wglCreateContextAttribsARB에서 Attribs에 해당하는 인자 값을 널로 호출하는 것이다. 대략적인 코드는 다음과 같다. // get default RenderingContext HDC hDC = GetDC(hWnd); HGLRC hRC = wglCreateContext(h.. 더보기
Using OpenGL 3.x Implementations OpenGL 3.2 스펙은 2009.8.3에 발표되었다. 당연히, 각 그래픽 하드웨어 벤더들은 OpenGL 3.2 extention 형태로 제공하기 시작했다. NVIDIA의 경우, ForceWare 190.18 이상에서 OpenGL 3.1 / 3.2 구현을 제공하며, ATI는 Catalyst 9.2 이상에서 해당 OpenGL 구현을 제공한다. OpenGL을 사용하여 프로그래밍을 하고자 할 때, 가장 먼저 해야 할 일은 원하는 OpenGL 스펙을 만족하는 라이브러리를 찾는 것이다. OpenGL 1.4 버전은 대부분의 플랫폼에서 지원되며, 2.0 이상의 스펙을 원할 때는 Mesa3D와 같은 공개 구현물을 사용하면 된다. 그러나, 3.0 이상을 완전하게 구현하는 정적 라이브러리를 구하기 힘든데, 해당 라이브러.. 더보기