This document is about: FUSION 2
SWITCH TO

채팅 버블


Available in the Industries Circle
Circle
Fusion 인더스트리 프로토타이핑 애드온

이 애드온은 바로 사용할 수 있는 채팅 버블을 제공합니다. 같은 버블 안에 있는 사람들은 다른 멤버들과 이야기할 수 있습니다.

fusion 채팅 버블

정적 채팅 버블

정적 채팅 버블은 씬에서 특정 위치에 배치된 룸입니다. 채팅 버블에 대한 접근은 버튼으로 수동으로 잠글 수도 있고 최대 사용자 매개 변수에 도달하면 자동으로 잠글 수도 있습니다. 동일한 버튼으로 잠금을 해제하거나 마지막 플레이어가 채팅 버블을 떠날 때 잠금을 해제할 수 있습니다. 버블 메시의 재질은 잠금 상태에 따라 다릅니다.

ChatBubble

Chatbubble 클래스는 채팅 버블을 관리합니다. 각 버블은 다양한 모양(구형, 원, 정육면체)을 가질 수 있고 최대 용량 파라미터를 갖습니다. 이 최대 용량에 도달하면 버블에 접근할 수 없습니다. ChatbubbleIAudioRoom 인터페이스를 구현하여 AudioRoomManager에 등록합니다. 또한 IAudioRoomListener 인터페이스 덕분에 AudioRoomMemberAudioRoom에 들어가거나 떠날 때 클래스에게 알려지므로 채팅 버블 멤버 목록을 업데이트할 수 있습니다(로컬 사용자는 사용자 네트워크 장비에 AudioRoomMember 컴포넌트가 있어야 합니다).

ChatBubbleMember

AudioRoomMember에서 상속받은 이 클래스는 플레이어의 네트워크 리그에 추가되어야 합니다. 여기에는 채팅 버블을 동기화하기 위한 ChangeDetector가 포함되어 있는데, 만약 이 오디오 룸 멤버가 입력한 오디오 룸이 채팅 버블이라면, 늦게 참여한 플레이어는 일반적인 체크를 거치지 않고도 정보를 받을 수 있습니다. 예를 들어, 늦게 참여한 플레이어의 관점에서 버블 진입이 금지된 경우(예를 들어 잠김이 true인 경우) 필요합니다. 또한 RoomChange 메소드 덕분에 플레이어가 채팅 버블에 들어가면 roomID가 오디오 필터에 추가됩니다(DynamicAudioGroupMember에서 닫힌 두 사용자에게 필요한 추가 기준은 서로 들을 수 있습니다).

ChatBubbleLocomotionValidator

ChatBubbleLocomotionValidatorILocomotionValidator 인터페이스를 구현합니다. 따라서 플레이어가 채팅 버블(채팅 버블이 가득 차지 않음)에 들어갈 수 있는지 확인할 수 있습니다. allowedToMoveToChatBubbles 설정은 특정 플레이어가 채팅 버블(예: 봇)에 들어가는 것을 방지하기 위해 사용됩니다. 플레이어의 네트워크 리그에 이 클래스를 추가해야 합니다.

동적 채팅 버블

동적 채팅 버블은 특정 유형의 채팅 버블입니다. 두 플레이어가 서로 가깝게 있으면 자동으로 생성됩니다.

fusion 채팅 버블

DynamicChatBubbleSpawner

DynamicChatBubbleSpawner는 두 플레이어가 서로 가까울 때 동적 채팅 버블 프리팹을 생성하는 역할을 합니다(이 거리는 proximityDistance 파라미터로 정의됩니다). 프리팹은 PlayerId가 가장 낮은 플레이어에 의해 생성됩니다. 동적 채팅 버블에 위치한 마지막 두 플레이어 간의 거리가 증가하여 제한치를 초과하면 동적 채팅 버블이 파괴됩니다. 스폰 플레이어가 채팅 버블을 떠나고 다른 여러 플레이어가 채팅 버블에 남아 있는 경우 채팅 버블은 파괴되지 않습니다. 플레이어의 네트워크 리그에 이 클래스를 추가해야 합니다.

DynamicChatBubble

DynamicChatBubbleChatBubble에서 상속됩니다. 이는 채팅 버블이 스폰/스폰 해제될 때 DynamicChatBubbleManager에서 동적 채팅 버블을 등록/등록 해제하는 데 사용됩니다.

DynamicChatBubbleManager

DynamicChatBubbleManagerDynamicChatBubble의 풀을 관리합니다. 플레이어가 DynamicChatBubble을 생성하면 dynamicChatBubbles 목록에 추가됩니다. 플레이어 간의 거리가 변경되는 즉시 채팅 버블을 생성하고 파괴하는 오버헤드를 피하기 위해 빈 동적 채팅 버블을 emptyBubbleConservationDuration 동안 보존합니다.

의존성

  • AudioRoom 애드온
  • Touch-Hover 애드온

데모

데모 씬은 Assets\Photon\FusionAddons\ChatBubble\Demo\Scenes\ 폴더에 있습니다.

다운로드

이 애드온의 최신 버전은 애드온 프로젝트에 포함되어 있습니다.

지원되는 토폴로지

  • 공유 모드

변경 이력

  • 버전 2.0.0: 최초 릴리즈
Back to top