본문 바로가기

TIL

[TIL]2024-4-19 / 74일차 - 최종 프로젝트 7주차 5일차

1. 오늘의 기술 면접 - Update의 종류와 각각 어떤 특징을 가지고 있는지 설명해주세요.

주로 사용되는 Update 메서드로는 Update, FixedUpdate, LateUpdate 가 있다.

 

Update :

매 프레임마다 호출되며, 프레임 속도에 따라 호출 간격이 변할 수 있다.

즉 하드웨어 성능에 따라 그 프레임에 맞춰지기 때문에 동적인 프레임률을 가지고

그렇기에 반응속도가 중요한 요구에 대한 처리가 적합하며 프레임마다 변화되는 로직, 입력 처리, UI등에 사용하기 적합합니다.

하지만 프레임률이 변동하기 때문에 일정한 실행이 필요한 로직에는 적합하지 않습니다.

그렇기에 Time.deltaTime와 같은 것과 사용하기 적합하다

 

FiexedUpdate :

고정된 시간 간격으로 호출되며, 물리엔진 업데이트와 동기화 된다.

'FixedUpdate' 의 호출 간격은 프로젝트 설정에서 'Fixed Timestep' 값에 따라 호출된다.

약 0.2초 / 50fps 프레임 속도를 가지며 변화에 영향을 받지 않아서 안정적인 계산값을 낼 수 있어 물리 연산 처리에 주로 사용합니다.

그렇지만 빠른 반응이 필요한 작업에는 입력 지연이 발생할 수 있어 반응성을 해칠 수 있습니다.

 

LateUpdate :

'Update' 메서드가 호출된 후에 호출되며, 프레임당 한 번 호출된다.

특정 연산이나 로직이 먼저 갱신이 된 후에 처리, 즉 후처리 작업이 필요할 때 유용하다.

카메라 추적 로직에 사용 가능하며. 'Update'에서 이동시킨 후, 'LateUpdate' 에서 카메라가 오브젝트를 따라가도록 설정 할 수 있다.

단점은 잘못 사용하면 처리 순서가 꼬일 수 있으며,

프레임당 처리 시간이 늘어나게 되므로 성능에 부담을 줄 수 있어 오버헤드가 발생할 수 있다.


2. 오늘의 작업

벌써 7주차도 끝나버렸다. 시간이 정말 빠르다.

오늘은 또 많은 잡버그 해결과 처리를 해야 했다.

이제 곧 유저 테스트를 해야 하기 때문에 설문조사 구글 폼을 만들었다.

 

또한 그래픽적 어필을 위해 배경을 추가했다.

이 2가지 배경은 모두 각 거리별로 레이어가 나누어져 있고 하얀색 부분에서는 빛이 나도록 머테리얼 처리가 되어있다.

 

 

이런 식으로 레이어를 나누어 합쳐 놓은 것인데 이렇게 작업한 이유는

각 레이어 별로 캐릭터가 움직일 때 카메라를 다른 속도로 트래킹 하여 2D에서 원근감을 표현하기 위해서 였다.

 

 

배경이 더 잘 보이는 스테이지에서의 모습으로 시연을 하고 싶으나

현재 다음 맵 로드에서 데이터 로드 오류가 생겨서 이를 먼저 해결해야 한다.