UE4 C++获取Niagara变量值

时间:2024-04-07 18:30:20

UE4 获取Niagara变量值

Niagara有一堆Get方法,但是是基于数据的,单独的Set方法是有的,因此,我们这参考Set源码去Get
在这里插入图片描述
在这里插入图片描述
源代码如下:
在这里插入图片描述
在这里插入图片描述
我们的实现(当然要返回其他类型值,修改一下对应传参就行了):

头文件:

#include "NiagaraComponent.h"
#include "NiagaraTypes.h"

模块:

Niagara

源文件:

UFUNCTION(BlueprintCallable, BlueprintPure)
static float GetVariableFloat(UNiagaraComponent*NiagaraComponent, FName InVariableName)
{
	const FNiagaraVariable VariableDesc(FNiagaraTypeDefinition::GetFloatDef(), InVariableName);
	float Value;
	NiagaraComponent->GetOverrideParameters().GetParameterValue(Value, VariableDesc);
	return Value;
}