WinCNT

Primitive 본문

Primitive


원시 도형, 기본 도형(Primitive shapes / Topologies)

DX11 이전에는 Primitive라는 단어가 존재하고 사용되었다

DX11에서는 Primitive라는 단어가 딱히 사용되지 않는 것 같다

그리기 처리를 하는 함수도 Draw, DrawIndexed라는 이름으로 변경되었다

 

아무튼 Primitive의 잔재로 Draw, DrawIndexed와 같은 그리기 처리를 하는 함수를

DP Call이라 부르게 되었다.

참고로 DP Call이 많으면 성능에 그다지 좋지 않음

(DX9에서는 한 번에 모아서 그리는 것이 하나의 노하우였음)

 

 

Primitive Topology


Topology(위상)

기하에서의 위상(Topology)에서 가져온 단어이다

 

Input Assembler(IA) 단계에서 설정
폴리곤 베이스에서는 점, 선, 면이 기본 베이스
(현재 GPU는 복셀(...)을 지원하지 않음)

 

Primitive Topology의 종류

  • line list
    • 자주 쓴다, 특히 Axis를 그릴 때는 필수
  • triangle list
    • 가장 많이 쓴다, 일반적인 모델링을 그릴 때는 대부분 사용한다
  • 그 외 기타 등등
 

인덱스 버퍼를 쓰는 이유

버텍스 버퍼만 사용한다면 중복되는 정점이 생긴다
중복되는 값을 가지는 것 자체가 비효율적이다
그리고 메모리 공간을 더 차지하게 된다
인덱스 버퍼를 사용하면 효율이 좋아진다
Vertex에는 위치 이외에도 노말, 탄젠트, 텍스처 좌표 등등의 정보가 더 들어간다
 
일반적으로 Polygon으로 이루어진 Model은 연속적인 삼각형들이 이어진 위상 구조를 가지고 있다

 

 

SSS

'게임 프로그래밍(학습 내용 정리) > 3D Game Programming' 카테고리의 다른 글

Light  (0) 2022.03.31
Texture  (0) 2022.03.30
렌더링 파이프라인  (0) 2022.03.24
Transform(변환) 3  (0) 2022.03.23
Transform(변환) 1  (0) 2022.03.16