본문 바로가기
프로그래밍/공부

[Graphics] 정점, 폴리곤, 메시

by Sik.K 2023. 5. 8.

컴퓨터 공간에서 객체가 존재할 때는 좌표 위에 존재한다. 2D에서는 x와 y의 두 축만 가지면 되기 때문에 비교적 간단하지만 3D로 넘어오면 축 하나가 추가된다.

 

어쨌든 이 좌표에 객체를 두고 이를 그래픽으로 나타내고 싶을 경우에는 어떻게 하면 될까?

 

렌더링 파이프라인에서 첫 번째 작업은 IA이다. 입력 어셈블러라고 하는 단계인데 이 단계에서 파이프라인에 필요한 자원들 중, 정점의 정보들이 들어와 입력이 된다.

 

Vertex(정점)란 좌표 위에 존재하는 하나의 점을 의미한다. 흔히 벡터(STL이 아닌 수학적 의미의 벡터)로 나타나며 벡터는 (x,y,z)로 나타낸다.

 

정점은 공간상에서의 위치(position)를 나타내는 것으로, 일반적으로 여러 개가 모여서 특정 형태의 오브젝트를 구성하는 요소가 된다.

 

이후 이 정점들의 정보가 저장이 되고 이를 어떻게 그릴지 방법을 정하는데 이를 Primitve Topology라고 한다.

 

단순한 점들의 나열인지, 점들을 이은 선인지, 하나의 폴리곤을 만들어 표시를 하는지 등, 여러 그리는 방법이 있다.

 

이 중, 폴리곤은 세 개의 정점을 이은 삼각형을 말하는 데, 모든 객체는 무수한 삼각형들의 집합으로 이뤄져 있다. 이 집합을 메시라고 한다.

 

정점, 폴리곤, 메시

'프로그래밍 > 공부' 카테고리의 다른 글

[C++] std::Function  (0) 2023.05.25
[Graphics] 3D 환경에서 회전  (1) 2023.05.16
[C++] 포인터  (0) 2023.05.04
[C++] & Reference  (0) 2023.04.22
[C++] Lvalue & Rvalue  (0) 2023.04.22

댓글