그래픽스 및 렌더링 수학 Flashcards

1
Q

01) 렌더링 파이프라인 과정을 간략하게 서술해보세요. (DX 11 기준)

A
  • 키워드: 정점 데이터, 정점 변환, 래스터라이징, 뷰 포트 등.

렌더링 할 지오메트리의 정점 정보를 입력하고, 입력한 지오메트리를 구성하기 위한 primitive topology 등의 데이터를 입력하는 단계를 거친 뒤 정점에 대한 다양한 변환을 통해 월드 배치, 카메라 뷰, 투영 등을 구현한다. 이후 정점들 사이를 픽셀 정보로 채우는 래스터라이즈 단계를 거친 뒤 최종적으로 화면 공간 변환을 통해 실제로 렌더링 되는 화면을 그려내 는 과정을 거친다.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

추가 예상 질문1» 렌더링 파이프라인의 단계별 수행 과정을 설명하십시오.

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Q2) 렌더링 파이프라인에서 사용되는 정점 버퍼, 인덱스 버퍼, 상수 버퍼에 대해 설명해보세요.

A

정점 버퍼는 정점의 데이터를 GPU로 전달하기 위해 사용된다.
인덱스 버퍼는 입력한 정점들을 primtive topology에 근 거하여 어떠한 순서로 도형을 그려낼 지에 대한 정보를 나타내는 정수 형태의 데이터이다.
상수 버퍼는 셰이더에서 사용 할 셰이더 상수 데이터를 GPU로 전달하기 위해 사용된다.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

추가 예상 질문2&raquo_space;변환에 대해 설명하십시오.

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

추가 예상 질문1&raquo_space;DirectX의 버퍼(buffer)에 대해 설명하십시오.

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

추가 예상 질문2&raquo_space;DirectX의 리소스(resource)에 대해 설명하십시오.

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

추가 예상 질문4&raquo_space;DirectX의 디바이스 컨텍스트(devce context)에 대해 설명하십시오

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

추가 예상 질문3&raquo_space; DirectX의 디바이스(device)에 대해 설명하십시오

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Q3) DX 11 기반의 테셀레이션(tessellation) 과정을 서술해보세요.

A

Hull Shader 단계에서 테셀레이션 매개변수를 받아 제어점을 만들어내어 다음 단계에서 사용할 데이터를 만든다. 이후 테셀레이터(tessellator) 단계에서는 HS에서 전달받은 데이터를 토대로, 원래의 지오메트리를 작은 삼각형으로 분할하기 위한 정점들을 만들어내고
Domain Shader 단계에서는 만들어진 정점들의 위치를 계 산한다.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

추가 예상 질문5&raquo_space;DirectX의 스왑 체인(swap chain)에 대해 설명하십시오

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

추가 예상 질문1&raquo_space;LOD(level of detall)와 테셀레이션의 차이에 대해 설명하십시오.

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Q4) 오른손 좌표계와 왼손 좌표계의 차이점에 대해 설명해보세요.

A

키워드: 외적
A) 벡터의 외적이 정의되는 방향이 서로 반대이므로, 일반적으로 왼손 좌표계와 오른손 좌표계눈 2축의 방향이 서로 반전 되어 있는 관계이다.한편, 두 벡터에 대한 외적은 회전죽의 방향을 결정하므로 회전의 양(+)의 방향 역시 서로 반대이다.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

추가 예상 질문1 2> 행렬의 열우선(column-maior) 표기방식과 행우선(row-major) 표기방식에 대해 설명하십시오

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Q5) 변환(transformation)과 행렬(matrix) 사이의 관계를 설명해보세요.

A

키워드: 선형 변환, 연립 방정식

두 벡터 공간 V1, V2에 대하여, V1에 속하는 정점의 좌표를 선형 변환을 통해 v2에 속하는 정점의 위치로 나타낼 때, 변 환된 정점과 원래 정점 사이의 관계식을 연립방정식으로 표현할 수 있으므로 즉, 행렬로 표현할 수 있다.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

추가 예상 질문1&raquo_space;아핀 변환의 특징에 대해 설명하십시오

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Q6) 3차원 벡터 공간 상에서의 평행 이동(translation) 변환을 표현하기 위해
어떤 방법 또는 개념이 사용되는지 설명해보세요.

A

키워드: 아핀 변환, 선형 변환
A) 3차원 벡터 공간 내에서는 선형 변환을 통해서 평행 이동을 표현할 수 없으므로 아핀 변환의 개념의 도입이 필요하다.
이때 3차원 공간에 대한 아핀 변환은 첨가행렬(augmented matrix) 형태로 표현하여 4차원 공간 상에서의 선형 변환으로 도 표현이 가능하다. 따라서 그래픽스 프로그래밍에서는 일반적으로 x, y, 2 좌표 외에 추가적으로 W 좌표를 추가하여 Hoat4 형태의 4차원 벡터를 이용한 4차원 공간 상에서의 선형 변환으로 변환을 표현하게 된다.

14
Q

추가 예상 질문3&raquo_space; 전단(shearing, 밀기> 변환과 평행 이동 변환 사이의 관계를 설명하십시오

A
14
Q

추가 예상 질문2&raquo_space;선형 변환과 아핀 변환의 차이를 설명하십시오.

A
15
Q

Q8) 단위 쿼터니온(unit quarternion)과 3차원 벡터 공간 상에서의
회전 변환 사이의 관계를 설명해보세요.

A

키워드: 로드리게스 회전 공식(Rodrigues’ formula), 컬레 쿼터 니온(quarternion conjugate)

임의의 단위 쿼터니온은 항상 9= ( sin 8 uq, cos 0 )의 형태로 표현할 수 있는데, 변환하고자 하는 정점의 위치 p(pX, py, pz)를 쿼터니온 P(P, 0)으로 표현한 다음, 9Pg* 연산을 수행해보면 실수부의 값은 0, 허수부의 값은 로드리게스 공식 과 일치하는 수식이 되며 회전축은 ug, 회전각도는 20 인 회전을 표현하는 것과 같게 된다.

15
Q

Q7) 오일러 각(Euler angle)을 이용한 3차원 벡터 공간 상에서의 회전 변환 시, 짐벌 락(gimbal ock) 현상이 발생하는 상황 및 그 이유를 설명해보세요.

A

키워드: 기저 축에 대한 종속적인 회전

오일러 각을 이용해 3차원 공간 상에서의 회전을 표현할 때 각각의 기저 축에 대한 회전을 종속적으로 적용하게 되는 데, 이때 특정 죽의 회전에 의해 나머지 2 개의 축이 평행해지는 현상이 발생할 수 있으며, 이를 짐벌 락 현상이라고 한다.
회전축의 자유도(degree of freedom)를 상실한 뒤에는 이를 영구적으로 복구할 수 없기 때문에 3차원 공간 상에서의 회전 을 온전히 표현할 수 없다.

15
Q

추가 예상 질문1» 짐벌 락 현상을 해결하기 위해 어떠한 방법을 사용할 수 있는지 설명하십시오.

A
16
Q

Q9) 3차원 벡터 공간 상에서의 회전 변환을 표현하는 방법 중,
오일러 각과 단위 쿼터니온을 이용하는 방법의 장/단점을 비교하여 설명해보세요.

A

키워드: 짐벌 락(gimbal lock) 현상, 구면 선형 보간(spherical linear interpolation)

오일러 각을 이용한 회전 표현은 인간이 직관적으로 이해하기 쉽고, 3 개의 데이터(기저축에 대한 회전 각도 3개)만으 로 표현이 가능하다는 장점이 있다. 단, 임의의 죽에 대한 회전 연산 과정이 다소 번거로우며 짐벌 락 현상이 일어날 수 있 다는 문제점과 회전에 대한 선형 보간인 구면 선형 보간이 불가능하다는 점이 있는데 이는 쿼터니온을 이용한 회전 표현 을 통해 해결할 수 있다. 한편, 쿼터니온을 이용한 회전 표현의 경우 삼각함수에 대한 연산을 필요로 하지 않기 때문에 연 산 측면에서 유리한 부분이 있다.

16
Q

Q10) 구면 선형 보간(spherical linear interpolation)에 대해 설명해보세요.

A

키워드: 단위 쿼터니온 사이의 선형 보간
A) 단위 쿼터니온을 4차원 공간 상에 표현하였을 때, 4차원 초구(hypersphere) 위에 존재하는 두 쿼터니온을 구면 상에서 직선으로(즉, 호(arc)의 형태가 됨) 보간하는 방법이며, 이는 서로 다른 2 개의 회전 표현 사이의 선형 보간을 의미한다.

17
Q

추가 예상 질문1» 게임 프로그래밍에서 구면 선형 보간이 활용되는 부분을 설명하십시오.

A