엔진에 대한 개인적인 생각 - 언리얼
포스트
취소

엔진에 대한 개인적인 생각 - 언리얼

비단 게임을 개발하고 있는 사람 뿐만 아니라, 게임 마니아들 사이에서도 엔진에 대한 비교와 평가는 끝이 없습니다. 아마 많은 분들이 언리얼 엔진에 대한 평가가 좋고, 유니티 엔진에 대판 평가가 박한 분들이 많으리라 짐작 됩니다.

이런 인식은 엔진의 태생적인 부분과 깊은 연관이 있습니다. 간단하게 겉핥기 정도로만 생각해 볼까 합니다.

언리얼 엔진

많은 분들이 아시듯 언리얼 엔진은 ‘언리얼’이라는 게임을 만들면서 자연스럽게 인하우스 툴들이 엔진으로 진화한 케이스입니다. 언리얼엔진은 일반인들도 사용해 볼 수 있는 거의 최초의 3D엔진이었습니다.

엔진은 일반인들에겐 유니콘같은 물건이었습니다. 지금도 그렇지만 어느 정도 기술력이 들어 가는 프로그램들의 가격은 매우 비쌌고, 특히나 엔진은 더더욱 환상속의 프로그램 같은 느낌이었습니다.

종종 게임의 MOD제작을 위해 엔진의 일부를 공개하기도 했지만, 모든 기능을 다 사용해 게임을 처음부터 만들어 볼 수 있도록 하고 무료로 풀어버린 최초의 케이스였습니다.(물론 정식으로 출시를 위해서는 라이선스는 당연히 받아야 했습니다.)

이렇게 무료로 푼 언리얼엔진을 당시에는 UDK라고 불렀습니다.

UDK

당시엔 매우 파격적이었습니다.

언리얼엔진을 무료로 풀어버린 내면에는 엔진이라는 프로그램이 많은 사람들에게 사용될 것이라는 에픽게임즈의 선구안도 있었겠지만, 언리얼엔진은 엔진으로써의 훌륭한 완성도도 한몫 했습니다. 당시 다른 엔진들은 한가지 기능에 너무 틀이 짜맞춰져 있거나 플랫폼 의존적인 경우도 많았습니다. 그리고 대부분 내부에서만 사용하면 돼서 완성도가 매우 낮은 경우도 허다했습니다.(아마 인하우스 엔진은 대부분 지금도 크게 다르지 않을 것입니다.)

언리얼 엔진의 공개는 언리얼엔진 스스로에게도 꽤 많은 발전을 불러 왔다고 생각합니다. 커뮤니티의 수많은 글과, 열성적인 사람들의 피드백은 실제로 엔진에 큰 영향을 미치기 시작했습니다. 제 기억에도 UDK초창기 버전과 마지막 버전은 꽤 많은 차이가 있었고, 실무에서 사용하는 언리얼 엔진보다도 UDK로 새로운 기능을 먼저 접해 볼 수 있는 경우도 종종 있었습니다.

하지만 엔진의 한계도 명확해 지고 있었습니다. 모바일을 고려하지 않고 만들었던 엔진에 억지로 붙어 있었던 모바일 지원, 언리얼 스크립트의 불편함 등등…

언리얼엔진4

결국 언리얼엔진3의 한계와 새로운 패러다임, 차세대 콘솔지원등을 모두 하려면 새로운 엔진이 필요했습니다. UDK로 받은 피드백과 문제점은 언리얼엔진4에도 적용되고 있었던 것 같습니다. 결국 좋은 점은 가져가고, 나쁜 점은 새롭게 고친 언리얼엔진4가 출시했습니다.

새로워진 UI, 사라진 언리얼 스크립트 대신 네이티브 스크립트 언어로 C++의 선택, 제대로된 모바일지원, 키즈멧에서 블루프린트로의 진화, PBR 셰이더, FPS전용 엔진이 아니라는 듯이 다양한 게임에도 사용할 수 있는 범용성등등…

초창기에 언리얼 엔진으로 모바일 프로젝트를 하셨던 분의 말이 아직도 기억납니다.

언리얼엔진으로 모바일 게임 만드니깐 특별한것도 없고 다른걸 모르겠다…

이 이야기를 들었을 때는 모바일에서 딱히 할게 없으니 당연한거 아닐까 싶기도 했지만 그보다는 엔진이 모바일에서도 잘 돌아간다는 반증인것 같았습니다.

처음엔 구독제로 시작했는데 어느 순간 오픈소스로 소스를 모두 열어 재끼게 됩니다. 이전까진 핵심 코드는 라이선스를 등록한 회사에만 주는 구조였습니다. 구독제를 했던 사람들은 일부 환불을 해주고, 깃허브를 통해 엔진을 모두 공개하는 파격적인 행보를 보여줍니다. 이후 언리얼엔진4는 거리낄것 없이 10년을 달립니다. 게임 뿐만 아니라 건축, 영상에도 사용되기 시작했습니다.

언리얼엔진5

나온지도 얼마 되지 않았고, 언리얼엔진5는 실무에서 사용할 기회가 아직 없었습니다. 간략하게 사용하면서 느껴진 것은 언리얼엔진3 → 언리얼엔진4로 넘어 왔을 때 만큼의 큰 차이는 없지만 혁신적이다 라는 것입니다. 편해진 컨텐츠 브라우저, 높은 수의 폴리곤을 처리해주는 나나이트, 실시간으로 작동하는 조명인 루멘 등등 확실히 5라는 이름이 아쉽지 않았습니다. 다른 엔진들은 타사 미들웨어 넣고 자랑하는 것들을 언리얼엔진은 내장 기능들에 이렇게 이름을 붙여 자랑하는데 그럴만 하다고 느껴집니다.

엔진의 최적화나 편의성 모두 현재로썬 정점에 있다고 보여집니다.


엔진의 세세한 내용을 다루려면 글이 너무 길어 지니 간략하게만 썼는데, 약간 영양가 없는 글이 되어 버린듯 합니다. 이런 글들은 써도 써도 끝니 없으니깐요. 종종 두서 없이 올리고 나중에 정리할까 합니다.

이 기사는 저작권자의 CC BY 4.0 라이센스를 따릅니다.
바로가기

유니티 셰이더 파라미터 노출하기 2부 - 어트리뷰트(속성)

엔진에 대한 개인적인 생각 - 유니티