범용성
제일은 거의 대부분 하드웨어 실행될 수 있도록 설계되었다. 따라서 MS의 Windows를 비롯한 Unix와 같은 운영체제에서도 실행될 수 있다.
효율성
3차원 그래픽 영상을 그려내는데는 수 많은 연산이 필요하다. 따라서 GPU 이나 프레임 버퍼 등 그래픽 하드웨어의 가속 기능을 최대한 발휘하는 것이 렌더링 속도를 올리는 지름길이다. 그러나 그래픽 하드웨어는 제조사 마다 다르기 때문에 OpenGL에서는 주어진 기능을 프로그램에 의해 활성화 또는 비활성화 시킬수 있다.
독립성
어떤 기능을 확성화 또는 비활성화 모드로 가져가는 것이 다른 기능에 영향을 미쳐서는 안된다. 이는 기능끼리 서로 얽혀 발생하는 오류를 방지하기 위한 것이다.
완전성
OpenGL에서는 공통된 기능이 아닌 특정 하드웨어 기능에 대해서는 ARB확장 형태로 명령어를 제공 한다. 반면 프로그램이 특정 하드웨어만 지원하면 사용하기가 까다로워진다. 따라서 특정기능이 지원되지 않더라도 소프트웨어적으로 실행할 수 있도록 되어있다. 그러나 이경우 CPU를 사용하므로 렌더링 속도가 느려질수 있다. 그리고 특정기능이라 하더라도 많은 하드웨어 에서 쓰이게 되면 표준으로 변경이 될수있다.
상호 작업성
네트워크로 연결된 서로 다른 기종간의 연결된 컴퓨터에서 A라는 컴퓨터에서 명령을해 B라는 컴퓨터에서 실행 하게 할 수 있다. 일종의 클라이언트-서버 모델로 상대적으로 성능이 낮은 클라이언트 컴퓨터에서 고성능 서버를 이용할 수 있다.
제일은 거의 대부분 하드웨어 실행될 수 있도록 설계되었다. 따라서 MS의 Windows를 비롯한 Unix와 같은 운영체제에서도 실행될 수 있다.
효율성
3차원 그래픽 영상을 그려내는데는 수 많은 연산이 필요하다. 따라서 GPU 이나 프레임 버퍼 등 그래픽 하드웨어의 가속 기능을 최대한 발휘하는 것이 렌더링 속도를 올리는 지름길이다. 그러나 그래픽 하드웨어는 제조사 마다 다르기 때문에 OpenGL에서는 주어진 기능을 프로그램에 의해 활성화 또는 비활성화 시킬수 있다.
독립성
어떤 기능을 확성화 또는 비활성화 모드로 가져가는 것이 다른 기능에 영향을 미쳐서는 안된다. 이는 기능끼리 서로 얽혀 발생하는 오류를 방지하기 위한 것이다.
완전성
OpenGL에서는 공통된 기능이 아닌 특정 하드웨어 기능에 대해서는 ARB확장 형태로 명령어를 제공 한다. 반면 프로그램이 특정 하드웨어만 지원하면 사용하기가 까다로워진다. 따라서 특정기능이 지원되지 않더라도 소프트웨어적으로 실행할 수 있도록 되어있다. 그러나 이경우 CPU를 사용하므로 렌더링 속도가 느려질수 있다. 그리고 특정기능이라 하더라도 많은 하드웨어 에서 쓰이게 되면 표준으로 변경이 될수있다.
상호 작업성
네트워크로 연결된 서로 다른 기종간의 연결된 컴퓨터에서 A라는 컴퓨터에서 명령을해 B라는 컴퓨터에서 실행 하게 할 수 있다. 일종의 클라이언트-서버 모델로 상대적으로 성능이 낮은 클라이언트 컴퓨터에서 고성능 서버를 이용할 수 있다.
'라이브러리 > OpenGL' 카테고리의 다른 글
기하 변환 (0) | 2009.03.22 |
---|---|
3차원 물체의 표현 (0) | 2009.03.22 |
디스플레이 리스트 (0) | 2009.03.22 |
정점배열 (0) | 2009.03.22 |
GLUT 모델링 (0) | 2009.03.21 |
OpenGL의 좌표계, 뷰포트 (0) | 2009.03.21 |
파이프라인과 상태변수 (0) | 2009.03.21 |
채도, 명도 (0) | 2009.03.21 |
GLUT의 콜백함수 (0) | 2009.03.09 |
GLUT의 윈도우 관련 함수 (0) | 2009.03.09 |