본문 바로가기
유니티5 독학 & 게임 제작

유니티5 독학하기 그 91.6번째 걸음-카메라 따라잡기 문제의 해결 part4

by 인터넷떠돌이 2018. 9. 26.
반응형

안녕하세요?


지난번 포스팅에서 카메라의 dampTime이라고 해서 피사체까지 따라잡는 시간이 문제가 아니라 다른 것이 문제라는 이야기를 하고서 끝을 냈었습니다. 그래서 이번 포스팅에서는 이 문제를 어떤 각도에서 접근해야 했는지 시행착오를 다시금 올려보는 시간이 되겠습니다.



먼저 CameraFollow.cs 스크립트를 찾아가도록 해 봅니다.



일단 여기서는 Update()메소드에서 이 작업이 이루어 지고 있는 것을 확인할 수 있었습니다.



그리고 플레이어 캐릭터를 컨트롤하는 PlayerController.cs를 찾아가 보도록 하겠습니다.



여기서는 플레이어 캐릭터에게 추진력을 주기 위해서 FixedUpdate()를 사용하는 것을 볼 수 있었습니다.




그래서 다시 CameraFollow.cs 스크립트를 다시 찾아가서, Update()라고 되어 있는 메소드를 FixedUpdate()로 바꾸어 주도록 해 보겠습니다.



그러자 어디가 문제인지 몰라도, 부스터를 켜자 위 스크린샷처럼 움직임이 더 부자연스러워지는 문제점을 노출하고 말았습니다. 이대로는 게임이 그대로 빌드되면 플레이 하는 게이머가 상당히 정신사나운 상황이 되었습니다.



그래서 혹시나 싶어서 다시 유니티5 상의 계층뷰에서 MainCamera를 다시 선택해 보았습니다.



한번 dampTime을 0에서 값이 있는 것으로 바꾸어 보았습니다만, 결과는 그다지 신통치 않았습니다.




그래서 이번에는 Edit>Project Settings> Time항목으로 들어가서 frame이라고 해야 할까요? 프레임을 조절하는 것에 들어가 보도록 했습니다.



맨 처음에는 위 스크린샷처럼 되어 있는데, 이는 1/50을 하면 나오는 0.02라는 값으로 보아 기본적으로 50프레임으로 설정이 되어 있는 것을 볼 수 있었습니다.



그래서 0.01666667이라고 해서 1/60의 값으로 바꾸어 주도록 합니다. 이 값은 바로 60프레임인데, 이는 CameraFollow.cs에서 제일 처음 targetframe으로 설정되어 있는 값이기도 합니다.



이렇게 했더니 아까보다는 상황이 더 나아지는 듯한 것을 볼 수 있었습니다. 하지만 여전히 무언가 끊어지는 듯한 이 위화감이 있는 화면-특히 부스터를 끄고 켤때 이런 현상이 이어지는 것을 볼 수 있는데, 이를 어떻게 해결할 것인지가 이제 문제라는 생각이 듭니다.

반응형