天天看点

Unreal Engine 4:如何在代码中使用粒子

在代码中使用粒子的方式:

一、

// 在文件头定义
UPROPERTY()
class UClass* Explosion_Class;
// 在构造函数中创建粒子
Explosion_Class = ConstructorHelpers::FObjectFinderOptional<UClass>(TEXT("Class'/Game/Blueprint/BP_Explosion.BP_Explosion_C'")).Get();
// 使用粒子
AActor* Actor = GetWorld()->SpawnActor<AActor>(Explosion_Class, GetActorLocation(), GetActorRotation());
           

二、

// 在文件头定义
UPROPERTY()
class UParticleSystem* PS;
// 在构造函数中创建
static ConstructorHelpers::FObjectFinder<UParticleSystem> PSC(TEXT("ParticleSystem'/Game/StarterContent/Particles/P_Explosion.P_Explosion'"));
PS = PSC.Object;
// 使用
UGameplayStatics::SpawnEmitterAtLocation(GetWorld(), PS, GetActorLocation());
           

三、

// 在文件头定义,并且从属性面板中设置
UPROPERTY(EditDefaultsOnly)
class UParticleSystem* PS;

// 使用
UGameplayStatics::SpawnEmitterAtLocation(GetWorld(), PS, GetActorLocation());
           

继续阅读