실시간팁과 파코즈 국내포럼 (해외포럼엔 테라에 관한언급이 없습니다) 을 뒤져 왜 GPU가 100% 일을 안하고 프레임이 곤두박칠치냐 의문을 가지고 살펴본 결과. 대답은 테라의 발적화로 손을 봤습니다.


그나마 그 발적화도 유저의 손으로 어떻게 하면 좀해결볼수있습니다.

몇일전 팁게 "벨리카에서 80FPS 미라클"이라는 제목으로 올라온것하고 비슷할것입니다.


제가 쓰는것은 좀더 구체적으로 설명하는것입니다.


먼저 필자의 사양입니다.



사양은 그냥저냥입니다.

사양에 대해 굳이 올리는것은 이 기술적 설명의 근거에 대한 확신을 주기위해 적어놓았습니다.



먼저 설명입니다.


테라는 특유의 발적화로 인해 프레임이 상당히 불안정합니다.

그나마 오픈 베타이전 Zone은 프레임이 안정적이나 상용화 이후의 Zone에선 프레임이 곤두박질치는것은 기본이요

GPU가 50% 40% 까지 놀았다가 99%까지 일하는둥 시스템을 이용하는것도 제멋대로입니다.


이에 대해서 우리는 Config 파일을 수정 사용자가 할수있는 기술적인 면을 다 사용하여

안정적인 프레임을 확보할것입니다.



1. 로딩을 빠르게 하기


로딩을 빠르게 하는대에 있어서 최고의 조건은

첫번째 주기억장치인 RAM의 용량을 확보하는것이고

두번째 보조기억장치의 활용입니다. 최상위순 보조기억장치의 랭크는

램디스크>SSD Raid>SSD>일반HDD Raid>벨로시랩터 HDD> 일반 HDD 이런순입니다.


램디스크가 무엇이냐? 램디스크는 컴퓨터의 주기억장치인 RAM의 용량을 할당해서 일반 디스크처럼 쓰는것입니다.

하드코어 하드웨어 유저들은 RAM의 용량이 32기가를 육박합니다.(DDR3 Triple Channel 기준) 4기가가 저렴해져서 24기가 이신분도 제법됩니다.일반사람은 그정도 RAM의 용량을 다 못쓴다고하지만 하드코어유저들은 램디스크의 활용으로 다쓰고도 남고 또는 영상작업하시는분은 HDD 임시파일을 쓰지 않음으로써 램에 좀더 많은 임시파일을 할당 랜더링을 아주 쾌적하게 하는용도로 사용하기도 합니다.


사실상 RAM을 이렇게 쓰시는분치고 사용못하신는분은 없을거라 생각하지만 램이 어느정도 되시는분들도 RAM디스크의 활용을 통해 테라뿐만이 아닌 다른게임을 램에 설치해놓고 사용하시면 초광속 로딩을 경험하실수있습니다.


왜 초광속이냐라고 하시면 읽기 쓰기의 최강자는 다름아닌 주기억장치인 RAM이기 때문입니다. 기가단위로 복사하면서 1초내지 2초 걸린것으로 기억됩니다. (물론 램에서 램으로 복사)


RAM디스크의 활용법은 여기에 있습니다.

http://greenwings.kr/34


램디스크의 활용을 좀더 편하게 하고싶으시다면 SuperSpeed RAM Disk 를 사용하시는것도 좋습니다. 저위의 과정을 일련에 생략하고 간편하게 쓸수있습니다.


테라의 용량은 약 20기가를 훌쩍 넘기때문에 램디스크로 인한 로딩개선은 불가능하지만 램디스크로 인한 시스템 효율개선은 가능하므로 임시파일을 램디스크에 몰아넣으시면 잔 버벅임이 걸리지 않습니다.

여기서 말하는 임시파일이란 윈도우 임시파일또는 인터넷 익스플로러의 임시파일입니다.

윈도우 임시파일과 인터넷 익스플로러의 임시파일을 램디스크로 쓰게되면

인터넷 창을열때 하드스왑이 없으며, 기타 백신이나 임시파일에 저장되어 구동되는 프로세서들의 하드스왑이 줄어듭니다.

단점으로는 임시파일용량을 많이먹는 포토샵/에프터이펙트/기타 인코딩 렌더링툴등은 따로 임시파일이 저장되는곳을 설정해줘야합니다.


시스템 임시파일은 (윈도우7기준)

시스템 - 고급시스템설정 - 고급 - 환경변수 -> TMP,TEMP

여기 위치를 바꿔주시면되고


인터넷 임시피일은 익스플로러 기준으로(타 브라우저 오페라,크롬은 셋팅법이 다릅니다)

도구 - 인터넷 옵션 - 인터넷 임시파일 저장위치 설정 - 임시파일 위치 조정


이렇게하시면 적어도 테라하다가 공략을 찾을대 인터넷 익스플로러를 켜도 하드스왑이 일어나지 않습니다.



두번째는 레이드입니다.

일단 SSD와 SSD Raid는 넘어가겠습니다.(비용적인 면때문에..)


필자는 3 way Raid 0 를 사용하고있습니다.

Raid는 HDD를 병렬로 묶어서 하나의 하드디스크로 사용하는 방법입니다.

HDD갯수가 많을수록 속도는 더빨라집니다. 왜 빨라지느냐?

바로 병렬에 관계되기때문입니다. 하드디스크가 3개가 있으면 하나의 파일을 3개로 쪼개어 저장합니다.

하드디스크의 하나의 속도가 읽기 쓰기속도가 평균 100M입니다. 그러면 300M파일을 저장한다고 한다면

일반적인 HDD는 3초가 걸리지만 3 way Raid 0(하드디스크를 3개 묶어놓는것) 을 사용한다면 1초가 걸리는것입니다.

그러면? 테라의 로딩속도가 3배 빨라지는것입니다.


다만 이것도 단점이 있는데 만약 들고계신 하드디스크가 하나라도 고장나면 3개의 하드디스크의에 있던 모든 자료가 날라가게됩니다. 그것을 보완한게 0/1 레이드도 있고 레이드 5도 있지만 초보자가하기엔 어렵고 솔직히 레이드를 걸어놓는 하드디스크 이외에 별도로 서브하드디스크를 구입하셔서 저장하는것이 훨씬 효율적이기 때문입니다.


Raid설정법은 각자 CMOS에 접속하셔서 하드디스크 메뉴에 Raid를 살펴보셔야 합니다.

각 보드마다, 제조사마다 다르므로 또는 지원하지 않는 메인보드도 있기대문에

Raid메뉴에 접속하셔서 직접하시는수 밖에 없습니다. 일반적인 메뉴구성으로

레이드 할 하드디스크 선택, 레이드 구성선택 0/1/5 (0선택) / 레이드 하드디스크 이름

식으로 되어있기때문에 별다른어려움은 없을것입니다.


http://www.parkoz.com/


여기에 가셔서 Raid에 관련검색을 하시면 좀더 자세한 기술적 설명을 보실수있습니다.


2. 그래픽 최적화


제가 ATI 계열만 써서 Geforce 문제는 잘모르겠습니다. (지금 달려있는 9800은 피직스 연산전용으로 쓰는 그래픽카드입니다.)

다만 Geforce 계열 그래픽카드 유틸리티중 ION 버전을쓰면 게임시 퍼포먼스가 증대하는효과를 가져온다는것은 알고있습니다.


Nvidia Geforce ION 입니다. 

역시 파코즈에서 검색하셔서 다운받으실수있습니다.


라데온계열들.. 참 말이 많습니다.

특히 5천대 제품군들 프레임 제대로 나오지 않습니다.

GPU사용률이 25~100% 사이로 출렁이는데 100%만 나오면 전혀 끈끼진 않을텐데 하시는분이 꽤나 많으실것입니다.

저도 고심하다 고심하다 이런저런 시도를 해보는데 테라 인벤에 아주 좋은 기술문서가 있었습니다.


첫번째 Radeon PRO


이것이 뭐냐고하면 ATI RADEON 계열에서만 동작하는 툴로 리바튜너랑 비슷한 일을하는 프로그램입니다.

주요기능은 Flip Queue Size를 조정해 프레임 처리를할때 CPU가 선처리를 할수있도록하는것입니다.


자세한 설명은 여기서 보시면되겠습니다.

http://gothamsi.blog.me/117202851

제가 직접 서술하고싶지만 이미지 업로드 제한으로 잘 정리된 문서를 링크하겠습니다.


라데온프로의 자세한 설명인데 여기서 몇가지 빠진것이 있습니다.



그것을 제일중요한 셋팅을 다하고난다음

세이브 체인지를 해줘야 하는것


그리고 밑의 작업표시줄 간이 아이콘에서 오른쪽 클릭후



상기 나오는 체크항목을 저렇게 해줘야 하는것입니다.

그렇게 해야만 시스템을 종료하고 다시 시작해도 원래 설정을 유지하면서 불러오기 때문입니다.



두번쨰로 해야할것은 테라 자체내에 있는 Config 파일을 수정하는것입니다.

사용자의 드라이버:\HanPurple\TERA_HG\S1Game\Config 폴더에 들어가서

S1Engine.ini 파일을 엽니다. (미리 백업해두시기 바랍니다)


ex) D:\HanPurple\TERA_HG\S1Game\Config\S1Engine.ini


S1Engine.ini 파일을 열면 여러 영문으로 적힌 설정값이 있을것입니다. 설정할것은 몇개 없습니다.

건드릴 옵션만 차근히 설명하겠습니다.


처음으로 설정할것은  [Engine.GameEngine] 값 입니다.

키보드의 Ctrl + F 를 눌러 Engine.GameEngine 복사/붙여넣기 하셔서 검색하시면 바로 찾아집니다.

해당값을 밑과같이 동일하게 해주시면됩니다.


[Engine.GameEngine]
bSmoothFrameRate=False
MinSmoothedFrameRate=22
MaxSmoothedFrameRate=80


설명드리자면 프레임 구간을 상기 표기되어있는것처럼 22프레임부터 80프레임까지 프레임을 조정하는것입니다.

다른 사용자님의 말씀으로는 해당프레임 구간 유지를위해 자동으로 이펙트나 기타 설정을 조정한다고 하셨는데.

제가보기엔 그냥 수직동기화와 유사한 기능을 하는것같습니다. 1프레임이라도 더 높은 프레임을 보고싶다면 끄는게 좋습니다


두번째로 설정할것은 [SystemSettings] 입니다. 해당값이 많기때문에 수정할값만 설명드리겠습니다.

역시키보드의 Ctrl + F 를 눌러 SystemSettings 복사/붙여넣기 하셔서 검색하시면 바로 찾아집니다.


[SystemSettings]


DynamicLights=False

이값은 HDR에 관련된 값입니다. HDR의 정확한 기술설명은

http://chulin28ho.egloos.com/5379206

참고하시면됩니다. 테라 그래픽이 좋아보이는것은 이옵션때문입니다. 이옵션을 끄게되면 전체적인 색감이 어두워보입니다. 하지만 저사양용 유저들은 높은 프레임을 확보하게 됩니다

추천 사양 = 라데온 5850, Geforce 460 이상 True 그이하 False


DynamicShadows=False

HDR의 그림자 옵션입니다.HDR 옵션을 끄게되면 이옵션은 True가 되어있어도 꺼집니다.


CompositeDynamicLights=False

이옵션은 가상 HDR옵션으로써 임의로 색의 속성을 맞추는것입니다. 예를들자면 빛의 들어오는 구간에 빛이 반사되어 건물의 벽이 비쳐야 되는데 이걸키면 어설프게나마 그렇게 보입니다. 하지만 완벽하지는않아 물빠진 색이나오는것은 어쩔수없습니다. 그나마 눈호강을 반쯤 시키고싶다면 키시면됩니다.


추천 사양 = 라데온 4850, Geforce 260 True 그이하 False


MotionBlur=False

본래  타게임에선 모션블러는 동작에 의한 화면의 뭉개어져 선으로 보이는것이 기술이었습니다.

(폰이나 디카로 카메라를 최고해상도로 맞춰놓고 빠르게 돌리셔서 찍을때 나오는 화면의 으개어짐이 모션블러입니다)

하지만 테라는 원거리의 배경을 흐릿하게 보여주는 용도로 사용하고있습니다. (원경)

눈이 아픈걸 싫어하신다면 끄시는게 좋으나 배경이 아주 로우퀄러티로 되어있으므로

(말타고 올라가시면 배경의 실체를 볼수있습니다.) 키시는것도 나쁘진 않습니다.


Bloom=False

블룸에 대해서 설명하자면 이것은 망막에서 보는 빛의 감지를 게임에서 실제와같이 해주는것입니다.

온라인 게임중 아바에서 블룸옵션을 생각하시면됩니다. 밝은곳에서 어두운곳으로 나왔을대 망막이 작아져 시야가 흐릿하게 보여 구분하기 힘든것처럼 그것과 같은 효과를 냅니다. 원래 라면 사양의 상당부분을 차지해야하나 이상하게 체감은 안됩니다. 그래도 저사양유저분은 끄시는게 낮습니다.


추천사양 = 라데온 4850, Geforce 260 True 그이하 False


UseHighQualityBloom=False

상기 블룸효과를 좀더 고급스럽게 해주는것입니다. 블룸효과를 끄게되면 True가 되도 False로 적용됩니다.

블룸은 키고싶은데 사양이 약간 걱정스럽다면 False해주시면됩니다.


FogVolumes=False

안개에 대한 설정입니다. 사막의 쉼터에서 쿠마스 잡으러갈때 보이는 안개를 꺼주는것입니다.

솔직히 끄나 안끄나 별차이없습니다. 안개가 파티클로 구성이 되어있지 않아서 사양의 큰무리는없습니다.


UseVsync=False

수직동기화 옵션입니다. 수직동기화에 대하여 설명하자면 모니터 주파수와 게임 프레임을 동기화시켜 화면의 떨림을 방지합니다. FPS게임할대 화면을 빨리 돌리면 화면이 이분할되어 보이시는것을 자주볼수있습니다. 그것을 없애주는 역할을 합니다. 다만 프레임을 낮은것을 기준으로 고정시켜서 왠만하면 끄시는게 좋습니다.


AllowD3D10=False

이옵션이 논란에 쌓여있는 옵션입니다. True해도 오류를 내뿜습니다.

다이렉트 10을 지원하는 카드는 제가 써본건 라데온 4천대부터 그리고 지포스 GTS250대 부터입니다.

하지만 이옵션을 키면 에러를 내뿜습니다. 따라서 이옵션은 당연히 쓸모가없는데 이걸 고쳐서

AllowD3D11=True 를 하게되면 다이렉트 11을 지원하는 카드 + 윈도우7의 환경에서

상당한 퍼포먼스를 보여주게됩니다. 테라 공식사이트엔 아직 다이렉트 11은 미지원이라고 되어있습니다만 동작하는것을보니 상당히 아이러니합니다.

 

Ex) 적용하는 예

AllowD3D10=False

AllowD3D11=True

 

두개다 써줘야합니다. 안써도 자동으로 실행하면 테라내에서 자동으로 맨마지막 항목에 기입하지만

그래도 미리 써놓는게 좋습니다.


다렉11지원카드 = 라데온 5천대 이상, 지포스 460이상 윈도우7환경에서만 안정적으로 구동됨

그이하 구동불가/비스타 시도해보지 않음


MaxMultisamples=1

이옵션은 안티 얼라이언싱입니다. 엣지부분을 부드럽게 나눠 가장자리 부분을 그림과같이 자연스럽게 보여줍니다.

다만 이걸키게되면 사양을 엄청먹습니다. 그래서 고사양유저분이라도 끄시길 권장합니다.

기본적으로 1은 꺼져있는것입니다. 왜냐하면 엣지부분이 1이라면 기본이고 기본에서 2로 나누어서 쪼개어지는것이기 때문입니다. 그래서 옵션은 2제곱으로 올라가게됩니다. 2,4,8,16,32


다만 나는 정말 고사양에 테라따위는 풀옵션 줘야한다고 생각하시면 4정도 주시면 적당하고 깨끗한 엣지를 볼수있습니다.


Fullscreen=False
ResX=1440
ResY=900


제가 다들 알고게신 이옵션을 설명하는것은 그래픽카드의 메모리에의해 큰 변화를 겪기때문입니다.

사실상 텍스쳐의 크기를 증대시켜서 필요하게되는것은 그래픽카드의 메모리입니다. 


각자 그래픽카드를 보시면 gts260 512M,Radeon 5850 1G 이렇게 적혀있을것입니다.

간단하게 설명하자면 512M는 22인치 모니터 1680*1050/1G이상은 24인치 모니터 1920*1080이상에서 쓰시는것입니다.

그밖의 안티를 주는것도 이 메모리에 관하여 큰영향을받으니 추천하는 해상도는 512기준 1440*900 정도가 적당합니다.

그리고 반드시 창모드로 해주셔야합니다. 가끔 모니터마다 해상도를 지원못하는경우가 제법있어서 미리 옵션에서 전체모드를 OFF시키고 들어가야합니다 그것이바로 Fullscreen=False 입니다.




이로써 모든 설명을 마쳤습니다. 사실 세부옵션을 더 건드려서 게임을 해도되지만 그렇게 해도 큰체감은 사실어렵습니다.

쉽고 편하게 굵직한것만 고쳐서 하시는것이 제판단엔 좋을것이라 생각되어 필요한것만 적었습니다.

2부에선 그래픽카드의 오버/CPU의 오버등 실질적인 퍼포먼스를 향상하는것을 토대로 작성하겠습니다.