본문 바로가기
언리얼 엔진 부트캠프/TIL

[DAY 24] Unreal Engine Build

by minjoothi 2025. 1. 20.

 

  • 1-1 언리얼 엔진 c++ 개발 환경 준비하기
  • 1-2 언리얼 엔진 c++ 빌드 프로세스 이해하기


# Unreal Engine 설치

 

 

언리얼 엔진 5.5.1 설치후

 

 

비쥬얼 스튜디오 2022 17.8 이상인지 확인후 설치

( 언리얼 엔진 5.0 은 비쥬얼 스튜디오 17.8 이상과 호환됨 )

 

 

워크로드 수정

위의 두개는 무조건 설치되어 있어야 함

 

 

새로운 프로젝트 생성!

c++ 기반으로 설정해주고

퀄리티 프리셋은 컴퓨터 사양에 따라 Maximum / Scalable 설정해줌

Starter Content 는 기본 에셋을 제공해주는 것임

 

 

생성 

 

 

시간이 조금 걸렸었음

 

편집 - 에디터 개인설정 - 소스코드 - 소스코드 에디터를 visual studio 2022 로 변경해줌

 

도구 - visual sudio 2022 실행 - 필요한 파일들 설치

 

 

모든 과정이 끝나면 이렇게 비쥬얼 스튜디오에서 언리얼 엔진의 모든 소스코드 파일들을 확인할 수 있음

이것은 언리얼 엔진의 가장 큰 장점임

 

 

다시 언리얼 엔진 홈화면으로 돌아가서 우클릭 - 폴더보기

를 누르면 이렇게 프로젝트 파일의 위치를 알 수 있게 됨

폴더들의 구조를 대략적으로 알고 있어야함

 

몇몇의  주요한 폴더들을 살펴보기 (중요한 순서대)

 

 

1. Source - 모든 c++ 파일의 코드가 있는 폴더

2. Content - 다양한 게임 에셋이 존재하는 폴더, blue print , 모델 사운드, 머테리얼

3. _____.sln - sloution 폴더로 클릭시 visual studio 실행

4. _____.uproject - unreal 폴더로 클릭시 unreal editor 실행

5. Binaries - 빌드를 했을때 실행 파일

6. Config - .ini 같은 설정/관리 파일들이 모두 모여있음

7. DedrivedDataChache & Intermediate - 빌드를 하면서 빌드 중간 임시 파일들이 저장되어 있는 폴더

8. Saved - 스크린샷, log 등 들이 저장되어 있는 폴더

 

 

1번 2번만 중요하게 알고 있고 나머지 폴더들은 차차 익숙해지면 됨 

 

 

# Solution Architect

 

 

본래 폴더와 비쥬얼스튜디오 내 폴더 구별

 

  1. Engine 폴더 -  언리얼 엔진의 모든 자체 소스 코드 담겨있음 = '코어 코드' 라고도 부름
  2. Games 폴더 - 다섯개 중 가장 중요한 폴더, 게임개발시 사용되는 모든 소스코드가 존재
  3. Programs 폴더 - 엔진이나 게임프로젝트 외  서버나 유틸리티 파일이 존재
  4. Rules 폴더 - 엔진과 각 게임의 여러 빌드 규칙을 담아놓은 폴더, 회사에서 프로젝트 할 때 중요함
  5. Visualizerrs 폴더 - 디버깅 할 때 언리얼의 자료구조를 조금 더 편하게 하기 위한 폴더

 

 

Sparta 라는 보라색 폴더 = root 폴더 라고도 부름

 

 

Config 폴더 = 게임의 여러가지 설정들을 담아두는 폴더 (에디터의 환경, 게임모드의 기본값, 키보드 마우스 입력 설정 등 )

 

 

Source 폴더 = c++, header file이 있는 폴더, 이 안에서 대부분의 작업을 하게 됨

Build 파일 : 윈도우상 작업시  윈도우 빌드를 하기위한 파일, 빌드시 모듈추가를 위해 수정할 일 아주 가끔 있음

_____.uproject 파일 : 언리얼 엔진 파일

 

 

# Build process

 

 

(왼) Develop : configuration 설정, 빌드 모드를 설정하는 것

(오) Win 64 : platform 설정 ( console로 설정할 수도 있음 )

 

 

DebugGame : 디버깅을 하기위해 최적화되어 있는 빌드 모드

( 디버그에 대한 모든 정보를 가짐, 게임 속도가 느려짐 = 무거움 ) 

DebugGame Editor : 언리얼 에디터 상에서 게임이 빌드 되는 것

Development : 가장 일반적인 빌드 모드 ( 테스트 하기에 가장 좋은 모드 )

Development Editor : 언리얼 에디터 상에서 게임이 빌드 되는 것 ---- 이거 사용

Shipping : 배포 단계,디버그 정보가 전부 빠져서 가장 빠른 게임에 최적화 됨

 

 

 

ctrl + shift + B = 전체 빌드

 

전체 빌드가 문제 있는 이유 : 엔진코드까지 다 있기 때문에 시간이 너무 많이 걸림 -> 부분 빌드

근데 사실 전체 빌드는 횟수가 늘어날수록 시간이 줄어듬

 

이 때 주의할 점은 언리얼 에디터를 꺼놓고 빌드를 하는것을 권장함 = 에러남

 

Error List

 

InteliSense 라는 것은 보조도구로서 비쥬얼스튜디오 상에서 코드를 편하게 편집하기 좋게 하는 창이다

컴파일러의  빌드랑은 전혀 상관이 없다

하지만 코드가 비효율적이거나 안전하지 않게 작성이 되었을 경우 ERROR 을 띄운다

하지만 얘는 컴파일러의 에러가 아니다

 

즉 그냥 Bulid로 설정하고 코드를 작성하는 편이 좋다.'

 

 

 

 

다시 프로젝트 폴더에 들어가서 Binaries -> Win64에 들어가면 

 

 

이렇게 dll 파일들을 확인해 볼 수 있다.

우리가 항상 buld를 하면 위 dll 파일들이 갱신이 된다 라고 생각하면 된다.

 

# Unreal Engine Start

 

언리얼 엔진을 실행할때 에픽게임즈에 가서 프로젝트를 더블클릭하는 방법도 있지만

비쥬얼스튜디오로 들어가서 root folder인 Sparta를 

 

 

이렇게 설정해준 뒤 실행시켜주는 것이 좋다.

이렇게 하면 언리얼 에디터가 실행될때 항상 이부분을 시작점으로 실행된다.

 

 

이 상태에서 Sparta 파일에서 F5을 누르면 언리얼 에디터가 실행이 된다. 

이런식으로 반복하며 작업하는 것을 권장한다.

 

# Live Coding

 

그럼 언리얼 에디터에서 코드를 수정할때마다 이렇게 항상 왔다갔다 거리면서 코드를 수정해야 할까?

이 불편함을 보완하기 위해 live coding 이라는 것을 실행시켜 주면 된다.

 

 

 

언리얼 에디터로 들어가 우측 하단에 벽돌모양을 클릭하면 라이브 코딩 버튼이 있다.

 

 

그 중에서도 삼지창을 눌러 '라이브 코딩 활성화'를 눌러주면 라이브 코딩이 활성화 된다.

 

 

라이브코딩을 활성화 시켜준뒤 벽돌모양을 다시 클릭하면 이렇게 라이브 코딩을 사용할 수 있다.

위 라이브 코딩은 언리얼 에디터를 켜 놓은 상태에서 코드를 수정할 수 있는 기능이다 

 

이 라이브코딩은 언리얼 에디터를 켜놓은 상태에서 굳이 c++을 굳이 빌드하지 않아도  어떤 코드들이 변경되었는지를 인식을 하고  즉시 에디터 상에서 빌드하고  dll 파일까지 갱신해서 다시 가져오는 모든 것들을 알아서 한번에 해주는 기능이다.

 

하지만 안타깝게도 작업을 하다보면 라이브코딩 < 정석빌드 과정을 대부분 거치게 된다.

 

그 이유는 라이브 코딩을 적용하는 상황이 그리 많지 않기 때문이다.

 

 

# visual studio ≠ unreal editor

 

비쥬얼 스튜디오 내에서 빌드가 오류없이 잘 진행 되어도 언리얼 에디터 상에서 반영이 되지 않는 경우가 있다.

그때 어떻게 해야하는지 알아보자.

 

임시 빌드 파일이나 캐쉬상 문제가 생긴 경우 = 빌드가 꼬인 경우 이다.

 

1. 언리얼 에디터 종료

2. 비쥬얼 스튜디오 종료

3. 프로젝트 폴더로로 돌아감

 

 

DerivedDataCache : 캐쉬를 저장하는 폴더 

Intermediate : 임시 빌드를 저장하는 폴더

Saved : 로그 파일들을 저장하는 폴더

 

이 세가지 폴더에서 문제가 생겼을 확률이 높기 때문에 세가지 폴더들을 삭제한다.

추가적으로 Binaries 폴더까지 삭제해도 무관하다. 

 

 

.uproject 파일에서 우측을 클릭한후 Generate Visual Studio project files를 눌러줌

 

 

이렇게 되면 solution file 들이 재생성 된다. 

이 상태에서 언리얼 에디터를 재실행 시켜준다.

이렇게만 해도 60 - 70 퍼센트 정도 해결이 된다.

 

 

하지만 위 방법으로 해결되지 않았을 경우 프로젝트 파일에서 비쥬얼 스튜디오 솔루션 파일로 들어간다 

 

 

비쥬얼 스튜디오로 들어가서 빌드 - 솔루션 정리 ( clean solution ) 을 눌러준다

 

 

정리가 다 되었을 경우 이렇게 알림이 뜬다.

이상태에서 빌드 - 전체 빌드를 해준다

 

 

이렇게 진행할 경우 90 퍼센트 정도 오류가 해결된다.

 

# 회고

실습에서 가장 필요한 빌드에 대해서 감을 찾을 수 있었다.