Przeczytaj
Podsumowanie
Istotą gry komputerowej jest mierzenie się z różnego rodzaju wyzwaniami. Zaliczają się do nich między innymi przeszkody, które należy omijać. Gdy się to nie udaje i postać wchodzi w kolizję z jedną z nich, gracz ponosi porażkę. W projekcie gry należy więc uwzględnić obiekty przeszkód oraz zachowanie postaci po zetknięciu z nimi.
Dodawanie przeszkody
Tworzenie przeszkody zaczynamy od dodania do projektu nowego obiektu typu ActorActor (proces ten został opisany w e‑materiale Blueprint – Unreal Engine, etap VIBlueprint – Unreal Engine, etap VI). Nadajemy mu wybrany model, np. słupa. W obszarze Components klikamy przycisk Add i wybierając z menu opcję Capsule Collision, dodajemy komponent odpowiedzialny za kolizję. Tym razem nie jest to pudełko, a kapsuła. Następnie precyzyjnie ustalamy obszar kolizji.

Mechanika ragdoll
W wielu grach możemy zaobserwować sytuację, w której w skutek jakiegoś błędu gracz traci kontrolę nad postacią, w wyniku czego zaczyna ona bezwładnie spadać. Taką funkcję nazywamy ragdoll (nazwa nawiązuje do anielskiego określenia szmacianej lalki).
Implementacja utraty kontroli nad postacią
Aby dodać do gry mechanikę ragdoll, w obszarze Outliner odnajdujemy pozycję Third person character i obok niej klikamy napis Edit. Otworzy się Blueprint postaci, w którym możemy stworzyć nową funkcję.
Dodajemy funkcję Set simulate physics, dzięki której po zderzeniu z przeszkodą gracz straci kontrolę nad postacią i przejmie ją w całości silnik fizyki gry.
Aby funkcja Set simulate physics działała poprawnie, gra musi obsługiwać w odpowiedni sposób kolizję postaci z otoczeniem. W tym celu dodajemy w projekcie postaci funkcję: Set collision enabled, ustawiamy jej wartość na Collision enabled (query and physics) i łączymy ją białym kabelkiem z funkcją Set simulate physics.
Jak sprawić, by mechanika ragdoll uruchomiła się po kolizji postaci z przeszkodą?
Potrzebujemy w tym celu funkcji tworzenia nowych zdarzeń. W blueprincie bohatera dodajemy funkcję Add Custom Event. Utworzone w ten sposób zdarzenie łączymy z funkcją Set simulate physics.
Następnie wchodzimy w Blueprint przeszkody. Dodajemy w nim funkcję Cast to... (odnajdujemy pozycję, w której zawarta jest nazwa postaci). Łączymy ją z pozycją Other Actor komponentu On Component Begin Overlap (Capsule). W ostatnim kroku dodajemy odnośnik do funkcji obsługującej zdarzenie uderzenia.
W kolejnych częściach serii zróżnicujesz przeszkody, na które napotyka bohater gry. Następnie zaimplementujesz sekwencję zdarzeń, które muszą zajść po tym, jak bohater straci życie. Zaplanujesz także warunki zwycięstwa w grze. W ostatnim kroku poprawisz kilka funkcjonalności, a następnie wyeksportujesz grę tak, aby można ją było przekazać graczom.
Słownik
ActorActorjedna z dostępnych w Unreal Engine klas nadrzędnych określająca obiekt, który można umieścić w świecie gry
zintegrowane środowisko programistyczne stworzone dla osób projektujących gry komputerowe