연결 해제
연결 해제는 참여 플레이어가 호스트 플레이어에게 DISCONNECT
메시지를 전송할 때 발생합니다. 이 연결 해제는 게임 세션에서 호스트 플레이어와 참여 플레이어 간의 연결만 해제하며, Relay 서버에서 플레이어의 할당을 제거하지는 않습니다.
Relay 서버와의 연결 해제
Relay 서버 할당을 해제(Relay 서버에서 할당 제거)하려는 플레이어의 경우, Relay 서버에 CLOSE
메시지를 전송해야 합니다. 이렇게 하면 플레이어는 연결을 해제한 후 연결 플로를 통해 Relay 서버에 리바인드해야 합니다.
일반적인 게임 세션에서는 모든 플레이어가 연결을 해제한 후에 마지막으로 호스트 플레이어가 연결을 해제합니다. 호스트 플레이어가 참여 코드를 생성했으므로 호스트 플레이어의 연결을 해제하면 Relay에서 다음 동작이 트리거됩니다.
- 호스트 플레이어의 할당과 생성된 참여 코드를 해제합니다.
- 호스트 플레이어의 Relay 서버 연결을 종료합니다.
플레이어가 연결을 종료하면 Relay 서버는 연결된 모든 플레이어를 업데이트하여 연결이 해제된 플레이어를 제거합니다. 이 단계를 통해 Relay 서버의 연결 슬롯도 비워집니다.
연결 시간이 초과된 경우에도 Relay 서버는 플레이어 연결을 해제합니다. 연결 상태를 유지하여 시간 초과를 방지할 수 있습니다.
참고: Relay에는 호스트 플레이어가 CLOSE
메시지를 통해 Relay 서버에서 연결을 해제할 때 호스트를 마이그레이션할 수 있는 방법이 없습니다. 하지만 커스텀 로직을 추가하여 남은 플레이어를 로비에 배치하고 새 호스트를 선택할 수 있습니다. 호스트 마이그레이션을 확인하십시오.