Praktyczny przewodnik po audycie projektu Unity

Przejmujesz projekt w Unity? Co sprawdzić, zanim zaczniesz od nowa.

Autor: Artem Shkabura ·

Projekt Unity, który utknął, może wyglądać gorzej, niż jest w rzeczywistości. Brakujący SDK, nieudokumentowany krok kompilacji lub porzucona usługa mogą ukrywać użyteczny produkt. Jednocześnie przekonujące demo może maskować poważne problemy z wydaniem.

Jako założyciel firmy lub producent musisz wiedzieć, co realnie może przynieść kolejna inwestycja. Zaczynam od pytań o to, co chcesz wydać, co już działa i jakie problemy mogą uniemożliwić ukończenie. Do pierwszej rozmowy wystarczy krótki opis; przed udostępnieniem poufnych materiałów lub dostępu do kodu źródłowego możemy uzgodnić umowę o poufności (NDA).

01

Zachowaj to, co przejąłeś

Zachowaj historię repozytorium, ostatnią działającą kompilację i wszelkie notatki konfiguracyjne. Zapisz wersję Unity Editor i platformę docelową przed otwarciem projektu w innej wersji. Zachowaj oryginał i analizuj osobną kopię roboczą.

Pierwszy przydatny rezultat to odtwarzalna kompilacja: na innym komputerze można wykonać udokumentowane kroki i uzyskać działającą aplikację. Jeśli to się nie uda, zapisz dokładną blokadę i brakującą zależność. „Nie kompiluje się” to ustalenie do zbadania, a nie wystarczający dowód za przepisaniem.

Unity zaleca tworzenie kopii zapasowych przed aktualizacjami i ocenę, czy korzyści uzasadniają wysiłek. Stosuję tę samą dyscyplinę przed zmianą bazy przejętego projektu.

Unity: aktualizacja projektu Unity

02

Sprawdź narzędzia, usługi i konta potrzebne projektowi

Sprawdzam wersję edytora, potok renderowania, pakiety Unity, zasoby Asset Store, wtyczki natywne i zewnętrzne SDK. Przegląd obejmuje również narzędzia kompilacji, środowiska backendu, dostęp do podpisywania i kontrolę nad wymaganymi kontami.

Dla każdej krytycznej zależności ustal wersję, dostępność, zgodność i osobę odpowiedzialną. Wtyczka utrzymywana przez nieudokumentowane lokalne zmiany wymaga innego podejścia niż taka, którą można zainstalować bez zmian.

Przechowuj manifest pakietów i plik blokady razem z projektem. Plik blokady Unity zapisuje rozstrzygnięte zależności pakietów i powinien być wersjonowany, aby odtwarzać ten sam zestaw na różnych komputerach. Niedostępna usługa lub brakujące źródła mogą bardziej określać zakres przywrócenia niż wiek kodu C#.

Unity: rozstrzyganie zależności i pliki blokady

03

Przetestuj wydajność na docelowych urządzeniach

„Na moim komputerze działa płynnie” nie potwierdza gotowości na urządzenia mobilne lub gogle. Wybieram reprezentatywny sprzęt i powtarzalne scenariusze: uruchomienie, intensywny moment rozgrywki, przejście sceny i dłuższą sesję, gdy ma zastosowanie.

Szukam obciążenia CPU lub GPU, wzrostu użycia pamięci, opóźnień ładowania i powtarzanych alokacji, a następnie łączę ustalenia z problemem widocznym dla gracza. Zapisuj urządzenie, wersję kompilacji, ustawienia i kroki, aby porównania były miarodajne.

Unity zaleca profilowanie na docelowej platformie. Editor Play Mode współdzieli zasoby z edytorem i nie odzwierciedla dokładnie wydajności urządzenia. Kompilacje deweloperskie obsługują połączenie z Unity Profiler. Profilowanie kieruje diagnozą; sprawdzam też proponowaną poprawkę w docelowej konfiguracji wydania, zanim uznam problem za rozwiązany.

Unity: profilowanie aplikacji

04

Sprawdź zapisane postępy, zakupy i analitykę

Udane uruchomienie to tylko część zgodności. Dotychczasowi gracze mogą mieć zapisany postęp, odblokowaną zawartość, zakupy lub stan po stronie serwera.

Ustalam, gdzie znajdują się te dane, i testuję reprezentatywne stare zapisy względem proponowanych zmian. Sprawdzaj przerwane wczytywanie, brakujące dane i błędy migracji. Przed zmianą formatów lub identyfikatorów uzgodnij, co musi przetrwać, co może się zmienić i jak działa odzyskiwanie.

Następnie przejdź pełną ścieżkę progresji: zacznij, zdobądź lub odblokuj coś, zapisz, uruchom ponownie i kontynuuj. Zweryfikuj powiązane zdarzenia analityczne, w tym ich znaczenie i kontekst wersji. Jeśli historyczne śledzenie jest niewiarygodne, kolejne wydanie może ustalić bazę pomiarową; nie może automatycznie udowodnić poprawy retencji.

05

Sprawdź największą niewiadomą na małym, działającym przykładzie

Przed wyceną dużej zmiany kodu lub budowy od nowa uzgadniam mały test: pytanie, na które ma odpowiedzieć, limit prac i warunki uznania wyniku za udany.

Na przykład: czy jeden reprezentatywny poziom może wczytać istniejący zapis, zakończyć pętlę rozgrywki, wysłać oczekiwane zdarzenia i zmieścić się w uzgodnionym budżecie wydajności na docelowym telefonie?

Test powinien obejmować systemy, które najprawdopodobniej mogą uniemożliwić wydanie gry. Przebudowa odrębnego menu mówi niewiele o postępach gracza czy usługach platformy. Ustal limit prac z wyprzedzeniem i zapisz, co test potwierdził, co się nie udało i co nadal pozostaje niewiadomą.

06

Wybierz kolejny krok na podstawie ustaleń.

Rekomendacja powinna wyjaśniać, co wykazał przegląd, dlaczego ma to znaczenie i jakie prace wykonać dalej.

Dokończ

Główna część gry działa, a pozostałe prace można jasno wymienić i oszacować.

Następny krok: Napraw problemy uniemożliwiające wydanie i przetestuj uzgodnione funkcje.

Refaktoryzacja

Określone systemy regularnie powodują awarie lub utrudniają niezbędne zmiany.

Następny krok: Popraw jedną część kodu i sprawdź, czy powiązane funkcje nadal działają.

Przebuduj

Istniejący kod nie pozwala rozsądnie obsłużyć wymaganych funkcji, nawet po rozważeniu praktycznych możliwości naprawy.

Następny krok: Przetestuj sposób zastąpienia kodu i zaplanuj przeniesienie istniejących danych graczy.

Niewielki płatny przegląd projektu może pomóc zdecydować, co robić dalej. Przed rozpoczęciem uzgadniamy pytanie, wymagany dostęp, limit prac i to, co otrzymasz. Dostajesz działającą wersję lub wyjaśnienie, co uniemożliwia jej przygotowanie, listę ustaleń według priorytetów i propozycję następnego kroku z jasno opisanymi założeniami.

Konkretny przykład powiązanej rozgrywki, zapisu i progresji znajdziesz w projekcie Polar Station Survival— gra z wieloma powiązanymi systemami, w której byłem jedynym programistą Unity.

Dowiedz się, czego Twój projekt potrzebuje w następnym kroku.

Opowiedz o przejętym projekcie i o tym, co chcesz wydać. Możemy uzgodnić niewielki przegląd, który pozwoli ustalić potrzebne prace.

Omów swój projekt Unity

Zacznij od ogólnego zarysu. Możemy zawrzeć umowę o poufności (NDA), zanim udostępnisz wrażliwe szczegóły, kod źródłowy lub zasoby projektu.

Jak postępuję z informacjami poufnymi