| Zajęcia online | Lekcja 1x45min |
| Opis jednozdaniowy | Omówienie tematu wykorzystania ScriplableObjects w architekturze projektu. |
| Materiały źródłowe | Podstawowe: “Overthrowing the MonoBehaviour Tyranny in a Glorious Scriptable Object Revolution”, R. Fine https://www.youtube.com/watch?v=6vmRwLYWNRo “Game Architecture with Scriptable Objects”, R. Hipple https://www.youtube.com/watch?v=raQ3iHhE_Kk “Create modular game architecture in Unity with ScriptableObjects” https://unity.com/resources/create-modular-game-architecture-scriptableobjects-unity-6 Opcjonalne: “Reference Objects In Your Unity Game Flawlessly”, PracticAPI https://www.youtube.com/watch?v=xYRFwFXNskc “The Power of Scriptable Objects as Middle-Men”, samyam https://www.youtube.com/watch?v=qUYpQ8ySkLU “Better Data with Scriptable Objects in Unity (Tutorial)”, Unity https://www.youtube.com/watch?v=PVOVIxNxxeQ “Game architecture with ScriptableObject | Open Projects Devlog”, Unity https://www.youtube.com/watch?v=WLDgtRNK2VE |
| Czemu służy ta lekcja | Celem tej lekcji jest zaprezentowanie czym są ScriptableObjects, jaka jest ich specyfika oraz w jakich kontekstach można je wykorzystać. Docelowo pozwoli to odbiorcom tworzyć łatwiej zarządzalne projekty. |
Jak się przygotować?
By przygotować się przeprowadzenia lekcji należy zapoznać się z materiałami źródłowymi, a następnie przygotować prezentację. Głównym celem tego webinaru powinno być przedstawienie specyfiki ScriptableObjects oraz zalet korzystania z nich. W trakcie prezentacji powinny również paść informacje na temat praktycznych zastosowań tych obiektów.
Najważniejsze tematy, które powinny zostać omówione to:
- Czym są ScriptableObjects oraz czym różnią się od MonoBehaviours
- Na co należy zwracać uwagę przy pracy w nimi (np: zmiany w trakcie gry są utrwalone w Scriptablach)
- W jaki sposób można wykorzystać Scriptable w projekcie, m.in:
- Parametryzacja elementów gry (np. postacie, poziomy, pojazdy, lub po prostu trzymanie danych)
- Współdzielenie referencji poprzez Scriptable
- Scriptable jako zmienne oraz eventy
- Sugeruję unikania wykorzystania Scriptable (FloatVariable -> HealthSO) jako konkretnej zmiennej, a bardziej jako grupy wartości (CharacterSO, posiadający wartość health)
- Powyższe pozwala łatwiej debugować kod i szukanie referencji nie jest aż tak uciążliwe (chociaż to też może być tutaj różne podejście do tego tematu)
- Architektura projektu w oparciu o Scriptable
- W jaki sposób tworzyć ScriptableObjects w projekcie – przykład z prostym kodem
Powyższa lista nie jest wyczerpująca i warto rozszerzyć ją o własne sposoby wykorzystywania ScriptableObjects we własnych projektach. Poza suchą prezentacją zdecydowanie warto zaprezentować przykłady wykorzystania w praktyce. Pozwoli to lepiej zrozumieć zalety i zastosowanie tych obiektów w praktyce.
Jaką wiedzę należy przekazać w trakcie zajęć?
Dzięki udziałowi w zajęciach uczestnicy:
- Poznają czym są ScriptableObjects w Unity
- Dowiedzą się do czego mogą zostać wykorzystane wraz z omówieniem zalet i wad
- Poznają praktyczne zastosowanie tych obiektów w projekcie
- Dowiedzą się jak tworzyć własne ScriptableObjects
Powyższe efekty kształcenia to minimum wiedzy i/lub umiejętności, jakie muszą zostać przekazane podczas zajęć.
Warto zapamiętać!
Z angielskiego “key takeaways”, czyli kluczowe zagadnienia, które powinny zostać przyswojone przez odbiorców kursu.
- Czym są ScriptableObjects
- Jakie jest ich zastosowanie
- Gdzie warto z nich korzystać
- Poznają praktyczne przykłady wykorzystania ich w projektach