“이득우의 게임수학” 책을 읽고 중요하다고 생각하는 부분을 정리한 내용들입니다!
아핀 공간에서 2 점의 아핀 결합을 확장하여 물체를 렌더링하는 기본 단위인 삼각형을 표현하는 방법에 대해 알아보고 삼각형 내부 픽셀을 어떤 색으로 칠할지 결정하는 방법에 대해서도 정리해 본다.
삼각형의 표현
세 점의 결합
- 3개의 점을 아핀 결하여 평면의 모든 벡터를 나타낼 수 있음
- $P^\prime = sP_1 + tP_2 + (1 - s - t)P_3$
- $(P^\prime - P_3) = s(P_1 - P_3) + t(P_2 - P_3)$
- $\vec{w} = s\vec{u} + t\vec{v}$
- u와 v가 선형 독립 관계라면 2차원 실벡터 공간의 모든 벡터를 선형결합으로 만들 수 있음 → 평면
- s 와 t의 범위를 [0 ,1]로 제한 하면 삼각형을 이루게됨
- 컨벡스 결합
- 아핀 결합에서 스칼라 값을 [0, 1]로 제한한 결합
- 컨벡스 영역
- 컨벡스 결합으로 만들어진 영역
- 영역 내부의 두점을 연결한 선분은 언제나 영역 안에 속하는 성질을 가짐
- 삼각형 내부에 임의의 두점을 연결하면 항상 삼각형 내부에 존재함
- 컨케이브
- 컨벡스의 반대 개념으로 영에 내부에 두점으 이었을 때 영역 밖으로 벗어나는 경우가 생김
- 컨벡스 결합
- 4개의 점을 컨벡스 결합 하면 3차원 공간에서 삼각 뿔을 나타낼 수 있음
메시
- 3차원 공간의 물체를 나타낼 때 물체의 표면만 나타내도 되기 때문에 삼각형을 주로 사용함
- 삼각형을 기준으로 물체에 관련된 정보를 기록한 데이터를 메시라고 함
- 정점
- vertex라고 하는 것은 삼각형을 이루는 한점
- 위치데이터, 색상 데이터, 방향등 물체를 표현할 수 있는 다양한 정보를 담고 있음
- 정점 버퍼
- 정점을 배열에 담아서 관리
- 인덱스 버퍼
- 삼각형을 이루는 정점들의 정보를 정점 버퍼의 인덱스로 가지고 있음
- 메모리 절약
- 삼각형을 이루는 정점들의 정보를 정점 버퍼의 인덱스로 가지고 있음
무게중심좌표
- 아핀 결합의 스칼라를 묶어서 만든 좌표
- 해당 좌표를 사용하여 특정 점이 삼각형 내부에 있는지 판단할 수 있음
- 삼각형 내부에 있는 것을 판단 했다면 해당 좌표를 활용하여 각 정점으로 부터의 선형보간을 통해 특정 점의 위치 및 정점 정보를 얻어 낼 수 있는 이점이 있음.
'Math > Game Math' 카테고리의 다른 글
게임 수학 - 노멀 벡터의 회전 (0) | 2023.12.20 |
---|---|
게임 수학 - 내적(Dot Product) (0) | 2023.11.30 |
게임 수학 - 아핀 공간 (0) | 2023.11.28 |
게임 수학 - 행렬 (1) | 2023.11.22 |
게임 수학 - 삼각함수 (1) | 2023.11.21 |