OpenGL

Chugun (토론 | 기여)님의 2015년 5월 16일 (토) 20:07 판

틀:토막글 OpenGL은 크로스 플랫폼 그래픽 라이브러리이며 현재 크로노스 재단에서 표준을 제정하고 있다. 경쟁 상대로 마이크로소프트DirectX가 있었고, 한때는 크게 뒤쳐졌지만, 현재는 다시 주류로 올라오면서 오히려 DirectX가 OpenGL을 따라가는 형태가 되었다.

명칭에 Open이 들어가있어 오픈소스로 종종 착각되고 하지만, OpenGL의 Open은 그래픽 라이브러리를 쓸 수 있게 열어뒀다는 의미에 가깝다.

최신 버전은 4.5이다.

예전에는 AMD(구 ATI) 그래픽카드보다는 NVIDIA 그래픽카드가 OpenGL을 훨씬 잘 지원해주었으나, 지금은 거의 도찐개찐인 상태이다.

장점

다양한 운영체제에서 지원하므로, 그래픽 렌더링 코드를 변경없이 사용할 수 있다는 장점이 있고. 기본적으로 C언어 함수로 되어 있기 때문에 다양한 언어에서 OpenGL를 사용할수 있다.

단점

오직 그래픽에 필요한 부분만 지원함으로서 GUI인터페이스의 창에 대한 지원같은 것은 따로 배워야 한다는 단점이 있으며, 그래픽카드에 따라서 렌더링 오류가 많았다.(특히 AMD사 그래픽카드...)

버전

1.0

1992년도에 나왔으며 OpenGL의 첫버전이다.

1.1

1995년에 나왔다.

1.2

1998년에 나왔다.

1.3

2001년에 나왔다.

1.4

2002년에 나왔다.

당시 이 버전을 지원하던 그래픽카드는 다이렉트X 8.0와 다이렉트X 8.1을 지원하였다.

1.5

2003년에 나왔다. 당시 이 버전을 지원하던 그래픽카드는 다이렉트X 9을 지원하였다.

2.0

2004년에 나왔다. 버전 1대에 비해 셰이더 쪽에서 많은 변화가 일어났다. 특히 1대에서는 소스 언어에서 직접 GL의 함수를 통해 폴리곤을 그리고 제어했으나, 2.0부터 GLSL (GL 쉐이더 언어, C-like)를 지원하기 시작했다. 대응되는 GLSL 버전은 110(1.10). GLSL을 사용함으로 인해 이전 버전과 이후 버전을 가르는 큰 계기가 되고 있다.

2.1

2006년에 나왔다. GLSL 버전 120(1.20).

3.0

2008년에 나왔다. 버텍스와 프래그먼트 직접 제어 등이 사라지는 등 많은 변화를 겪었다. GLSL 버전 130(1.30).

3.1

2009년 3월에 나왔다. GLSL 버전 140(1.40).

3.2

2009년 8월에 나왔다. GLSL 버전 150(1.50).

3.3

2010년 3월에 나왔다. Direct3D 10과 호환이 되도록 나왔다. GLSL 버전은 이때부터 버전 번호에 맞춰가기 시작했으며, 지원 기능과 여러가지 면에서 3.3보다 전의 OpenGL을 고전적(Classic) OpenGL, 이후의 OpenGL을 현대적(Modern) OpenGL이라고 하는 경향이 있다.

4.0

2010년 3월에 나왔다. Direct3D 11과 호환이 되도록 나왔다. 3.3과 거의 동시에 발매된건 하드웨어 성능적인 면이 좀 있다.

4.1

2010년 6월에 나왔다. ES 2.0과 호환되는 라이브러리를 지원한다.

4.2

2011년에 나왔다.

4.3

2012년에 나왔다.

4.4

2013년에 나왔다.

4.5

2014년에 나왔다.

파생

OpenGL ES

OpenGL에서 대체할 수 있는 기능은 제거하여 모바일에서 구동할 수 있게 단순화한 버전이다.

WebGL

OpenGL 2.0을 기초로 만들어진 표준으로서, 웹사이트 안에서 3D을 그릴 수 있게 해준다.