UE4将Actor指针设置为null而不在世界中销毁它

时间:2018-04-26 18:19:13

标签: c++ pointers unreal-engine4 spawn nullptr

我正在试图弄清楚是否可以重置一个Actor的指针,同时不会让它从世界上消失。
例如:
 1. auto Item = GetWorld()->SpawnActor<...>(...);
 2. ...
 3. Item = nullptr; - 仅重置指针
 演员还在世界上 我相信复制这个演员会起作用,但它绝不是IMO的最佳解决方案。

1 个答案:

答案 0 :(得分:0)

您似乎正在假设清除指针会自动销毁Actor。你确认实际情况如此吗?

Looking at the docsSpawnActor只会返回一个普通的“哑巴”。指针。在C ++中,将普通指针重置为null 不会破坏它引用的对象;可能需要一些明确的行动来摧毁它。关于Actor Lifecycle的UE4文章似乎也支持这一点。

这可能采取重置smart pointerTSharedPtr)或在演员本身上调用Destroy的形式。