FS2004에서 ATi 그래픽카드의 안티얼라이어싱에 대한 고찰

FS라는 놈은 기본적으로 모든 비행 시뮬레이션 게임 중에서 가장 그래픽적 요소가 훌륭한 놈 중 하나이면서 여타 다른 비행시뮬들이 그렇듯 출시 당시의 최고 사양을 요구하면서도 거기에서마저도 버벅거리는걸 보여주는걸 마다하지 않는 대단한 녀석입니다(?).




오죽하면 FSX가 나온 이후 몇세대가 지나서 나온 시스템도 적절한 옵션 타협과 텍스쳐 튜닝을 하지 않으면 40프레임을 보기가 힘들까요.




사실 장르 자체가 시뮬레이션, 즉 구현이므로 모든 그래픽의 이상인 ‘현실세계’를 구현하기 위해서 그래픽이 향상되온 것은 사실이나 단순한 게임 차원에서의 그래픽 향상은 3D 방식의 특성상 엄청나게 큰 문제를 직면할 수 밖에 없습니다. 즉 계단현상이죠. 계단현상(Aliasing)이란 본래는 사운드에서 주파수 추출 시 원하지 않던 주파수가 섞인걸 말하는데, 우리가 흔히 생각하는 이미지나 3D쪽에선 폴리곤혹은 이미지의 경계면에서 나타나는 일종의 깨짐 현상을 나타닙니다.




허나 이런 계단현상은 흔히 비트맵이라 일컫는 래스터(Raster) 방식 이미지에서만 나는 문제이고, 벡터(Vector) 방식 이미지에서는 계단현상이 생길 수 없습니다. 그런데 왜 비트맵 이미지를 쓰냐고요? 색상 구현과 처리 속도가 느리다는 문제점이 있기때문입니다.




// 레스터 방식과 벡터 방식의 간략한 비교(미령의 웹툰과 블로그)





따라서 이런 계단현상을 줄이기 위한 기법이 등장했는데, 그 이름도 무시무시하고도 원초적인 안티 얼라이어싱(Anti Aliasing) 되겠습니다.




사용자


[안티 얼라이어싱의 예]



안티 얼라이어싱의 방법은 여러가지가 있는데, 이미지나 폴리곤의 경계면(때로는 색상의 경계면)에 각 경계면 색의 중간값을 집어넣어 이미지가 부드럽게 보이게 하는 게 안티 얼라이어싱의 기본적인 원리 되겠습니다. 옛날의 그래픽카드나 Super Sampling 방식의 안티 얼라이어싱을 적용한 경우 텍스쳐에 그려진 선이 안티 얼라이어싱을 적용하지 않았을때보다 두껍게 보이는 이유는 바로 이때문입니다.




// 안티얼라이어싱의 적용 과정과 방법(케이벤치)




문제는 얇은 경계면을 가졌을 때, 약한 수준(4x 이하)의 안티 얼라이어싱을 적용시켰을 때에는 얼라이어싱이 다소 완화되지만 눈에 거슬릴 정도가 그래도 있다는 것인데, 6x 이상으로 샘플링을 거치면 간단하게 해결되겠지만, 하나의 텍스쳐를 여러번 샘플링하여 표시하는 만큼 그만큼의 대역폭과 처리시간, 자원(Resource)이 필요한 만큼 프레임이 급감한다는 엄청난 문제가 있습니다. 사실 안티 얼라이어싱을 적용하지 않는다면 FS는 보통의 듀얼코어나 쿼드코어, 즉 Core2Duo나 Core2Quad만 되어도 풀프레임 충분히 뽑아줍니다.
(FS의 특성상 엄청난 월드 데이터와 시너리, 항공기 데이터가 있기 때문에 안티 얼라이어싱(AA)가 적용된다면 그것의 몇배가 재계산되는 것과 같겠죠?)




따라서 AA는 성능이나 품질이냐를 결정짓는 중요한 잣대 중 하나가 됩니다. 물론 시스템 성능이 어느정도 받쳐준다면 AA를 적용했을 때와 하지 않았을 때와 프레임 차이가 거의 안나는 경우도 있지만, 직접 적용해보지 않으면 해당 시스템의 성능상 한계를 가늠지을 수 없기 때문에 직접 게임을 돌려보며 성능과 품질 사이에서의 최적값을 타협하는게 자신의 시스템을 최대한 활용하는 방법이 아닐까 하네요.
그런 의미로, 현재 제가 사용하는 시스템에서 각 AA 방식에 따른 프레임 하락값과 품질 비교를 해보도록 하겠습니다.





[#M_테스트 내용을 보실려면 클릭|다 보셨으면 접으셔도 될듯여|

테스트 시스템 사양


























CPU Intel Core i7 860(2.8GHz)
Main Board ASUS P7P55D
RAM EK PC-12800 2GB x 4 = 8GB
VGA Sapphire Radeon HD5850(725MHz, 4000MHz), Dual Display
Sound Card Creative Sound Blaster X-Fi Extreme Music
HDD WD5000AAKS(Boot), WD3200AAJS(FS2004)
ETC NIC: Intel EXPI9300PT
HDD: ST3500418AS
ODD: LG GH22-LS50
PWR: Zalman ZM-660XT(660w)



FS2004 옵션

















Scenery Special Effects Detail: High
Terrain
  -Terrain Mesh Complexity: 100
  -Terrain Texture Size: High
  -Terrain Detail: Land only
  -Water Effects: High
  -Dawn/Dusk Texture Blending: Enabled
  -Extended Terrain Texture: Enabled
Scenery
  -Scenery Complexity: Extremely Dense
  -Autogen Density: Extremely Dense
  -Addon Dynamic Scenery: Extremely Dense
  -Ground Scenery Cast Shadows: Enabled
Sun Glare: Disabled
Lens Flare: Enabled
Aircraft Virtual Cockpit Guage Quality: High
Reflections: Enabled
Aircraft Cast Shadows: Enabled
Landing Lights: Enabled
Weather Sight Distance: 100mi/160km
Cloud Draw Distance: 80mi/128km
3-D Cloud Percentage: 100
Cloud Detail
  -Detailed Clouds
  -Cloud Coverage Density: Maximum
Hardware Target Frame Rate: 40fps
Display Resolution: 1920x1200x32bit(Window mode)
Hardware Rendering Options
  -Render to Texture: Enabled
  -Transform and Lighting: Enabled
  -Anti Aliasing: Disbled(게임상에선 체크하면 안됨-_-)
  -Filtering: Bilinear
  -MIP Mapping Quality: 8
  -Hardware-rendered Lights: 8
Global Max Texture Size: Massive

[그냥 스샷을 찍을걸 그랬나-_-]





그래픽카드 옵션 설정























AA 수준 8x+Narrow-tent 필터 = 12x
AF 수준 8x
Catalyst AI 기본
밉맵 상세 수준 고품질
수직 재생 대기 응용 프로그램에서 따로 지정하지 않은 경우 끔




현재 가지고 있는 그래픽카드가 ATi 제품밖에 없는고로…Catalyst 9.11 한국어 CCC를 기반으로 설명드리자면, ATi 제품에는 3가지의 AA 모드가 존재하는데, 성능에 가장 큰 주안점을 둔 멀티 샘플 AA, 성능과 품질의 중간 수준인 적용형 멀티 샘플 AA, 마지막으로 품질 중심인 슈퍼 샘플 AA가 있습니다. 제가 알기로는 nVidia 제품도 명칭은 틀리지만 같은 옵션이 있습니다.




멀티 샘플 AA는 사실상 종전의 AA와 전혀 틀릴바가 없는 옵션인데, 이는 폴리곤의 경계면만을 AA시키기 때문에, 셰이더나 텍스쳐에서는 적용이 안됩니다. 즉, 24x까지 수준을 끌어올린다 해도 그건 폴리곤에만 적용된다는 소리지요. -_-(자세한건 밑의 테스트에서 보실 수 있습니다)
적응형 멀티 샘플 AA는…한마디로 상황에 따라 가변적으로 성능과 품질을 조절한다는 놈인데, 텍스쳐 AA를 적용시키긴 하지만 투명 텍스쳐(알파값이 거의 투명수준인)만 적용된다는 점에서 FS에서 어느정도 효과가 있겠지만 멀티 샘플 AA(MSAA)와 기본적으로 틀린게 없습니다. 결과 보면 아시겠지만 MSAA와 AMSAA는 성능차이도 거의 없기때문에 이참이면 품질쪽에 갖다놓는게 나을 듯.




마지막으로 슈퍼샘플 AA(Super Sampling Anti Aliasing, SSAA)은 폴리곤이나 텍스쳐 할 것 없이 정해진 수준(2x~24x)만큼의 샘플을 적용하는 것인데, 이론적으로나 실질적으로나 SSAA는 최고의 품질을 보여줍니다. FS를 기준으로 하면 CCC에서 설정할 수 있는 3단계의 수준값은 완전히 무시할만큼 극단적으로 품질이 향상되는 수준인데, 그만큼 프레임 저하가 상당히 큽니다. 애초에 멀티텍스쳐링 성능이 강한 ATi 제품들이지만, 구름같이 텍스쳐 로드가 상당한 경우에는 아주 그냥…정지영상을 보실 수도 있습니다.





테스트 방식



AA 모드에 따라 품질과 프레임 차이를 보여주는 것이므로, 위 설정은 건드리지 않고, 이상태에서 앨리어싱 제거 모드를 바꿔봄으로써 나타내는 것을 살펴보겠습니다.




게임 내 테스트 설정은 다음과 같습니다.





















Aircraft PMDG MD-11 GE PMDG livery
Scenery Overland Incheon(0611 Update)
Korea SRTM by dcman
한국 도시풍경 개발 30 by 유승현
Location RKSI RWY34L(Traffic 100%, ATP4.6 SP2.2, TAi 2.6G P1)
Addon REX for FS2004
– 3D Cloud 1024×1024, Cirrus 1024×1024, Water 512×512)
Active Camera
DBS Walk&Follow
HDR Plugin: Disabled
더 있을텐데 기억이 안남…-_-
Weather Test 1: Fair Weather
Test 2: Building Storms



시점은 VC 0.50 Zoom, Spot View는 우측에서 항공기를 바라보는 시점으로 하겠습니다. 프레임 형성에 엄청난 영향을 주는 구름은 두 가지 프리셋을 이용하여 해보겠습니다.





품질 테스트



사용자 삽입 이미지


[좌측부터 적응형 멀티샘플링, 멀티샘플링, 슈퍼샘플링 AA]




사용자 삽입 이미지


멀티샘플링. 눈으로 보기에는 대부분 선으로 이루어져 있는 만큼 폴리곤 위에 수많은 텍스쳐가 깔려 있는데, 얇은 선으로 구성되어 있기 때문에 위처럼 12x인데도 불구하고 상당한 계단현상이 보이고 있습니다.


사용자 삽입 이미지


적응형 멀티샘플링. 멀티샘플링과 사실상 차이가 없어 보이지만 PAPI부근의 ‘9’ 숫자가 좀 더 깔끔하게 보이고 원거리 Taxiway Sign이 좀 더 잘 보이는 등 원거리 텍스쳐는 덕을 보는걸 확인할 수 있습니다.


사용자 삽입 이미지


슈퍼샘플링. 모든 면에서 다른 샘플링 옵션과 현격한 디테일 차이를 보여줍니다.우측 상단 ‘9’ 숫자 위에 세로로 세워져 있는 1px정도의 기둥이 보이실텐데, 실은 Parking에 있는 등화 기둥입니다. 다른 샘플링 옵션에서는 안보이는 오브젝트입니다. -_- 다음은 좀 더 잘 볼 수 있는 공항 오브젝트.



사용자 삽입 이미지


멀티샘플링. 위 글에서 언급한 등화 기둥이 쬐끔씩 보이고 있는데, 그 굵기가 일정하지 않고 보였다 안보였다 하는 경우가 있습니다. 택시 센터라인은…지못미군요.


사용자 삽입 이미지


적응형 멀티샘플링. 택시 센터라인은 거의 변화가 없지만 등화 기둥은 멀티샘플링보다 잘 보이는걸 확인할 수 있습니다. 이외에 Taxiway Sign도 좀 더 잘 보이는군요. 이쯤 되면 적응형 멀티샘플링은 멀티샘플링에서 원거리 오브젝트가 좀 더 잘 보여지는 옵션…쯤으로 생각하시면 될 듯 합니다. 단, 비등방성 필터링은 6x 이상정도 되야 잘 보실 수 있을 듯.


그런데구름색깔이 멀티샘플링때보다 균일하지 못하네요?


사용자 삽입 이미지


슈퍼샘플링. 원거리 오브젝트는 적응형 멀티샘플링과 같은 수준이고, 택시웨이 텍스쳐는 많이 깔끔해졌습니다. 균일해보이지 않은 문제가 있는데, 이는 AA 수준을 올려주면 해결될 문제이겠네요.



프레임 테스트


물론 품질이 좋은 쪽으로 가는건 모든분들이 당연하게 생각하실 터인데, 하지만 득이 있으면 실도 있는 법. 프레임이 발목을 잡게 됩니다. 과연 위 옵션에서 프레임 차이는 얼마나 나게 되는 것일까요?


사용자 삽입 이미지


멀티샘플링. 40프레임 제한에서 38.8이 나옵니다. 다소 프레임이 튀지만, 대체로의 평균은 이정도인데, 최고프레임에 근접하기 때문에 사용상 문제는 없지만 품질이 좀 그렇지요.


"사용자


적응형 멀티샘플링. 일부 오브젝트의 디테일 차이가 보이는 와중에, 33.6fps가 나왔습니다. 멀티샘플링에 비해 프레임이 튀는 간격이 넓은 편이고, 평균프레임도 3~5fps정도 납니다. 찍힌 프레임은 실체감과는 약간 차이가 납니다.


사용자 삽입 이미지


슈퍼샘플링. 네, 눈요기로는 최고의 설정인 반면 움직이는걸 감상하기에는 다소 부족한 프레임인 18.1fps가 나왔습니다. 적응형 멀티샘플링에 비하면 반절 수준으로 추락을 했는데, 사실 멀티샘플링은 폴리곤만 AA를 적용하기 때문에 텍스쳐는 처리를 거치지 않아 프레임이 높게 나온 것이고, 슈퍼샘플링은 모든 구성요소를 설정 옵션인 8x+Narrow tent=12x로 했기 때문에 그만큼의 처리를 거쳐서 나오기 때문에 저렇게 프레임이 안나올 수 밖에 없지요. 심지어 프레임이 표시되는 숫자와 글자만 봐도 어떻게해서 적용이 됐는지 잘 보이실겁니다.


사용자 삽입 이미지


멀티샘플링. 프레임은 풀을 뽑아주고 있습니다. 텍스쳐 여기저기 계단현상이 심심찮게 목격됩니다.


사용자 삽입 이미지


적응형 멀티샘플링. 위에서 말씀드렸다시피 원거리 오브젝트에 대한 효과가 있기 때문에 근거리에서 보는만큼 기체의 디테일 차이는 거의 없습니다. 혹시 HStab 전방 이음새에 계단이 왜 져있냐고 궁금하실 분이 계실텐데, 저부분은 폴리곤 경계면이기도 하지만 텍스쳐로 덮여 있고 상/하면의 텍스쳐 경계선이 만나는 지점을 촬영했기 때문에 저렇게 계단이 져서 보입니다. 프레임은 차이가 없네요.


사용자 삽입 이미지


슈퍼샘플링. 뭐 더 설명드릴 필요도 없을 듯 합니다. 모든 면에서 디테일이 우수합니다. 잘 보시면 Runway 옆 땅바닥도 많이 부드러워진걸 보실 수 있습니다. 마찬가지로 HStab쪽 계단도 많이 완화된걸 보실 수 있죠? AA 방식의 차이인만큼 3개 옵션 모두 공통적으로 폴리곤 AA를 하기 때문에, VStab 폴리곤 경계면의 계단현상은 차이가 없는걸 확인하실 수 있습니다.
프레임은 약 13fps정도 떨어진 상태군요. VC에서 보는 것보다는 덜한 이유는 공항을 바라본 상태로 찍지 않았고, 외부모델의 처리는 사실 VC보다는 적은 자원을 소모하기 때문입니다.



자 그럼 Weather 옵션을 Building Storm으로 바꿔서 프레임 측정을 해보도록 하겠습니다. 이번에는 그림 대신 표로 측정치를 보여드리겠습니다.


사용자 삽입 이미지
 


[VC View, ‘Building Storm’ Weather preset]















옵션 측정값
MSAA 38 fps
AMSAA 34.4 fps
SSAA 14.1 fps


적응형 멀티샘플링의 경우 적은 수준의 프레임 하락율을 보여주지만, 슈퍼샘플링의 경우 처리해야 할 개체가 순식간에 불어났기 때문에 엄청난 프레임 하락을 보여주고 있습니다. 평소에 SSAA를 적용한 상태로 구름이 많은 곳을 쳐다보거나 지평선을 보면 엄청난 프레임 하락을 보여줬는데, 평소엔 그 이유를 모르다 여러가지 파해쳐보면서 알아낸게 바로 옵션과 구름의 상관관계때문이더군요.



사용자 삽입 이미지


[Spot View, ‘Building Storm’ Weather preset]

















옵션 측정값
MSAA 39.9 fps
AMSAA 39.9 fps
SSAA 6(…) fps


참으로 충격적인 프레임 하락률이 아닐 수 없습니다.시점 자체가 지평선을 바라보는 경우인데 프레임이 땅을 기고 있는 수준을 보여주고 있습니다. 이정도면 열정만 가지고는…플레이가 힘들죠. 상용 애드온 등의 비행기 그 자체로도 시스템 자원 소모에 큰 영향을 미치는 애드온을 사용할 때는 위처럼 프레임 하락폭이 상당해지는걸 확인할 수 있었습니다.


혹시나 해서 구름 옵션을 좀 조절해봤습니다.


사용자 삽입 이미지


사용자 삽입 이미지


거의 그대롭니다. -_-


이쯤 되면 정말 구름이 문제일까? 하는 의문을 가지실 분이 있으실텐데, 그러면 구름을 아예 없애볼까요?


사용자 삽입 이미지


헐(….)



의문점


플레이를 하다가도 발견한 점이고, 실험을 하다가도 발견되는 증상인데, 도대체 원인이 뭔지 모르겠습니다.


사용자 삽입 이미지


슈퍼샘플링 상태에서 Fair Weather 프리셋을 적용했을 때의 CPU 점유율(빨간 상자) 보통 무조건 100% 먹고 들어가는 FS이지만, AA옵션을 저렇게 설정하면 CPU 점유율을 다 차지하지 않습니다. 프레임이 잘 나올만한 구간에서는 100%를 보여주는데 말이죠.


사용자 삽입 이미지


Building Storm Weather 프리셋. 프레임이 더 하락함과 동시에 CPU 점유율이 더 내려간 것을 알 수 있습니다. 혹시 하이퍼쓰레딩때문이 아닐까 생각해볼 수 있습니다만, 아시는 분은 제보좀(…)



FSX에서는 어떨까?


본 포스트에서는 FSX에 대한 측정은 제대로 실시하지 않았지만, 평소의 사용 결과와 이번 테스트와 함께 동시에 간략이 확인해본 바로는 FS2004보다는 하락률이 덜하지만 기본프레임이 낮은고로(20대 후반에서 30대 초반) 상대적으로 하락폭이 낮다 뿐이지 플레이하는데 거슬리는건 사실입니다.


단 프레임 하락을 조금이나마 방어한다는 의미에서는 오랜 기간 텀을 갖고 나온 버전인 만큼 Windows 7과 최신 그래픽카드에서는 좀 더 나은 퍼포먼스를 보여줄 수 있다는 것 정도네요.



결론


안티 얼라이어싱은 계단현상을 기본적으로 없애주는 역할을 해주어 깨끗한 영상을 얻는데 도움을 주지만, 그만큼 프레임의 희생을 각오해야 합니다. 결코 낮은 시스템이라 할 수 없는 제 시스템에서도 슈퍼샘플링 옵션에서 이정도의 프레임 추락은 도저히 용납할 수 없는 수준인데, 아무튼 AA를 적용하는데 있어 프레임과 품질을 동시에 잡기 위해서는 자신의 시스템상에서 반드시 한 번 정도는 위처럼 테스트를 해볼 필요가 있습니다.



부록


정신없이 테스트를 마치고 잠시 기체를 살펴보는데…


사용자 삽입 이미지


응?


사용자 삽입 이미지


제가 빨리 활주로에서 사라지길 기다리는 트래픽들이 있더군요.


…미안. 빨리 사라져줄게.

_M#]

2 thoughts on “FS2004에서 ATi 그래픽카드의 안티얼라이어싱에 대한 고찰”

  1. 전 그냥 귀찮아서 CCC에서 켤 수 있는 옵션 다 켜버립니다
    심지어 트리플버퍼링과 수직동기까지-_-;;

    개인적으로는 와이드텐트가 그럭저럭 쓸만하던데 문제는 엔비디아의 슈퍼샘플링 컴바인드 모드처럼 화면이 전체적으로 뭉개진다는게-_-;;
    그래서 닥치고 AA는 엣지디텍트 24x[…]

    1. 폴리곤 엣지는 12x 되어도 충분한 것 같은데, Wide-tent로 하나 Narrow-tent로 하나 그게그거라서 Narrow 쓰고 있다능.ㅠㅠ
      슈퍼샘플링을 쓰고싶은데 여건상 이리저리 안되는 듯.

댓글 남기기