Udostępnij za pośrednictwem


Synchronizacja w wielu pokojach (animacje, osie czasu i wideo)

Omówienie

Za pomocą usługi Mesh można skonfigurować imprezy jednopokojowe lub wielopokojowe. Współorganizatorzy, którzy hostują wydarzenie w programie showtime, mogą następnie używać Panel sterowania do wyzwalania wideo, dźwięku, odtwarzania (animacji osi czasu) i widoczności obiektu w spójny sposób we wszystkich pokojach.

Synchronizacja pojedynczego pokoju a synchronizacja w wielu pokojach

Domyślnie wszelkie zmiany sceny wyzwalane za pomocą skryptów wizualnych, skryptów w chmurze, interakcji lub fizyki (na przykład naciśnięcia przycisków, wyzwalaczy awatara, chwytania i przenoszenia obiektów) pozostaną niezależne od miejsca, w którym nastąpiła ta zmiana. Jest to prawdą, nawet jeśli współorganizator jest tym, który podejmuje akcję.

Aby zsynchronizować zmiany w wielu pokojach, współorganizator będzie musiał użyć Panel sterowania, aby wyzwolić kontrolkę, którą dodano do środowiska w środowisku Unity.

Tablice sterujące

Zestaw narzędzi mesh zawiera kluczowe składniki o nazwie Controllables używane do tagowania odtwarzacza wideo, PlayableDirector, AudioSource lub innego obiektu w scenie, aby hosty zdarzeń mogły kontrolować je we wszystkich pokojach wydarzenia w showtime.

Lista składników kontrolowalnych usługi Mesh obejmuje następujące elementy:

  • Możliwość sterowania możliwością odtwarzania aparatu Unity: Sterowanie elementem Unity PlayableDirector (osie czasu, animacje)

  • Osadzona kontrolka audio: do kontrolowania dźwięku aparatu Unity AudioSource dołączonego do pakietu zasobów środowiska

  • Osadzona kontrolka wideo: Do kontrolowania odtwarzacza wideo aparatu Unity odtwarzanego wideo zawartego w pakiecie zasobów środowiska

  • Możliwość sterowania strumieniowo wideo: Do kontrolowania odtwarzacza wideo aparatu Unity odtwarzanego strumieniowo z adresu URL

  • Sterowanie obiektami: do kontrolowania stanu włączonego/wyłączonego dowolnego obiektu GameObject aparatu Unity

W poniższych sekcjach omówiono sposób dodawania składnika z możliwością sterowania do różnych obiektów w scenie aparatu Unity. Każdy obiekt, na którym umieścisz kontrolkę, pojawi się w programie showtime w Panel sterowania, aby współorganizatorzy zdarzeń kontrolować.

Kontrolowanie animacji osi czasu w zdarzeniu

W środowisku Unity oś czasu umożliwia sekwencjonowanie animacji, dźwięku i innej zawartości w scenie aparatu Unity. Oś czasu to jeden rodzaj odtwarzania, obiekt aparatu Unity, który można odtwarzać, wstrzymać, zapętlić i zatrzymać.

Dodając element Unity Playable Controllable obok osi czasu lub innego odtwarzania, host zdarzeń może kontrolować go z Panel sterowania w showtime, synchronizując animację w wielu pokojach.

Współorganizatorzy hostujący wydarzenie mogą następnie wybrać opcję odtwarzania , aby rozpocząć animację, wstrzymać ją i ponownie wybrać odtwarzanie , aby wznowić animację. Mogą również wybrać opcję zatrzymania , aby zresetować animację do początku lub ustawić animację na pętlę.

Panel sterowania w trybie edycji

Jeśli na przykład masz animację otwierającą drzwi, wybranie przycisku odtwarzania spowoduje otwarcie drzwi w scenie. Wybranie pozycji Zatrzymaj spowoduje zresetowanie animacji z powrotem do oryginalnej pozycji. Playable nie będzie animowany w odwrotnie; w tym celu należy utworzyć inną animację.

Jeśli nie znasz sposobu działania osi czasu w środowisku Unity, zalecamy watch tej serii samouczków aparatu Unity na osiach czasu.

Aby dowiedzieć się więcej na temat interfejsu API playables aparatu Unity, zobacz Podręcznik dla aparatu Unity.

Aby utworzyć i kontrolować oś czasu dla usługi Mesh

  1. W hierarchii dodaj pusty obiekt GameObject, a następnie zmień jego nazwę na "Oś czasu".

  2. Dodaj kolejny pusty obiekt GameObject, utwórz element podrzędny na Osie czasu, a następnie zmień jego nazwę na "Oś czasu1".

    Oś czasu1 w hierarchii

    Uwagi:

    • W przypadku rzeczywistego projektu, nad którym pracujesz, zalecamy nadanie tej funkcji GameObject bardziej opisowej nazwy--- na przykład 1_Entrance_Doors. W tym scenariuszu szkoleniowym będziemy trzymać się nazwy "Oś czasu1".

    • Playable nie będzie animowany w odwrotnie. Załóżmy na przykład, że masz animację otwierającą drzwi. Wybranie przycisku Odtwórz spowoduje otwarcie drzwi w scenie, a wybranie przycisku Zatrzymaj spowoduje zresetowanie animacji z powrotem do oryginalnej pozycji. Aby animować w odwrotnie, należy utworzyć inną animację.

      WAŻNE: Wiele osi czasu w jednym obiekcie GameObject nie będzie działać i spowoduje problemy w zdarzeniach.

  3. Na karcie Projekt przejdź do folderu Assets , a następnie utwórz nowy folder o nazwie Animacje.

  4. W hierarchii wybierz pozycję Oś czasu1, a następnie wybierz pozycję Ośczasusekwencjonowania>okna>.

  5. Zalecamy przeniesienie karty Oś czasu obok kart Projekt i konsola . Pozwala to jednocześnie wyświetlać oś czasu i okna sceny lub gry .

    Karta Oś czasu

  6. Wybierz przycisk Utwórz.

    Pusta oś czasu

  7. W oknie Zapisz zmień nazwę odtwarzania na Open_Doors, a następnie zapisz ją w folderze Animacje zasobów>.

    Panel Projekt z wyróżnionym folderem Animacje

  8. Możesz teraz animować lub dostosować oś czasu--- na przykład dodać klipy animacji, klipy aktywacji i nie tylko. Aby dowiedzieć się więcej na ten temat, zobacz Samouczek osi czasu w witrynie internetowej platformy Unity Learn.

    Oś czasu z kilkoma utworami może wyglądać mniej więcej tak:

    Panel Oś czasu

  9. Po zakończeniu animowania w hierarchii wybierz obiekt Oś czasu1 GameObject, a następnie w inspektorze przejdź do składnika Playable Director .

  10. W większości przypadków należy wybrać następujące ustawienia:

    Odtwórz na przebudzeniu = nie wybrano

    Oś czasu będzie aktywna po przekazaniu.

    Tryb zawijania = blokada

    Ostatnia ramka animacji będzie wstrzymana na czas nieokreślony; w przeciwnym razie oś czasu zostanie zresetowana do początku. Istnieje również opcja Tryb zawijania o nazwie Pętla , której można użyć w niektórych przypadkach.

    Składnik Playable Director

  11. Na koniec w inspektorze użyj polecenia Add Component (Dodaj składnik ), aby dodać składnik z możliwością odtwarzania aparatu Unity do sterowania na tym samym obiekcie co dyrektor playable.

    Nadaj tej kontrolce nazwę Oś czasu1 i ustaw jej właściwość Director na składnik Playable Director na tym obiekcie.

Po dodaniu ta oś czasu będzie wyświetlana w Panel sterowania dla zdarzeń i szablonów korzystających z tego środowiska. Hosty mogą następnie kontrolować tę oś czasu w synchronizacji we wszystkich pokojach.

Teraz możesz przekazać środowisko do usługi Mesh przy użyciu modułu przekazywania zestawu narzędzi mesh , a następnie zobaczyć, jak wygląda w usłudze Mesh. Aby dowiedzieć się więcej, zobacz Przygotowywanie zawartości za pomocą Panel sterowania.

Kontrolowanie odtwarzacza wideo w zdarzeniu

Synchronizowane odtwarzanie wideo wyzwalane przez Panel sterowania można wykonać przy użyciu odtwarzacza wideo aparatu Unity.

  1. Najpierw musisz dodać składnik odtwarzacza wideo w scenie aparatu Unity.

    Jeśli używasz wideo osadzonego w środowisku, przypisz ten klip wideo do tego składnika.

  2. Następnie w inspektorze użyj polecenia Dodaj składnik , aby dodać do tego samego obiektu składnik Osadzony formant wideo lub Streamed Video Controllable .

    Nadaj tej kontrolce nazwę, którą chcesz zobaczyć w Panel sterowania i ustaw jej właściwość Odtwarzacz wideo na składnik Odtwarzacz wideo na ten obiekt.

    W przypadku korzystania z wideo przesyłanego strumieniowo ustaw domyślny adres URL kontrolki na adres URL, który chcesz odtworzyć.

Po dodaniu to wideo zostanie wyświetlone w Panel sterowania dla zdarzeń i szablonów korzystających z tego środowiska. Hosty mogą następnie włączać /wyłączać lub odtwarzać/zatrzymywać/wyszukiwać w synchronizacji we wszystkich pokojach.

Aby dowiedzieć się więcej o składniku aparatu Unity Video Player, zobacz Unity — Ręczne: składnik odtwarzacza wideo (unity3d.com).

Testowanie tablic kontrolnych w usłudze Mesh

Aby spróbować użyć Panel sterowania do obsługi płyt kontrolnych w rzeczywistym zdarzeniu, najpierw musisz opublikować środowisko w usłudze Mesh. Aby uzyskać więcej informacji na temat przekazywania środowiska, zobacz Tworzenie i publikowanie środowiska .

Po przekazaniu środowiska możesz dostosować szablon lub zdarzenie w celu skonfigurowania Panel sterowania. Aby uzyskać więcej informacji, zobacz Przygotowywanie zawartości za pomocą Panel sterowania.

Zapisywanie pracy jako szablonu

Po utworzeniu kombinacji środowiska i Panel sterowania, która uważasz, że organizatorzy mogą chcieć powtórzyć w przyszłości, możesz zapisać kombinację jako szablon. Aby dowiedzieć się więcej na temat szablonów, zobacz Tworzenie szablonu zdarzeń.