본문 바로가기

Unreal/Udemy 강의

Unreal Engine 5 - C++ 개발자: C++ 학습하고 비디오 게임 제작하기 Section 3-3

컴파일러와 에디터

이번 섹션에서 C++를 활용해 언리얼에서 작업을 하기 위해 컴파일러와 에디터에 대해 알아야한다.

우선 컴파일러가 왜 필요한지 알려면 소스코드에 대해서 먼저 알아야 한다.

 

소스코드란 우리가 쓰는 코드이며 C++과 같이 보통은 텍스트로 이루어져 있다.

따라서 읽는 주체가 사람이며, 사람이 읽을 수 있는 방식으로 게임에서 하려는 것이나 컴퓨터로 하려는 것을 설명하는 방식이다.

소스코드는 읽는 주체가 사람이기 때문에 기계가 무언가를 실행하고 구동하는데 활용되지는 않는다.

이는 바이너리 실행 파일의 역할이다.

바이너리 실행 파일은 0과 1로 구성된 바이너리 코드이며, 기계가 빠르게 읽고 CPU와 GPU에서 실행되도록 만들어져 있다.

 

소스코드와 바이너리 실행 파일 사이에는 간극이 존재하며, 이 간극을 해결해주기 위한 것이 컴파일러의 역할이다.

간단하게 요약하자면 컴파일러는 소스코드를 바이너리 코드로 변환해주는 소프트웨어이다.

 

소스 코드 에디터라는 또 다른 소프트웨어도 존재한다.

소스 코드 에디터는 사람이 읽는 코드를 쓸 때 우리를 도와주는 소프트웨어이다.

자동완성이나, 잘못된 타이필 강조 표시 등의 기능이 존재한다.

 

 

이제 위에 정리한 내용들이 언리얼에서 어떻게 적용되고 있는지 살펴보자.

우선 에디터는 이미 우리가 사용할 수 있도록 구성되어있는 소프트웨어이다.

우리가 실행하는 언리얼 엔진이 이에 해당한다.

 

에디터를 실행하면 다양한 게임 에셋을 활용해 게임 프로젝트를 생성하고 수정할 수 있다.

블루프린트 에셋이나 블루프린트 코드들도 이에 포함된다.

이 에디터에서 생성한 게임 에셋을 활용하면 게임만 플레이하는 별도의 독립된 실행 파일에서 게임을 실행할 수 있다.

이제 여기에 C++를 추가하려고 하면 변화가 생긴다.

 

C++는 에디터의 기반이므로 에디터의 바이너리 실행 파일을 다시 구축해야할 필요가 있다.

따라서 C++의 소스 코드가 필요하다.

해당 소스 코드는 소스 코드 에디터를 통해 수정이 가능하다.

이번 강의에서는 비쥬얼 스튜디오 코드를 사용하여 C++ 코드를 작성하게 된다.

 

해당 소스코드를 바이너리 실행 파일로 다시 구축해야 하기에 여기서 컴파일러가 등장한다.

컴퓨터가 소스 코드를 가져가서 언리얼에 내장된 라이브러리 및 기능들을 가져와 모두 컴파일해 바이너리로 전환해준다.

여기서 컴파일러로는 비쥬얼 스튜디오가 사용된다.

전환해준 뒤에는 게임 에셋을 열어서 수정할 수 있는 편집기를 출력하거나,

게임 에셋을 가져와 플레이어가 플레이할 수 있는 게임을 출력하게 된다.

 

강의에서 나온 요약도