우리 머리 속에 뿌리 박힌 모순.
 athlon88 (ID)
 조회 : 1284 , 2006/08/22 15:23

 아래 스타에서의 콘로의 글을 읽고 간단히 몇자 적어봅니다.

 

 많은 벤치마크에서는 게임의 프레임으로 시스템의 성능을 평가하는 경우가 많습니다. 그러나 정작 일반적인 게임에서는 어느 정도 프레임만 유지하면 된다는 사실을 잊습니다.

 

 인간이 끊긴다는 느낌을 받는 프레임 레이트는 12 정도로 일본의 애니에서 잔상기법과 섞어 많이 사용해서 필름을 아꼈던 적이 있었죠. 12 프레임 이상이면 그나마 변화를 확인할 수 있는 정도가 됩니다.

 

 VGA에는 수직 주사가 끝났음을 알리는 플래그가 있는데, 이를 이용하여 화면을 갱신하면 화면의 내용이 깨지거나 하는 문제를 해결할 수 있었습니다.

 현재는 기술의 발달로 이러한 수직동기에 맞추어 화면을 갱신하지 않아도 되는 상태에 이르러 있습니다. CPU가 느려 버벅임이 눈에 띄던 시절에 이 vsync는 트윅킹 옵션에서 밀려나게 됩니다. 최대한 많은 프레임을 유지하기 위해 오버헤드를 없애기 위한 방편이었죠.

 

 현재의 많은 시스템들은 게임이나 어플리케이션에서 30프레임 이상의 프레임수를 가질 수 있는 성능으로 발전했습니다. 하지만 이전의 습관적인 방법으로 우리는 vsync를 여전히 사용하지 않고 있습니다. 이렇게 게임에서 60 프레임을 넘어서는 갱신률의 화면에 집중합니다.

 

 일반적인 CRT는 60이나 75등등의 리프레쉬 레이트를 가집니다. 이러한 레이트는 게임에서 얻어지는 프레임보다 훨씬 낮습니다. 결국 화면은 경신되고 있으나, 우리가 눈으로 보는 화면 갱신 프레임수는 겨우 60장 정도일뿐입니다(60을 기준으로 설명).

 

 이러한 프레임 수를 유지 시키기 위해서는 일정 루프의 반복으로 계속적으로 화면을 업데이트 하게 되는데 이는 주로 프로세서에서 수행됩니다. 물론 랜더링은 GPU에서 처리하지만, 컬링같은 부분은 여전히 프로세서의 몫이죠. 그럼 그 루프 동안에는 많은 부하가 걸려 우리는 눈에 보이지 않는 프레임을 위해 프로세서를 혹사시킵니다.

 

 만약 이 렌더링 주기를 어느 정도로 제한한다면 그로 인해 생기는 잉여시간에 우리가 하고픈 작업에 리소스를 할당할 수 있을겁니다. 게임이라는 것이 모두 화면의 갱신에만 의존하는 것이 아니죠. 결국 이렇게 화면의 프레임 수를 제한하면 다른 연동된 장치나 작업에 도움이 됩니다.

 

 '내가 사용하는 디스플레이는 LCD이다. 그러므로 CRT같은 리프레쉬 레이트의 영향을 받지 않는다' 라는 것은 틀린 가정입니다. 왜냐면 DAC나 데이터 처리 부분의 비디오 메모리에 랜더링된 데이터에 접근을 하게 되는데, 한꺼번에 2개의 독립적인 장치가 메모리를 접근하기는 힘든 일이죠. 그리고 데이터의 부정확성을 낳게되어 잘못된 결과 신호가 표시 장치에 전달될 것입니다. 이 때문에 VGA는 주기적으로 업데이트를 하게 되며, LCD도 이러한 구현에서 예외일 수는 없습니다.

 

 '높은 프레임으로 게임을 즐기고 싶다'면 보다 고급사양의 디스플레이 모니터를 사용해서 보다 높은 화면 리프레쉬 레이트를 가지도록 설정해야 할 것 입니다. 기본적으로 윈도우즈는 60Hz의 리프레쉬 레이트(주사율)로 설정되어 있습니다.

 

 만약 충분한 시스템 사양이 된다면 vsync를 사용해보시길 바랍니다. 조금 더 CPU를 덜 혹사시키면서도 자신이 원하는 일들을 할 수 있을겁니다.

 

 

 
4


 
   이 게시물의 댓글 보기
  bluemun (ID) bluemun님의 미디어로그 가기  / 06-08-22 15:32/ 이댓글에댓글달기
  밑에 콘로에서 스타 끊기다는건 모니터와는 상관 없지 않나요? FPS게임 같은 경우에는 상관 있겠지만.
  kage75 (ID) / 06-08-22 18:53/ 이댓글에댓글달기
  FPS게임에서 vsync만 조정하면서 겜했지 모니터의 주사율은 생각은 못했네요...

75Hz로 놓고 해도 별 무리 없었다 생각했는데 좋은 모니터로 100Hz 놓고 하면 프레임상승이 얼마나 이뤄질지 궁금하군요.
  ceoh (ID) / 06-08-22 19:47/ 이댓글에댓글달기
  그런데 주파수가 너무 높아도 눈아프더라구요...^^
  athlon88 (ID) / 06-08-23 10:20/ 이댓글에댓글달기
  3d나 2d나 vsync 메커니즘은 같습니다.

시스템 성능 따라주지 않는데 100 프레임이 나오긴 힘들겠죠.

대부분 벤치마크 툴에서 보여지는 프레임수는 화면이 갱신되는 회수가 아니라, 화면 갱신을 위해 랜더링 루프가 돌아간 회수랍니다.

리프레쉬 레이트 이상의 프레임은 성능 측정의 숫자놀이일뿐이지 실제적인 갱신 프레임 수가 아니라는 것이 이야기의 중점.
  mygirl2 (ID) mygirl2님의 미디어로그 가기  / 06-08-23 11:19/ 이댓글에댓글달기
  저는 85Hz로 놓고 씁니다.
  lyongs00 (ID) / 06-09-20 18:40/ 이댓글에댓글달기
  85Hz로 놓고 씁니다
로그인 | 이 페이지의 PC버전
Copyright NexGen Research Corp. 2010