■ https://www.ifixit.com/ : 전자기계수리 사진, 동영상 제공  출처(http://www.ddanzi.com/free/178496304)


■ 프리웨어 : http://www.ddanzi.com/free/178499004




오류 코드 

http://www.diskool.com/?mid=win_tip&category=587235&document_srl=1199978


오류 코드 및 대응

http://www.assacom.com/shop/member/winblue_pop.htm

http://gamma0burst.tistory.com/318


http://gamma0burst.tistory.com/319



http://cappleblog.co.kr/527 arch ide


http://bbs.danawa.com/view.php?seq=2260248    uefi  win8

http://sixflow.net/osx86/Win/50540   uefi  win7

출처 : http://www.inven.co.kr/webzine/news/?news=44066


[연재] 수직동기화와 앤티 앨리어싱? 게임 개발자가 직접 알려주는 그래픽 옵션의 비밀!

알콜코더 박민근(@agebreak)




최신 게임들의 다양한 게임 옵션… 근데 뭔 소리야?

난이도 설정이나 밝기 정도만 설정하면 되는 콘솔 게임들과 달리 최신 PC게임의 옵션은 참으로 다양하다. 이젠 웬만한 게임들은 그래픽 옵션 설정만 해도 열 가지 항목 정도야 가볍게 넘어가는 실정이다.

더군다나 그 용어들은 일반 유저들에게는 정말로 생소하기 짝이 없다 - [피사계 심도] 라던가, [앤티 앨리어싱]이라던가 - 생전 들어보지도 못한 용어들이 게임들의 옵션 페이지를 한가득 채우고 있다. (게임개발자인 필자가 봐도 이것은 게임개발자가 자기 입장만 생각하고 만든게 아닐까 하는 생각이 든다)

게임 옵션 페이지를 가득 채우고 있는 옵션들이 과연 내 PC에서 돌아가는 게임 그래픽에 어떠한 영향을 끼치는지 한번 알아보자.

[ ▲ 모던 워페어3의 비디오 설정(한글판) ]

[ ▲ 모던 워페어3의 비디오 설정(영문판) ]

[ ▲ 배틀필드 3의 영상 설정 ]



1. 수직 동기화(SYNC, Vsync)

수직 동기화 혹은 수직 싱크, V-SYNC등으로 표시되는 옵션이다. 이 옵션은 화면의 주사율에 맞게 게임 화면의 갱신 속도, 즉 프레임을 동기화시키는 역할을 한다. 모니터에는 각각의 해상도에 맞는 일정한 주사율이 있다(위 모던워페어3 옵션 화면 참조). 일반적으로는 60hz라고 표시되는 것이, 바로 모니터의 주사율이다. 이것은 윈도우의 디스플레이 제어판에서도 확인할 수 있고, 제한적이지만 수정할 수도 있다. 

모니터의 주사율이란, 1초 동안에 모니터를 몇 번이나 다시 그릴 것이냐를 의미한다(게임의 프레임과는 다르다). 즉 주사율이 60Hz라고 한다면, 모니터가 1초 동안 60번 갱신된다는 것이다. 이것은 게임뿐만 아니라 모니터 자체의 하드웨어 설정이다. 즉, 인터넷을 하든, 워드 작업을 하든 언제나 우리의 모니터는 1초에 60번씩 무조건 다시 그려지고 있는 것이다. 동시에 하드웨어적인 제한이기 때문에, 동작하는 프로그램이나 PC의 성능과는 아무런 관련이 없다. 

우리가 일반적으로 게임에서 프레임(FPS)라고 부르는 것과 이 모니터의 주사율은 완전히 별개의 것이다. 프레임은 게임이 1초에 화면을 몇 번을 그릴 수 있는가를 나타낸다(Frame Per Second). 이것은 한번에 게임 내의 처리가 업데이트되고, 그 결과를 화면에 렌더링하는 횟수를 의미한다. 그래서 프레임은 PC의 성능과 게임 처리에 따라서 완전히 달라진다. PC의 성능이 좋다면 1초에 화면을 100번도 넘게 렌더링할 수 있을 것이고, 성능이 부족하다면 30번이나 그 이하도 나올 수 있는 것이다. 이 렌더링 횟수가 우리가 일반적으로 이야기하는 프레임이다. 하지만 주사율은 모니터의 성능에 따라 결정되는 것이기 때문에, 언제나 60Hz(일반적으로)에 고정되어 있다.

그렇기 때문에 게임의 프레임이 60 FPS 이상 높아진다고 해도, 실제로 모니터에 그려지는 횟수는 증가하지 않는다. 내부적으로는 60번 이상 게임의 업데이트가 일어나고, 렌더링이 실행되어도 결국 화면에 그려지는 것은 모니터의 주사율에 제한을 받게 된다. 그래서 게임의 프레임이 모니터의 주사율에 비해서 상당히 높은 경우에 모니터의 성능이 따라가지 못하여, 화면이 끊어지는 현상이 발생할 수도 있다. 게임 내부에서는 업데이트가 훨씬 더 많이 일어나는데 모니터가 그리는 주사율이 따라가지 못하기 때문이다. 결국, 60Hz일 때 게임 안에서 아무리 많이 렌더링한다고 해도, 화면에 갱신되는 속도는 1초에 60번이다.

수직 동기화는 이런 게임의 프레임 갱신 속도를 모니터의 주사율에 맞춰주는 옵션이다. 일반적인 케이스로 생각하면 게임의 프레임을 모니터의 주사율인 60프레임으로 고정해준다. 그래서 게임의 업데이트 속도를 모니터의 주사율에 맞추기 때문에, 화면에 균일한 속도로 업데이트가 이루어진다. 그렇기 때문에 이 옵션을 켜게 되면, 좀 더 부드러운 게임 화면을 얻을 수 있게 된다. 물론 게임의 프레임이 주사율보다 낮다면, 이 옵션은 아무런 의미가 없다.


2. 앤티 앨리어싱 (Anti Aliasing. AA)





일명 흔히들 AA라고도 불리는 앤티 앨리어싱은 화면의 계단 현상을 없애주는 옵션이다. 

모니터는 모눈종이와 같은 수많은 사각형 픽셀들로 이루어져 있다. 그렇기 때문에 현실적으로 완벽한 대각선을 그릴 수 없는 구조로 되어있다. 위의 왼쪽 그림처럼 대각선을 그리기 위해서는 한 픽셀의 일부분만 그려져야 하는데, 화면에 표시되는 단위는 픽셀이기 때문에, 오른쪽 그림처럼 그려지게 된다. 그리고 이러한 현상이 게임에서 계단 현상을 만들어 내게 된다.

이러한 계단 현상(이 현상을 전문 용어로 “앨리어싱”이라고 한다)을 눈에 띄지 않게 하기 위해서, 계단 현상이 일어나는 주변 픽셀의 색상을 보간하여 계단 현상을 줄이는 기법을 [앤티 앨리어싱(AA)]이라고 한다. 

앤티 앨리어싱 기법의 기본 원리는 렌더링되는 화면을 원래의 화면보다 확대해서 렌더링한 후에, 그것을 다시 원래 해상도로 축소하면서 주변 픽셀과 색상을 보간하는 기법이 사용된다. 게임 옵션에서 AA의 설정에서 2X, 4X, 8X라고 설정하는 것이 바로 원본 해상도의 몇 배나 더 크게 확대한 후에 축소할 것인지를 결정하는 것이다. 당연히 더욱 크게 확대한 후에 축소하는 것이 AA의 효과가 훨씬 좋다. 하지만 그려지는 해상도가 높아질수록 게임 렌더링에서는 그만큼의 부하가 커지게 된다.

게임 설정에서 2X를 하는 경우에는 원래 해상도의 4배, 4X의 경우에는 16배나 큰 화면을 랜더링하고, 그것을 축소하게 되는 것이다. 그렇기 때문에 AA의 옵션을 높이면 게임 화면에서 계단 현상은 줄어들지만, 게임의 프레임은 좀 더 떨어지게 된다.

AA도 여러가지 테크닉이 존재하는데.. MSAA, FXAA등의 기법들이 존재하며, 각각의 구현 방식들이 조금씩 다르고, 퍼포먼스와 결과들도 조금씩 달라진다. 지금까지는 일반적으로는 MSAA(Multi Sampling AA)를 사용하였는데, 최근엔 부하가 적으면서도 비슷한 결과를 낼 수 있는 FXAA라는 기법이 개발되어서 최신 게임들에 적용되고 있다.


3. 피사계 심도(Depth Of Field:DOF)



흔히 DOF라고 불리는 [피사계 심도(Depth Of Field)]는 게임 화면에 초점을 맞춘 효과를 내게 해주는 옵션이다. 

인간의 눈이나, 현실의 DSLR 카메라에는 초점(Focus)이 존재한다. 그래서 초점에 맞는 영역은 명확하게 보이지만, 초점이 맞지 않는 가까운 영역이나 멀리 있는 영역은 뿌옇게 보이게 된다. (이렇게 뿌옇게 만드는 효과를 블러(Blur)라고 한다.) 

하지만 3D 그래픽스에는 초점이란 것이 존재하지 않는다. 즉, 일반적인 랜더링에서는 가까운 곳이든 아무리 멀리 있는 곳이든 초점이 없이 모두 선명하게 그려지게 된다. 당연하게도 렌더링이란 것은 그림을 모니터에 출력하는 것일 뿐이기 때문이다. 

그래서 게임 그래픽에서는 이런 현실적인 초점 효과를 흉내 내기 위해서 별도의 처리를 구현하게 되었다. 즉, 초점 부분 외에는 일부러 블러를 먹여서 이러한 효과를 흉내 내는 것이다. 이것이 [Depth Of Field:DOF] 라고 부르는 효과이다.

DOF는 초점이 맞춰지는 부분은 명확하게 그리고, 나머지 부분 - 초점에서 가까운 부분이나 먼 부분 - 을 일부러 블러 효과를 적용해서, 현실적인 카메라와 같은 효과를 내게 된다. DOF를 적용하게 되면 개발자가 초점을 주고 싶은 부분을 제어할 수 있기 때문에, 유저들에게 좀 더 몰입감과 현실감을 주게 된다.


4. SSAO (Screen Space Ambient Occlusion)



SSAO는 건물의 벽이나 총기 등에 세부적인 그림자(음영)를 만드는 효과를 만든다. Ambient라는 것은 태양광에 대해서 생기는 직접적인 그림자가 아닌, 태양광이 다른 물체에 반사되어 또 다른 물체를 비출 때 생기는 그림자를 의미한다. 일명 [주변광]이라고 하는 간접광을 이야기하는 것이다. 이러한 주변광에 영향을 받는 부분인지 아닌지를 판단해서, 세부적인 음영을 처리하는 기법을 AO(Ambient Occlusion)이라고 한다. 

이러한 주변광에 대한 음영 처리는 일반적인 렌더링 방법으로는 성능상의 문제로 실시간 처리가 아직까지는 불가능하다. 주변광은 특별한 광원(라이팅)에 대한 직접광이 아니므로 일일이 광선의 이동을 계산해야 때문에 계산량이 상당히 많기 때문에다. 그래서 이것은 화면 영역(Screen Space)에 국한해서만 처리하게 되는 기법이 개발되었는데 이것을 SSAO라고 한다. 

SSAO를 활성화하게 되면, 다른 벽이나 오브젝트에서 반사되는 빛에 대해서 생기는 음영까지 처리하기 때문에, 크게 눈에 띄지는 않지만, 게임 화면의 세세한 디테일이 더욱 살아나게 된다.

배틀필드3의 [앰비언트 오클류젼]에 대한 설정도 이와 같은것이다. 하지만 배틀필드 3에서는 옵션을 최상급으로 올리면, SSAO보다 더욱 퀄리티가 뛰어난 [HBAO]를 사용할 수 있다. 


5. 연기의 부드러움 처리 (Soften Smoke Edge)




이것은 게임 그래픽스에서의 정식 명칭은 [소프트 파티클(Soft Particle)] 이라고 불리는 기술이다. 연기 등을 구성하는 파티클이 배경 오브젝트나 지형과 겹치게 되면, 겹치게 되는 부분이 크게 눈에 띄게 된다. 이것은 연기를 구성하는 파티클 자체도 사실은 3D 폴리곤이기 때문에, 두 개의 폴리곤이 겹치는 부분이 생기게 되고, 이 부분에서 갑자기 연기가 끊겨 보이기 때문이다. 

소프트 파티클이란 연기와 같은 파티클이 다른 오브젝트와 충돌하는 지점, 즉 겹치는 지점을 찾아내서, 그 충돌 지점에 알파 블렌딩을 적용하여 반투명하게 처리하는 것이다. 이런 식으로 반투명 처리를 하게 되면, 파티클과 오브젝트가 겹치는 부분으로 갈수록 연기가 점점 반투명해지기 때문에 부드러운 연기 처리가 가능해진다. 

소프트 파티클 역시 파티클과 다른 오브젝트(지형등)과 겹치는 충돌 지점을 실시간으로 계산해야 하기 때문에, 상용시에는 연산에 부하를 주게 된다. 

+ Recent posts