{{{#!wiki style="margin:-10px" | <tablealign=center><tablebordercolor=#2a2a2a><tablebgcolor=#2a2a2a> | 에픽게임즈 Epic Games | }}} |
{{{#!folding [ 펼치기 · 접기 ] {{{#!wiki style="display: inline-table; margin: 5px 0; width: 100%; background: #2a2a2a; border-radius: 5px;" | 산하 스튜디오 | ||
| | | |
미디어토닉 2005 | ArtStation 2014 | Sketchfab 2011 | }}} 게임 목록 · 무료 배포 · 비판 역사 · 세부 버전 · 게임 목록 · UDK 비교(유니티) · Twinmotion · UEVR · 페가수스 월드 키트 둘러보기 게임 프랜차이즈 · 팀 스위니 · 소송전 · 에픽빠 · PlayStation PC }}} |
1. 개요
언리얼 엔진의 파일 구조를 설명하는 문서다.2. 목적
본 문서의 목적은 언리얼 엔진 기반 게임들에 대한 모딩이나 유저 패치 또는 컨픽 파일 수정 등을 쉽게할 수 있도록 이해를 돕기 위함이다.소스 코드 구조에 대한 설명은 저작권에 위배되므로 컴파일이 완료되어 엔진을 구성하는 기본 파일들에 대한 설명 위주로 하며,
3. 구분
실제로 언리얼 엔진은 버전별로 "1. 언리얼 엔진 1 ~ 2", "2. 언리얼 엔진 3", "3. 언리얼 엔진 4 이후 버전"이 같은 엔진의 버전업이 아닌 완전히 다른 새로운 엔진으로 개발된 만큼 구조가 완전히 다르기 때문에 해당 버전별로 구분하여 서술한다.4. 언리얼 엔진 1 ~ 2
4.1. 폴더 구조
순수한 기본 엔진의 폴더 구조 및 해당 폴더에 담긴 파일들은 다음과 같다.- System : 실행(EXE), 프로그램(DLL), 설정(INI), 로그(LOG), 언리얼스크립트 컴파일(U), 지역화(INT, KOT 등) 파일 등
- Textures : 텍스처 그룹(UTX)
- Sounds : 사운드 그룹(UAX)
- Maps : 맵 파일(UNR)
- Help : 도움말(HTM), 스플래시 이미지(BMP), 아이콘(ICO) 등
- Saves : 게임 저장(USA)
- StaticMeshes[A] : 스태틱 메시 그룹(USX)
- Animations[A] : 스켈레탈 메시 그룹(UKX)
- Prefabs[A] : 프리팹 액터 그룹(UPX)
- KarmaData[A] : 래그돌 물리 설정(KA)
게임별로 일부 폴더명이 수정되거나 새로운 폴더가 추가되거나 구조가 약간씩 변경되는 경우도 있다. 엔진 개발사인 에픽게임즈의 언리얼 시리즈에서도 언리얼 2나 언리얼 토너먼트 2003/2004 같은 게임들에서 변경되거나 추가되는 폴더들이 있다.
4.2. 파일 구조
4.2.1. System 폴더
- 실행파일(EXE)
- 프로젝트명.EXE : 게임의 실행파일이다.
- UCC.EXE : Unreal Console Commandlet의 약자로, 언리얼 엔진 1 ~ 2 기반에서 언리얼스크립트 컴파일이나 각종 콘솔 명령어를 독립적으로 수행할 때 사용된다.
- SETUP.EXE : 언리얼 엔진 1 ~ 2 기반에서 게임 설치나 설정 변경 또는 모드 적용 등을 자동으로 수행할 때 사용된다.
- UccDepend.EXE : 패키지 파일을 독립적으로 제작하거나 풀 때 사용한다.
- UnrealEd.EXE : 언리얼 에디터 실행파일이다. 게임에 따라서는 파일명을 해당 프로젝트명으로 변경하기도 한다.예를 들면 Rune에서는 RuneEd.EXE, Wheel of Time에서는 WoTEd.EXE, Undying에서는 UndEd.EXE 등, 실행파일명만 변경했을 뿐이며 에디터 내부의 모든 메뉴에서는 UnrealEd 또는 Unreal Editor로 표기된다.
- 프로그램 파일(DLL) [엔진 구동 필수 핵심 요소]
- Core.DLL : 언리얼 엔진의 핵심 구성 및 제어 부분과 언리얼스크립트 실행을 위한 UVM(언리얼 가상 머신)을 구동한다.
- Engine.DLL : 언리얼 엔진 전반에 대한 기술 구현 및 기능들을 구현하는 부분이다.
- Editor.DLL : 언리얼 엔진의 모든 기능과 연동되어 언리얼 에디터에서 실행하면 실제로 편집 기능이 작동하는 부분이다.
- Render.DLL : 그래픽 렌더링의 일부를 구현하는 부분이다. 언리얼 엔진 2에서는 Engine.DLL에 통합되어 삭제되었다.
- Fire.DLL : 프로시저럴 텍스처 매핑을 구현하는 부분이다. 불, 물, 전기 스파크 등을 비롯한 각종 특수효과를 구현한다.
- 프로그램 파일(DLL) [OS 플랫폼 드라이버]
- Window.DLL : 윈도우OS 플랫폼을 지원하는 부분이다.
- WinDrv.DLL :
- 프로그램 파일(DLL) [그래픽 렌더링 드라이버]
- SoftDrv.DLL : 소프트웨어 렌더링 드라이버, CPU로 모든 3D 렌더링 효과를 직접 구현한다.
- GlideDrv.DLL : 3dfx 부두 시리즈 전용 Glide 지원 드라이버
- SGLDrv.DLL : 파워VR 시리즈 전용 API인 SGL(Super Graphics Library) 지원 드라이버
- MeTalDrv.DLL : S3 새비지 시리즈 전용 API인 MeTal 지원 드라이버
- OpenGLDrv.DLL : OpenGL 지원 드라이버, 엔진 버전에 따라 OpenGL 0.9x 부터 OpenGL 2.x 까지 지원한다. 게임에 따라서 자체 개조나 유저 커뮤니티 개선에 의해 더 높은 버전을 지원하기도 한다.
- D3DDrv.DLL : Direct3D 지원 드라이버, 엔진 버전에 따라 Direct3D 5(언리얼 엔진 1 초기 버전)부터 Direct3D 9(언리얼 엔진 2.5)까지 지원한다. 게임에 따라서 자체 개조나 유저 커뮤니티 개선에 의해 더 높은 버전을 지원하기도 한다.
- 프로그램 파일(DLL) [오디오 렌더링 드라이버]
- Galaxy.DLL : 에픽게임즈의 자체 소프트웨어 오디오 드라이버인 갤럭시 오디오 시스템
- OpenAL32.DLL : 오픈 소스 오디오 렌더링 드라이버 OpenAL의 윈도우 32비트용 버전, 언리얼 엔진 2부터 Galaxy 대신 사용한다.
- 프로그램 파일(DLL) [네트워크 드라이버]
- IpDrv.DLL :
- 그 외 기타 DLL 파일
- FMOD.DLL : FMOD 사운드 엔진에서 제공하는 오디오 드라이버, FMOD 사운드 엔진과는 다른 오디오 렌더링 드라이버일 뿐이다.
- MILES.DLL : 마일즈 사운드 시스템용 오디오 렌더링 드라이버
- 설정 파일(INI)
- Default.INI : 언리얼 엔진의
5. 언리얼 엔진 3
5.1. 폴더 구조
순수한 기본 엔진의 폴더 구조는 다음과 같다.- Binaries
- Win32
- Win64
- EdtiorRes
- wxRC
- wxRes
- ActorX
- GFx
- FaceFXPlugins
- InstallData
- NoRedist
- Redist
- SpeedTreeModeler
- Splash
- SwarmCache
- UnrealFrtontend.Profiles
- Development
- Build
- Builder
- Document
- Documentation
- External
- Flash
- Fonts
- Install
- Src
- Tools
- Websites
- Engine
- Config
- Content
- EditorResources
- Extras
- Localization
- Shaders
- Splash
- Stats
- 프로젝트 폴더(게임별로 고유의 폴더명)
- Build
- Config
- CookedPC / CookedConsole / CookedPCConsole / CookedMac / CookedPhone (게임별로 상이할 수 있음)
- Cloud
- Content
- Localization
- Logs
- Flash
- Movies
- Script
- Splash* Screenshots
- ProjecTemplates
- Cache
- Autosave
게임별로 일부 폴더명이 수정되거나 새로운 폴더가 추가되거나 구조가 약간씩 변경되는 경우도 있다. 엔진 개발사인 에픽게임즈의 언리얼 토너먼트 3, 기어스 오브 워 시리즈, 블렛스톰, 섀도우 컴플렉스, 인피니티 블레이드 시리즈에서도 변경되거나 추가되는 폴더들이 있다.
5.2. 파일 구조
6. 언리얼 엔진 4 이후 버전
6.1. 폴더 구조
순수한 기본 엔진의 폴더 구조는 다음과 같다.- Engine
- Binaries
- Build
- Config
- Content
- DerivedDataCache
- Documentation
- Extras
- Intermediate
- Platforms
- Plugins
- Programs
- Saved
- Shaders
- Source
- 프로젝트 폴더(게임별로 고유의 폴더명)
- Binaries
- Win64
- ThirdParty
- Content
- Paks
- Movies
- Splash
- Plugins
- Shaders
- Saved
- Config
- Crashes
- Logs
- SaveGames
게임별로 일부 폴더명이 수정되거나 새로운 폴더가 추가되거나 구조가 약간씩 변경되는 경우도 있다. 엔진 개발사인 에픽게임즈의 포트나이트에서도 변경되거나 추가되는 폴더들이 있다.