Technical/Shader

Mesh

ParkJinseok 2021. 3. 1. 15:57
  • 컴퓨터가 이해 할수 있는 형식으로 대상의 형태를 정의하는 방법 중 하나.

  • 메쉬는 형태를 정의하기 위해 Vertex, Edges, Faces라는 세 가지 정보를 저장한다.
    • Vertex는 3D 공간에 있는 점을 의미함.
    • Edges는 Vertex를 연결한 선을 가리킴.
    • Faces는 세개 또는 그 이상의 Edge로 구성 된 3D 형태를 말함.

  • 어떤 2D 형태로도 Faces를 구성 할 수 있지만, 처리 속도와 간결함을 위해, 많은 게임 엔진은 삼각형 형태의 Face로 구성된 메쉬를 요구 함.


  • 메쉬가 컴퓨터 그래픽에서 널리 사용되는 이유중 하나는 코드에서 쉽게 정의 할 수 있음.
    • 메쉬는 오직 Vertex만을 메모리에 저장함.

  • Edge와 Face는 Vertex 순서(Vertex Ordering)를 간접적으로 정의함.
    • 메쉬 테이터에 Vertex가 저장되는 순서에 따라 단순히 Vertex 순서를 결정하는 경우가 있다.
    • 반면, 인덱스 버퍼(Index Buffer)라는 데이터 구조를 통해 Vertex 순서를 정의하는 경우도 있다.
    • Vertex 순서가 중요한 이유는 Face의 앞면을 결정함.
    • Vertex의 순서를 결정한 방향(시계방향, 반시계방향)을 와인딩 순서(Winding Order)라 한다.

  • Vertex의 앞면이 어느쪽인지 중요한 이유는 많은 게임이 Face의 뒷면을 렌더링하지 않기 때문임.
    이것이 Backface Culling이라고 불리는 최적화 테크닉임.

  • 메쉬의 Vertex는 Vector를 사용해서 정의함.

'Technical > Shader' 카테고리의 다른 글

Shader  (0) 2021.03.01
Rendering Pipeline  (0) 2021.03.01
Color  (0) 2021.03.01
Vector  (0) 2021.03.01
Rendering  (0) 2021.03.01