Skip to main content
티켓 ID와 큐 이름을 사용하여 하나 이상의 여러 로컬 사용자를 매치메이킹 티켓에 참여시킵니다.

구문

매개 변수

handle   PFMultiplayerHandle PFMultiplayer API 인스턴스의 핸들입니다. localUserCount   uint32_t 티켓에 참여할 로컬 사용자의 수입니다. localUsers   PFEntityKey*
크기가 localUserCount인 입력 배열
티켓에 참여할 로컬 사용자 배열입니다. localUserAttributes   char*
크기가 localUserCount인 입력 배열
로컬 사용자 특성 문자열의 배열입니다. 각 로컬 사용자에 대해 하나의 특성 문자열이 있어야 합니다. 각 특성 문자열은 빈 문자열이거나 직렬화된 JSON 개체여야 합니다. 예를 들어, {"player_color":"blue","player_role":"tank"}와 같습니다. ticketId   char*
null로 끝남
참여할 티켓의 ID입니다. queueName   char*
null로 끝남
티켓이 속한 큐입니다. asyncContext   void*
선택 사항
이 호출과 완료 상태 변경을 연결하는 데 사용할 수 있는 선택적인 앱 정의 포인터 크기의 컨텍스트 값입니다. ticket   PFMatchmakingTicketHandle*
라이브러리에서 할당된 출력
결과 티켓 개체입니다.

반환 값

형식: HRESULT 호출에 성공한 경우 S_OK이며 그렇지 않은 경우 오류 코드입니다. 오류 코드의 사람이 읽을 수 있는 형태는 PFMultiplayerGetErrorMessage()를 통해 검색할 수 있습니다.

설명

라이브러리는 매치메이킹 서비스에 티켓에 참여할 지정된 모든 로컬 사용자를 자동으로, 그리고 비동기적으로 제출합니다. 티켓 상태가 변경될 때마다 PFMatchmakingTicketStatusChangedStateChange가 제공됩니다. 티켓 상태는 언제든지 PFMatchmakingTicketGetStatus()를 통해 쿼리할 수 있습니다. 티켓은 즉시 PFMatchmakingTicketStatus::Joining 상태에서 시작합니다.

티켓이 완료되면 PFMatchmakingTicketStatusChangedStateChange가 제공됩니다. 그 시점에 매치가 발견되었거나 실패로 인해 티켓이 중지되었습니다. 성공 시, 발견된 매치는 PFMatchmakingTicketGetMatch()를 통해 쿼리할 수 있습니다.

지정된 사용자에 대해 이미 너무 많은 티켓이 있어 티켓 생성에 실패하는 경우, 미해결 티켓을 투명하게 취소한 다음 티켓 생성을 다시 시도합니다.

요구 사항

헤더: PFMatchmaking.h

함께 보기

PFMatchmaking members
마지막 수정일 2026년 8월 13일