OpenGL® Quad 란 무엇입니까?
컴퓨터 프로그래밍 및 그래픽에서 OpenGL® 사변형 또는 사변형은 4면과 4 개의 점이있는 다각형이라고도하는 3 차원 (3D) 모양입니다. OpenGL® 쿼드의 단일 코너를 나타내는 각 3D 점은 꼭짓점으로 알려져 있으며 가상 공간에서의 좌표 위치와 관련된 세 개의 숫자로 정의됩니다. 쿼드의 꼭짓점은 네 가지가 있어야한다는 점을 제외하고 실제 지침을 따를 필요는 없습니다. 그렇지 않으면 모양은 실제 수에 따라 다각형, 삼각형 또는 선으로 알려져 있습니다. 대부분의 디지털 이미지는 실제로 직사각형이므로 OpenGL® 쿼드는 이미지가 많은 왜곡없이 복잡한 텍스처 매핑 기술없이 표면에 텍스처 매핑 될 수 있기 때문에 유용한 모양이 될 수 있습니다. 그러나 OpenGL® quad를 사용하는 데는 고유 한 문제가 있지만 완전히 사용하지 않는 것이 좋습니다.
OpenGL® 쿼드의 주요 용도 중 하나는 3D 환경에서 2D 그래픽을 그리는 것입니다. 이는 3D 장면 위에 오버레이 된 정적 사용자 인터페이스를 갖거나 OpenGL®을 사용하여 2D 그래픽을 에뮬레이션하기 위해 수행 될 수 있습니다. OpenGL®은 복잡한 3D 그래픽을 렌더링하도록 설계되었지만 API (Abstract Programming Interface)의 최적화 및 유연성으로 인해 2D 그래픽 응용 프로그램에서 자주 사용됩니다. 쿼드는 디지털 이미지의 자연스러운 3D 표현이기 때문에 2D 그래픽 렌더링에서 매우 중요합니다. 즉, 쿼드는 이미지의 치수와 정확하게 일치하도록 비례 배분 될 수 있습니다. 비율이 일치하면 이미지는 왜곡, 줄 바꿈 또는 거터 공간 유형없이 쿼드 표면에 텍스처 매핑 또는 투영 될 수 있습니다.
일부 프로그래머에 따르면 OpenGL® 쿼드를 사용하면 삼각형이 어떻게 어울리는 지 시각화하는 것과 달리 쿼드가 어떻게 어울리는지를 더 쉽게 생각할 수 있다는 장점이 있습니다. 각 쿼드가 단일면 인 큐브와 같은 간단한 3D 모양의 경우 특히 그렇습니다. 삼각형 메쉬를 사용하면 두 개의 삼각형을 결합하여 단면을 만드는 쿼드를 만들어야합니다. 쿼드는 또한 타일링되거나 그리드에 정렬 된 환경 내에서 원근감 또는 다른 효과를 생성하기 위해 쉽게 조작 될 수 있습니다.
OpenGL® quad를 사용하는 데는 몇 가지 단점이 있습니다. 주로 뷰어의 창에서 이미지를 래스터 화하거나 렌더링하는 데 사용되는 알고리즘 때문입니다. 가장 많이 발생하는 문제 중 하나는 렌더링 또는 그래픽 카드가 효율성을 위해 쿼드를 두 개의 삼각형으로 나눌 수 있다는 것입니다. 이로 인해 삼각형의 가장자리가 만나는 사각형을 통해 각도가 매끄럽지 않은 표면이 갑자기 눈에 띄게 왜곡 될 수 있습니다.
때로는 생각보다 일반적인 또 다른 문제는 OpenGL® 쿼드의 클리핑과 관련이 있습니다. 쿼드의 일부가보기 창 밖에서 화면을 벗어나면 렌더러는 쿼드를 클리핑하여 보이는 부분 만 렌더링합니다. 즉, 쿼드가 기하학적으로 잘립니다. 클리핑이 발생하기 전에 쿼드가 두 개의 삼각형으로 변환 된 경우 각 삼각형은 쿼드가되고 각 쿼드는 두 개의 삼각형으로 변환됩니다. 이로 인해 잘린 쿼드가 갑자기 하나의 부드러운 쿼드 대신 네 개의 삼각형으로 구성되는 상황이 발생합니다.
쿼드를 삼각형으로 변환하는 복잡성과 예측 불가능 성으로 인해 원하지 않는 결과가 발생합니다. 여기에는 텍스처의 왜곡, 정점 조명과 관련된 부정확성 또는 아티팩트, 때로는 폴리곤 표면 누락이 포함됩니다. 이러한 이유로 일부 프로그래머는 쿼드의 사용을 완전히 피합니다.