13
카카카 카카카카 GPG STUDY 4.3

GPG Study 4.3 카메라 제어기법

  • Upload
    -

  • View
    152

  • Download
    4

Embed Size (px)

Citation preview

Page 1: GPG Study 4.3 카메라 제어기법

카메라 제어기법GPG STUDY 4.3

Page 2: GPG Study 4.3 카메라 제어기법

기본적인 카메라 1

Page 3: GPG Study 4.3 카메라 제어기법

기본적인 카메라 2

Page 4: GPG Study 4.3 카메라 제어기법

1 인칭 카메라 제어

Page 5: GPG Study 4.3 카메라 제어기법

1 인칭 카메라 제어• 마우스가 움직이면 시야전환

• 마우스 위치값에 따라 Yaw / Pitch 를 회전

• 키보드의 입력에 따라 카메라 (= 플레이어 ) 이동

• Forward 벡터 방향을 기준으로 앞 / 뒤 / 좌 / 우로 이동

• deltaTime 에 의한 물리적 이동을 하는 것이 자연스럽다 .

Page 6: GPG Study 4.3 카메라 제어기법

미리 경로가 정해진 카메라 제어

Page 7: GPG Study 4.3 카메라 제어기법

B-Spline 곡선상에서 카메라 이동• B – Spline 곡선

• 함수에 제어점을 집어넣으면 곡선 나옴

• 적당히 분할하여 동적으로 계산

• 카메라를 3 차원 B-Spline 선상으로 이동

• 카메라의 위치는 OK

• 카메라의 시선 방향은 ??

Page 8: GPG Study 4.3 카메라 제어기법

B-Spline 곡선상에서 카메라 방향제어• View Vector

• 1. 다음 이동 위치 – 현재 위치 = View Vector

• 2. Spline 함수를 미분하여 접선을 구하는 방법

• Up Vector

• 구해진 두 개의 View Vector 를 외적하여 right vector 를 구하고 다시 외적 OK?

Page 9: GPG Study 4.3 카메라 제어기법

Catmull-Rom 곡선• Spline 그림을 보면 알겠지만 안타깝게도 제어점에 카메라가 도달할 수는 없다 .

• 제어점을 반드시 지나가는 곡선이동을 하고 싶다면 다른 방법이 필요하다 .

• 그 방법이 Catmull-Rom 곡선

• 곡선 품질은 좀 떨어져도 반드시 제어점을 지나간다 .

Page 10: GPG Study 4.3 카메라 제어기법

카메라 줌업

• 시야각 (fov) 을 줄여야 한다 .

Page 11: GPG Study 4.3 카메라 제어기법

탄력있는 카메라이동• 카메라가 대상과 밀당

• 가까우면 느리게 따라가고 , 멀면 빠르게 따라가고

• 탄성력 ( 용수철 공식 ) 을 활용한다 .

• F = ma = - k* dx

Page 12: GPG Study 4.3 카메라 제어기법

3 인칭 카메라

Page 13: GPG Study 4.3 카메라 제어기법

사원수 (Quaternion)• 오일러 회전 변환에서 Gimbal Lock 현상 발생 ( 구글링 요망 )

• http://skmagic.tistory.com/entry/%EC%A7%90%EB%B2%8C%EB%9D%BDgimbal-lock

• 이상한 수학자가 허수 표현식을 사용해서 회전을 표현한 것이 사원수

• 짐벌락 없음

• 이론적 / 수학적 이해가 잘 안되면 걍 시키는대로 가져다 쓰자 .