虚幻引擎:访问动态衍生的actor的蓝图实例数据

时间:2016-06-16 21:53:25

标签: c++ unreal-engine4

我有一个带有公开UPROPERTY的C ++类,它通过蓝图类扩展。我使用蓝图来设置属性的值。

现在我要做的是从这个蓝图类中生成一个Actor,让我的C ++代码与蓝图中设置的属性一起工作。如果我从虚幻编辑器中将蓝图类的实例拖入世界,那么一切都很有效。但是,如果我从默认的GameMode类动态生成同一蓝图类的这个actor,我可以看到该类的一个实例已被添加到世界中(我在World Outliner中看到它)但是当运行C ++代码时,从蓝图中设置的值不存在。

为什么以不同方式生成蓝图类(一种方法是通过从编辑器将其拖入世界,另一种方法是通过从GameMode类生成它)导致不同的结果?如果演员是从GameMode班级产生的,为什么我无法访问蓝图数据?

1 个答案:

答案 0 :(得分:1)

您确定要从GameMode生成派生的 Blueprint类的实例而不是父C ++类吗?

同时检查当您尝试访问成员变量时,您正在将实例强制转换为 Blueprint类而不是C ++类。

如果您还没有这样做,最好将_BP或类似的内容附加到所有Blueprint派生类,以确保您始终知道您正在处理的是哪个版本。