·설치 이유

저번 주엔 컴파일을 위한 IDE를 설치했고, 이제 드디어 게임 개발의 심장이라고 할 수 있는 물리 엔진을 설치하게 되었다. 자연스럽게 윈도우 환경에서 사용해 오던 ‘유니티’를 설치하려고 찾아보았지만 금방 벽에 부딪히고 말았다. 유니티는 윈도우와 맥만 지원하고 있었다! 설치 자체가 불가능한 것은 아니었지만 업데이트 주기가 길고 버그도 많았다. 그럼에도 일단은 익숙한 유니티를 설치하려고 노력해 봤지만, 사용 후기를 찾아볼수록 이건 아니라는 생각이 들었다.

그럼 도대체 리눅스에서는 어떤 게임 엔진을 설치해야 하는 걸까. 언리얼은 왜인지 무겁고 어려운 느낌이라 쓰고 싶지가 않았다. 나는 배우기 쉽고, 가벼우며 유니티에서 쓰던 C#을 그대로 사용할 수 있는 엔진을 찾고 있었다. 그리고 우연히, 이 모든 조건을 만족하는 Godot Engine(이하 고도 엔진)을 발견했다. 고도 엔진은 MIT 라이선스의 오픈 소스 소프트웨어로, 오픈 소스 그 자체인 리눅스에서 사용한다는 사실 자체에 큰 의미가 있었다. 뿐만 아니라, 이 엔진은 보다 직관적으로 사용할 수 있으며 유니티와 비교했을 때 씬 시스템 등에서 2D 게임 제작 기능이 막강했다. 3D 게임 개발에는 약간의 불편함이 따른다고 되어있지만, 일단 요새는 2D 퍼즐 게임이나 플랫폼 게임에 관심이 있기 때문에 그걸로 충분했다.

고도 엔진의 개발 언어는 GDScript라는 파이썬 문법 기반의 언어를 사용한다. 그러나 vscode나 atom을 설치하면 C#/C++로도 개발이 가능하며, 나는 일단 C#을 계속 사용하기 위해 vscode를 설치했다. 하지만 고도 엔진 홈페이지의 소개를 보면, GDScript는 숙련된 프로그래머는 하루 저녁, 시작하는 프로그래머는 일주일이면 사용할 수 있을 만큼 간단한 언어라고 설명되고 있으니 새로 배워보는 것도 괜찮은 것 같다.

·설치 과정

고도 엔진 설치를 위해 홈페이지에 들어간다.

<그림 28>

<그림 28>

그냥 GDScript로 개발할 예정이라면 Standard Version을 설치하면 되지만, C#을 사용하기 위해서는 Mono Version을 설치해야 한다. 그러나 홈페이지의 하단 부분을 보면 프로그램을 설치하기 전에 빌드 도구인 MSBuild가 있어야 한다고 명시되어 있다. 이를 위해 먼저 Mono 홈페이지로 이동해 소프트웨어 개발 키트(SDK)를 다운받는다.

https://www.mono-project.com/download/stable/#download-lin

<그림 29>

<그림 29>

다운로드 페이지에서 해당하는 OS를 선택해 설치 과정을 따라간다. 먼저, 터미널에 해당 명령어를 순서대로 입력해 Mono repository를 추가한다.

sudo apt install gnupg ca-certificates
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
echo "deb <https://download.mono-project.com/repo/ubuntu> stable-bionic main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list
sudo apt update

sudo apt install 명령어로 해당 패키지를 설치한다. 그러고 나서, apt가 패키지를 신뢰하기 위해 사용하는 key를 관리하는 명령어 sudo apt-key로 패키지를 인증한다. echo 명령어는 뒤의 데이터를 그대로 출력하기 위해 사용되는 명령어인데, 이 부분에서 실수로 홈페이지의 커맨드와는 다르게 sudo tee를 입력하지 않고 진행하였다. echo와 tee 명령어는 동시에 사용했을 때 쓰면 처리방식이 약간 달라진다.

echo 데이터 | sudo tee 파일

위와 같이 명령어를 입력하면, echo의 데이터가 출력될 뿐 아니라 파일에 해당 데이터가 작성된다.