In deze les maak je kennis met Finite State Machines (FSM), een ontwerppatroon voor het modelleren van gedrag in een beperkt aantal toestanden.
Je leert hoe je staten en overgangen definieert en hoe je deze omzet in werkende Unity C#-code met enum en switch-statements.
We behandelen voorbeelden zoals een deur die open en dicht gaat, vijandelijke game-AI en het Super Mario state-systeem.
Na deze les kun je zelf een FSM-diagram ontwerpen, beslissingsvoorwaarden formuleren en een eigen game mechanic of AI bouwen met minimaal drie states en duidelijke overgangen.
En helemaal onderaan staat een stukje over app.diagrams.net en hoe je daar zelf FSM-diagrammen kan maken.
Finite State Machines: Introductie
Het volgende filmpje geeft een korte introductie over het design pattern genaamd Finite State Machine.
Na het bekijken van dit filmpje:
- Weet je dat je met een Finite State Machine relatief eenvoudig Game AI voor bijvoorbeeld een Enemy of deur kan definieren en implementeren.
- Heb je geleerd waar de drie woorden in de naam van het design pattern voor staan.
- Kijk je raar op als iemand zegt dat een Finite State Machine meer dan één state heeft of dat er oneindig veel states in zitten.
- Weet je dat het design pattern ook wel eens in het kort State Machine of FSM wordt genoemd.
- Weet je dat het State design pattern gerelateerd is maar meestal verwijst naar een object oriented implementatie van een State Machine.
fsm_1_introductie.mp4
Finite State Machines: FSM Diagrammen
In dit filmpje worden Finite State Machine diagrammen toegelicht, maar begint met een quote van Buzz Lightyear.
Na het bekijken van het filmpje:
- Weet je dat Finite State Machines overal te vinden zijn...in het dagelijkse leven en in programma's en games.
- Kan je minstens twee voorbeelden van FSMs uit het dagelijks leven opnoemen.
- Heb je kennis gemaakt met de elementen in een Finite State Machine: States, de Start State, Transitions en Transition Conditions, en de End State.