여러분, 안녕하세요!

아래는 오버워치 게임플레이 엔지니어, 데릭 멀더(Derek Mulder)가 11월 6일 적용된 1.42 패치에서 도입된 고정밀 마우스 입력과 관련해 여러분께 전하는 소식입니다.


오늘은 1.42 패치에 새롭게 추가되는 기능과 그 작동 방식을 간단히 소개해 드리려고 합니다.


먼저 오버워치에서 조준과 사격이 어떻게 이루어지는지 살펴보겠습니다. 오버워치는 62.5Hz, 즉 1000분의 16초(16ms)마다 한 번씩 게임을 시뮬레이션합니다("틱"이라고도 하죠). 각각의 틱에서는 이전 틱 이후 마우스 하드웨어로부터 받은 입력 원본에 따라 플레이어의 조준 방향을 변경합니다. 만일 플레이어가 기본 발사 키를 누르면 해당 방향으로 탄환을 발사할 겁니다(물론 해당 플레이어가 생존해 있고, 탄약을 보유하고 있고, 다른 행동을 하고 있지 않을 때만 그렇습니다).


1인칭 슈팅 게임에서는 전통적으로 이런 방식으로 마우스 입력을 처리하지만, 개발팀에서는 이 과정을 더 개선하고 싶었습니다. 요즘은 많은 게이밍 마우스가 500Hz나 1000Hz, 심지어 그 이상의 응답률(폴링 레이트)을 지원합니다. 1000Hz라면 게임의 틱 사이에 마우스 하드웨어로부터 최대 16번까지 독립적인 움직임을 수신할 수 있다는 의미입니다. 예를 들어 보는 게 좋겠네요.





오버워치에서 끌어치기를 시뮬레이션했습니다. 시뮬레이션한 움직임이기 때문에 마우스의 응답 프레임마다 마우스가 균일하게 움직입니다. 물론 실제 사람이 이렇게 마우스를 움직이지는 않겠지만, 설명하기에는 이쪽이 쉬울 겁니다.


위에서 보면 이렇습니다



하얀색 선은 플레이어가 16ms마다 조준하는 방향입니다.


이제 여기에 빨간색 선을 추가하여, 1000Hz 설정으로 마우스 입력을 받을 때마다 플레이어의 조준이 어떻게 바뀌는지 보겠습니다.




이제 고정밀 옵션을 활성화하면 어떤 빨간색 선을 따라서든 투사체를 발사할 수 있습니다! 또한 기능적으로는 렌더링된 프레임(FPS가 높을 경우에는 틱 사이에 렌더링된 프레임) 사이에도 사격을 할 수 있다는 뜻입니다.




그 밖에도 주목할 만한 점이 몇 가지 있습니다.

이 기능을 사용해도 주위를 둘러보는 "느낌"은 달라지지 않습니다. 최종 렌더링된 시야는 언제나 이전 프레임 이후 하드웨어로부터 수신된 모든 원본 입력 메시지에 기반하여 표시되기 때문에, 주위를 둘러보는 느낌 자체는 지금까지와 동일할 겁니다.


이 옵션을 켜면 CPU 사용량이 다소 증가합니다.


서브프레임 조준은 마우스 버튼을 누르거나 뗄 때, 그리고 기본 발사와 보조 발사 시에만 작동합니다. 예를 들어, 기본 발사를 길게 눌러 추적하는 방식의 무기는 달라지는 점이 없습니다.