
언리얼의 폴더 구조
- 처음 프로젝트를 생성했다면 프로젝트 경로에
.uproject
외에도 여러가지 파일과 폴더가 있음.
주요 구성
.vs
폴더
- Visual Studio가 자동으로 생성하는 폴더. 디버깅, 솔루션 설정 관련 파일들이 있음.
- 직접 수정할 일 없음.
Binaries
폴더
- c++ 코드를 빌드하면 생성되는 실행 파일 (exe, dll 등)이 저장됨.
- 이 폴더를 지우면 다음 빌드시 처음부터 빌드를 다시 수행하므로 시간이 더 걸릴 수 있음.
Config
폴더
- 게임 플레이, 렌더링, 입력 등의 설정을 담은
.ini
파일이 모여있음.
- 에디터나 코드로 특정 설정을 바꾸면, 이 폴더 내
.ini
파일들이 종종 수정됨.
Content
폴더
- 언리얼 에디터의 Content Browser와 연결되어 있으며, 게임 내 모든 에셋이 들어 있음.
- 에디터에서 새 에셋을 만들거나 다른 에셋을 불러오면 (
import
하면) 이 폴더 안에 생성.
DerivedDataCache
폴더
- 에셋, 쉐이더 등을 빠륵 ㅔ처리하기 위핸 캐시 파일이 저장됨
Intermediate
폴더
- C++를 컴파일할 때 생성되는 임시 파일들이 저장됨.
Save
폴더
- 자동 저장 파일, 로그, 크래스 덤프등이 모여있음.
- 게임, 에디터가 비정상 종료됐을때, 이 폴더 안에 로그 파일을 확인해서 문제를 진단할 수 있음.
Source
폴더
- C++ 소스코드가 들어있는 핵심 폴더.
- 실제 게임 로직을 작성하는 곳.
언리얼 C++ 솔루션 구조
1. 솔루션 내 주요 폴더
Engine
- 엔진의 코어 코드
- 언리얼 엔진은 소스코드를 공개해두어 커스터마이징이 가능함
Games
(가장 중요)
- 게임 설정, 소스 코드들은 여기에 들어갈 것.
- 주 작업 공간이 될 것
Programs
- 엔진 동작에 필요한 유틸리티 프로그램이나 서버 모듈이 있음
- 외부 툴들이 대체로 여기 담겨 있음.
Rules
- 엔진과 게임 등 각 모듈의 빌드 규칙을 정의해둔 파일들이 있음.
Visualizers
- 디버깅할때 언리얼 관련 자료구조를 보기 좋게 표시하기 위한 설정 파일
2. 프로젝트 루트 폴더
Games/프로젝트명
- 프로젝트의 루트이며 게임 개발에 필요한 모든 리소스와 설정 파일이 이곳에 있음.
주요 구성
Config
폴더
.ini
파일로 에디터와 게임의 초기 상태를 지정.
DefaultEditor.ini
: 에디터 환경 설정 (뷰포트, UI 등)
DefaultEngine.ini
: 엔진 전반 설정 (렌더링, 네트워킹 등)
DefaultGame.ini
: 게임플레이 관련 설정 (게임 모드, 플레이어 컨트롤러 클래스 등)
DefaultInput.ini
: 키보드·마우스·패드 등의 기본 입력 바인딩
- 작업 중 이 파일들이 변경될 수 있음.
- 실제 프로젝트 폴더의
Config
폴더임.
Source
폴더 (중요)
- 소스코드 (
.cpp
, .h
)들이 저장되는 곳
- 처음 프로젝트를 만들면
프로젝트명.h
, 프로젝트명.cpp
등 진입점 파일정도만 있음.
- 작업을 진행하면서 각종 클래스 파일들이 저장될 것.
- 빌드 설정 관련 주요 파일도 이곳에 있음
프로젝트명.Build.cs
해당 프로젝트에 필요한 모듈, 라이브러리, 종속성 등을 정의
- 특정 모듈을 포함하는 등으로 수정할 수도 있음.
프로젝트명.Target.cs
, 프로젝트명Editor.Target.cs
각각 게임 실행용, 에디터용 빌드 방식을 정의
프로젝트명.uproject
- 언리얼 에디터에서 이 파일을 열면 프로젝트를 직접 실행할 수 있음.
- 에디터는 이 파일을 통해 어떤 콘텐츠와 설정을 불러올지 판단.