Najlepsze rozwiązania dotyczące debugowania skryptów wizualnych usługi Mesh
Diagnostyka czasu edycji
W edytorze aparatu Unity możesz wyświetlić wskazówki dotyczące błędów i potencjalnych wąskich gardeł przepustowości lub wydajności dla maszyny skryptów, którą obecnie edytujesz w panelu Diagnostyka skryptów wizualnych usługi Mesh w dolnej części panelu Inspektor edytora aparatu Unity.
Zatrzymanie wskaźnika myszy nad błędem, ostrzeżeniem lub powiadomieniem w panelu Diagnostyka wyświetla etykietkę narzędzia z szczegółowym wyjaśnieniem:
Możesz uzyskać kompilację tej samej diagnostyki w całym środowisku, wyświetlając Analizator wydajności zawartości (CPA).
- Na pasku menu aparatu Unity wybierz pozycję Mesh Toolkit>Content Analizator wydajności.
- W narzędziu CPA kliknij przycisk Uruchom wszystko .
Diagnostyka środowiska uruchomieniowego w emulatorze usługi Mesh
Po przetestowaniu środowiska w Edytorze aparatu Unity zaznacz pole wyboru Statystyki wydajności w prawym górnym rogu okna Gry , aby wyświetlić statystyki podsumowania w czasie rzeczywistym we wszystkich aspektach środowiska:
Kolumna z prawej strony w prawym dolnym rogu zawiera podsumowanie informacji na temat wydajności skryptu wizualnego z czasem podanym w milisekundach na ramkę:
- Użytkownik programu VS pokazuje czas spędzony na wykonywaniu utworzonych przepływów skryptów wizualnych, z wyłączeniem wszelkich narzutów poniesionych przez usługę Mesh.
- Program VS Env pokazuje obciążenie związane ze środowiskiem uruchomieniowym tworzenia skryptów wizualnych usługi Mesh.
- Program VS Net pokazuje obciążenie związane ze stosem sieci mesh poniżej środowiska uruchomieniowego tworzenia skryptów wizualnych usługi Mesh, wysyłania i odbierania aktualizacji do stanu udostępnionego.
Aby uzyskać bardziej szczegółowe informacje na temat poszczególnych skryptów wizualnych wykonywanych w środowisku, możesz włączyć statystyki środowiska uruchomieniowego w czasie rzeczywistym dotyczące wykonywania skryptu wizualnego, zaznaczając pole wyboru Statystyki skryptu w prawym górnym rogu okna Gry :
W sekcji Najwyższe obciążenie przetwarzania wymieniono przepływy skryptów, które miały najwięcej czasu do uruchomienia w ciągu ostatniej sekundy, co pokazano jako średni koszt czasu na ramkę.
- Liczba przepływów skryptów wyświetlanych w tej sekcji i łączny koszt czasu powinien być możliwie najniższy.
- Najlepiej, gdy środowisko jest bezczynne, nie powinno być żadnych przepływów skryptów wykonywanych w ogóle.
Sekcja Najwyższe obciążenie aktualizacji udostępnionych zawiera listę właściwości udostępnionej sceny i zmiennych skryptu, które były najczęściej aktualizowane w ciągu ostatniej sekundy. Obciążenie 100% oznacza, że właściwość lub zmienna została zaktualizowana w każdej ramce w tej sekundzie.
- Liczba aktualizacji właściwości udostępnionej i zmiennej skryptu oraz ich całkowite obciążenie w tej sekcji powinno być jak najmniejsze.
- Najlepiej, gdy środowisko jest bezczynne, nie należy aktualizować żadnych udostępnionych właściwości ani zmiennych.
- Jeśli zauważysz jakiekolwiek właściwości lub zmienne skryptu wyświetlane w tej sekcji, które nie mają być synchronizowane za pośrednictwem sieci między klientami, rozważ dodanie składników zakresu skryptu lokalnego, aby uczynić je lokalnymi.
Możesz kliknąć dowolną nazwę obiektu gry w środkowej kolumnie, aby bezpośrednio przejść do odpowiedniego obiektu gry w panelu Hierarchia .
Jeśli chcesz przyjrzeć się bliżej sytuacji, możesz kliknąć dowolną inną część panelu Statystyki skryptu lub nacisnąć Shift+X, aby tymczasowo zatrzymać aktualizacje. Aby wznowić aktualizowanie, kliknij go ponownie lub ponownie naciśnij Shift+X.
Diagnostyka środowiska uruchomieniowego w usłudze Mesh
Podczas uruchamiania środowiska w usłudze Mesh (na przykład w zdarzeniu usługi Teams) możesz nacisnąć Ctrl+Shift+F1, aby wyświetlić pasek boczny Informacje o sieci, który zawiera wiele bardzo technicznych informacji o bieżącej sesji. Przewiń w dół, aby znaleźć szczegółowe informacje na temat skryptów wizualnych uruchomionych w środowisku:
Ostatnia (liczba) sekund, (liczba) instrukcji ramek bezpośrednio poniżej nagłówka sekcji Visual Scripting (Skrypty wizualne) pokazuje liczbę sekund i ramek zagregowanych dla liczników pokazanych poniżej. Przed zresetowaniem liczników jest agregowane maksymalnie 90 sekund danych. W poniższej tabeli przedstawiono informacje dotyczące udostępniania:
- Wiersze Prop, Var i Event opisują właściwości udostępnione, zmienne skryptu współużytkowanego i zdarzenia udostępnione odpowiednio.
- Kolumna Update zlicza, jak często właściwości lub zmienne zostały zaktualizowane przez skrypty wizualizacji.
- Kolumny Send i Bytes zliczają częstotliwość wysyłania aktualizacji właściwości, zmiennych lub zdarzeń za pośrednictwem sieci. Ta liczba może być niższa niż liczba aktualizacji ze względu na ograniczenie szybkości i dlatego, że w ogóle nie można wysyłać nadmiarowych aktualizacji.
- Kolumny Recv i Bytes zliczają częstotliwość odbierania aktualizacji właściwości, zmiennych lub zdarzeń za pośrednictwem sieci od innych klientów.
- Kolumny bajtów w tej tabeli nie uwzględniają wszystkich obciążeń sieciowych i mogą być używane tylko do porównywania między przebiegami. Rzeczywiste użycie przepustowości może być znacznie wyższe.
W tabeli Czasu wykonywania znajduje się lista wszystkich przepływów skryptów wizualnych o ile czasu zajęło wykonanie. Wyróżniony wiersz oznaczony etykietą [wszystkie] pokazuje skumulowane dane we wszystkich wierszach, w tym wiersze, które obecnie nie są wyświetlane. Kliknij pozycję Pokaż więcej wierszy... aby wyświetlić więcej wierszy.
- Kolumna Count zlicza, jak często ten przepływ skryptu został wykonany.
- Kolumna Średnia przedstawia średni koszt czasu na ramkę (w milisekundach) tego przepływu skryptu.
- Kolumna Zdarzenie nazywa węzeł zdarzenia, który wyzwolił przepływ skryptu.
- Kolumna Target nazywa maszynę skryptu, która wykonała przepływ skryptu.
Najczęściej udostępniane aktualizacje i najczęściej udostępniane wysyła tabele wyświetlają listę właściwości udostępnionych i współużytkowanych zmiennych skryptów, które były najczęściej aktualizowane przez skrypty wizualne lub miały odpowiednio aktualizacje wysyłane przez sieć. Wyróżnione wiersze oznaczone etykietą [wszystkie] pokazują skumulowane dane we wszystkich wierszach, w tym wiersze, które obecnie nie są wyświetlane. Kliknij pozycję Pokaż więcej wierszy... aby wyświetlić więcej wierszy.
- Kolumna Count zlicza, jak często ta właściwość udostępniona lub zmienna współdzielona została zaktualizowana lub została wysłana przez sieć odpowiednio.
- Kolumna Name nazywa właściwość udostępnioną lub zmienną udostępnioną.
- Kolumna Target nazywa składnik hostujący właściwość lub zmienną.
Naciśnij Ctrl+Shift+F1 po raz drugi, aby powiększyć panel Informacje o sieci, który ujawnia całą ścieżkę przekształcania obiektów gry Docelowej w tabelach przedstawionych powyżej.
Aby zamknąć panel: naciśnij Ctrl+Shift+F1 po raz trzeci.