Podsumowanie

Ciekawostka

Nazwa Blueprint nawiązuje do stosowanej od połowy XIX w. techniki tworzenia planów i rysunków technicznych, której nowatorstwo polegało na umożliwieniu szybkiego i dokładnego tworzenia kopii. Technika charakteryzowała się białymi liniami na niebieskim tle, co stanowiło negatyw oryginału.

R1ckKtREHBrLD
Plan budynku będący przykładem techniki blueprint, Kanada, 1936 rok.
Źródło: Joy Oil Co Ltd, dostępny w internecie: en.wikipedia.org, domena publiczna.

Blueprint – charakterystyka

Domyślny Blueprint postaci jest przejrzysty i uporządkowany. Ma on oddzielne obszary przeznaczone do kontroli: kamery, ruchu postaci i skoków. Blueprint do sterowania zachowaniem obiektu używa bloków mających swoje wejścia i wyjścia, które łączone są za pomocą kabli.

Dla ułatwienia w interfejsie zastosowano kolory:

  • białe strzałki i kable oznaczają wywoływanie funkcji, czyli przekazywanie sygnału lub wykonanie określonej akcji;

  • zielone wtyczki i kable oznaczają przesyłanie wartości liczbowej z zakresu liczb zmiennoprzecinkowych (float);

  • żółte kable oznaczają wartości wektorowe, takie jak np. pozycja obiektu w przestrzeni trójwymiarowej;

  • niebieskie wtyczki i kable oznaczają obiekty takie jak np. inny blueprint postaci lub element świata gry.

Przykłady wykorzystania wtyczek i kabli znajdziesz w filmie.

Gdy uruchomimy grę, możemy otworzyć podgląd Blueprint w oknie Outliner i zobaczyć jego działanie na żywo. Połączenia, które są aktywne, podświetlają się i pogrubiają.

R1UaPLqESKFQp
Źródło: Contentplus.pl sp. z o.o., licencja: CC BY-SA 3.0.

Blueprint – tworzenie nowego obiektu

Tworzenie nowego obiektu zaczynamy od założenia nowego folderu w obszarze Content Browser. Otwieramy go. Klikając prawym przyciskiem myszki, wywołujemy menu i klikamy pozycję Blueprint. Mamy do wyboru kilka zdefiniowanych typów klasy nadrzędnej.

Oferowane przez system Blueprint typy obiektów to klasy znane z programowania obiektowego, ich pojedyncze wywołania (instancjeinstancja klasyinstancje) dziedzicządziedziczeniedziedziczą cechy klasy bazowejklasa bazowaklasy bazowej.

Wśród dostępnych typów klas nadrzędnych znajdziemy między innymi:

Actor

obiekt, który można umieścić w świecie gry;

Pawn

obiekt, który można kontrolować;

Character

podklasa klasy Pawn obejmująca obiekty, które się poruszają, np. przeciwników;

Player Controller

klasa zarządzająca postaciami sterowanymi przez gracza;

Game Mode Base

klasa, która kontroluje przebieg gry – jej zasady i punktację.

Decydując się na którąś z klas, nadajemy tworzonemu obiektowi zestaw domyślnych cech, które uwzględnili twórcy silnika gry.

Obiekt, który powstanie po wybraniu np. opcji Actor, nie ma domyślnie nadanego żadnego modelu. Możemy to zrobić, wybierając z rozwijanego menu w sekcji Components komponent Static Mesh. W obszarze Details odnajdujemy pozycję Static mesh, a następnie wybieramy jedną z dostępnych opcji, np. lampę.

Do obiektu można dodawać kolejne komponenty, np. nadające mu możliwość świecenia, jak komponent Point light.

Aby ustawić w scenie gry stworzony obiekt, wystarczy zaznaczyć go w obszarze Content Browser i przeciągnąć w odpowiednie miejsce. Obiekt można obracać, przemieszczać, skalować, używając funkcjonalności opisanych w e‑materiale Kontrola obiektów – Unreal Engine, etap IIIPgQfs9ZnKKontrola obiektów – Unreal Engine, etap III.

RUdbWcwHvJ8UY
Źródło: Contentplus.pl sp. z o.o., licencja: CC BY-SA 3.0.

Kolizje obiektów

Jeśli chcemy, żeby coś wydarzyło się z obiektem po jego wejściu w kolizję z bohaterem, możemy użyć do tego celu komponentu Box collision. Za jego pomocą określamy obszar wokół obiektu. W szczegółach tego komponentu możemy wybrać spośród wielu jego funkcji, np. wykrywającą wejście w kolizję z innymi obiektami.

Nauczysz się

W kolejnych częściach serii dodasz do gry zróżnicowane przeszkody oraz reakcję postaci na zderzenie z nimi. 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

dziedziczenie
dziedziczenie

mechanizm, dzięki któremu jest możliwe wykorzystanie cech danej klasy do stworzenia klasy bardziej wyspecjalizowanej

instancja klasy
instancja klasy

obiekt stworzony z definicji klasy

klasa bazowa
klasa bazowa

klasa, z której następuje dziedziczenie

model
model

cyfrowa reprezentacja postaci lub obiektu; przechowuje informacje na temat geometrii, tekstur, materiałów, animacji i innych właściwości, które definiują wygląd i zachowanie tego obiektu wewnątrz gry lub symulacji

przeciągnij i upuść
przeciągnij i upuść

(ang. drag and drop) udogodnienie dostępne w graficznych interfejsach użytkownika polegające na wykonywaniu przez użytkownika określonych operacji na obiektach za pomocą pojedynczego ruchu myszą

silnik gry komputerowej
silnik gry komputerowej

zintegrowane środowisko programistyczne stworzone dla osób projektujących gry komputerowe