Roblox Connect to doświadczenie, w którym możesz zadzwonić do przyjaciela i rozmawiać, jako twoje awatary, razem w wspólnym wciągającym przestrzeni.Z perspektywy programisty jest to doświadczenie niezablokowane pod względem kopiowania, które pokazuje jeden sposób konsumpcji metod i zdarzeń związanych z wezwaniem SocialService i PlayerViewService.Możliwe przypadki użycia są bezgraniczne, a ten przewodnik zawiera przykłady tego, jak są one używane w Roblox Connect.
Przeglad projektu
Twórcy mogą wprowadzić komunikację awatara synchronicznego do każdego doświadczenia na Roblox za pomocą obecnych metod i wydarzeń.Niektóre z zauważalnych funkcji Połączenie Roblox wyróżniają szczegóły prywatności wezwania i są one podzielone poniżej.
Przełącznik środowiska
Aby zapewnić lepsze wciągające doświadczenie komunikacyjne, projekt obejmuje przełącznik środowiska pozwalający graczom przenosić się z środowiska na środowisko .Przesuwając się między środowiskami na tym samym miejsce, postacie graczy są przesuwane za pomocą PivotTo() .Przy przemieszczaniu się do środowiska w innym miejscegracze są teleportowani za pomocą TeleportService do wybranej lokalizacji.
Ponadto wdrożono model "pocałunku", aby zapewnić, że obaj gracze w prywatnej przestrzeni zgodzą się na przeniesienie przed rzeczywistym dokonaniem tego.Jeśli jeden gracz odrzuca żądanie zmiany środowisk, cała transakcja jest anulowana i żadni gracze nie są przenoszeni.
W odniesieniu do wezwania teleport jest na zarezerwowany serwer i wszyscy uczestnicy wezwania są teleportowani razem.Jeśli warunek teleportacji nie zostanie spełniony lub teleportacja sama zakończy się niepowodzeniem, wezwanie zostanie zakończone.

Tryby kamery
Roblox Connect wprowadza dwa unikalne tryby kamery w dodatku do trybu kamery domyślnego, które oba możesz wykorzystać do ulepszenia własnych doświadczeń.Ponadto, przełączając między różnymi trybami kamery, przełącznik kamery sprawia, że przełączanie między trybami jest płynne.

Obraz w obrazie
W trybie obraz w obrazie kamera skupia się na partnerze wezwania i mała prezentacja twojej postaci pływa na ekranie.Ten tryb obejmuje również śledzenie głowy i ogranicza ruch lokalnego gracza.

Kinematyczny
Tryb kinowy próbuje utrzymać obie postacie graczy w polu widzenia kamery przez cały czas .Ruch gracza nie jest ograniczony, a gdy postacie się poruszają, kamera wykrywa ich ruch i dostosowuje go odpowiednio.

Darmowe granie
Tryb swobodnego gry używa domyślnej kamery postaci Roblox, pozwalając na poruszanie się, jednocześnie rozmawiając z partnerem wezwania.Postać twojego partnera nie będzie koniecznie widoczna.
Pasek emotikonów
Pasek emotikonów projektu jest kopiowaną wersją modułu programisty EmoteBar .Poza pudełkiem moduł zawiera wiele kluczowych funkcji, ale Roblox Connect wymaga kilku specyficznych zmian, takich jak powrót postaci do stanu "bezczynność" po wykonaniu emotki raz.

Prywatność
Jeśli ktoś, kto nie jest na wezwaniu, zostanie dodany do zarezerwowanego serwera, lub jest już na zarezerwowanym serwerze, wezwanie zostanie zakończone.
Wdrożenie API
Roblox Connect korzysta z nowych metod i wydarzeń SocialService i PlayerViewService w celu budowy wciągającej platformakomunikacyjnej.
SocialService:PromptPhoneBook() jest podłączony do przycisku wezwania w początkowym lobby, aby gracze mogli zobaczyć swoją listę kontaktów i rozpocząć wezwanie.W tandemie wydarzenie SocialService.PhoneBookPromptClosed jest połączone z wysłuchiwaczem, który przywraca widoczność przycisku i przesuwa kamerę.
Metoda SocialService:CanSendCallingInviteAsync() jest wykorzystywana do sprawdzenia, czy gracz jest uprawniony do wysyłania zaproszeń do wezwania.Jeśli gracz nie kwalifikuje się (nie jest w wieku 13+ i nie jest weryfikowany telefon lub ID), wyświetlana jest wiadomość dialogowa.Ta kontrola powinna być wykonana przed wezwaniem PromptPhoneBook().
Wydarzenie SocialService.CallInviteStateChanged jest połączone z słuchaczem, który ukrywa przycisk wezwania, uwalniając przestrzeń ekranu, podczas gdy gracz czeka na to, aby jego przyjaciel odebrał prośba.To wydarzenie można wykorzystać do wyświetlenia stanu "połączania", jeśli jest to pożądane.
SocialService:ShowSelfView() i SocialService:HideSelfView() są podłączone do różnych trybów kamery.W szczególności wyświetlany jest widok samodzielny wezwanych w trybie obraz w obrazie lub kinowym, ukryty w trybie swobodnej gry.
PlayerViewService:GetDeviceCameraCFrame() mapuje urządzenie do orientacji kamery w przestrzeni roboczej w trybie Picture‑in‑Picture, zapewniając bardziej immersyjne doświadczenie.Ta metoda wykorzystuje urządzenie kamery gracza i jest dostępna tylko na urządzeniach mobilnych.