게임 엔진, 그것이 궁금하다.
인간의 도구의 동물이다. 실제로 인간의 역사를 살펴보면, 보다 쉽게, 보다 빠르게, 그리고 보다 효율적이라는 세 가지 목적을 위해 수많은 도구와 장치들을 만들어왔다. 게임 역시 예외는 아니다. 게임을 제작함에 있어, 동일한 패턴으로 반복되는 작업 과정은 번거로움과 동시에 많은 시간을 요하는 거대한 벽일 수밖에 없다. 이러한 리스크를 줄이기 위해 개발자들은 끊임없이 노력해왔고, 결국 게임계의 산업혁명이라고까지 불리는 게임 엔진을 제작, 완성하기에 이른다. 이제는 게임 제작에 있어 필수 항목으로 자리매김한 게임 엔진. 과연 실제 게임에는 어떻게 활용되고 있는지, 이를 살펴봤다.
산업으로까지 발전한 위대한 도구
게임 엔진이란 넓은 의미로 게임 제작에 용이한 소프트웨어와 하드웨어 툴을 통칭한 말이나 작은 의미로는 소프트웨어에 국한된다. 세계적으로 게임 산업이 태동할 시기만 해도, 개발자들은 모든 제작과정을 일일이 수작업으로 행해야만 했다. 그러나 게임을 제작하기 위해 필요한 사운드와 물리적 효과 등 복합 다난한 요소들을 일일이 제작하는 것은 많은 어려움이 따랐다.
계속해서 동일한 작업을 요했던 가내수공업이 공장자동화를 통해 비약적인 발전을 이뤄냈듯, 개발자들 역시 일의 양이나 제작 시간을 줄이기 위한 방안을 모색, 결국 이를 쉽게 처리할 수 있는 하나의 방법을 마련하게 된다. 쉽게 말해, 게임 엔진이란 ‘스타크래프트’에 포함돼 있는 맵 에디터를 통한 맵 생성 과정을 생각하면 이해가 쉽다.
그리고 이러한 게임 엔진의 편리함은 결국, 게임 엔진을 산업으로까지 발전시키기에 이른다. 실제로 상업용 목적으로 제작된 수많은 엔진들은 적게는 수천만원에서 수백만원에 이르는 것이 현실. 하지만, 이를 통해 얻게 되는 효율의 극대화는 그 이상의 가치가 있다는 것이 개발자들의 중론이다.
점차 세분화돼가고 있는 게임 엔진
과거 게임 엔진은 그래픽 가속기술이 주를 이루었다. 하지만 최근 들어 그 형태는 세분화를 거듭, 다양한 형태의 게임 엔진들을 완성하는 결과를 가져왔다. 실제로 게임 엔진들은 게임의 발전과 더불어, 최근에는 3D그래픽 툴에서 제작된 캐릭터나 애니메이션을 게임에 맞게 데이터화 시켜주는 툴 외에도, 게임 제작에 필요한 거의 모든 요소를 포함한 포괄적인 형태로 진화를 거듭하고 있다.
대표적으로 그래픽 엔진은 오픈GL과 다이렉트X를 중심으로 개발돼 왔으며, 보다 화려한 그래픽과 이를 통한 객체 완성에 활용된다. 네트워크 엔진은 C++로 완성된 모듈을 짜 맞추는 형태로 활용하는 경우가 많으며, 서버와 클라이언트의 동기화와 분산처리, DB저장을 담당하는 엔진을 가리킨다. 최근 부각되고 있는 물리 엔진은 중력을 동반한 물리적인 현상의 프로그래밍에 속하는 것으로, 실제 물리학을 게임에 적용해 사실적인 움직임을 느끼게 해주는 것을 목적으로 개발됐다.
인공지능은 마치 실제 지능을 갖춘 사람처럼 움직일 수 있는 게임의 뇌 역할을 하는 일종의 스크립터로, 어떤 상황이 발생할 때, 어떻게 움직일 것인가에 대한 사전 명령 체계의 구축이 주를 이룬다. 이 밖에도 각 관련 분야에 따라 애니메이션 엔진과 아이소메트릭엔진 등 다양한 형태의 게임 엔진들이 계속해서 개발되고 있다.
게임 엔진도 가지각색
게임 엔진은 크게 언리얼 엔진과 퀘이크 엔진, 쥬피터 엔진과 랜더웨어 엔진이 세계적으로 인정받으며 대표적인 게임 엔진으로 손꼽히고 있다. 이 게임 엔진들은 게임 개발에 있어 가장 선호도가 높으며 이미 수십, 수백 차례의 검증을 통해 보다 높은 완성도를 이끌어내며 끊임없는 발전을 이룩하고 있다. 이 외에는 넷이머스, 겜브리오, 시리어스샘, 제네시스, 제트 3D, 하복 엔진 등 보다 차별화된 게임 엔진들이 존재한다. 이는 게임 엔진 자체가 게임 엔진 개발이 목적이 아닌, 자체 게임 개발을 위해 제작된 까닭이다.
지난 1990년대 초반부터 이들 게임 엔진 제작사들은 3D 게임 제작에 대한 핵심기술을 꾸준히 연구하며, 이를 통해 복잡한 연산 처리 및 코딩 등의 번거로운 작업을 개선하기 위해 노력해왔다. 이후 게임에 대한 명성이 점차 높아짐과 동시에 개발사들의 요구를 통해 상용화된 엔진으로 발전해왔기 때문이다.
따라서 최근 들어 개량 및 응용을 통해 엔진의 응용성이 대폭 개선됐다고는 하나, 게임 엔진은 장르 및 퀄리티, 속도와 효과 구현 등에 따라 각각의 특징을 갖추며 발전을 거듭해왔다. 이는 결국 현재와 같은 수많은 게임 엔진들이 탄생하는 결과를 낳게 됐다.
≫ 언리얼 엔진(Unreal Engine) | 그래픽 퀄리티와 속도에 올인
에픽 게임스가 개발한 언리얼 엔진은 뛰어난 그래픽 가속 능력과 빠른 속도감을 무기로 계속해서 발전해왔다. 영화 퀄리티의 영상을 실시간으로 즐길 수 있을 만큼 발전된 고정밀도 연산과 물리 엔진이 갖는 객체반응 및 실시간 그림자 처리 능력은 가히 ‘최고’로까지 평가받고 있다. 개발자들은 여기에서 머무르지 않고, 계속해서 신기술을 적용시키며 3D게임 엔진 대표주자로 발돋움할 기반을 낳기에 이른다.
≫ [리니지2]
국내 대표적인 3D MMORPG 게임인 ‘리니지2’는 언리얼 엔진을 통해 개발됐다. 당시까지만 해도 언리얼 엔진을 활용한 대다수의 게임들은 FPS장르에 국한됐던 것이 현실. 하지만 게임 엔진은 이를 활용하기에 따라 그 가능성이 무한하다는 것을 증명이라도 하듯, ‘리니지2’는 로딩 하나 없는 빠른 스피드 전개와 뛰어난 그래픽을 자랑하며 성공 반열에 오르게 된다.
■ 스튜디오 E&G 리니지2 정현태 프로그래밍팀장 | “랜더링 속도 등 전반적인 성능 압권”
언리얼 엔진을 활용한 이유는, 시간 단축에 첫째 이유가 있다. 직접 게임 엔진을 제작한 뒤, 온라인게임을 완성하려면 적어도 5년 이상의 시간이 필요하다. 하지만 이 정도의 시간을 소요한다면 서비스시기에는 이미 옛날 게임이 돼버릴 수밖에 없다. 또한, 훌륭한 게임에 훌륭한 엔진까지 직접 제작하는 것은 어려운 일임에 분명하다. 아니 불가능에 가깝다. 여기에 제작 당시, 얼마나 많은 폴리곤을 얼마나 빠른 속도로 랜더링할 수 있는가가 우리의 최대 관건이었다. 화려한 연출이 가능한 다양한 게임 엔진들이 있었으나, MMORPG의 성격상 기본적인 매쉬와 텍스쳐 라이트의 처리 능력이 중요했다. 특히 처음부터 상용화를 위해 만들어진 엔진인 만큼 코드의 완성도와 재활용도, 가독성 등이 매우 높은 까닭이다.
≫ [헉슬리]
헉슬리는 오는 2007년 공개될 웹젠 최초의 FPS게임이다. 아직까지 구체적인 내용은 공개되지 않고 있으나, 일부 공개된 내용만으로도 관계자들의 탄성을 자아내게 하기에 충분했다. 빠른 전개와 화려한 그래픽, 그리고 박진감 넘치는 액션성에 이르기까지. 이는 뛰어난 웹젠의 기술력이 가진 힘인 동시에 게임 엔진이 게임에 얼마만큼이나 영향을 끼치는가라는 질문에 대한 명쾌한 답변이 아닐 수 없다.
■ 헉슬리 스튜디오 헉슬리 강기종 PD | “제작사의 서비스 정신에 매료”
국내에 비해 북미쪽이 더 깊은 FPS역사를 가지고 있다. 헉슬리는 이 같은 역사의 뒤쳐짐을 세계적인 품질과 새로운 플레이 방식으로 정면 돌파하기 위해, 가장 진보적인 3D 엔진인 언리얼 엔진을 사용했다. 엔진 제작에 투자하는 시간에 좀 더 나은 게임을 제작하는 것이 효율적이기 때문이다. 특히 이 게임 엔진의 경우, 엔진 자체의 성능뿐 아니라, 서비스와 시스템적으로 좋은 조건을 갖추고 있다. 하지만 실제로 헉슬리를 접하게 되면, 언리얼 엔진만의 특징을 알기는 어려울 것이다. 이는, 엔진을 활용함에 있어 헉슬리에 맞게 변경하고, 개량한 뒤 사용한 것이 가장 큰 이유다. 개성적인 그래픽을 표현하는 것은 엔진이 가진 힘이 아닌, 이를 활용하는 개발사의 몫이다.
게임 엔진, 그것이 궁금하다 <2>
≫ 랜더웨어 엔진, 가장 많이 사용되는 대표적인 미들웨어
랜더웨어 엔진은 현재 개발 중인 전세계 게임 중 약 25%가 사용할 만큼 해외에서 검증받은 게임 엔진이다. 여타의 게임 엔진이 그래픽 엔진에 초점이 맞춰져 있다면 랜더웨어 엔진은 사운드와, 인공지능, 그래픽 등 각각의 요소를 제작하는 데 있어 여타의 엔진에 비해 훨씬 저렴한 비용으로 활용할 수 있는 게임 개발에 활용할 수 있는 최적화된 도구라 할 수 있다. 또한 PC뿐만 아니라 X박스와 PS2 등 다양한 플렛폼을 지원하는 것도 특징. 이를 상요한 대표적인 게임으로는 ‘GTA’ 시리즈와 ‘위닝 일레븐’ 등이 있다.
≫ [크리스탈 보더]
‘크리스탈 보더’는 장르 가체가 스노우보드 게임인 만큼, 빠른 속도감이 생명력과 직결된다. 극한의 질주를 보여주겠다는 WRG의 바람은 속도에 최적화된 랜더웨어 엔진을 통해 이뤄졌다고 해도 과언이 아니다.
여기에 발 빠른 기술적 지원 시스템인 질문응답시스템(FMSS)은 ‘크리스탈 보더’의 질적, 양적 컨텐츠의 완성도를 높이는 기틀을 마련했다.
■ WRG 크리스탈 보더 총괄 PM 알렉스 김 | “타 플랫폼의 컨버팅시 유리”
직접 게임 엔진을 개발하는 데에는 개발 기간과 더불어 안정성에 대한 담보가 이뤄지지 않는다. 이를 일일이 테스트하는 데만도 엄청난 시간이 소요된다. 이를 단축하기 위해 랜더웨어 엔진을 사용했다. 이 엔진의 특징은 가격 대비 성능이 우수하다는 점과, 개발 중 궁금한 것에 대한 판매사의 비교적 빠르고 상세한 답변에 있다. 특히 번아웃이나 소닉 등 스피디한 게임들에 주로 활용된 엔진인 까닭에, 스노우보드 게임에도 적합하다는 판단을 하게 됐다. 실제로 고용량의 폴리곤 데이터를 섹터화해 처리하는 부분에서 대량의 슬로프 폴리곤임에도 비교적 저사양에서 무난히 돌아가는 모습을 확인할 수 있었다. 물론 향후 타 플랫폼으로의 컨버팅을 고려한 것도 선택의 주요 이유일 것이다.
≫ [거상2]
조이온 최초의 3D 온라인게임인 ‘거상2’의 중추 신경은 랜더웨어 엔진으로 구성돼 있다. 현재 개발사는 랜더웨어 자체가 미들웨어 형태인 점을 활용, 또 다른 미들웨어와의 연동을 통한 확장성에 십분 활용하고 있다. 이를 통해 보다 화려한 그래픽과 뛰어난 인공지능, 드넓은 세계관 구축 등 보다 다이내믹한 게임성과 완성도라는 두 마리 토끼를 잡을 전망이다.
■ 거상2 개발팀 김무광PM | “뛰어난 확장성이 강점”
인공지능 개발에 있어, 랜더웨어는 최상의 선택이었다. 스피드트리라는 추가 미들웨어를 통해 자연스러운 주변 환경 표현과 패스 엔진을 통한 길 찾기의 정확성 및 인공지능의 향상은 분명 게임의 완성도에 상당 부분 기여했다. 특히 이 엔진은 전 세계적으로 수많은 게임들이 활용한 검증됐을 뿐만 아니라, 뛰어난 확장성이 매우 뛰어나다. 또한 게임의 특성에 맞게 개조할 수 있는 풍부한 응용성과 시각적인 만족도를 자아내는 그래픽적 완성도도 마음에 들었다. 더불어 개발자들이 쉽게 접근할 수 있는 강력한 매뉴얼도 선택의 주요 요소 중 하나였다. 실제로 거상2에서는 이 엔진을 활용한 까닭에, 상대적으로 낮은 사양에서도 풍성한 그래픽을 감상할 수 있게 됐다.
≫ [아크로드]
NHN이 야심차게 개발한 3D 정통 MMORPG ‘아크로드’는 랜더웨어 엔진을 통해 개발됐다. 뛰어난 그래픽과 다양한 광원효과, 풍성한 사운드에 이르기까지 게임이 뿜어낼 수 있는 다양한 매력들이 개발사의 개발력과 함께 랜더웨어 엔진을 통해 보다 큰 파급효과를 얻게 됐다는 것이 관계자들의 한결 같은 의견이다.
■ 정재원 아크로드 클라이언트 파트장 | “구조 개량에 용이”
개발 초기 자체 엔진 제작과 외부 엔진 사용에 대해 상당 부분 검토를 해왔다. 그 결과, 시간적, 비용적, 효율적인 문제에 있어 더 이상 엔진을 자체적으로 제작해 사용한다는 것은 낭비가 아닐 수 없다는 결론에 이르렀다. 이에 현재 상용화된 여러 엔진들을 놓고 분석해본 결과, 대부분의 게임 엔진들이 튜닝하기 힘든 구조였고, MMORPG제작에 맞지 않는 형태라고 판단했다. 이런 점에서 랜더웨어 엔진은 구조를 고치고 개선하는데 효과적이었다. 또한 3D 그래픽 엔진으로서 필수적인 기능들이 모두 지원됨에도 불구하고, 부피가 크지 않다는 점도 만족스러웠다. 게임 내에서는 화려한 마법 효과 및 매질, 특수 효과 등에서 랜더웨어의 강점을 활용한 아크로드 클라이언트 엔진의 강점을 확인할 수 있다.
≫ 쥬피터 엔진 | 다이렉트X와의 완벽한 찰떡궁합
쥬피터 엔진은 다이렉트X에 최적화된 게임 엔진이다. 이는 다이렉트X의 개발사 터치다운엔터테인먼트가 개발한 엔진이 바로 쥬피터 엔진이기 때문. 비교적 상용화된 엔진으로서는 후발주자에 속하지만, 점차 사용하는 게임이 증가하며 그 진가를 인정받고 있다. 또한 국내에서 개발 중인 FPS게임의 80%가 쥬피터 엔진으로 개발되고 있으며, 최신버전에서는 차세대 콘솔기기의 API까지 지원, 크로스 플랫폼 엔진으로 자리를 굳히며 빠른 속도로 진화하고 있다. 대표적인 게임으로는 ‘노원리브스 포에버’, ‘에어리언 VS 프로데터’ 등이 있다.
≫ [히트 프로젝트]
두빅엔터테인먼트가 개발한 3D FPS 온라인게임인 ‘히트 프로젝트’는 빠른 속도감으로 전개되는 박진감 넘치는 전투가 최대 매력 포인트다. 특히 게임에서 주로 사용되는 다양한 카메라 워크와 게임의 완성도를 높이는 데에도 쥬피터 엔진은 최적의 효과를 발휘했다.
■ 두빅엔터테인먼트 임준혁 대표 | “가격대 성능비 최고”
영화를 제작하기 위해 카메라부터 만들기 시작하는 사람은 없다. 우리는 게임 엔진 개발사가 아닌 게임개발사다. 대부분 게임개발사의 핵심기술로써 게임 엔진을 운운하는 경우가 많은데 이것은 잘못된 인식이다. 게임개발사의 핵심기술은 게임 프로덕트 제작능력이고 게임 엔진 기술은 게임 엔진 전문 개발사의 핵심기술이기 때문이다. 쥬피터 엔진은 온라인게임의 제작 툴로 사용하기에는 가격대비 효율 면에서 매우 훌륭하다. 무엇보다 사용하기 쉽고 짧은 시간 내에 원하는 퀄리티 이상으로 결과물을 낼 수 있는 것이 특징이다.
특히 엔진의 구조상 개발이 용이하도록 모듈이 완벽히 분리돼 있는 점이나, 전체 폴리곤의 핸들링 및 3D 가속 능력 또한 뛰어나다.
≫ [탄트라]
탄트라 엔진은 100% 쥬피터 엔진을 사용하지 않았다. 이는 쥬피터 엔진의 경우, MMORPG에 최적화 시키기 위해서는 개량할 필요성이 있었기 때문이다. 결국 제작사는 쥬피터 엔진의 장점 위에 탄트라 엔진을 접목시켜 완성도를 높였다.
■ 탄트라 개발팀 정의규 과장 | “쥬피터 기반, 최대 성능 가동”
엔진에서 적용한 부분은 3D맥스나 마야 같은 툴 에서 3D 모델을 불러서 조작하는 캐릭터 툴과 애니매이션을 조작할수 있는 애니매이션툴 그리고 직접 코딩해서 바로 적용해서 사용가능한 FX툴 등이었고, 탄트라 엔진의 기본 구조를 리스텍 엔진의 구조를 참조하여 만들었다. 탄트라 엔진은 자체 제작한 엔진이기 때문에 게임 기획에 최적화하여 대부분의 게임기획을 원활하게 소화했다. 그리고 당시의 게임엔진으로서는 드물게 상당히 부드러운 지형 표현과 하늘 물 해 같은 환경의 묘사가 뛰어나다. 또한 많은 수의 폴리곤을 사용하여도 랜드링에 무리가 많이 가지 않도록 상당히 많은 옵티마이즈가 되어 캐릭터를 보면, 상당히 많은 수의 폴리곤을 사용하여 아름답게 표현하였는데도 깔끔하게 표현 되는것을 볼 수 있다.
≫ 자체 게임 엔진 개발도 ‘활발’
개발사 스스로가 게임 엔진부터 게임까지 손수 개발하는 사례가 점차 늘어나고 있다. 이는 엔진을 분석하고 개량하는데 따른데 따른 시간 및 엔진 자체의 비용이 비교적 고가에 속하기 때문이다.
‘카발 온라인’을 제작 중인 이스트소프트의 민영환 개발이사는 “게임 엔진을 구입할 경우, 구미에 맞게 변경하기 힘들며 빠르게 변화, 발전하는 게임 기술들을 적시에 반영하는데도 어려움이 따르기 때문”이라고 밝혔다. ‘로한’을 개발 중인 써니YNK의 최정훈 게임사업본부장은 “현재 국내 개발사의 엔진 개발력은 크게 인정받지 못하고 있다”며 “하지만 우리의 기술과 경험을 바탕으로 엔진을 제작할 때 보다 큰 경쟁력을 갖게 될 것”이라고 강조했다. ‘워록’의 조한빈 개발총괄 이사 역시 “해외엔진 또는 기타 엔진을 사용하여 게임을 개발할 시에는 엔진제작사에서 받을 수 있는 테크니컬 서포트 등에 제약이 많아 해당 엔진의 성능을 100%를 발휘할 수 있는 것이 현실적으로 많이 힘이 든다”라는 이유를 들면서 자체 게임에 맞는 엔진 개발이 중요하다고 말했다.
물론 자체 게임 엔진에는 많은 어려움이 따른다. 개발사 관계자는 “특화된 게임의 특징을 가름하는 부분들에 대한 정보 습득이 쉽지 않다”며 “최소 1년 이상 엔진 개발에 시간을 할애해야하는 까닭”이라고 전했다. 그럼에도 불구하고, 자체 게임 엔진을 개발하는 것에 대해 관계자들은 자체 엔진은 게임 개발 중 필요한 기능들을 수정하는데 수월하며, 게임에 최적화된 만큼 보다 개발사의 색채를 드러낼 수 있다는 장점을 꼽았다.
김상현 기자 | AAA@kyunghyang.com
윤영진 기자 angpang@kyunghyang.com
[출처] [기사] 게임엔진, 그것이 궁금하다|작성자 민군
게임엔진의 가격은 얼마?
그렇다면 해외 유명 게임엔진의 가격은 어느 정도일까? 가격은 구입 시 엔진옵션에 따라 천차만별이다. 엔진에는 다양한 옵션이 존재하는데, 이 옵션에 따라 가격이 달라진다. 앞서 언급한 물리효과, 몬스터 AI, 3D 표현기능 등 거의 모든 기능이 탑재된 엔진의 경우 10억 원에 육박한다.
이와 반대로 개발사에 필요한 몇몇 기능(대표적으로 3D 표현기능)만을 구입하는 경우엔 가격이 내려간다. 또 구입한 엔진을 사용해 만들어진 게임의 수익 일부분을 엔진 개발사에게 때어주는 방식으로(런닝 게런티) 구입비용을 낮출 수 있다. 쉽게 말해 자동차 구입 시 장착옵션에 따라 상당한 가격변동이 있는 것과 비슷한 형태다.
또 종류에 따라 엔진 가격이 달라지기도 한다. 현재 세계 4대 게임엔진으로 꼽히는 ‘언리얼 엔진(기어즈오브워, 언리얼 토너먼트)’, ‘퀘이크 엔진(퀘이크4)’, ‘소스 엔진(하프라이프2, 카운터스트라이크 소스)’, ‘크라이 엔진(크라이시스)’은 타 엔진에 비해 가격이 높다. [출처] 전문가가 말하는 유명 게임엔진의 `허와실`|작성자 샤니커피 |