팝업레이어 알림

팝업레이어 알림이 없습니다.

리뷰카테고리

NVIDIA, AMD DX11 테셀레이션 기술을 밝혀라!

그래픽의 표준으로 자리잡은 MS의 DirectX

현재 3D 게임을 논할 때 다이렉트X(이하 DX)를 빼 놓고는 이야기 할 수 없다. DX는 컴퓨터에서 그래픽 연산을 처리 할 수 있도록 만들어진 API로 3D게임이 등장하던 처음부터 DX가 시장의 우위를 점하고 있었던 것은 아니었다. 초창기 발표된 3D게임들은 주로 OpenGL 3D나 Glide를 이용해 개발되었고 DX는 3D시장에서는 미약한 모습을 보이고 있었다. 하지만 Direct 3D를 지원하는 DX2.0이 세상에 공개되기 시작하면서 3D API 시장 상황은 큰 변화를 맞게 된다. 90%이상의 컴퓨터에서 사용되어지는 O.S가 마이크로소프트사의 윈도우라는 점을 감안하면 윈도우에 기본으로 탑재 지원되는 DX의 파급효과는 커질 수 밖에 없었다. 거기에 개발자들이 편리하게 활용 가능한 소스라는 점과 윈도우 7부터 지원되는 최신 DX11에 이르기까지 DX가 보여준 비약적인 성능의 개선은 보다 현실적인 입체 그래픽 게임 발전에 많은 도움을 주게 된다.

결국 거의 표준화 되다시피 한 DX를 지원하는 다수의 게임들이 출시되게 되고 화려한 3D그래픽의 세계로 사용자들을 초대하게 된다. 하지만 마이크로소프트의 DX를 활용한 기술이 항상 최고의 능력과 시장상황을 보여주기만 한 것은 아니다. DX9을 사용하는 윈도우XP에서 윈도우 비스타라는 운영체제로 넘어가며 DX10이 발표 되었지만 현재 DX10을 지원하는 게임 수는 그다지 많지 않을 정도로 사용자와 개발자에게 외면을 받았다. DX9에 비해 뛰어난 성능 변화를 가져왔음에도 불구하고 윈도우 비스타라는 운영체제의 실패가 DX10이 널리 활용되지 못하는데 결정적인 요인으로 작용했다고 보는 사람들도 많다.

그런 상황 속에 절치부심 하던 마이크로소프트는 재빨리 윈도우 7을 공개하고 현재 운영체제 시장의 80%가 넘는 점유율을 기록한 윈도우 XP를 대체하는 운영체제로 급격하게 성장시키고 있다. 성공작으로 평가 받고 있는 윈도우 7에는 최신 버전의 DX11이 제공되며 기존에 비해 강력해진 3D 그래픽 기술로 무장하고 있어 앞으로 더욱 크게 향상될 그래픽 세계의 모습이 벌써부터 기대가 되기도 한다.

DirectX 11에 정식으로 채택된 테셀레이션(Tsesellation)

DX10에서 DX11로 변화하며 가장 크게 변화된 점은 테셀레이션, 멀티 스레딩, 다이렉트 컴퓨트의 지원을 꼽을 수 있을 것이다. 하지만 그 중에서도 주목되는 기술은 테셀레이션의 지원이다. 테셀레이션이란 그래픽 카드에 장착된 GPU를 통해 굴곡이 있는 표면을 보다 자연스럽게 만들어주는 역할을 하게 되는데 이로 인해 보다 실사에 가까운 화질을 느낄 수 있게 해 비약적인 그래픽 영상의 발전을 기대해 볼 수 있다.

그렇다면 테셀레이션의 어떤 기능으로  그래픽 영상의 획기적인 발전이 가능해 지는지 조금 더 자세히 알아보도록 하자. 

▲ Unigine Heaven의 한 장면에서 테셀레이션을 ON/OFF 한 상태 비교

위의 장면은 DX11을 지원하는 Unigine Heaven의 일정 장면에서 테셀레이션 설정을 ON/OFF 한 상태로 캡춰해 비교한 것이다. 얼핏 보기에도 화면의 굴곡 면에 나타난 변화들이 눈에 띈다. 테셀레이션이 적용된 그래픽 화면을 보면 갑판부의 쇠 테두리가 더욱 풍부해지고 대포의 포신이 좀 더 입체적으로 그려져 있다는 것을 확인 할 수 있다. 또한 밋밋한 밧줄에 굴곡이 생겨 울통불퉁한 표면 효과를 더욱 살리고 있는 모습이다.

과거에는 화면상에서 가장 비슷한 구도와 모습의 그림을 생성한 뒤 명도/채도 등의 색상을 입혀 입체적으로 보이도록 하는 그래픽 구현 방식을 사용했었다. 그리고 조금 더 발전한 모형이 그림에 입체 폴리곤 효과를 입히는 것이다. 폴리곤이란 3차원 그래픽에서 입체형상을 표현 할 때 사용되는 가장 작은 단위의 다각형을 말하는 것으로 영상에 입혀진 폴리곤 처리는 개발자들의 손에 의해 표현되어지게 된다.

테셀레이션 기능을 사용하면 이런 폴리곤 효과를 스스로 세분화해 표현해 내게 되고 이는 개발자들의 손을 들이지 않아도 자동으로 더욱 많은 수의 폴리곤 처리가 가능하다는 말이 된다. 결국 실사와 같은 그래픽을 좀 더 쉽고 세밀하게 표현하도록 도와주는 기능을 테셀레이션 기능이 처리하게 된다는 것이다.

▲ Unigine Heaven의 한 장면. 폴리곤 분할 면이 표현 된 상태

위의 사진을 비교해 보면 폴리곤 분할로 그래픽의 차이가 어떻게 발생하는지 확인 할 수 있다. 테셀레이션 OFF 상태에서 입체적 그래픽을 형성해내고 있는 삼각형 면들이 테셀레이션 ON 상태에서 기하급수적으로 불어난 것이다. 원본 화면에 테셀레이션이 자동으로 세밀한 폴리곤 분할을 시행하고, 이는 아래와 같은 확실한 그래픽 영상 효과의 변화를 가져온다.

▲ Unigine Heaven의 한 장면. 테셀레이션에 따른 효과를 좀 더 명확하게 비교해 볼 수 있다

위 사진을 통해 좀 더 극명하게 테셀레이션의 효과를 살펴 볼 수 있다. 바닥 면의 평평한 돌들이 울룩불룩 솟아나고 계단에 돌들이 좀더 사실과 같이 표현되어 있다. 집의 벽면도 굴곡이 강화되어 좀더 실사와 같은 질감으로  입체적 표현이 입혀지고 있다.

테셀레이션, 차세대 그래픽 기술의 혁명이 될 것인가?

테셀레이션 기술이 적용되지 않았던 과거에는 이런 폴리곤 분할을 무한정 사용하기가 힘들었다. 이는 개발의 복잡성 때문에 그런 점도 있겠지만 무리한 폴리곤의 사용은 고스란히 GPU의 과부하로 연결되어 폴리곤 사용량이 늘어날 수록 그것을 지원하기 위한 시스템 사양은 무한하게 상승할 수 밖에 없었다. 좀 더 많은 사용자층이 즐길 수 있는 상태로 게임이 출시되어야 하는 개발자들의 입장에서 폴리곤의 무리한 사용으로 일부 사용자들을 잃느냐 하는 문제는 개발의 목적상 크게 작용 할 수 밖에 없었다. 일례로 현존하는 최고 사양의 게임이라 전하는 크라이시스를 떠올려보자. 높은 시스템 사양만큼 굉장한 그래픽 영상을 구현해내고 있다. 만일 테셀레이션을 적용한 다양한 게임들이 출시 된다면 그와 비슷한 그래픽 영상을 구현해 내는 더욱 다양한 수의 게임들을 만나 볼 수 있게 된다. 테셀레이션은 자동으로 구동 시스템 상황에 부합되는 선에서의 디테일한 폴리곤 화면 분할을 시행해 내기 때문에 개발자들이 폴리곤 수에 따른 시스템 사양을 애초부터 확정하지 않아도 된다.

▲ 게임 Crysis의 한 장면

이처럼 테셀레이션은 폴리곤 세분화를 스스로 처리 함으로서 개발자들의 편의를 도와주는 기능을 하게 된다. 하지만 오직 개발자들의 편의적 측면에서만 이로운 것은 아니다. 개발자들이 테셀레이션을 활용한다면 좀 더 쉬운 게임 개발이 가능해지고 현재 나와 있는 다양한 게임들 혹은 영상들 중의 더욱 많은 수가 보다 실사와 같은 영상 구현이 가능해 진다는 이야기가 된다. 그러한 이득은 고스란히 그것을 쉽게 접하고 즐길 수 있는 사용자들에게 돌아오게 되게 때문에 이는 개발자 뿐만 아니라 사용자들에게도 더없이 반가운 소식이다.

물론 테셀레이션을 사용한다고 GPU의 아무런 과부하 없이 무한정한 폴리곤 분할과 그로 인한 실사와 같은 영상 구현이 가능하지는 않다. 테셀레이션을 지원하는 DX11외에도 DX11을 지원하는 그래픽 카드가 필수적으로 필요하며 그래픽 카드에서 테셀레이션을 지원하는 테셀레이터(Tessellator)의 성능 여부에 따라 영상 품질의 차이가 발생 할 수 있기 때문이다.

하지만 그런 여하를 떠나서라도 테셀레이션이 보다 활성화 된다면 개발자들은 일정한 폴리곤을 따로 설정해 권장 시스템 사양을 무리하게 올려 놓을 필요가 없어지고, 테셀레이션이 자동으로 사용자 시스템에 맞는 수준의 폴리곤 분할을 해주기 때문에 시스템 사양에 따라 적절한 수준의 그래픽 효과들로 게임을 즐길 수 있어 사용자들의 편익이 가중 될 것이다.

즉, 테셀레이션을 활용해 게임이 개발 된다면 저사양에서는 그 사양에 맞는 폴리곤 분할이 시행되어 조금은 낮은 그래픽 상황에서 게임을 즐길 수 있고 사용자의 구동 시스템 사양이 높다면 그에 상응하는 폴리곤 분할이 자동으로 시행되어 높은 수준의 그래픽 품질을 경험해 볼 수 있다는 말이 된다. 다수의 사용자층을 위한 구동 시스템 설정에서 오는 게임 개발자들의 고뇌를 줄여주고 사용자들은 넓은 시스템 구동 사양으로 더욱 편리하게 다양한 게임을 즐길 수 있는 가능성이 넓어지는 것이다.

그렇다면 GPU에서 지원하는 테셀레이션 기능은 어떤 형태로 그래픽 연산 처리와 다른 방식으로 구현되게 되는 것일까. 현재 그래픽 시장을 분할 하고 있는 NVIDIA와 AMD(ATi)의 GPU는 테셀레이터 지원 방식에 각 GPU들이 가진 특성에 따라 구조적인 차이점을 가지고 있다. 

추천 0 비추천 0

SNS공유

  • 페이스북으로 보내기
  • 트위터로 보내기
  • 구글플러스로 보내기
  • 카카오톡으로 보내기

메인 배너



댓글(0)

등록된 댓글이 없습니다.