온라인 서비스 콘솔 명령을 사용하면 게임플레이 동안 온라인 서비스 플러그인을 디버깅하고 테스트할 수 있습니다.
콘솔 명령 실행
온라인 서비스 플러그인 콘솔 명령은 언리얼 엔진 콘솔에서 실행됩니다. 콘솔은 에디터에서 플레이(PIE) 도중 물결(~) 키를 한 번(피드백 없음) 또는 두 번(상세 피드백) 눌러 액세스할 수 있습니다. 다음 구문을 사용하여 온라인 서비스 콘솔 명령을 실행합니다.
OnlineServices Index=<NUM> <INTERFACE> <FUNCTION> [ARG1] [ARG2] ...
파라미터
아래 표에는 온라인 서비스 플러그인 콘솔 명령을 구성하는 파라미터에 대한 설명이 정리되어 있습니다.
| 파라미터 | 설명 | 추가 정보 |
|---|---|---|
NUM |
액세스할 서비스의 인덱스 번호입니다. |
|
INTERFACE |
액세스할 함수 기능의 인터페이스입니다. |
|
FUNCTION |
지정된 인터페이스 내에서 사용하려는 함수입니다. |
|
ARG1, ARG2, … |
선언된 명령에서 FUNCTION 의 연결된 Param 구조체를 구성하는 실행인자입니다. |
|
예를 들어 온라인 서비스 콘솔 명령의 경우 이 페이지의 콘솔 명령 예시 섹션을 참고하세요.
실행인자
온라인 서비스 함수를 사용할 때는 다양한 파라미터 타입을 전달해야 합니다. 온라인 서비스 콘솔 명령이 온라인 서비스 함수 실행을 위한 메커니즘을 제공한 이래로 이러한 함수 파라미터 타입에 대응하도록 다양한 콘솔 명령 실행인자 타입이 구현되었습니다. 온라인 서비스 콘솔 명령은 특정 방식으로 이러한 타입을 처리하여 복잡한 C++ 타입을 언리얼 엔진 콘솔을 통해 전달하고 이러한 함수를 사용할 수 있도록 지원합니다.
특수 타입은 다음과 같습니다.
- FAccountId
- TSharedPtr
- TOptional
- TVariant
- Objects
- TArray
- TMap
아래 테이블은 각 특수 타입을 전달하는 것과 관련된 추가 정보를 예시와 함께 제공합니다.
| 타입 | 정보 | 예시 |
|---|---|---|
FAccountId |
|
|
TSharedPtr |
평상시와 같이 파라미터 이름을 입력합니다.
|
|
TOptional |
선택적 값을 설정하지 않고 전달하려면 null 을 사용합니다. |
|
TVariant |
TVariant를 전달하는 구문은
커스텀 열거형이 있는 경우 |
다음은 각 타입과 값 쌍의 예시입니다.
|
Objects |
온라인 메타데이터가 있는 오브젝트의 경우, 괄호로 구분된 구문을 사용하여 모든 파라미터를 명확하게 선언합니다. 오브젝트는 내부 오브젝트 및 배열을 지원합니다. | 다음은 오브젝트 예시입니다.
|
TArray |
TArray 에는 괄호로 구분된 구문을 사용합니다. 목록 안의 값을 구분하는 쉼표는 선택 사항입니다. |
다음은 서로 동일한 두 가지
|
TMap |
TMap 에는 괄호로 구분된 구문을 사용합니다. TMap 은 고급 구문을 지원하지 않으므로 중첩 오브젝트, 배열 등은 제대로 파싱되지 않습니다. |
다음은
|
콘솔 명령 예시
이 섹션에는 프로젝트에서 활성화한 온라인 서비스 플러그인과 함께 사용할 수 있는 콘솔 명령의 몇 가지 예시가 나와 있습니다. 온라인 서비스 콘솔 명령을 사용하려면 다음 조건을 충족해야 합니다.
- 온라인 서비스 플러그인을 활성화합니다.
- 프로젝트에서 사용할 플러그인을 환경설정합니다.
- 프로젝트 코드에서 사용할 서비스에 대한 레퍼런스를 얻습니다.
이러한 콘솔 명령은 사용할 서비스에 대한 레퍼런스를 얻고 각 인터페이스를 적절하게 환경설정하지 않으면 프로젝트에서 아래와 같이 작동하지 않을 수 있습니다.
사용 가능한 온라인 서비스 목록
명령
OnlineServices List
이 명령 목록은 온라인 서비스 플러그인을 통해 액세스할 수 있는 플랫폼 서비스를 열거합니다.
샘플 출력
0: Null
1: Epic
2: Steam
...
이 샘플 출력의 경우, 다수의 온라인 플랫폼 서비스를 이용할 수 있으며 적절한 인덱스 번호를 통해 온라인 서비스 콘솔 명령에서 레퍼런스할 수 있습니다. 예를 들어 null은 Index=0 으로, 에픽게임즈는 Index=1 로, Steam은 Index=2 로 레퍼런스할 수 있습니다.
로컬 온라인 사용자 구하기
명령
OnlineServices Index=0 Auth GetLocalOnlineUserByPlatformUserId 0
샘플 출력
LogConsoleResponse: Display: GetLocalOnlineUserByPlatformUserId result: { AccountInfo: [{ AccountId: Null:1 (ID_STRING), PlatformUserId: 0, LoginStatus: LoggedIn, Attributes: {DisplayName:String:ID_STRING} }] }
타이틀 파일 구하기
명령
OnlineServices Index=0 TitleFile GetEnumeratedFiles 0
샘플 출력
LogConsoleResponse: Display: GetEnumeratedFiles result: { Filenames: [StatusFile] }
이 출력은 'StatusFile'이라는 타이틀의 백엔드 온라인 서비스에 등록된 단일 타이틀 파일이 있음을 보여줍니다.
추가 정보
이 페이지에서 다뤄진 주제와 관련된 자세한 내용은 다음 페이지를 참고하세요.