OpenGL® 클래스 란 무엇입니까?
OpenGL® 클래스는 OpenGL® 추상 프로그래밍 인터페이스 (API) 부분의 객체 지향 구현 또는 자체 코드 내에서 OpenGL® 함수 호출을 사용하는 클래스를 참조 할 수 있습니다. OpenGL® 라이브러리의 특성상 API의 객체 지향 버전이 실제로 지원되지 않았으며 대부분의 프로그램은 클래스 외부에서 작성된대로 함수라고 불렀습니다. 객체 지향 언어가 널리 보급됨에 따라 다른 OpenGL® 클래스 라이브러리가 코어 라이브러리의 래퍼 객체 역할을하는 것으로 나타났습니다. 캡슐화 및 기본 구현을 보호하면서 상속을 통해 새로운 기능 클래스를 도출하는 방법을 포함하여 라이브러리에서 제공되는 함수 모음 대신 완전히 실현 된 OpenGL® 클래스를 사용하면 이점이 있습니다. 모든 개발자가 OpenGL® 클래스 라이브러리를 사용하는 것은 아닙니다. 완전히 객체 지향 프로그래밍 패러다임으로 전환하는 것이 혼란 스러울 수 있기 때문입니다.
객체 지향 프로그래밍에서 클래스는 포함 된 정보를 수정하는 메소드라고하는 데이터, 변수 및 함수의 모음입니다. 객체 지향 언어가 아닌 C 프로그래밍 언어의 함수 라이브러리 인 OpenGL®의 기원은 개발 된 일부 방법론과 프로그래밍 방식이 객체 지향 프로그래밍에 적합하지 않음을 의미합니다. 일부 운영 체제 및 기타 장치가 객체 지향 언어에 더 의존하기 시작하면 여러 OpenGL® 클래스 라이브러리가 존재하게되었습니다.
일부 OpenGL® 클래스 라이브러리는 기본 OpenGL® 기능을 간단히 캡슐화했습니다. 이는 프로그래밍을위한 안전하고 호환 가능한 프레임 워크를 제공했습니다. 이러한 유형의 클래스는 일부 언어에 필요했지만 여전히 지원 클래스를 기능적 응용 프로그램으로 만들어야했습니다. 실제로 구성된 라이브러리는 실제로 OpenGL® 기능을 일련의 클래스로 나누었으며 각각은 렌더링과 같은 라이브러리의 다른 요소를 관리합니다.
많은 OpenGL® 클래스 라이브러리가 기본 OpenGL® 엔진에서 확장되기 시작했으며 더 많은 기능을 포함하기 시작했습니다. 여기에는 주로 장면 그래프라는 장면에서 객체를 처리하기위한 특수 클래스가 포함되었습니다. 이러한 클래스는 코어 라이브러리의 래퍼 역할을하면서 매번 새로운 OpenGL® 프레임 워크를 발명하지 않고도 장면을 렌더링하고 종료하는 것 이상의 프로그램을 만들 수있는 논리 구조를 제공합니다.
유틸리티 라이브러리를 포함하여 거의 모든 OpenGL® 라이브러리는 어떤 방식 으로든 객체 지향 형식으로 변환되었습니다. 이로 인해 개발자는 객체 지향 환경에서 OpenGL®을 구현하는 방법에 대해 거의 균일 한 청사진을 작성함으로써 존재하는 다양한 장치에서 개발자가 OpenGL®을 쉽게 업데이트 할 수있었습니다. 객체 지향 개발 도구를 추가함으로써 OpenGL® 클래스를 시각적 개발을 지원하는 프로그램으로 드래그 앤 드롭하여보다 복잡한 부분을 단순화 할 수있었습니다.