Configurazione
C++
Per scrivere codice C++ in Unreal Engine (UE), scarica Visual Studio su Windows o installa Xcode su macOS. Quando crei un nuovo progetto C++, UE creerà per te automaticamente i file di progetto di Visual Studio.
Esistono due modi per accedere a Visual Studio dal progetto UE:
In Esplora contenuti, fai doppio clic su una classe C++ per aprirla in Visual Studio.
Dal menu principale, vai a Strumenti > Apri Visual Studio. Questa opzione viene visualizzata solo se il progetto contiene almeno una classe C++.
Una differenza importante in UE: a volte sarà necessario aggiornare manualmente i file di progetto di Visual Studio (ad esempio, dopo aver scaricato una nuova versione di UE o quando si apportano manualmente modifiche ai percorsi dei file di origine su disco). È possibile farlo in due modi:
Dal menu principale di UE, vai a Strumenti > Aggiorna progetto Visual Studio.
Fai clic con il pulsante destro sul file .uproject nella directory del tuo progetto e seleziona Genera file del progetto di Visual Studio.
Per informazioni più dettagliate, vedi Configurazione sviluppo.
Blueprint
Per utilizzare lo scripting Blueprint, è sufficiente UE. Tutte le funzioni necessarie sono integrate in Unreal Editor.
Scrittura di funzioni evento
Se in precedenza hai utilizzato MonoBehaviors, hai familiarità con metodi quali Inizio, Aggiornamento e OnDestroy. Di seguito è riportato un confronto tra un comportamento di Unity e il suo equivalente per gli attori e i componenti di UE.
In Unity potrebbe essere presente un componente semplice simile al seguente:
public class MyComponent : MonoBehaviour
{
void Start() {}
void OnDestroy() {}
void Update() {}
}AActor
In UE, puoi scrivere codice sull'attore stesso, anziché codificare solo nuovi tipi di componenti.
Inoltre, gli attori hanno metodi simili a quelli Start, OnDestroy e Update di 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
I componenti in UE sono concettualmente simili a MonoBehaviors ma contengono metodi differenti.
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
Note aggiuntive
In UE, è necessario esplicitamente chiamare il metodo del genitore all'interno di un metodo figlio. Ad esempio, in C# di Unity questo sarebbe
base.Update(), ma in C++ di UE si utilizzerebbeSuper::Tick()per gli attori oSuper::TickComponent()per i componenti.In C++ di UE, le classi usano vari prefissi, come
Uper le sottoclassi diUObjecteAper le sottoclassi di attori. Per informazioni più dettagliate, vedi Standard di codifica.Per esempi di codifica di gameplay, vedi Creazione del gameplay in Unreal Engine.