Files
UnrealEngineUWP/Engine/Documentation/Source/GettingStarted/RunningUnrealEngine/RunningUnrealEngine.KOR.udn
Sungjin Hong ea50e0d179 #loc UE4DocKOR
[CL 2558125 by Sungjin Hong in Main branch]
2015-05-19 23:46:43 -04:00

524 lines
20 KiB
Plaintext

INTSourceChangelist:2556992
Availability:Public
Title:언리얼 엔진 실행하기
Crumbs: %ROOT%, GettingStarted
Description:엔진을 게임이나 에디터로 실행하는 법은 물론, 특정 맵을 같이 로드하는 법과 유용한 게임내 명령도 다룹니다.
%Globals:OSSelect%
[TOC (start:2 end:4)]
[EXCERPT:Main]
이 페이지의 내용은 **Development** 빌드 환경설정으로 컴파일된 프로젝트로 엔진을 실행하는 경우를 기준으로 합니다. 다른 환경설정으로 빌드한 프로젝트를 열기 위해서는 `UE4Editor-*.exe` 나 `UE4-*.exe` 부분을
그에 맞게 대체해 주시기 바랍니다. 바이너리 작명 규칙 관련 상세 정보는 [](Programming/Development/BuildingUnrealEngine) 문서를 참고하시기 바랍니다.
## 에디터 실행하기
[EXCERPT:RunEditor]
[PUBLISH:Licensee]
언리얼 에디터 사본을 실행시키는 프로세스 입니다.
[/PUBLISH:Licensee]
[PUBLISH:Rocket]
에디터 실행은, 단순히 실행시킬 프로젝트 이름을 실행파일에 인수로 붙여 전달해 주기만 하면 됩니다.
[REGION:tip]
실행파일에 `-debug` 스위치를 붙이면 프로젝트의 디버그 버전 모듈을 강제 로드시킬 수 있으며, 여기에는
디버깅 심볼이 전부 포함됩니다. 이 작업은 Visual Studio 환경설정이 **Debug** 로 설정된 것을 디버깅할 때도 필수인데,
그 이유는 주 실행파일은 항상 **Development** 환경설정을 사용하여 컴파일되기 때문입니다.
로드할 실행파일이 존재하기 위해서는 먼저 **Debug** 환경설정을 사용해서 모듈을 로드해야 함은 물론입니다.
[/REGION]
[/PUBLISH:Rocket]
### 명령줄에서 에디터 실행하기
[PUBLISH:Licensee]
1. 명령줄에서 `UE4` 아래 `\Engine\Binaries\Win64` 디렉토리로 이동합니다.
1. `UE4Editor.exe` 에 실행시킬 게임 이름을 인수로 붙여 실행합니다:
|프로젝트 위치|명령줄|
|----------------|--------------|
|UE4 루트 | `UE4Editor.exe MyGame`|
|다른 위치| `UE4Editor.exe "[ProjectPath]\[ProjectName].uproject"`|
[/PUBLISH:Licensee]
[PUBLISH:Rocket]
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
OS
[/PARAMLITERAL]
[PARAMLITERAL:id]
windows
[/PARAMLITERAL]
[PARAMLITERAL:active]
active_button_content
[/PARAMLITERAL]
[PARAM:content]
1. 명령줄에서 `[LauncherInstall]\[VersionNumber]\Engine\Binaries\Win64` 디렉토리로 이동합니다.
1. `UE4Editor.exe` 에 프로젝트 경로를 인수로 붙여 실행합니다.
UE4Editor.exe "[ProjectPath]\[ProjectName].uproject"
[/PARAM]
[/OBJECT]
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
OS
[/PARAMLITERAL]
[PARAMLITERAL:id]
mac
[/PARAMLITERAL]
[PARAMLITERAL:active]
[/PARAMLITERAL]
[PARAM:content]
1. 명령줄에서 `[LauncherInstall]\[VersionNumber]/Engine/Binaries/Mac` 디렉토리로 이동합니다.
1. `UE4Editor.app` 에 프로젝트 경로를 붙여서 실행합니다.
open UE4Editor.app --args "[ProjectPath]/[ProjectName].uproject"
[/PARAM]
[/OBJECT]
[/PUBLISH:Rocket]
### 실행파일에서 에디터 실행하기
[PUBLISH:Licensee]
1. `UE4` 아래 `\Engine\Binaries\Win64` 디렉토리로 이동합니다.
1. `UE4Editor.exe` 실행파일에 우클릭한 다음 **바로 가기 만들기** 를 선택합니다.
1. 실행시킬 게임 이름과 에디터를 실행시킨다는 사실을 반영하여 바로 가기 이름을 **MyGameEditor.exe** 식으로 바꿔줍니다.
1. 새로 만든 바로 가기에 우클릭한 다음 **속성** 을 선택합니다.
1. **대상** 칸 끝에 실행시킬 게임 이름을 인수로 추가해 줍니다:
|프로젝트 위치|타겟|
|----------------|--------------|
|UE4 루트 | `[UE4Directory]\Engine\Binaries\Win64\UE4Editor.exe MyGame`|
|다른 위치| `[UE4Directory]\Engine\Binaries\Win64\UE4Editor.exe "[ProjectPath]\[ProjectName].uproject"`|
1. **OK** 를 눌러 변경내용을 저장합니다.
1. 바로 가기를 더블클릭하여 에디터를 실행시킵니다.
[/PUBLISH:Licensee]
[PUBLISH:Rocket]
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
OS
[/PARAMLITERAL]
[PARAMLITERAL:id]
windows
[/PARAMLITERAL]
[PARAMLITERAL:active]
active_button_content
[/PARAMLITERAL]
[PARAM:content]
1. `[LauncherInstall]\[VersionNumber]\Engine\Binaries\Win64` 디렉토리로 이동합니다.
1. `UE4Editor.exe` 실행파일에 우클릭한 다음 **바로 가기 만들기** 를 선택합니다.
1. 실행시킬 게임 이름과 에디터를 실행시킨다는 사실을 반영하여 바로 가기 이름을 **MyProject - Editor.exe** 식으로 바꿔줍니다.
1. 새로 만든 바로 가기에 우클릭한 다음 **속성** 을 선택합니다.
1. **대상** 칸 끝에 실행시킬 게임 이름을 인수로 추가해 줍니다:
[LauncherInstall]\[VersionNumber]\Engine\Binaries\Win64\UE4Editor.exe "[ProjectPath]\[ProjectName].uproject"
1. **OK** 를 눌러 변경내용을 저장합니다.
1. 바로 가기를 더블클릭하여 에디터를 실행시킵니다.
[/PARAM]
[/OBJECT]
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
OS
[/PARAMLITERAL]
[PARAMLITERAL:id]
mac
[/PARAMLITERAL]
[PARAMLITERAL:active]
[/PARAMLITERAL]
[PARAM:content]
에디터는 반드시 명령줄에서 실행시켜야 특정 프로젝트를 바로 로드할 수 있으며, 인수가 없으면 프로젝트 브라우저가 열립니다.
[/PARAM]
[/OBJECT]
[/PUBLISH:Rocket]
### 인수 없이 에디터 실행하기 (독립형)
에디터 시작시 가장 최근 프로젝트를 열도록 설정되지 않았을 때, 에디터 실행파일을 아무런 인수 없이 실행시키면 프로젝트 브라우저가 뜹니다.
여기서 [새 프로젝트를 만들거나](Engine/Basics/Projects/Browser#새프로젝트만들기), [기존 프로젝트를 열거나](Engine/Basics/Projects/Browser#프로젝트열기),
[콘텐츠 예제 또는 샘플 게임을 열 수](Resources) 있습니다.
[/EXCERPT:RunEditor]
## 쿠킹되지 않은 게임 실행하기
언리얼 에디터에 프로젝트가 로드되고나면, **플레이:** 메뉴에서 Uncooked Game 모드로 [게임플레이 테스트](Engine/UI/LevelEditor/InEditorTesting#모드) 가 가능합니다.
독립된 창에서 쿠킹안된 게임을 플레이하려면, 레벨 에디터 툴바의 [**플레이:** 드롭다운 메뉴](Engine/UI/LevelEditor/InEditorTesting#툴바) 를 사용하여
[**새 창 위치:** > **기본 플레이어 스타트** 모드](Engine/UI/LevelEditor/InEditorTesting#모드) 를 선택하시기 바랍니다.
**클릭하면 원래 크기 이미지로 볼 수 있습니다:**
[REGION:lightbox]
[![](Engine/UI/LevelEditor/InEditorTesting/PIE_newwindow.png)(w:300)](Engine/UI/LevelEditor/InEditorTesting/PIE_newwindow.png)
[/REGION:lightbox]
아래 중 어느 방법으로 엔진 실행파일의 쿠킹되지 않은 게임 버전을 실행시키든 같은 동작을 보입니다.
### 명령줄에서 쿠킹되지 않은 게임 실행하기
[PUBLISH:Licensee]
게임을 명령줄에서 실행할 때는, 바로 가기의 **대상** 칸에 `UE4Editor.exe` 게임 실행파일에다 실행시킬 게임 이름을
인수로 붙여 줘야 하는 것은 물론, `-game` 파라미터를 지정하여 에디터에 에디터 UI 를 띄우는 대신 게임 모드로 실행되도록 해 줘야 합니다.
1. 명령줄에서 `UE4` 아래 `\Engine\Binaries\Win64` 디렉토리로 이동합니다.
1. `UE4Editor.exe -game` 에 실행시킬 게임 이름을 붙여 실행합니다.
|프로젝트 위치|명령줄|
|----------------|--------------|
|UE4 루트 | `UE4Editor.exe MyGame -game`|
|다른 위치| `UE4Editor.exe "[ProjectPath]\[ProjectName].uproject" -game`|
[/PUBLISH:Licensee]
[PUBLISH:Rocket]
명령줄에서 실행할 때, `-game` 스위치와 함께 실행시키고자 하는 프로젝트 이름을 인수로 전달해 줘야 합니다.
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
OS
[/PARAMLITERAL]
[PARAMLITERAL:id]
windows
[/PARAMLITERAL]
[PARAMLITERAL:active]
active_button_content
[/PARAMLITERAL]
[PARAM:content]
1. 명령줄에서 `[LauncherInstall]\[VersionNumber]\Engine\Binaries\Win64` 디렉토리로 이동합니다.
1. **UE4Editor.exe** 에 실행시킬 프로젝트 경로와 아울러 `-game` 파라미터를 붙여 실행합니다:
UE4Editor.exe "[ProjectPath]\[ProjectName].uproject" -game
[/PARAM]
[/OBJECT]
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
OS
[/PARAMLITERAL]
[PARAMLITERAL:id]
mac
[/PARAMLITERAL]
[PARAMLITERAL:active]
[/PARAMLITERAL]
[PARAM:content]
1. 명령줄에서 `[LauncherInstall]/[VersionNumber]/Engine/Binaries/Mac` 디렉토리로 이동합니다.
1. **UE4Editor.app** 에 실행시킬 프로젝트 경로와 아울러 `-game` 파라미터를 붙여 실행합니다:
open UE4Editor.app --args "[ProjectPath]/[ProjectName].uproject" -game
[/PARAM]
[/OBJECT]
[/PUBLISH:Rocket]
### 실행파일에서 쿠킹되지 않은 게임 실행하기
[PUBLISH:Licensee]
실행파일에서 실행할 때는, 바로 가기의 **대상** 칸에다 `UE4Editor.exe` 게임 실행파일 뒤에 실행시키고자 하는 게임 이름을 인수로 붙여 줘야 하는 것은 물론,
`-game` 파라미터를 지정하여 에디터에 에디터 UI 를 띄우는 대신 게임 모드로 실행되도록 해 줘야 합니다.
1. `UE4` 의 `\Engine\Binaries\Win64` 디렉토리로 이동합니다.
1. `UE4Editor.exe` 실행파일에 우클릭한 다음 **바로 가기 만들기** 를 선택합니다.
1. 실행시킬 게임 이름과 에디터를 실행한다는 사실을 반영하여, 바로 가기 이름을 **MyGameUncooked.exe** 식으로 바꿔줍니다.
1. 새로 만든 바로 가기에 우클릭한 다음 **속성** 을 선택합니다.
1. **대상** 칸 뒤에 실행시킬 게임 이름을 인수로 붙여 줍니다:
|프로젝트 위치|타겟|
|----------------|--------------|
|UE4 루트 | `[UE4Directory]\Engine\Binaries\Win64\UE4Editor.exe MyGame -game`|
|다른 위치| `[UE4Directory]\Engine\Binaries\Win64\UE4Editor.exe "[ProjectPath]\[ProjectName].uproject" -game`|
1. **OK** 를 눌러 변경내용을 저장합니다.
1. 바로 가기를 더블클릭하여 에디터를 실행합니다.
[/PUBLISH:Licensee]
[PUBLISH:Rocket]
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
OS
[/PARAMLITERAL]
[PARAMLITERAL:id]
windows
[/PARAMLITERAL]
[PARAMLITERAL:active]
active_button_content
[/PARAMLITERAL]
[PARAM:content]
실행파일을 실행할 때, 바로가기의 **대상** 칸을 통해 실행시키고자 하는 프로젝트의 경로와 아울러 `-game` 스위치를
실행파일의 인수로 전해줘야 합니다.
1. `[LauncherInstall]\[VersionNumber]\Engine\Binaries\Win64` 디렉토리로 이동합니다.
1. **UE4Editor.exe** 실행파일에 우클릭한 다음 **바로가기 생성** 을 클릭합니다.
1. 바로가기 이름을 실행시킬 게임을 반영시켜 **MyProject.exe** 식으로 바꿔줍니다.
1. 새로 만든 바로가기에 우클릭한 다음 **프로퍼티** 를 선택하여 바로가기의 프로퍼티를 표시합니다.
1. **대상** 프로퍼티 끝에 실행시킬 프로젝트의 전체 경로를 인수로 추가한 다음, `-game` 인수를 지정하여 게임으로 실행되도록 합니다:
[LauncherInstall]\[VersionNumber]\Engine\Binaries\Win64\UE4Editor.exe "[ProjectPath]\[ProjectName].uproject" -game
**OK** 를 눌러 변경내용을 저장합니다.
1. 바로가기를 더블클릭하여 게임을 실행합니다.
[/PARAM]
[/OBJECT]
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
OS
[/PARAMLITERAL]
[PARAMLITERAL:id]
mac
[/PARAMLITERAL]
[PARAMLITERAL:active]
[/PARAMLITERAL]
[PARAM:content]
에디터를 명령줄에서 실행시켜야 특정 오브젝트를 바로 로드할 수 있습니다.
[/PARAM]
[/OBJECT]
[/PUBLISH:Rocket]
## 쿠킹된 게임 실행시키기
[INCLUDE:Engine/Basics/Projects/Packaging#runcooked]
쿠킹된 게임 빌드 패키징 및 실행 방법 관련 상세 정보는 [](Engine/Basics/Projects/Packaging) 에 있습니다.
## 유용한 게임내 명령
게임을 실행중일 때, 게임 내 콘솔 창에 사용할 수 있는 **콘솔 명령** 의 수는 엄청 많습니다.
콘솔 창은 **~ (물결)** 또는 **Tab** 키로 띄울 수 있습니다. 유용한 명령 몇 가지 나열해 보면 아래와
같습니다.
$ EXIT/QUIT :
게임을 빠져나가고, 엔진을 닫습니다.
$ DISCONNECT :
게임을 빠져나가고, 메인 메뉴(가 있으면 그리)로 돌아갑니다.
$ OPEN [MapURL] :
기존 세팅을 그대로 사용하여 지정된 URL 의 맵을 새로 로드합니다. URL 은 (파일 확장자 없이) 맵 이름에 게임타입, 플레이어 클래스, 플레이어 이름, 팀 번호 등과 같은 옵션을 지정하는 데 사용할 수 있는 옵션 파라미터 목록이 붙는 것입니다.
$ TRAVEL [MapURL] :
지정된 URL 과 모든 세팅을 리셋시켜서 새 맵을 로드합니다. 맵 URL 에 대한 설명은 윗부분을 참고하세요.
$ VIEWMODE [Mode] :
게임 뷰포트 렌더링 모드를 지정된 것으로 설정합니다. 가능한 모드는 다음과 같습니다:
| 모드 | 설명 |
| ---- | ----------- |
| WIREFRAME | 모든 메시의 와이어프레임을 표시합니다. |
| UNLIT | 머티리얼의 디퓨즈 채널만을 사용해서 메시를 렌더링합니다. |
| LIT | 기본 모드입니다. 라이팅에 영향을 받고 있는 머티리얼을 사용해서 메시를 렌더링합니다. |
| DETAILLIGHTING | 노멀을 고려하여 라이팅에 영향을 받고 있는 무채색 머티리얼을 사용해서 메시를 렌더링합니다. |
| LIGHTINGONLY | 노멀을 고려하지 않고 라이팅에 영향을 받고 있는 무채색 머티리얼을 사용해서 메시를 렌더링합니다. |
| LIGHTCOMPLEXITY | 메시에 영향을 끼치는 다이내믹 라이트의 수에 따라 메시를 단색으로 렌더링합니다. 메시에 영향을 끼치는 다이내믹 라이트가 없으면 검정, 수가 많아질 수록 녹색에서 빨강으로 변합니다. |
| SHADERCOMPLEXITY | 표면에 적용된 머티리얼에서 사용되는 셰이더 인스트럭션 수에 따라 메시를 단색으로 렌더링합니다. 색 범위는 초록(0), 빨강(300), 분홍(600), 흰색(900) 순입니다. |
## 맵 로드하기
엔진이나 에디터를 실행할 때, 또는 엔진 실행 도중 새 맵을 로드할 때, 로드할 맵을 지정하는 것이 가능합니다.
메뉴를 여러 번 거치지 않고도 테스트하고자 하는 맵으로 빠르게 이동할 수 있으니,
테스트에 유용합니다.
### 시작시 맵 로드하기
엔진은 실행되면 기본 맵 로드를 시도해 봅니다. 기본 맵은 게임 프로젝트의 `Config` 폴더 안에 위치해 있는
**_DefaultEngine.ini_** 환경설정 파일에 지정되어 있습니다. 기본 실행 맵은 이 .ini 파일의 `[URL]` 섹션
아래 **Map** 프로퍼티를 사용해서 지정합니다. 예를 들어 ExampleGame 의 **_DefaultEngine.ini** 에는
다음과 같은 부분이 있습니다:
[URL]
...
Map=/Game/Maps/VehicleMenu
...
이렇게 해 두면 다른 식으로 덮어쓰지 않는 이상 시작시 **_Entry.umap_** 을 로드하게 됩니다. 일반적으로는
로드시킬 맵이나 메인 메뉴의 배경으로 사용되는 맵을 기본 맵으로 지정하는 것이 됩니다.
[PUBLISH:Licensee]
기본 맵을 덮어쓰려면 명령줄 인수에 (파일 확장자를 제외한) 맵 이름을 전해 주면 됩니다.
명령줄에 게임 이름을 지정해야 한다는 것은 전에 말씀드린 바 있습니다. 그 뒤에다 엔진에서 기본 맵 이외에
로드했으면 하는 맵 이름을 지정해 줄 수도 있습니다. 예를 들어 엔진에서 `ExampleMap` 을 로드하도록 만드는
명령은 다음과 같습니다:
UE4Editor.exe [Gamename] ExampleMap -game
[/PUBLISH:Licensee]
[PUBLISH:Rocket]
기본 맵을 덮어쓰려면 명령줄 인수에 (파일 확장자를 제외한) 맵 이름을 전해 주면 됩니다.
명령줄에 게임 이름을 지정해야 한다는 것은 전에 말씀드린 바 있습니다. 그 뒤에다 엔진에서 기본 맵 이외에
로드했으면 하는 맵 이름을 지정해 줄 수도 있습니다. 예를 들어 엔진에서 `ExampleMap` 을 로드하도록 만드는
명령은 다음과 같습니다:
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
OS
[/PARAMLITERAL]
[PARAMLITERAL:id]
windows
[/PARAMLITERAL]
[PARAMLITERAL:active]
active_button_content
[/PARAMLITERAL]
[PARAM:content]
~~~
UE4Editor.exe "[ProjectPath]\[ProjectName].uproject" ExampleMap -game
~~~
[/PARAM]
[/OBJECT]
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
OS
[/PARAMLITERAL]
[PARAMLITERAL:id]
mac
[/PARAMLITERAL]
[PARAMLITERAL:active]
[/PARAMLITERAL]
[PARAM:content]
~~~
open UE4Editor.app --args "[ProjectPath]/[ProjectName].uproject" ExampleMap -game
~~~
[/PARAM]
[/OBJECT]
[/PUBLISH:Rocket]
[PUBLISH:Licensee]
같은 개념이 에디터를 실행할 때도 적용됩니다. `editor` 인수 뒤에 로드시킬 맵 이름을 지정해 주면, 에디터가 실행될 때
기본 맵이나 빈 맵 대신 해당 맵을 로드하게 됩니다. `ExampleMap` 이 로드된 상태로 에디터를 실행시키는
명령은 다음과 같습니다:
UE4Editor.exe [GameName] ExampleMap
[/PUBLISH:Licensee]
[PUBLISH:Rocket]
같은 개념이 에디터를 실행할 때도 적용됩니다. 로드시킬 맵 이름을 지정해 주면, 에디터가 실행될 때
기본 맵이나 빈 맵 대신 해당 맵을 로드하게 됩니다. `ExampleMap` 이 로드된 상태로 에디터를 실행시키는
명령은 다음과 같습니다:
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
OS
[/PARAMLITERAL]
[PARAMLITERAL:id]
windows
[/PARAMLITERAL]
[PARAMLITERAL:active]
active_button_content
[/PARAMLITERAL]
[PARAM:content]
~~~
UE4Editor.exe "[ProjectPath]\[ProjectName].uproject" ExampleMap
~~~
[/PARAM]
[/OBJECT]
[OBJECT:ToggleButtonContent]
[PARAMLITERAL:category]
OS
[/PARAMLITERAL]
[PARAMLITERAL:id]
mac
[/PARAMLITERAL]
[PARAMLITERAL:active]
[/PARAMLITERAL]
[PARAM:content]
~~~
open UE4Editor.app --args "[ProjectPath]/[ProjectName].uproject" ExampleMap
~~~
[/PARAM]
[/OBJECT]
[/PUBLISH:Rocket]
[REGION:tip]
맵 이름은 URL 방식으로 GameMode 와 같은 부가 세팅을 나타낼 수도 있습니다. 세팅은 맵 이름에 `?` 로 구분된
키-값 짝 형태로 덧붙습니다. 예:
DM-Deck?Game=CaptureTheFlag
[/REGION]
### 새 맵 로드하기
플레이 도중에, 개발 도중의 테스트나 게임플레이 도중의 맵 전환을 위해서라도,
새 맵을 로드하고자 하는 경우, `OPEN` 이나 `TRAVEL` 콘솔 명령에 로드할 맵 이름을
(확장자 없이) 붙여주면 됩니다.
[REGION:note]
`OPEN` 과 `TRAVEL` 명령의 차이점은 [유용한 게임내 명령](#유용한게임내명령) 부분을 참고해 주시기 바랍니다.
[/REGION]
플레이 도중 DM-Deck 맵을 같은 세팅으로, 아니면 세팅을 리셋시켜서 로드하는 명령은 각각 다음과 같습니다:
open DM-Deck
또는
travel DM-Deck
<!--
[PUBLISH:Licensee]
## 쿠킹된 콘텐츠로 게임 실행하기
게임 실행파일은 쿠킹된 콘텐츠가 있어야 실행시킬 수 있습니다.
### 명령줄에서 실행
1. 명령줄 대기상태에서 게임 디렉토리 아래 `\Binaries\Win32` 폴더로 이동합니다.
1. **[게임명].exe** 를 실행시킵니다.
[게임명].exe
### 실행파일에서 실행
1. 게임 디렉토리 내 `\Binaries\Win32` 폴더로 이동합니다.
1. **[게임명].exe** 를 더블클릭하여 게임을 실행시킵니다.
[/PUBLISH:Licensee]
-->
[/EXCERPT:Main]