더북(TheBook)

예를 들어 캐릭터의 X축 위치 값이 1/60초마다(1프레임마다) 1씩 증가하는 경우를 살펴봅시다. 이 연산은 서버에서 시행합니다. 이때 서버에서 월드 상태의 변화를 1/10초마다 보낸다고 가정했을 때, 클라이언트에서 캐릭터의 X 값은 1/10초마다 6씩 증가하는 것으로 보일 것입니다. 그림 5-7의 그래프는 이를 보여 줍니다. 가로축은 시간 흐름이고, 세로축은 캐릭터의 X 값입니다.

p233

▲ 그림 5-7 시간이 흐르면서 서버에서 캐릭터 위치(의도)와 클라이언트에서 캐릭터 위치(현실)

 

그래프에서도 알 수 있듯이 캐릭터 움직임은 딱딱해집니다. 이 문제를 해결하려면 X 값을 강제로 부드럽게 만들어야 합니다. 이를 상태 값 보정이라고 합니다.

상태 값 보정이란 서버에서 받는 상태 변화 메시지를 즉시 반영하는 것이 아니라, 일정 시간에 걸쳐 서서히 목적 상태로 변화하게 하는 것입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.