Configuração
C++
Para programar em C++ na Unreal Engine (UE), baixe o Visual Studio no Windows ou instale o Xcode no macOS. Quando você um novo projeto em C++, a UE criará automaticamente os arquivos de projeto do Visual Studio para você.
Existem duas maneiras de acessar o Visual Studio do seu projeto da Unreal Engine:
No Navegador de Conteúdo, clique duas vezes em uma classe C++ para abri-la no Visual Studio.
No meu principal, acesse Ferramentas , Abrir Visual Studio. Essa opção só aparecerá se o projeto contiver pelo menos uma classe C++.
Uma diferença importante na UE: às vezes, você precisará atualizar manualmente os arquivos de projeto do Visual Studio (por exemplo, após baixar uma nova versão da UE ou ao fazer alterações manualmente nos locais dos arquivos fonte no disco). Você pode fazer isso de duas maneiras:
No menu principal da Unreal Engine, acesse Ferramentas, Atualizar projeto do Visual Studio
Clique com o botão direito no arquivo .uproject no diretório do seu projeto e selecione Gerar arquivos de projeto do Visual Studio.
Consulte informações mais detalhadas em Configurações de desenvolvimento.
Blueprint
Para usar códigos de Blueprint, você só precisa da UE. Todas as funcionalidades de que você precisa estão integradas no Unreal Editor.
Como programar funções de evento
Se você já trabalhou com MonoBehaviours, conhece os métodos Start, Update e OnDestroy. Abaixo está uma comparação entre um comportamento do Unity e seu equivalente para atores e componentes da UE.
No Unity, você pode ter um componente simples parecido com este:
public class MyComponent : MonoBehaviour
{
void Start() {}
void OnDestroy() {}
void Update() {}
}AActor
Na UE, você pode escrever código no próprio ator, em vez de apenas programar novos tipos de componente.
Além disso, atores possuem métodos semelhantes aos métodos Start, OnDestroy e Update do 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
Os componentes na UE são conceitualmente semelhantes aos MonoBehaviours, mas contêm métodos diferentes.
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
Observações adicionais
Na UE, você deve chamar explicitamente o método do pai dentro de um método do filho. Por exemplo, em C# no Unity isso seria
base.Update(), mas em C++ na UE você usaráSuper::Tick()para atores ouSuper::TickComponent()para componentes.No C++ da UE, as classes usam vários prefixos, como
Upara subclasses deobjetoseApara subclasses de ator. Consulte informações mais detalhadas em Padrão de codificação.Consulte exemplos de codificação de jogabilidade em Como criar jogabilidade na Unreal Engine.