OpenGL
-
Opengl 지오메트리 쉐이더(geometry shader, 기하 쉐이더)3D웹 프로그래밍/opengl 2020. 11. 19. 16:26
지오메트리 쉐이더 지오메트리 쉐이더는 버텍스 스테이지와 테셀레이션 스테이지의 다음단계이며, 개념적으로는 마지막 쉐이더 스테이지다. 지오메트리 쉐이더는 프리미티브당 한 번 수행되며, 수행되는 프리미티브를 구성하는 모든 버텍스에 대한 입력 버텍스 데이터에 접근할수있다. 또한 데이터 흐름의 양을 증가시키거나 감소시킬수있는 유일한 쉐이더 스테이지다. 지오메트리는 EmitVertex()와 EndPrimitive()함수를통해 프리미티브 어셈블리 및 래스터라이제이션으로 보내는 버텍스를 명시적으로 생성할 수 있다. 지오메트리 쉐이더의 다른 고유한 기능으로 파이프라인 중간에 프리미티브의 모드를 변경하는 기능이 있다. 예를들면 삼각형들을 입력으로 하여 여러 점이나 선을 출력으로 만들어 낼수있다. 예를들면 static co..
-
Opengl과 그래픽스 파이프라인 및 Opengl 기초3D웹 프로그래밍/opengl 2020. 11. 18. 14:57
OpengL opengl은 자동차공장에서 바퀴를 만드는곳 그리고 차체를 만드는곳 따로 이루어지다가 마지막에 조립하며 완성품을 만들듯이 opengl도 파이프라인 분할과 병렬화를 조합하여 사용한다. Opengl 목표 애플리케이션과 그 하부의 그래픽스 서브시스템의 추상화 레이어를 제공한다. 그래픽스 서브시스템은 여러 고성능 프로세서로 이루어져있으며, 전용 메모리,디스플레이 출력 등을 가진다. 이 추상화 레이어를 통해 그래픽스 프로세스 유닛(graphihcs processing unit)(GPU)제작사가 어디인지, 어떻게 동작하는지 ,성능이 어떤지 알 필요가없다. Opengl은 설계 원칙이 높지도 낮지도 않은 추상화수준의 균형을 이룬다. 아래는 그래픽스 파이프라인 순서이다. 둥근박스는 고정이고 사각박스는 개발자..