上一篇文章实现了一个类对象,并且创建了这个类的蓝图。在自定义函数中可以输出一句话:
void UMyObject::myFun() {
UE_LOG(LogTemp, Warning, TEXT("12346789"));
}
上面的函数就是利用的UE日志功能。
- 在原来自定义的MyActor中双击打开蓝图类。
新增变量
选择蓝图类的引用,并且变量名重新命名:MyObjVar
然后把变量拖动到蓝图中,和事件开始运行连接在一起,并且执行MyFunc函数
点击【运行】,会有错误信息
这个错误信息说明,这个变量在没有初始化。C++指针指向为空。
所以我们需要创建一个MyObject_BP类型的对象。选择节点:
Class :代表需要创建对象的类
Outer:是谁创建了这个对象,也就是被创建对象的所有者
然后把变量拖动到蓝图中,选择设置变量
上面这个流程的意思是:事件开始运行后,首相构造一个MyObjectBP对象,然后把构造出来的对象赋值的MyObjVar变量。赋值以后们就可以调用其中的函数了
点击运行就会看到有日志输出:
aaa