fill전송 샘플

플레이어를 매치메이커나 로비로 관리한 다음 Edgegap API를 사용해 리레이 세션을 생성한 후, 리레이가 준비되면 플레이어를 리레이에 연결해야 합니다. Edgegap은 이를 수행하기 위한 전용 전송(트랜스포트)을 제공하며 이 가이드에서는 프로젝트에 이를 구현하는 방법을 보여줍니다. 이 전송은 여기 우리 GitHub에서arrow-up-right.

Unity의 경우 현재 다음 넷코드용 전송 버전이 제공됩니다:

  • Mirror;

  • Fishnet;

  • Unity Netcode for GameObjects (NGO).

트랜스포트 추가하기

사용 중인 넷코드에 맞는 트랜스포트를 다운로드한 후 프로젝트에 포함해야 합니다. 먼저 다음 위치에 프로젝트 파일로 추가하세요:

  • Mirror : Edgegap 폴더를 아래에 추가하세요 Assets/Mirror/Transports;

  • Fishnet : Edgegap KcpTransport 폴더를 아래에 추가하세요 Assets/Fishnet/Plugins;

  • NGO : EdgegapRelaykcp2k 폴더를 아래에 추가하세요 Assets/Edgegap.

그런 다음, EdgegapKcpTransport 스크립트를 귀하의 을(를) 선택하고 게임오브젝트에 추가하고, 새 컴포넌트를 Transport 게임오브젝트의 속성에도 드래그해서 넣었는지 확인하세요.

circle-info

옵션이 있는 경우, 반드시 Relay GUI 안의(in the) EdgegapKcpTransport 컴포넌트를 을(를) 선택하고비활성화하세요. 그렇지 않으면 리레이에 연결 시 간섭을 일으킬 수 있습니다.

이 옵션은 특히 Mirror 및 NGO 버전의 트랜스포트에 존재합니다.

리레이에 연결하기

매치메이킹과 리레이 세션 생성을 마친 후 Edgegap API를 사용해 리레이가 연결을 수락할 준비가 되었는지 확인하세요. 준비되면 API 응답에서 제공되는 데이터를 사용해 트랜스포트의 값을 설정합니다. 적절한 필드에 다음 값들이 필요합니다:

  • 리레이의 IP 주소는 트랜스포트의 리레이 주소로 사용됩니다;

  • 다음 세션 권한 토큰트랜스포트의 세션 ID로 사용됩니다;

  • 다음 사용자의 권한 토큰트랜스포트의 사용자 ID.

서버/호스트 연결

  • 리레이의 서버 포트 값은 트랜스포트의 리레이 포트로 사용됩니다 .

클라이언트 연결

  • 리레이의 클라이언트 포트 값은 트랜스포트의 리레이 포트로 사용됩니다 .

circle-info

각 플레이어는 고유한 권한 토큰을 가지지만 세션 토큰은 세션의 모든 플레이어에게 동일하게 유지됩니다.

Mirror 사용하기

Fishnet 사용하기

NGO 사용하기

ApiResponse 사용하기

값들이 올바르게 설정되면 각 플레이어를 트랜스포트를 사용해 리레이에 연결하세요. 잠시 후 게임을 플레이할 수 있게 됩니다!

샘플 프로젝트

다음 프로젝트들은 Edgegap 리레이 트랜스포트를 사용하는 간단한 예제들입니다.

정상적으로 작동시키려면 명령 프롬프트 터미널을 열고 git clone [URL] 명령으로 프로젝트를 다운로드하세요. Unity Hub를 통해 프로젝트 폴더를 에디터에서 열고, 그 다음 RelayProfileToken 값을 HelloWorldManager 컴포넌트를 을(를) 선택하고 게임오브젝트에서 귀하의 리레이 프로필 토큰으로 변경하세요.

circle-info

사용자 지정 리레이 프로필 토큰arrow-up-rightHelloWorldManager.cs 또는 EdgegapRelayService.cs.

마지막 업데이트

도움이 되었나요?