언리얼 엔진은 현재 가장 멋진 그래픽을 만들수 있는 3D 게임 개발 환경입니다. 여러분 중에는 언리얼 엔진 이라는 이름을 들어본 사람도 있을것이고 유니티 엔진이라는 이름을 들어본 적이 있을 것 입니다.

게임 엔진은 게임에 필요한 기능을 제공해주는 소프트웨어 입니다. 자동차 엔진 처럼 게임 엔진은 게임을 동작 시키기 위한 온갖 기능들이 제공됩니다.

예를 들어 3D 게임엔진이라면 3D데이터를 계산한 후 렌더링(rendering)해 화면에 표시 하는 기능은 물론 키보드, 마우스, 게임 컨트롤러(패드) 등의 입력을 처리하는 기능과 애니메이션을 위한 기능등을 모두 갖추고 있습니다.

게임 개발자는 3D 모델 데이터나 애니메이션 데이터를 이용해 게임엔진에 있는 기능을 호출하여 그 데이터들을 화면에 표시하고 움직입니다. 처음부터 모든 프로그램을 작성하는 것과 비교하면 개발 효율이 비약적으로 올로갑니다.

2-Figure2-1.png

언리얼 엔진 vs 유니티 엔진

자체엔진을 사용하더 옛날과는 다르게 요즘에는 항상 이러한 이야기가 나오곤 합니다. 유니티 엔진과 언리얼 엔진중에 어떤 엔진이 더 좋은 엔진인가? 그러나 이는 각 회사가 추구하는 방향성이 매우 다르기에 사실 비교군이 되지 않습니다.

언리얼 엔진은 강력한 기능들을 사용해 초고화질 그래픽을 내놓으려 하고 유니티는 사용자 친화적이며 빠른 작업효율로 결과물을 내는데 집중합니다.

editorcompare_windows.png

오히려 언리얼 엔진은 유니티 엔진에 비해서 복잡한 구조로 인해 게임 제작기간을 늘리는 경우가 많습니다. 상황에 따라서 알맞은 엔진을 선택하여 사용할 줄 알아야 합니다.

실상은 서로가 많이 달라 보여도 한 엔진을 잘 사용하게 된다면 나중에 다른 엔진을 학습함에 있어서 큰 도움이 됩니다.

게임개발을 학습함에 있어서 매우 중요 한것!!! 앞서 자체엔진과정(그래픽스) 수업에서도 이야기 했지만 한가지 명심해야 할 점이 있습니다. 게임 개발은 고급 개발 중에 하나입니다. 유니티 엔진이 경비행기라면 언리얼 엔진은 고급 비행기와 같습니다. 비행기 계기판을 보겠습니다. 왼쪽은 경비행기 계기판 이고 오른쪽은 민간 항공기 계기판입니다.

image.png

image.png

기본적인 비행을 하는데 있어서 오른쪽 계기판의 모든 기능을 사용할 필요가 없습니다.

모든 기능을 하나하나 다 이해하면서 사용하려면 학습하는데만 십년이상이 걸릴 지도 모릅니다. 그래서 **“당장 필요한 기능인가”**를 먼저 생각해보고 그렇지 않다면 일단 넣어두고 필요한것 위주로 학습을 진행해야 합니다.