Graphics

Clear·2023년 11월 19일
0

렌더링 파이프라인 과정

  • 렌더링할 지오 메트리 정점 정보 및 primitive topology... 데이터 입력
  • 정점 변환 월드배치 , 카메라 뷰... 구현 투영
  • 레스터 라이저 각 정점 사이 픽셀화
  • 화면 공간으로의 매핑을 통한 렌더링 화면 제공

버퍼 종류

  • 정점 버퍼
    정점 데이터를 GPU 로 전달
  • 인덱스 버퍼
    정점을 primitive topology 에 근거하여 도형을 그릴 시 정점 오프셋을 나타내는 정수 데이터
  • 상수 버퍼
    셰이더 상수 데이터를 GPU 로 전달

Tessellation ( DX11 기반 )

  • 덮개 셰이더
    테셀레이션 매개변수를 받아 제어점 생성 다음 단게에 사용할 데이터 생성
  • 테셀레이션
    전달 받은 데이터 토대로 기존 지오메트리를 작은 삼각형으로 분할하기 위한 정점 생성
  • 영역 셰이더
    만들어진 정점 위치 계산

오른손·왼손 좌표계

  • 외적이 정의되는 방향이 서로 반대 z축의 방향 반전 관계
  • 회전의 양의 방향 반대 외적 방향 = 회전축의 방향

변환과 행렬 관계

  • 변환
    n 차원 벡터 공간에 속한 원소를 m 차원 벡터 공간에 속한 원소로 대응시키는 것
  • 선형 변환
    연립일차방정식 형태로 대응 관계를 표현할 수 있는 변환 행렬 표현 가능

3차원 공간의 평행이동

  • 아핀 변환을 첨가 행렬 형태로 표현
    아핀 변환 | 3 차원 공간 내에서 선형 변환을 통한 평행 이동 표현 불가
    첨가 행렬 | 4 차원 공간 상에서의 선형 변환 표현 가능
  • 위의 평행 이동 변환이 4차원 공간 위에서의 선형 변환중 전단 변환과 동일
    정점과 행렬 표현시 4차원 공간 기준 표현

짐벌락

각 기저 축에 대한 회전이 종속적 오일러각 적용 될 때 특정 축 회전에 의한 나머지 두 축이 겹쳐져 회전축의 자유도를 상실하는 현상

단위 쿼터니온의 회전 변환

  • Quatainon P(qPq*, 0)
    실수부 | 0
    허수부 | 로드리게스 공식에 기반한 특정 회전축에 2θ 회전된 위치를 나타내는 쿼터니온
    • (P , 0) 변환할 정점 위치의 쿼터니온 표현
    • q 임의의 단위 쿼터니온
    • q* 켤레 쿼터니온

오일러각·단위 쿼터니온 장·단점

  • 오일러각
    • 직관적
    • 데이터 저장 개수 | 3
    • 임의의 축 회전 연산이 번거로움
    • 짐벌락 현상 발생
  • 단위 쿼터니온
    • 연산 ↑ 삼각함수 연산x
    • 구면 선형 보간 가능
    • 데이터 저장 개수 | 4

구면 선형 보간

단위 쿼터니온 4차원 공간 상의 초구위에 표현했을 때 두 쿼터니온 사이를 구면을 따라 직선으로 보간하는 방법이며 서로 다른 2개의 회전 표현에 대한 선형 보간을 의미.

직교·원근 투영

  • 직교투영
    • 투영선이 투영면과 직교하도록 투영
    • 거리에 관계 없이 투영 원근감x
  • 원근 투영
    • 투영선이 하나 이상의 소실점을 수렴하도록 투영 원근감o

투영 공간 변환

  • 클리핑 , 컬링과 같은 렌더링 처리 기술 가능
  • 렌더링할 오브젝트 역변환 가능

평면 투영시 z 축 상실 렌더링 처리 기술, 역변환 불가

profile
GameProgrammer

0개의 댓글