그래픽스 및 렌더링 수학 Flashcards
01) 렌더링 파이프라인 과정을 간략하게 서술해보세요. (DX 11 기준)
- 키워드: 정점 데이터, 정점 변환, 래스터라이징, 뷰 포트 등.
렌더링 할 지오메트리의 정점 정보를 입력하고, 입력한 지오메트리를 구성하기 위한 primitive topology 등의 데이터를 입력하는 단계를 거친 뒤 정점에 대한 다양한 변환을 통해 월드 배치, 카메라 뷰, 투영 등을 구현한다. 이후 정점들 사이를 픽셀 정보로 채우는 래스터라이즈 단계를 거친 뒤 최종적으로 화면 공간 변환을 통해 실제로 렌더링 되는 화면을 그려내 는 과정을 거친다.
추가 예상 질문1» 렌더링 파이프라인의 단계별 수행 과정을 설명하십시오.
Q2) 렌더링 파이프라인에서 사용되는 정점 버퍼, 인덱스 버퍼, 상수 버퍼에 대해 설명해보세요.
정점 버퍼는 정점의 데이터를 GPU로 전달하기 위해 사용된다.
인덱스 버퍼는 입력한 정점들을 primtive topology에 근 거하여 어떠한 순서로 도형을 그려낼 지에 대한 정보를 나타내는 정수 형태의 데이터이다.
상수 버퍼는 셰이더에서 사용 할 셰이더 상수 데이터를 GPU로 전달하기 위해 사용된다.
추가 예상 질문2»_space;변환에 대해 설명하십시오.
추가 예상 질문1»_space;DirectX의 버퍼(buffer)에 대해 설명하십시오.
추가 예상 질문2»_space;DirectX의 리소스(resource)에 대해 설명하십시오.
추가 예상 질문4»_space;DirectX의 디바이스 컨텍스트(devce context)에 대해 설명하십시오
추가 예상 질문3»_space; DirectX의 디바이스(device)에 대해 설명하십시오
Q3) DX 11 기반의 테셀레이션(tessellation) 과정을 서술해보세요.
Hull Shader 단계에서 테셀레이션 매개변수를 받아 제어점을 만들어내어 다음 단계에서 사용할 데이터를 만든다. 이후 테셀레이터(tessellator) 단계에서는 HS에서 전달받은 데이터를 토대로, 원래의 지오메트리를 작은 삼각형으로 분할하기 위한 정점들을 만들어내고
Domain Shader 단계에서는 만들어진 정점들의 위치를 계 산한다.
추가 예상 질문5»_space;DirectX의 스왑 체인(swap chain)에 대해 설명하십시오
추가 예상 질문1»_space;LOD(level of detall)와 테셀레이션의 차이에 대해 설명하십시오.
Q4) 오른손 좌표계와 왼손 좌표계의 차이점에 대해 설명해보세요.
키워드: 외적
A) 벡터의 외적이 정의되는 방향이 서로 반대이므로, 일반적으로 왼손 좌표계와 오른손 좌표계눈 2축의 방향이 서로 반전 되어 있는 관계이다.한편, 두 벡터에 대한 외적은 회전죽의 방향을 결정하므로 회전의 양(+)의 방향 역시 서로 반대이다.
추가 예상 질문1 2> 행렬의 열우선(column-maior) 표기방식과 행우선(row-major) 표기방식에 대해 설명하십시오
Q5) 변환(transformation)과 행렬(matrix) 사이의 관계를 설명해보세요.
키워드: 선형 변환, 연립 방정식
두 벡터 공간 V1, V2에 대하여, V1에 속하는 정점의 좌표를 선형 변환을 통해 v2에 속하는 정점의 위치로 나타낼 때, 변 환된 정점과 원래 정점 사이의 관계식을 연립방정식으로 표현할 수 있으므로 즉, 행렬로 표현할 수 있다.
추가 예상 질문1»_space;아핀 변환의 특징에 대해 설명하십시오