의견.png

언리얼 엔진

위키원
choc0 (토론 | 기여)님의 2021년 7월 12일 (월) 14:08 판
이동: 둘러보기, 검색

언리얼 엔진(Unreal Engine)은 1996년 미국의 에픽게임즈에서 개발한 3D 게임 엔진이다.[1]

게임 엔진

게임 엔진은 개발자들이 더 쉽고 빠르게 게임을 구축하거나 디자인 할 수 있도록 도와주는 소프트웨어 툴이다. 최근 게임 엔진은 통합개발환경을 지향하고 있으며 그래픽 엔진, 물리 엔진, 오디오 엔진, UI 시스템 등 게임 제작에 필수적인 요소의 소스코드와 기능을 융합하여 편리하게 사용할 수 있도록 지원해준다. 컴퓨터를 사용하면 보다 빨리 작업할 수 있는 것처럼 게임 엔진을 이용하면 개발 기간이 훨씬 단축된다. 게임의 개발비는 개발 기간에 비례하므로 개발 기간을 단축할 수 있는 게임 엔진은 게임 개발의 필수적인 요소라고 할 수 있다. 게임 엔진은 게임 개발사에서 직접 개발할 수도 있고, 상용화되어 있는 엔진을 구매해서 사용할 수도 있다. 보통 대규모 게임 제작사들은 자체적인 게임 엔진을 보유하는 경우가 많다. 하지만 작은 개발사나 이제 스타트업을 하려는 개인 개발자들은 게임 엔진을 개발할 자본과 시간이 부족하기 때문에 상용 엔진을 사용한다. 가장 대중적인 엔진은 언리얼 엔진과 유니티 엔진이다. [2]

에픽게임즈

에픽게임즈는 미국의 비디오 게임, 소프트웨어 개발사이자 유통 회사이다. 팀 스위니가 991년 메릴랜드주의 포토맥시에서 '포토맥 컴퓨터 시스템즈'라는 이름으로 창업했다. 출범 후에 처음 제작한 게임인 'ZZT'를 출시한 이후 사명을 '에픽 메가게임즈'로 바꿨고, 당시 회사를 사들인 마크 레인이 현재까지도 부사장직을 유지하고 있다. 1999년 캐리 시로 본부를 옮기면서 지금은 에픽게임즈로 사명을 바꿨다. 1990년대 초중반에는 재즈 잭래빗 등 중규모의 게임들을 개발했고, 1998년 출시한 1인칭 슈팅 게임인 '언리얼'을 제작하기 위해 개발한 언리얼 엔진을 타사에 제공 및 판매하기 시작했다. 이 엔진을 바탕으로 인피니티 블레이드, 기어즈 오브 워, 포트나이트 등 다양한 게임을 출시했다.

에픽게임즈 스토어

에픽게임즈 스토어(Epic Games Store)는 에픽게임즈에서 개발하고 운영 중인 패키지 게임 유통망이다. 에픽사가 운영하는 홈페이지에 접속하거나 전용 클라이언트를 다운받아서 이용할 수 있다. 2018년 12월 6일 게임 어워즈에서 에픽게임즈의 CEO인 팀 스위니가 처음 공개했다. 2018년 12월 7일에 2018 더 게임 어워드에서 상세 내용이 공개되었으며 2019년 4월 한국에서 정식 서비스를 개시했다. 에픽게임즈 스토어는 플랫폼 수수료가 고정 12%로 책정되어 있으며, 언리얼 엔진의 수수료를 면제해준다. 스팀에서 언리얼 엔진을 사용한 게임을 판매할 시 게임 개발사는 스팀에 플랫폼 기본 수수료 30%에서 20%를 낸 뒤 언리얼 엔진에 엔진 수수료 5%를 내야 한다. 플랫폼 수수료와 엔진 수수료를 총합하였을 때 35~25%를 수수료로 내기 때문에 개발자가 가져가는 수익은 게임 판매 수익의 65~75%가 된다. 20~30%의 수수료를 거두는 스팀에 비해 기본 수수료도 18% 더 낮고 언리얼 엔진으로 개발된 게임이라면 스팀보다 기본 수수료 또한 23% 더 낮은 셈이다. 누적 매출액이 1천만 달러를 넘는 히트 타이틀이 아닌 이상은 스팀보다 수수료가 반절 이하로 저렴하기 때문에 개발자 입장에서 수수료 건만을 고려했을 때 에픽게임즈 스토어가 스팀보다 더 매력적이다.[3]

언리얼 엔진

언리얼 엔진은 미국의 비디오게임, 소프트웨어 개발사인 에픽게임즈에서 개발한 3차원게임 엔진이다. 에픽게임즈의 첫 게임인 '언리얼'에 사용할 목적으로 개발했지만, 지금은 에픽게임즈를 대표 할 정도로 중요한 프로젝트가 되었다. 1994년부터 현재까지 꾸준히 개량해가며 발전하고 있으며, 수십 개의 비디오 게임에 사용되고 있는 미들웨어 솔루션이다. 많은 게임 개발사들이 일정 기간 안에 안정적인 기술로 게임을 완성하기 위해 언리얼 엔진을 구입해 개발하고 있다. 또한 훈련용 시뮬레이션 같은 게임이 아닌 그래픽 응용 프로그램을 개발하는 데도 종종 활용된다.[1]

언리얼 스크립트

언리얼 엔진은 언리얼 스크립트라는 내부 스크립트 언어를 지원한다. 언리얼 스크립트(Unreal Script)는 언리얼 엔진에서 게임 코드와 게임플레이 이벤트 작성에 사용되는 스크립트 언어로, Java 스타일의 객체지향 프로그래밍 언어이며 게임 코드나 게임 스크립트 뿐만 아니라 언리얼 엔진 내부 전체에 걸쳐서 엔진 내부의 모든 구성 요소들을 연동시켜준다. 게임 스크립트 언어로는 루아, 자바, C# 등 다른 언어를 적용하거나 함께 쓰기도 하고, 경우에 따라서는 어셈블리어 또한 사용할 수 있다. 엔진과 도구는 대부분 C++으로 작성되었지만 다른 언어로 이식 가능하며, 최근 도구는 C#으로 이식하는 경우도 많다. 실제로 언리얼 에디터의 초기 버전은 비주얼 베이직으로 작성되었다. 언리얼 엔진의 버전이 업그레이드 되면서 언리얼 스크립트 또한 지속적으로 변화·발전하고 있다.[1] [4] 외에도 언리얼 엔진 3부터는 비주얼 스크립팅 시스템이 포함되었는데 언리얼 엔진 3에서 키즈멧(Kismet)이라는 이름으로 레벨 단위의 스크립팅을 작성할 수 있었다. 하지만 언리얼 엔진 4 이후부터는 언리얼 스크립트를 완전히 제거하고 대중성을 위해 C++를 기반으로 한 스크립트로 대체하였다. 언리얼 엔진 4에서는 더욱 발전된 블루프린트가 등장해 레벨 단위뿐 아니라 오브젝트 단위로도 스크립트를 작성할 수 있게 되었다.[5]

블루프린트

'블루프린트(Blueprint)'는 언리얼 엔진의 비주얼 스크립팅 시스템이다. 언리얼 엔진 3에 있던 비주얼 스크립팅 시스템인 키즈멧의 발전된 형태로, 키즈멧은 레벨 단위의 이벤트를 구동시키는데 한정되어 있었으나 블루프린트는 레벨 단위 이벤트뿐 아니라 개별적 액터에 대해서도 각각의 스크립팅된 동작을 제어하거나 시스템 전반에 걸친 복잡한 애니메이션, 인공지능(AI) 또는 엔진상에서 돌아가는 무엇이든지 제어가 가능하게 되었다. 블루프린트는 언리얼 에디터 안에서 노드 기반 인터페이스를 사용하여 게임플레이 요소를 만드는 개념을 토대로 한다. 일반적인 스크립팅 언어와 마찬가지로, 엔진 내 객체 지향형(OO) 클래스 또는 오브젝트를 정의하는데 사용된다. 블루프린트를 사용하여 정의된 오브젝트를 일상적으로 '블루프린트'라고 하는 경우가 많다. 비프로그래머들도 게임 전반의 스크립팅이 가능하게 고안되었다. 하지만 프로그래밍의 개념을 어느 정도 알아야 작동법을 이해할 수 있다. C++로 직접 작성하는 스크립트에 비하면 구현이 힘들거나 속도가 느리긴 하지만 점점 버전이 높아지며 구현 가능한 부분이나 속도 면이 개선되어 가고 있다. 특히 전반적인 부분에서 C++ 없이 블루프린트만으로 구현될 수 있도록 발전해가고 있다. 언리얼 엔진 4의 스크립팅 시스템은 블루프린트 만으로도 게임 구현이 가능하며 C++ 또는 그 외의 어떤 스크립팅 언어라도 바인딩하여 사용할 수 있다. 블루프린트와 C++나 다른 스크립팅 언어를 섞어서 쓰는 것이 가능한데 복잡한 코딩이 필요해 구현이나 속도에서 C++이 더 유리할 경우, 그 부분을 코딩한 뒤 블루프린트 내부에서 해당 부분을 함수로 불러와서 블루프린트의 다른 부분과 융합해 사용할 수도 있다. 따라서 현재 블루프린트만으로 구현이 힘든 부분은 이렇게 처리해 비프로그래머의 효율성을 높일 수 있다. 블루프린트는 노드가 많아질수록 시각적으로 복잡해 보이기 때문을 블루프린트로 작성한다. 블루프린트는 모듈화와 리팩토리이 가능하다.

로열티

각주

  1. 1.0 1.1 1.2 언리얼 엔진〉, 《위키백과》
  2. 이영진·김중한, 〈Unity Technologies(Private)〉, 《삼성증권》, 2019-07-12
  3. 에픽게임즈 스토어〉,《나무위키》
  4. 언리얼 스크립트〉, 《GpGiki》
  5. 언리얼 엔진〉, 《나무위키》
  • 〈[]〉,《》

참고자료


같이 보기


  의견.png 이 언리얼 엔진 문서는 메타버스에 관한 토막글입니다. 위키 문서는 누구든지 자유롭게 편집할 수 있습니다. [편집]을 눌러 이 문서의 내용을 채워주세요.