Programování v Unreal Enginu


V Unrealu jsou dva hlavní přístupy k programování:

  • Blueprinty
    vizuální skriptovací systém (i pro neprogramátory)
  • C++
    programovací jazyk

Blueprint

Co jsou blueprinty?

Blueprinty jsou vizuální skriptovací systém v Unreal Engine, který umožňuje výtvářet hry bez nutnosti psát kód. Jsou vhodné pro rychlé prototypování nebo pro vývojáře bez znalosti programování.

Výhody a nevýhody použití blueprintů

Výhody
  • Snadnost použití
  • Rychlé prototypování: Ideální pro testování konceptů a tvorbu jednoduchých mechanik.
  • Interaktivní editace: Umožňuje provádět změny za chodu a okamžitě vidět jejich dopad.
  • Integrace s UE: Snadná spolupráce s ostatními systémy Unreal Engine, jako je UI nebo animace.

Nevýhody

  • Složitost správy: U větších projektů mohou být blueprinty nepřehledné.
  • Omezený výkon: V porovnání s C++ jsou blueprinty pomalejší, což může být znát u rozsáhlých nebo výpočetně náročných her.
  • Pokročilá logika: Složitější mechaniky jsou mnohem snadnější v C++.

Základní principy práce s blueprinty

  • Nódy a propojení: Logika se vytváří přetažením nódů (uzlů) do editoru a jejich propojením pomocí linií a pinů.

Tvorba nodů a pinů v blueprintech

Vytváření nodů
  • Přidání existujících funkcí: Klikněte pravým tlačítkem myši v grafickém editoru a vyhledejte požadovanou funkci (např. „Print String“ nebo „Set Variable“).
  • Vytvoření vlastních funkcí: Otevřete sekci „Functions“ v levém panelu a zvolte „Create New Function“.
  • Události: Použijte nástroje jako „Event Begin Play“ nebo „Custom Event“ pro spouštění logiky.
Piny
  • Datové typy: Každý pin odpovídá specifickému typu dat (např. Boolean, Float, Vector). Správný typ je nutné dodržet při propojení nodů.
  • Propojení: Přetáhněte pin z jednoho nódu do druhého pro vytvoření vazby mezi němi.
  • Proměnné a konstanty: Piny mohou reprezentovat hodnoty uložené v proměnných nebo přímo definované v blueprintu.

Doporučené postupy pro organizaci blueprintů

  • Modularita: Rozdělte logiku do menších, opakovaně použitelných funkcí.
  • Komentáře: Používejte barevné poznámky a popisky pro snazší orientaci.
  • Názvy: Dodržujte konzistentní a popisné pojmenování proměnných, funkcí a blueprintů.
  • Hierarchy: Organizujte komponenty a události do smysluplných bloků podle jejich funkce.
  • Debugging: Používejte „Print String“ pro ladění a sledování postupu programu.

C++

Role C++ v Unreal Engine

C++ je hlavní programovací jazyk Unreal Engine a poskytuje výkonné řešení pro složitější herní mechaniky, a pokročilé systémy. Používá se spíše pro komplexní projekty nebo tam, kde blueprinty nestačí.

Výhody použití C++ oproti blueprintům
  • Vyšší výkon: Kód v C++ je efektivnější a vhodnější pro složitější logiku a výpočetně náročné operace.
  • Flexibilita: Nabízí přímý přístup k API Unreal Engine a umožňuje vytvářet pokročilé systémy.
  • Modularita a přehlednost: Velké projekty mohou být snadněji spravovatelé při použití C++.
  • Možnosti optimalizace: C++ nabízí přesnější kontrolu nad pamětí a výkonem.