와우를 하기 전에는 FPS장르의 게임을 하드하게 하는 유저였다
FPS장르 유저들은 최적화 설정에 진심인 사람들이 많다
그리고 나도 그들 중 하나였다
지금은 약간의 취미생활처럼 다양한 최적화 방법을
구경하는 재미로 찾아보기도 하고 적용도 해보고 있다
이러한 과정 중에 알게된 지식을 바탕으로
사람들이 많이 오해하는 내용을 풀어서 써보는 글이다
모니터 주사율보다 높은 FPS는 불 필요함?
- 그렇지 않음 높으면 좋음
FPS가 높으면 뭐가 좋은데?
- 인풋렉이 낮아짐
왜 낮아짐?
사람들이 약간 오해를 하는 부분이 있는데
주사율(Hz)과 프레임을 동일 시 하는 경향이 있는 것 같음
Hz는 일정한 시간동안 주기적인 화면재생빈도임 이를 고정재생빈도라고 함
n프레임은 일정한 시간동안 비 주기적인 프레임 생성률임
게임에서 프레임은 100분의 1초로 생성될 수도, 10분의 1초로 생성될 수도 있음
그렇다 보니 일정한 화면재생빈도와 프레임생성속도간의 차이가 발생하여
싱크가 맞지 않게 됨
생성되지 않은 프레임을 내보낼 수 없으니
이미 앞에 생성된 프레임을 보냄
여기서 현재를 보여주지 못하는 프레임과
현재 내 인풋이 충돌하면서 사용자는 인풋렉이라는 것을 느낌
그럼 다시 생각해보면
모니터 주사율이 60Hz일때
프레임을 60프레임으로 제한한 경우와
120프레임으로 향상시킨 경우 어떤 환경이 인풋렉이 더 적을까?
내가 설명을 제대로 한게 맞다면 후자를 선택할 것임
프레임생성률이 2배 차이 나기 때문에 모니터 주사율과의 싱크는 60보다 120이 유리함
주사율이 제시하는 타이밍에 낼 수 있는 패가 많은 것
그럼 프레임이 무조건 높은게 좋은건가?
인풋렉 측면에선 그게 맞음
하지만 부작용이 있음 테어링현상이 생김
화면을 좌우로 돌릴 때 화면 찢어짐
왜 생김?
이건 위에 설명과 반대로 화면재생빈도가 더 느리기 때문에 발생함
기본적으로 모니터는 수직방향으로 이미지를 생성함
한번에 짠 하고 전체이미지를 생성하는 것이 아니라
위에서 아래로 순차적으로 이미지를 생성중임
이 과정에서 모니터 재생빈도가 프레임생성률 보다 낮은 경우 이미지를 완전히 생성하기 전에
다음이미지가 덧 씌워지는 현상으로
위, 아래가 약간의 시간차가 존재하듯 이미지가 생성되어 화면이 찢겨보임
인터넷에 검색하면 흔히보는 주사율보다 프레임제한을 -1,-2 정도 낮춰서 쓰라는 말은 이것때문임
하지만 요즘은 고주사율 게이밍모니터들이 많이 보급되었기 때문에 60Hz시절만큼 테어링 현상이 크진 않음
테어링현상을 막기 위해 나온 기술이 수직 동기화임
수직으로 생성되는 이미지를 동기화 시켜주는 기술임
이 기술의 원리는 모니터 재생빈도는 변경시킬 수 없으니 이미지 생성을 재생빈도 싱크에 맞추는 것
그럼 맨 처음과 똑같은 현상이 일어남 인풋렉이 증가함
생각보다 많이 늘어나는 인풋렉 때문에 이 수직동기화는 게이머들 사이에서 켜면 안되는 옵션으로 인식이 박힘
그럼에도 수직동기화를 써야 해?
그 다음 나온 기술이 엔비디아의 G-Sync 임
수직동기화가 고정재생빈도에 프레임생성속도를 맞춘 것 이라면
지싱크는 고정재생빈도를 프레임 생성 속도에 동기화를 시키는 기술임
즉 비고정재생빈도를 가지고 있으며 새로운 프레임을 렌더링 할 준비가 되면 모니터가 그때마다 화면을 갱신함
근데 지싱크는 모니터주사율보다 높은 프레임에선 작동하지 않음
그래서 모니터 주사율을 넘나들때마다 켜짐과 꺼짐을 반복하게 됨
켜질 때 꺼질 때 마다 간섭으로 인해 인풋렉이 늘어나게 됨
그래서 지싱크를 사용할 때 모니터 주사율을 넘지않는 프레임 제한을 걸고 지싱크가 꺼지지 않게 사용함
요즘 프레임제한을 걸고 게임하는 이유는 이것 때문임
그리고 지싱크를 사용하면 약간의 인풋렉 증가가 있음
하지만 약간의 증가고 이걸 감수하고 사용할 정도로 지싱크는 매력적인 기술이라고 생각함
그럼 지싱크 사용 가능하면 지싱크+프레임제한 걸고 사용하라는 거죠?
그래도 됨
근데 지싱크를 사용해도 테어링이 발행하는 경우가 있음 ㅎㅎ;;;
이 경우 지싱크+수직동기화를 사용하면됨
수직동기화는 왜 쓰나요?
지싱크가 실행중인 경우 우선순위에 의해 수직동기화는 작동하지않음
수직동기화의 동기화기술 때문이 아니라 프레임타임 변동에 대한 처리 기술을 작동시키기 위함임
동기화는 지싱크가 하고 수직동기화는 프레임제한 말고 하는 일은 딱히 없음
물론 지싱크만 쓰는 경우에 딱히 테어링현상이 안 일어난다면,
불편하지않다면 수직동기화는 켜지 않아도 됨
아 그리고 수직동기화를 켤 때는 인게임 수직동기화보단
엔비디아 제어판에서 수직동기화를 켜는 걸 권장함
기능 상으론 차이가 없지만 유기적인 호환성 때문
인게임 수직동기화는 지싱크작동을 방지하는 삼중버퍼링까지 자동으로 걸리기 때문인데 이건 겜바겜
지싱크 + 수직동기화 + 프레임제한 이렇게 사용하면 되나요?
수직동기화를 켜게 되면 위에서 말한 프레임 제한 기능을 자동으로 해주기
때문에 굳이 프레임 제한을 따로 할 필요는 없음
나 같은 경우 240Hz모니터를 사용하는데 인게임 프레임 제한 설정은 200FPS까지임
이럴 경우에 수직동기화를 사용해도 좋음
여기에 인풋렉을 줄여주는 엔비디아 리플렉스 기능까지 더해 주면 좋음
지싱크로 늘어난 인풋렉을 리플렉스로 보완해줌
참고로 리플렉스 기능 출시전 저지연모드는 리플렉스가 상위호환이라 수직동기화의 경우처럼
같이 써도 리플렉스가 우선적 실행 됨
프레임제한을 얼마로 걸어야 하나요
G-Sync를 사용할 때 프레임 레이트를 모니터의 주사율에 가깝게 설정하고
G-Sync의 동기화 범위를 최대한 활용하기 위해 프레임 제한 설정값을 구해야 함
지싱크 on 기준
240Hz = 224fps
144Hz = 138fps
120Hz = 116fps
그 외의 주사율을 사용하는 사람들을 위해 계산식
240Hz 모니터 기준으로 설명
1. 모니터 프레임타임을 구한다 / 1초를 자신의 주사율로 나눈다 (1000ms / 240fps = 4.166ms)
2. 여기에 G-Sync 지연시간 0.3ms를 더한다 (4.166ms + 0.3ms = 4.466ms Latency)
내 설정은 총 4.466ms 의 지연시간을 갖게 된다
3. 이걸 다시 1초로 나누게 되면 (1000ms / 4.466ms = 223.91fps)
4. 이 값을 가장 가까운 짝수로 헤드룸을 주어 설정값을 정한다
이 계산식은 수직동기화를 사용할 시 자동으로 이 계산식으로 적용되어 프레임 제한을 알아서 해줌
(내가 막 계산하는게 아니라 원래 있는 공식임)
수직동기화를 사용하지 않고 수동으로 프레임 제한을 할 사람은 위 값을 사용하면 됨
그래서 결론이?
나는 지싱크+수직동기화+리플렉스 부스트 설정으로 게임을 하고 있음
FPS장르 게임의 팁이라면 이게 맞음
나랑 실력이 똑같은 사람은 없지만 실력이 똑같은 복제인간이 있다면 설정에서 오는 차이가 승률이 높음
근데 와우가 PVP중심의 극한의 반사신경을 요구하는 게임은 아님
주 컨텐츠가 PVE이고 글로벌쿨타임과 주문지연시간등으로 인해
많은 유저들이 적당한 인풋렉으로도 유사한 게임환경으로 즐길 수 있음
자신이 불편함을 느끼지 못한다면 굳이 이러한 설정을 할 필요는 없음
이 글은 프레임과 인풋렉의 상관관계에 대한 설명임
'WOW > - WOW 최적화 설정' 카테고리의 다른 글
WOW 그래픽 설정 - 계단 현상 방지 (안티 앨리어싱) (0) | 2025.02.09 |
---|---|
와우에서 인풋렉을 무시해도 될까? 주문예약시간 시스템 이해하기 (3) | 2024.11.22 |
모델을 활용한 위크오라는 PC성능 저하를 유발합니다 (0) | 2024.10.19 |
렉이 너무 심하다면? (2) - GxAllowCachelessShadermode (0) | 2024.06.17 |
렉이 너무 심하다면? (1) - Handynotes, Adibags (1) | 2024.06.14 |