언리얼 C++ 프로그래밍

[언리얼 C++] 명령줄 인수

언린이 2021. 8. 21. 10:58

명령줄 인수란, 실행파일로의 바로가기나 명령줄을 통해 실행파일을 실행시킬때 전달할 수 있는 키워드 문자열을 말합니다. 개발자나 사용자의 입맛에 맞게끔 엔진이 실행되는 방식을 맞추고자 할때 쓰입니다. 게임 대신 에디터를 실행시키는 것과 같은 단순한 것에서부터 게임을 특정 맵에서 지정된 해상도와 프레임으로 돌리면서 각 프레임을 개별 이미지 파일로 덤핑하는 것처럼 복잡한 것에까지 이릅니다.

 

 

1. 모드

인수 설명
-game 언쿠킹 컨텐츠를 사용하여 게임을 실행합니다.
-server 언쿠킹 컨텐츠를 사용하여 게임을 서버로 실행합니다.

언쿠킹 컨텐츠를 사용하여 메인 에디터 실행파일을 게임으로 또는 서버로 강제 실행시키는데 사용되는 인수입니다.

이 명령어들은 대소문자를 구분하지 않습니다.

 

UE4Editor.exe -game

위 예제처럼 명령줄에 원하시는 인수를 붙여 사용하시면 됩니다.

 

 

2. URL 파라미터

게임 시작시 특정 맵을 강제로 로드시키기 위해 실행파일에다 URL을 전달할 수 있습니다. 또한 SERVER 또는 EDITOR 모드와 맵 지정을 결합하면 해당 모드에서 해당 맵을 열 수도 있습니다. URL 전달은 없어도 됩니다만, 넣으려면 실행파일명 바로 뒤에 넣어야 합니다.

 

URL은 맵 이름 또는 서버 IP 주소와 부가 파라미터 시리즈, 이렇게 두 부분으로 구성되어 있습니다.

맵 이름은 Maps 디렉터리에 위치한 맵이면 됩니다. 여기서 .umap 같은 파일 확장자는 붙이지 않아도 됩니다. Maps 디렉터리에 있지 않은 맵을 로드하기 위해서는 절대 경로 또는 Maps 디렉터리로부터의 상대 경로를 사용하면 됩니다. 이 경우엔 파일 확장자를 꼭 붙여야 합니다.

서버 IP 주소는 . 으로 나뉜 0에서 255 사이의 값 4개로 구성된 표준 4분절 IP 주소입니다. 부가 옵션은 맵 이름이나 서버 IP 주소에 덧붙일때 지정하는 옵션입니다. 각 옵션은 '?'로 시작되며, '='으로 값을 할당할 수 있습니다. 옵션을 '-'로 시작하면 캐시된 URL 옵션에서 해당 옵션을 제거합니다.

 

MyGame.exe /Game/Maps/MyMap
UE4Editor.exe MyGame.uproject /Game/Maps/MyMap?game=MyGameInfo -game
UE4Editor.exe MyGame.uproject /Game/Maps/MyMap?listen -server
MyGame.exe 127.0.0.1

위 예제처럼 사용하시면 됩니다.

 

  • 일반 옵션
    인수 설명
    game 엔진이 사용할 GameInfo 클래스를 지정합니다. (기본값보다 우선)
    name 사용할 플레이어 이름입니다.
  • 서버 옵션
    인수 설명
    listen 서버를 리슨 서버로 지정합니다.
    bIsLanMatch 로컬 네트워크 상의 멀티플레이어 게임인지 설정합니다. (bIsLanMatch=0)
    bIsFromInvite 참가하는 플레이어가 초대되었는지를 나타냅니다.
    spectatoronly 관람 모드로 게임을 시작합니다.