#pragma once
#include "CoreMinimal.h"
#include "GameFramework/Actor.h"
#include "MyDynamicActor.generated.h"
UCLASS()
class YOURPROJECT_API AMyDynamicActor : public AActor
{
GENERATED_BODY()
public:
// Sets default values for this actor's properties
AMyDynamicActor();
protected:
// Called when the game starts or when spawned
virtual void BeginPlay() override;
public:
// Called every frame
virtual void Tick(float DeltaTime) override;
private:
UPROPERTY(EditAnywhere)
UStaticMeshComponent* DynamicMesh;
};
#include "MyDynamicActor.h"
// Sets default values
AMyDynamicActor::AMyDynamicActor()
{
// Set this actor to call Tick() every frame
PrimaryActorTick.bCanEverTick = true;
// Create and attach a mesh component
DynamicMesh = CreateDefaultSubobject<UStaticMeshComponent>(TEXT("DynamicMesh"));
RootComponent = DynamicMesh;
// Set the mesh for the component
static ConstructorHelpers::FObjectFinder<UStaticMesh> MeshAsset(TEXT("StaticMesh'/Game/Path/To/YourMesh.YourMesh'"));
if (MeshAsset.Succeeded())
{
DynamicMesh->SetStaticMesh(MeshAsset.Object);
}
}
// Called when the game starts or when spawned
void AMyDynamicActor::BeginPlay()
{
Super::BeginPlay();
}
// Called every frame
void AMyDynamicActor::Tick(float DeltaTime)
{
Super::Tick(DeltaTime);
}