Jedność pracująca z prefabrykatami

Prefabrykaty to specjalne zasoby, które pozwalają programistom przechowywać GameObjects wraz z ich Komponentami i innymi danymi w konfigurowalnych szablonach, które można później ponownie wykorzystać pomiędzy Scenami i innymi Projektami lub utworzyć instancje za pomocą skryptu, bez konieczności ich ponownej konfiguracji.

Przypadki, w których prefabrykaty są przydatne:

  • Aktywa środowiskowe (drzewa, krzewy, skały itp.)
  • NPC (postacie niezależne)
  • Pociski
  • Instancje graczy
  • Wszelkie przedmioty, które wymagają ponownego wykorzystania w grze

Przykładowe zastosowanie

Podczas przeciągania i upuszczania modeli bezpośrednio na scenę często pojawiają się pewne problemy, takie jak:

  • Brakujące tekstury
  • Zła skala
  • Zły obrót

Model drzewa z materiałem domyślnym

Powyższe problemy można łatwo naprawić w Scenie (przypisując odpowiedni materiał(y), zmieniając skalę/obrót itp.):

Model drzewa z odpowiednim materiałem

Jeśli jednak planujesz używać modelu wielokrotnie i/lub w różnych scenach, powtarzanie powyższych kroków szybko stanie się żmudnym zadaniem, więc zamiast tego możemy zapisać model w prefabrykacie.

Jak stworzyć prefabrykat

  • Aby utworzyć prefabrykat w Unity, po prostu przeciągnij i upuść obiekt z widoku Sceny do widoku Projektu.

Unity 3D Utwórz prefabrykat

  • Po utworzeniu prefabrykatu można go upuścić w dowolnej scenie, tworząc dokładną kopię:

Widok projektu prefabrykowanego Unity

Edycja prefabrykatów

Edycja istniejących Prefabów odbywa się na 2 sposoby: modyfikując je w edytorze Prefabów lub modyfikując je w Scenie.

Modyfikowanie w Edytorze prefabrykatów

  • Wybierz prefabrykat w widoku projektu, a następnie w widoku inspektora kliknij "Open Prefab"

  • Prefabrykat zostanie otwarty w edytorze, gdzie będziesz mógł go modyfikować.

  • Po zakończeniu modyfikacji kliknij strzałkę wstecz w widoku hierarchii, aby zakończyć edycję i zapisać zmiany.

Unity 3D Zapisz zmiany prefabrykatów (metoda 1)

Modyfikowanie w scenie

  • Upuść prefabrykat do widoku sceny i tam go edytuj.

  • W moim przypadku dodałem kolejny obiekt do hierarchii (zwróć uwagę na symbol (+) obok ikony)
  • Podczas modyfikowania prefabrykatów w Scenie zmiany nie są zapisywane automatycznie, zamiast tego musisz ręcznie wybrać obiekt główny prefabrykatu i w widoku inspektora kliknij "Overrides", a następnie kliknij "Apply All", aby zapisać zmiany, lub "Revert All" aby cofnąć zmiany.

  • Niektóre akcje nie są obsługiwane podczas edycji Prefabrykatu bezpośrednio w scenie, na przykład, jeśli zajdzie potrzeba zrestrukturyzowania hierarchii, zostanie wyświetlony komunikat "Cannot restructure Prefab instance" i opcje "Open Prefab" lub "Cancel".

Aby zrestrukturyzować instancję Prefab, kliknij 'Open Prefab' lub kliknij prawym przyciskiem myszy prefabrykat w widoku Hierarchii, a następnie kliknij Prefabrykat -> Rozpakuj lub Prefab -> Rozpakuj całkowicie.

Rozpakowanie Prefabrykatu usunie jego powiązanie z głównym Prefabrykatem, dzięki czemu będzie on w pełni edytowalny na Scenie.

Aby ponownie zapisać rozpakowany prefabrykat, wybierz folder, w którym znajduje się oryginalny prefabrykat, a następnie przeciągnij i upuść zmodyfikowany obiekt z widoku hierarchii do tego prefabrykatu.

Unity 3D Zapisz zmiany prefabrykatów (metoda 2)

Czasami, jeśli zmiany są zbyt drastyczne, zostanie wyświetlony komunikat z potwierdzeniem.

Upewnij się dokładnie, że modyfikujesz właściwy prefabrykat, a następnie kliknij "Replace Anyway", aby sfinalizować akcję lub „Nie zastępuj”, aby anulować akcję.

Unity 3D Wymień prefabrykat Potwierdź wiadomość

Nowy prefabrykat jest teraz zapisany i gotowy do użycia.

Sugerowane artykuły
Jak malować drzewa na terenie w Unity
Wykorzystanie pakietu zasobów w Unity
Jak importować animacje do Unity
Wybór odpowiedniego Skyboxa dla Twojego środowiska w Unity
Strategie ochrony gier Unity przed piractwem
Jak stworzyć grę inspirowaną FNAF-em w Unity
Znaczenie opowiadania historii w tworzeniu gier w Unity