Konfiguracja
C++
Aby pisać kod w C++ w Unreal Engine (UE), pobierz Visual Studio na komputerze z systemem Windows lub zainstaluj Xcode na komputerze z systemem macOS. Gdy użytkownik utworzy nowy projekt C++, UE automatycznie utworzy pliki projektu Visual Studio.
Dostęp do Visual Studio z poziomu projektu UE można uzyskać na dwa sposoby:
W Content Browser (Przeglądarce zawartości) dwukrotnie kliknąć klasę C++, aby otworzyć ją w Visual Studio.
Z menu głównego przejść do pozycji Tools > Open Visual Studio (Narzędzia > Otwórz Visual Studio). Ta opcja pojawia się tylko wtedy, gdy projekt zawiera co najmniej jedną klasę C++.
Bardzo istotna różnica w UE: czasami konieczne będzie ręczne odświeżenie plików projektu Visual Studio (na przykład po pobraniu nowej wersji UE lub podczas ręcznego wprowadzania zmian w lokalizacjach plików źródłowych na dysku). Można to zrobić na dwa sposoby:
Z menu głównego UE przejść do Tools > Refresh Visual Studio Project (Narzędzia > Odśwież projekt Visual Studio).
W katalogu projektu prawym przyciskiem myszy kliknąć plik .uproject i wybrać Generate Visual Studio project files (Generuj pliki projektu Visual Studio).
Patrz Development Setup (Konfiguracja projektu programistycznego), aby znaleźć więcej informacji.
Blueprint
Do używania skryptów Blueprint potrzebny jest tylko silnik UE. Wszystkie potrzebne funkcje są wbudowane w Unreal Editor.
Zapisywanie funkcji zdarzeń
Jeśli wcześniej użytkownik pracował z MonoBehaviors, powinny być mu znane metody, takie jakStart, Update i OnDestroy. Poniżej znajduje się porównanie zachowania Unity z jego odpowiednikiem dla aktorów i komponentów UE.
W Unity można mieć prosty komponent, który wygląda następująco:
public class MyComponent : MonoBehaviour
{
void Start() {}
void OnDestroy() {}
void Update() {}
}AActor
W UE można pisać kod na samym aktorze, a nie tylko kodować nowe typy komponentów.
Dodatkowo, aktorzy Unreal Engine mają podobny zestaw metod do metod Start, OnDestroy i Update w Unity.
C++
UCLASS()
class AMyActor : public AActor
{
GENERATED_BODY()
// Called at start of game.
void BeginPlay();
// Called when destroyed.
void EndPlay(const EEndPlayReason::Type EndPlayReason);
Blueprint
UActorComponent
Komponenty w UE są konceptualnie podobne do MonoBehaviors, ale zawierają inne metody.
C++
UCLASS()
class UMyComponent : public UActorComponent
{
GENERATED_BODY()
// Called after the owning Actor was created
void InitializeComponent();
// Called when the component or the owning Actor is being destroyed
void UninitializeComponent();
Blueprint
Dodatkowe uwagi
W UE należy jawnie wywołać metodę nadrzędną w obrębie metody podrzędnej. Na przykład w Unity w C# wywoływana byłaby funkcja
base.Update(), ale w C++ UE używa sięSuper::Tick()dla aktorów, aSuper::TickComponent()dla komponentów.W UE w C++ klasy używają różnych przedrostków, takich jak
Udla podklasUObjectiAdla podklas aktora. Patrz Coding Standard (Norma kodowania), aby znaleźć więcej informacji.W celu sprawdzenia przykładów kodu patrz:
Creating Gameplay in Unreal Engine (Tworzenie rozgrywki w Unreal Engine) .