텍스트-음성 및 음성-텍스트 시나리오
다음 표는 음성-텍스트 및 텍스트-음성 기능을 활성화했을 때 플레이어가 겪게 될 시나리오를 안내합니다. 이는 게임 경험의 세 단계인 초기 설정, 게임 플레이, 게임 채팅 참여에 대한 사용자 영향을 설명합니다.API 이해하기
Text-to-speech
텍스트-음성의 유형
Party는 두 가지 유형의 텍스트-음성 변환을 지원합니다 - Voice Chat과 Narration. Voice Chat 유형은 사용자가 음성 채팅 통신에서 자신의 발화 음성으로 텍스트-음성 오디오를 사용하기로 선택하는 시나리오를 위한 것입니다. 이 페이지에서 Party와 텍스트-음성 변환을 논의할 때는 일반적으로 이 시나리오를 이야기합니다. Narration 유형은 사용자의 오디오 출력에 텍스트-음성 오디오가 재생되어야 하는 시나리오를 위한 것입니다. 이는 주로 사용자가 텍스트-음성 음성 옵션 간에 오디오를 비교하여 Voice Chat 시나리오에서 사용할 프로필을 선택하는 “음성 오디션” 시나리오를 지원하기 위한 것입니다. 임의의 게임 정의 낭독 시나리오에도 사용할 수 있지만, 각 플랫폼은 일반적으로 XBOX 및 Windows의 Speech Synthesis API와 같이 게임 내 낭독을 위한 더 유연한 솔루션을 제공합니다. 텍스트-음성 작업을 시작하는 데 사용되는 각 메서드는 두 가지 텍스트-음성 시나리오 중 어느 것을 사용하는지 지정하는PartySynthesizeTextToSpeechType 매개 변수를 받습니다.
텍스트-음성 음성 프로필
텍스트-음성 음성 프로필은 텍스트-음성 오디오를 생성하는 데 사용되는 오디오 특성을 정의합니다. 프로필은 언어, 지역, 성별에 따라 다릅니다. 각 조합에 대해 여러 옵션이 있을 수 있습니다. Party는 Azure Cognitive Services에서 지원하는 모든 프로필을 지원합니다. 지원되는 언어와 음성 옵션의 전체 목록은 Language support 참조를 참조하세요. Party 라이브러리에서도 프로필 옵션을 열거할 수 있습니다. 첫 번째 단계는PartyLocalChatControl::PopulateAvailableTextToSpeechProfiles()를 통해 텍스트-음성 프로필을 채우는 비동기 작업을 시작하는 것입니다. 작업이 완료되면 PartyManager::StartProcessingStateChanges()가 PartyPopulateAvailableTextToSpeechProfilesCompletedStateChange를 제공하여 완료를 알리고, PartyLocalChatControl::GetAvailableTextToSpeechProfiles()를 통해 프로필을 쿼리할 수 있습니다.
텍스트-음성 음성 프로필 구성
Party 라이브러리에서 텍스트-음성을 생성하려면 타이틀이 먼저 텍스트-음성 음성 프로필을 구성해야 합니다. 프로필을 구성하는 비동기 옵션은PartyLocalChatControl::SetTextToSpeechProfile()을 통해 시작할 수 있습니다. 작업 완료는 PartyManager::StartProcessingStateChanges()가 PartySetTextToSpeechProfileCompletedStateChange를 제공하여 알려줍니다.
텍스트-음성 합성
타이틀이 텍스트-음성 음성 프로필을 구성한 후에는PartyLocalChatControl::SynthesizeTextToSpeech()를 통해 텍스트를 음성 오디오로 합성할 수 있습니다. Voice Chat 시나리오의 경우, 오디오 데이터는 텍스트-음성 작업을 시작한 사용자와 연결된 마이크로 “자연스럽게” 캡처된 것처럼 나타납니다. 이는 사용자가 자신을 대신해 말하는 컴퓨터에 마이크를 대는 것과 유사합니다. Narration 시나리오의 경우, 오디오 데이터는 사용자의 오디오 출력으로 재생됩니다.
텍스트-음성 합성은 비동기 작업입니다. 작업 완료는 PartyManager::StartProcessingStateChanges()가 PartySynthesizeTextToSpeechCompletedStateChange를 제공하여 알려줍니다.
텍스트-음성을 합성하기 전에 음성 프로필이 구성되어 있어야 하지만, PartyLocalChatControl::SetTextToSpeechProfile()이 시작한 비동기 작업이 완료될 때까지 기다렸다가 PartyLocalChatControl::SynthesizeTextToSpeech()를 호출할 필요는 없습니다. 프로필 작업이 진행 중이라면 텍스트-음성 작업이 큐에 대기되었다가 프로필 작업이 완료된 후 시작됩니다.
텍스트 메시지
텍스트-음성 외에도 Party는 전통적인 텍스트 메시징을 지원합니다. 많은 타이틀이 텍스트-음성을 텍스트 메시징과 연결하지만 이는 필수 사항이 아닙니다. Party는 텍스트-음성과 텍스트 메시징을 독립적인 기능으로 지원합니다. 자세한 내용은 채팅 이해를 참조하세요.Text-to-speech UX
텍스트-음성 변환을 사용하면 사용자가 플랫폼을 통해 현재 게임 채팅 참가자에게 합성된 음성 스트림을 보낼 수 있습니다. 이는 텍스트 채팅 기반 시스템을 사용할 수 없고 모든 통신이 게임 내 음성 채팅을 통해 활성화되는 경우에 사람이 참여할 수 있게 하는 데 유용합니다.검색
XBOX와 Windows에서 사용자는 텍스트-음성 및 음성-텍스트 설정을 XBOX Home(XBOX 콘솔) 또는 XBOX App(Windows 10)의 Settings 아래 Accessibility 섹션에서 찾을 수 있습니다. 이 설정은 사용자 프로필에 따라 플랫폼 설정과 통합된 모든 XBOX 게임에 대해 기능을 활성화하거나 비활성화하는 토글 버튼으로 제어됩니다. 다른 모든 플랫폼의 경우 텍스트-음성 및 음성-텍스트 설정 위치는 해당 접근성 지침을 참조하세요.게임이 게임에 특정한 추가 설정을 추가하도록 선택하는 경우, 이러한 설정은 게임 내부에 배치해야 합니다. 일반적으로 접근성 옵션은 게임의 설정/옵션 메뉴 아래에 있습니다. 이상적으로 이 설정은 전용 버튼 누름으로 사용할 수 있어야 하며 모든 화면에서, 최소한 일시 중지 메뉴에서 접근할 수 있어야 합니다.
텍스트 입/출력 옵션
타이틀은 텍스트를 입력받고 수락할 책임이 있습니다. 이는 사용자 지정 텍스트 입력 필드 또는 플랫폼에서 제공되는 키보드일 수 있습니다. 그런 다음 결과 입력을 PlayFab Party에 전달하여 합성 스트림으로 처리할 수 있습니다. 그 스트림은 음성으로 채팅 세션의 다른 플레이어에게 전송됩니다. 수신 측은 마이크를 통해 말하는 사용자의 다른 음성 스트림과 동일한 방식으로 이 음성 스트림을 처리하게 됩니다.- 콘솔 OS 가상 키보드(XBOX 콘솔 예시)
게임패드가 설치되어 있는 경우에도 키보드가 계속 나타납니다. 하드웨어 키보드가 설치되어 있을 때는 나타나지 않습니다.

-
PC OS 가상 키보드 (Windows 10 예시)
PlayFab Party API는 모든 플랫폼에서 입력 수신을 지원합니다. 그러나 텍스트 입력 구성 요소는 이러한 플랫폼에서 일관되게 제공되지 않습니다.
- XBOX 콘솔에서는 게임이 가상 키보드에 의존할 수 있습니다. 자체 입력 상자가 있어 텍스트를 받은 다음 타이틀에 제공합니다.
- Windows에서는 게임이 가상 키보드에 의존할 수 있지만 한 가지 유의점이 있습니다 - 입력 상자가 없습니다. 즉, 가상 키보드에 의해 생성된 키 입력을 받아들이기 위해 게임이 텍스트 입력 상자를 제공해야 합니다. 게임이 전통적인 텍스트 채팅을 지원하지 않더라도 텍스트-음성 지원을 위해 텍스트 입력이 필요할 수 있습니다.
UX 권장 사항(Windows)
전통적인 텍스트 메시징을 지원하지 않는 크로스 플랫폼 게임은 텍스트-음성 변환을 지원하기 위해 키 입력을 받는 텍스트 입력 상자를 제공해야 합니다.
- 게임 제공 사용자 지정 키보드(콘솔 예시)
여기에 사용된 구절은 표시된 샘플 게임에 특정된 것입니다.
- 게임은 표시 여부를 완전히 제어할 수 있습니다.
- 게임은 빠른 답장을 위한 구절을 포함하도록 키보드를 확장할 수 있습니다.

Quick Chat: 모두를 위한 솔루션
플레이어의 채팅 활동, 논의 유형, 화면 목표를 고려하세요. 예를 들어 활발한 게임 플레이 세션 중에는 컨트롤러를 사용해 키보드를 실행하고 답장을 입력하는 것이 번거로울 수 있지만 중요할 수도 있습니다. 사용자가 미리 정의된 답장 목록에서 빠르게 선택할 수 있는 방법을 제공하는 것은 이 문제를 해결하는 데 큰 도움이 됩니다. 낭독을 활성화한 사용자의 경우 각 미리 정의된 답장이 낭독됩니다. 답장 목록이 미리 스크립트화되어 있으므로 번역의 정확도가 높아집니다. 게임은 자신의 플레이어에게 적합한 상황별 게임 특화 용어를 제어할 수 있습니다. XBOX 콘솔과 Windows 10 플랫폼을 사용하는 두 가지 예를 소개합니다.1a. D-패드에 매핑된 구절 목록
방향 패드(D-pad)에서 방향(위, 아래, 왼쪽, 오른쪽)을 누르면 선택한 카테고리가 열립니다. 카테고리 목록이 열리면 D-패드 방향은 해당 카테고리 내의 선택 항목에 적용됩니다. 카테고리를 바꾸려면 사용자가 창이 닫힐 때까지(2초의 비활성) 기다린 다음 새로운 답장 목록을 열기 위해 다른 D-패드 방향을 선택합니다.
1b. 키보드에 매핑된 구절 목록
숫자 키(1-4)를 누르면 선택한 카테고리가 열립니다. 카테고리 목록이 열리면 숫자 키는 해당 카테고리 내의 선택 항목에 적용됩니다. 카테고리를 바꾸려면 사용자가 창이 닫힐 때까지(2초의 비활성) 기다린 다음 새로운 답장 목록을 열기 위해 다른 숫자 키를 선택합니다.
1c. 사용자 지정 가능한 답장 설정이 있는 키보드 매핑 구절 목록
사용자가 다양한 응답 중에서 선택할 수 있도록 하여 이 기능을 한 단계 더 발전시킵니다.- 콘솔 예시: 키보드 및 컨트롤러 디자인 템플릿 네이티브는 Resources를 참조하세요.


답장 매핑을 위한 컨트롤러 스키마
일부 게임은 이미 다양한 게임 플레이 기본 설정을 위해 사용자 지정 컨트롤러 매핑을 제공합니다. 이 예시는 텍스트-음성 및 음성-텍스트를 위한 대체 컨트롤러 스키마를 제안합니다. 사용자는 미리 정의된 답장 목록에서 선택하여 네 개의 D-패드 방향에 매핑할 수 있습니다. 왼쪽 및 오른쪽 범퍼는 카테고리를 스크롤하고, Y 버튼은 사용자 지정 답장을 위한 가상 키보드를 실행합니다. 게임 세션 중에 사용자는 전용 버튼 누름(게임에서 지정)으로 컨트롤 스키마를 바꿀 수 있습니다. 이 경우 B 버튼이 이 모드를 종료합니다.
Quick Chat 답장 가이드: 게이머의 참여를 이끌어내는 방법
게이머가 플레이어 간 교류를 향상시키는 quick chat 솔루션을 개인화할 수 있다면 어떨까요? 통신 장벽을 최소화하면서 게임 성능을 최대화하는 솔루션이 있다면 어떨까요? Quick Chat은 사용자가 미리 정의된 답장 목록에서 선택할 수 있게 함으로써 이에 가까이 다가갑니다. 그러나 일반적으로 이러한 답장은 자동화되고 지루해 보이는 제한적이고 중복적인 구절이었습니다. 아래 지침은 플레이어의 참여를 유지하기 위한 전략을 탐구합니다.목표: 이 행동을 자동으로 만들기
Quick Chat이 반복적으로 필요를 충족한다면 습관이 형성될 수 있습니다. 응답을 트리거하는 방법과 그것이 그 순간의 대화 요구를 어떻게 충족할 수 있는지 고려하세요.Quick Chat 사용 사례
- 대화: 플레이어는 팀 활동을 촉진하거나 더 깊은 사회적 유대를 형성하기 위해 참여하고 싶어합니다.
- 간단함: Quick Chat 솔루션은 고강도 활동 시에도 쉽게 접근할 수 있어야 합니다.
- 익명성: 일반적으로 음성 채팅을 피하는 플레이어에게 참여할 수 있는 방법을 제공합니다.
- 답장 다양화 많은 답장 옵션 컬렉션을 제공하세요. 이는 동적 음성 대화에서 일반적으로 얻는 즉흥성에 기여합니다. 사용자가 동일한 답장 옵션에 지루해할 가능성이 줄어들고 답장이 덜 자동화된 것처럼 느껴집니다.
-
필요가 발생하는 시점에 솔루션 표시
- 게임 채팅이 활성화될 때마다 Quick Chat을 사용할 수 있도록 하세요.
- 전용 버튼 누름으로 Quick Chat 답장을 실행하세요.
- 현재 게임 활동에 상황별로 맞는 카테고리를 기본값으로 설정하세요. 예를 들어 사용자가 득점하면 기본 카테고리는 “Compliments”가 됩니다.
-
답장을 집중적이고 구체적으로 유지
이는 주로 인지 부하를 낮추기 위한 것입니다. 사용자는 전체 메시지를 힘들이지 않고 읽을 수 있어야 합니다.
- 답장을 게임 플레이 및 해당 카테고리와 관련이 있게 만드세요.
- 게임에서 가장 흔히 사용되는 짧은 구절과 단음절 단어를 사용하세요.
- 즉시 시각화할 수 있는 단어를 사용하세요.
- 유머 활용 *농담(Banter)*은 플레이어를 친근하게 지칭하는 놀림의 일반적인 형태입니다. 이는 너무나 자주 사용자가 괴롭힘을 당하는 griefing과는 다릅니다. 답장이 재치 있고 관련성 있고 다양하다면 일부 사용자는 부적절한 선택에 의존하지 않을 수도 있습니다.
-
실력과 진행 상황에 따라 상대적으로
- 진행 상황과 실력 수준에 기반한 답장을 포함한 채팅 기본 설정을 제공하세요.
- 사용자가 다른 팀원에게 전달할 수 있는 추천 답장을 표시하세요. 이러한 옵션은 현재 게임 활동에 상황별로 맞춰집니다. 예: “이 좀비를 물리칠 도끼 있는 사람 있나요?”
- 감정에 집중 특정 목표 감정을 전달하는 답장은 경험을 더 공감할 수 있게 만드는 데 도움이 됩니다.
결론
PlayFab Party의 텍스트-음성 및 음성-텍스트 API는 게임과 게임 대화에 더 넓은 범위의 사용자를 포함시키는 데 매우 효과적인 기능입니다. 게이머가 참여하고 관계를 형성할수록 계속 플레이할 가능성이 더 높아집니다. 이 지침은 가능한 최상의 사용자 경험을 보장하는 데 도움이 됩니다.리소스
디자인 템플릿
- QuickChat_AI_Template.zip
포함 항목:
- QuickChat_ConsolePC_Templates.ai
텍스트-음성 낭독 메뉴 지침
PlayFab Party 텍스트-음성 및 음성-텍스트 UX 시리즈
- 1부: PlayFab Party 텍스트-음성 및 텍스트 입력 UX 지침
- 2부: PlayFab Party 음성-텍스트 및 텍스트 표시 UX 지침
SDK 설명서
- PlayFab SDK의 “Accessible in-game chat overview”( SDK Downloads 참조)
접근성 지침
- Griffiths, Gareth. Subtitles: Increasing Game Accessibility, Comprehension Gamasutra
- Game Accessibility Guidelines 포용적 게임 디자인을 위한 간단한 참조
포용적 디자인
- XBOX’s Gaming for Everyone Initiative
- Inclusive Design Microsoft Design Toolkit 및 교육
- Kojouharov, Stefan. 10 Tips on Creating an Addictive ChatBot 이 문서에서 대화형 UI 팁으로 참조됨.
