【发布时间】:2018-06-21 12:46:24
【问题描述】:
EnemySpawner 有一个名为“Path”的 Spline 组件,生成的 Enemy 必须遵循该组件。为此,Enemy 的蓝图有另一个名为“Enemy Path”的 Spline 组件,必须在创建时由 Enemy Spawner 初始化,如上面的屏幕截图所示。
但是,在我的 Enemy 中,如果我尝试访问“EnemyPath”,我会收到以下错误:
蓝图运行时错误:访问无尝试读取属性 来自函数的 PathActor:来自节点的“ExecuteUbergraph_Enemy”: 图中的 DestroyActor:对象中的 EventGraph:带有描述的敌人: 访问 None 试图读取属性 PathActor
也就是说,空指针异常。
例如,如果我在敌人的蓝图中做了(出于测试目的): 样条线组件的 Actor Owner 没有被销毁。
即使我尝试分配所有 Owner actor,而不仅仅是 Spline 组件,它也不起作用。
我还尝试在 EnemySpawner 的“SpawnActor Enemy”节点和 Enemy 的“Event BeginPlay”节点之后在屏幕上打印一些内容,并且我检查了显然 EnemySpawner 中的打印首先发生,所以唯一的问题是变量并没有真正分配。
我尝试的最后一件事是在“Set”节点之后直接在 EnemySpawner 蓝图中通过从 Spawned 敌人那里获取 Spline 的 Owner 来摧毁它,令我惊讶的是,它被摧毁了!
那么,你想知道什么是正确的做法吗?
【问题讨论】:
标签: reference game-engine unreal-engine4 unreal-blueprint