일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- cs231n
- 백준
- pre-trained
- C++
- 머신러닝
- Computer Vision
- Regularization
- SGD
- CNN
- Kaggle
- OpenGL
- Support Vector Machine
- 로지스틱 회귀
- 신경망
- logistic regression
- Vision
- CPP
- neural network
- 추천 시스템
- 파이썬
- SVM
- Unsupervised learning
- 비용함수
- petal to metal
- 컴퓨터 비전
- 딥러닝
- 그래픽스
- recommender system
- 인공지능
- 컴퓨터 그래픽스
- Today
- Total
kwan's note
모델링, vertex array 와 index array 본문
모델링, vertex array 와 index array
kwan's note 2021. 6. 24. 17:41본 학습노트는 2021년 1학기 고려대학교 한정현 교수님의 컴퓨터 그래픽스 강의를 수강하고 작성하였습니다.
https://reminder-by-kwan.tistory.com/131
모델링에서는 폴리곤 메시를 통해 물체를 표현한다고 하였다.
그렇다면 왜 폴리곤을 사용해 물체를 표현하는것일까?
컴퓨터 그래픽스는 물체를 표현하는데 굉장히 많은 병렬 연산을 필요로한다. 이때 구를 예시로 들자면 무수히 많은 점들을 필요로하고 각 점들에 대해서 연산을 한다면 구 하나를 표현하는데도 엄청난 연산을 필요로 할 것이다. 이러한 물리적 한계를 뛰어넘기 위해 일종의 해상도를 낮추는 방식으로(근사적 표현 방식으로) polygon mesh를 사용한다.
또한 gpu가 폴리곤 메시 처리에 최적화 되어있기 때문에 다른 방식의 표현은 채택되기 어렵다.
이러한 폴리곤 메시의 제작은 그래픽 디자이너가 3ds max등을 이용해 제작하는데 간단한 경우를 보면 다음과 같다.
폴리곤 메시의 표현을 간단하게 생각해보면 순서대로 세개씩
vertex_array[3*n],vertex_array[3*n+1],vertex_array[3*n+2]
으로 표현할 수 있다. 이를 그림으로 보면 아래와 같다.
얼핏보면 굉장히 좋은 표현방식으로 보이지만 어떤 vertex의 경우 여러번 중복이 된다. 위 그림에선 (1,0)이 3개의 폴리곤에서 모두 사용되므로 세번이나 적어야 한다는 단점이 있다. 이러한 단점을 극복하기 위해서 표현하는 방식으로는
vertex와 index를 분리할 수 있다.
이러한 방식의 표현은 vertex array와 index array를 분리하는 방식으로 적은 데이터로도 표현할 수 있게된다.
다음으로 surface normal을 보자.
표면의 normal은 여러 문제에서 중요한 역할을 하는데 대표적으로 빛의 표현등에서 중요하게 된다.
삼각형의 normal은 좌표를 알고있을 때 외적(벡터곱)을 통해 간단하게 계산할 수 있다.
하지만 실제로 필요한것은 표면의 노말보다 정점에서의 노멀이다. vertex normal은 주변 삼각형들의 normal 평균으로 구할 수 있다.
즉 다음과 같은 정점 143개를 가진 물체를 표현하면 vertex array(position, normal)과 index array로 나타낼 수 있다.
'graphics VR AR > Computer Graphics -Korea Univ' 카테고리의 다른 글
래스터라이저 (Rasterizer) (0) | 2021.06.25 |
---|---|
정점 처리 ( view transform, projection transform) (0) | 2021.06.24 |
좌표계 변환 (transform and rotation) (0) | 2021.06.24 |
컴퓨터 그래픽스 서론 (0) | 2021.06.24 |
컴퓨터 그래픽스 복습노트 (0) | 2021.06.24 |