混合 C++ 和蓝图的正确方法是什么?

What is the right way to blend C++ and Blueprint?

所以我最近从 unity 切换到使用 unreal engine。我有一些使用 C++ 的经验,但 none 使用蓝图。显然,我想用 C++ 做所有事情,但我在网上读到,最好同时使用两者。现在我对如何混合这两个感到困惑。我想到了两种方法: 1.使用Blueprint声明classes,然后使用C++编写处理逻辑的组件(类似于Unity中的MonoBehavior),将添加到blueprintclasses中。 2. class及其所有组件和变量都是用C++编写的,然后Blueprint将从class继承。蓝图可用于快速更改实例变量的值。

这两种方式都好吗?有更好的方法吗?

我在某种程度上使用了这两种方法。所以我会用 C++ 定义每个参与者并让 BP 从它继承。但我也使用在 BP 中继承的用 C++ 编写的组件,我将它们添加到 BP actor 类。

Actor 是您在游戏中看到和使用的实际对象,当它们在游戏世界中没有任何共同点时,组件将在 Actor 之间共享逻辑而不必相互继承。