자기가 만든 게임이 다른 게임보다 더 멋져 보이고 싶은 건 당연한 마음이다. 특히 개발자들은 더더욱 그러할 것이다. 그래서 최신 기술을 도입하고 새로운 방식을 적용하면서 더 나은 퀄리티를 위해 노력한다.

하지만 뛰어난 퀄리티에는 많은 리소스가 동반된다. 시간적, 인력적 부분에서의 문제는 물론이며 최적화가 제대로 이루어지지 않아 원활한 플레이가 어려워지기도 한다. 그래서 '뛰어난 퀄리티'와 '최적화', 그 사이에서 최선이라고 느껴질만한 합의점을 찾아야 한다. 어느 정도로 퀄리티를 양보하고 최적화를 이루는가에 따라 게임의 평가가 갈린다.

그렇다면 '블레스(Bless)'는 어떠한 절차를 거쳤을까? 이에 대해 네오위즈블레스스튜디오 테크니컬아트팀(Technical Art Team) 김태근 팀장이 무대에 올라 '블레스 그래픽 최적화 - 이제 그래픽 리소스 6년의 묵은 때를 제거할 때'라는 주제로 한 시간 동안 허심탄회하게 이야기를 풀어갔다.

▲ 네오위즈블레스스튜디오 테크니컬아트팀 김태근 팀장

해당 세션에서는 '블레스'의 후반부 최적화 단계에서 발생한 그래픽과 관련된 이슈들을 어떻게 우선순위를 두고 나열하여 처리했는지, 그리고 문제 해결을 위해 어떠한 접근방식을 검토하고 진행했는지에 대해 거론됐다.

본격적인 강연에 앞서 김태근 팀장의 간단한 이력이 소개되었다. 그는 액티비전블리자드에서 '토니호크스케이터'와 '기타히어로' 콘솔 게임에 아티스트로 참여한 바 있다. 이후 일렉트로닉아츠(EA)에서 'NBA 스트릿 온라인'과 '배틀필드 온라인' 개발에 테크니컬 아티스트(TA)로 활동했다. 이후 웹젠에서 FPS 게임인 '배터리 온라인'의 배경 책임자로 근무하기도 했다.

"게임 개발을 이루는 3대 요소로 기획과 프로그램, 그래픽이 있는데요. 이 중에 오늘은 그래픽 부문에 대해 이야기하고자 합니다. 특히 테크니컬아트 담당자의 입장에서 최적화에 대한 경험담을 말고자 합니다. 이해를 돕기 위해 우선 '블레스의 OBT 영상을 보시겠습니다"

▲ '블레스' 오픈 프로모션 영상 'New World'

게임의 최적화를 위해 그래픽의 퀄리티를 희생은 불가피하다. 하지만 이러한 희생의 정도를 최소화하는 것이 테크니컬아트 담당자의 역할이기도 하다. 이미 드러난 부분을 개선하거나 문제가 될 소지가 있는 부분을 미리 파악해야 한다.

그래픽 최적화 이야기가 자주 나오는 장르는 FPS이다. 30프레임, 60프레임 등으로 많은 이들이 이야기한다. 프레임이란 쉽게 말해 1초당 화면에 갱신되는 이미지의 수를 뜻한다. 여러 작업을 거쳐서 30프레임 혹은 60프레임으로 느껴지게 하고, 게임의 끊김 없이 플레이어가 원활하게 게임을 즐길 수 있게 하는 것이 '최적화'이다.


그렇다면 왜 '최적화'가 필요한 것일까? 이유는 간단하다. 각자 보유하고 있는 컴퓨터 기기의 성능이 제각각이기 때문이다. 콘솔의 경우 PS4, Xbox One 등 종류별로 모두 동일한 하드웨어 스펙을 가지고 있다. 하지만 PC는 다르다. CPU, GPU, 메모리, SSD 등 부품별로 성능이 다르므로 '최적화' 작업은 필수 불가결한 사항이다.

특히, 온라인 게임의 경우 정형화 되지 않은 연출이 빈번하게 발생하기 때문에 최적화 작업은 더더욱 필요하다. MMORPG의 특성상 대규모 PVP나 카공, 레이드 등에서 특정 장소에 예상을 넘는 사람들이 한꺼번에 모이거나 하는 상황을 고려해서 개발해야 한다는 것이다.

김태근 팀장은 '블레스'에서 그래픽 최적화와 관련해 고려할 상황으로 6가지를 꼽았다.

1. 5배 큰 사이즈(기본 언리얼 세계 대비)
2. 스트리밍 월드(한 개 디비전의 길이 5km -총 48개 디비전으로 구성)
3. 와이번 비행 이동(스트리밍 최악의 조건)
4. 랜드스케이프/ 폴리지(언리얼3 최초/국내 라이브 MMORPG 중 유일)
5. 다수의 NPC / MOB (일시에 연출로 최대 60개 이상의 캐릭터)
6. 커스터마이즈된 다수의 PC (얼굴에 비싼 기능)

욕심대로만 만들다 보니 게임이 뚝뚝 끊기는 이슈가 있었다. CPU 히치(HITCH) 현상을 제거할 필요가 있었고, 그래픽 카드의 수명을 위해 GPU 사용률을 낮춰야 했다. 또한, 시스템 메모리 과잉을 막는 것도 신경 써야 했다. 나아가 언리얼3에서는 패키지 단위로 구성되어 있어, 필요한 정보를 찾아들어가 읽는 단계가 필요했다. 그래서 하드 읽기 속도도 체크해야 할 부분이었다.

이에 블레스 팀은 마스터 머터리얼(Master Material)과 스트리밍 환경설정, LOD, 프락시매쉬, 애니메이션 시퀀스, 액터/이미터 수량, 반투명 재질 등 총 7가지 부문에서 최적화를 위한 작업을 단행했다.


우선 마스터 머터리얼을 활용해 수식 작업을 간소화했다. 가령 몬스터가 들고 있는 무기나 의복 등을 분할해서 내부에서 조합해서 입히는 식으로 작업을 진행했다고 한다. 마스터 머터리얼은 배경과 오브젝트에도 많이 사용되었으며, 활용 빈도에 따라 기능을 축소하거나 병합해 나갔다.

블레스의 지형에서 경사면을 만들 때 프로젝트 매핑 기능이 사용되었는데, 이 부분 때문에 게임이 끊기는 지역도 있었다고 한다. 그래서 읿루 지역에서는 이 기능이 OFF 된 상태로 구현되었다. 그는 "퀄리티가 다소 떨어진다는 아쉬움은 남지만, 퍼포먼스의 차이가 컸기에 눈에 띄지 않는 곳은 끄고 작업했다"고 첨언했다.

'캐릭터가 어디까지 볼 수 있냐?'라는 점도 작업에 있어 중요한 부분이었다. 블레스에서는 캐릭터가 이동하면 이동한 지형의 리소스를 읽어서 메모리에 담고, 지나가면 버려지는 식으로 구현되어 있다.

만약에 무작정 멀리까지 볼 수 있도록 모든 맵을 구현한다면 최적화는 커녕 제대로 캐릭터가 움직이기도 어려울테니 말이다. 그래서 개발팀은 와이번 머리에 카메라를 달고 영상을 촬영하면서 실제 이동시 얼마나 볼 수 있는지를 확인했다.

▲ '블레스' 와이번 촬영 작업 소개 영상

"블레스의 전체 맵을 와이번 한 마리가 밤새도록 날아다니면서 찍었어요. 아침이 되면 로그를 토해내죠. 와이번이 비행을 하면서 촬영을 한 것인데, 안정적인 프레임으로 결과가 나오기를 기대했었어요. 하지만 역시 끊김이 있는 지역이 있었습니다. 영상을 토대로 최적화 리소스 항목을 정리해서 수정 작업에 들어갔죠."

이어 그는 커스터마이즈 얼굴 부분에 대해 이야기했다. 카메라 앵글이 멀어지면 캐릭터의 얼굴이 변형되는 이슈가 있었던 것이다. 현재는 수정된 상태다.

"저희 개발팀이 게임 얼굴에는 예민했어요. 여기 보시는 그림은 루프스 종족인데요. 카메라가 멀어지니까 캐릭터 얼굴이 갑자기 '조석'이 되더라고요(웃음). LOD 작업을 하면서 리딩데이터가 날라가면서 발생했던 문제점이었는데요. 아티스트가 기쁜 마음으로 수정해 지금은 앵글이 멀어져도 얼굴이 더이상 일그러지지 않습니다"

▲ 루프스 얼굴을 줌 아웃을 했더니 턱이 내려 앉았고, 강연자는 이를 빗대 '조석'이라고 표현했다.

최적화와 관련해 작은 용량의 대체 오브젝트를 의미하는 '프락시매쉬(Proxy Mesh)'에 대한 설명도 이어졌다. 이 부분에 대해 개발팀은 가볍게 생각하고 푸른 색으로 캐릭터를 표현했다고. 그러던 도중 인벤에서 기사가 떴고 '게비스콘'이라는 표현에 충격을 받고 변경했다고 한다.

"처음에는 가볍게 생각했어요. '하늘과 유사한 푸르름을 가지고 있는 걸로 해야지'라는 생각이었죠. 그런데 인벤에서 작성한 체험기를 봤는데 '게비스콘'이라고 되어 있더라고요. 싸해졌어요. 그래서 바로 바꾸게 되었습니다"

[관련기사] 찍었다 재미있다던 30레벨! 그리고 가봤다 '블레스' 카스트라 전장!

▲ 아아. 당신들은.. 그 위장약 '게비스X'...?

애니메이션 시퀀스에서도 과한 디테일을 포함한 데이터가 종종 들어가 있으며, 최적화를 위해 이를 찾아서 없애거나 축소했다. 그는 예시로 '고양이'를 언급했는데, 고양이의 모션이 허파가 움직이는 것까지 구현되어 있었다. 결국 그 고양이는 게임 내에서 사라졌다.

던전에 입장했는데 게임이 진행이 되지 않았는데 그 이유는 촛불에 있었다. 곳곳에 배치되어 있던 촛대와 초, 촛불 등이 별개의 형태로 존재했기 때문이다. 그래서 이를 하나로 뭉쳐서 최적화를 구현했다. 건물을 원거리에서 보여줄 때는 최소 액터로 구현하기도 했다.

"강연에서 언급된 부분은 최적화 작업에서 일부분에 불과합니다. 각 부분에 대한 최적화를 했다고 해서 끝난 건 아닙니다. 클라이언트 최적화와 배포 데이터 점검, 패치 용량 체크 등의 이슈가 여전히 남아 있습니다. 그리고 수 없이 쏟아지는 버그와의 힘겨운 싸움이 시작되는 것이죠"




■ 블레스 그래픽 최적화 강연 PPT 모음