UE4蓝图基础分类(12)蓝图投射

简述
通过引用全局蓝图类来实现两个蓝图的信息交互,在ue4中有几个默认注册的全局蓝图类,游戏中的任何蓝图类或关卡蓝图都可以引用到,一般在Game Model中设置
UE4蓝图基础分类(12)蓝图投射
配置全局蓝图
转到内容浏览器,找到Default Pawn Class设置的默认蓝图ThirdPersonCharacter
UE4蓝图基础分类(12)蓝图投射
打开ThirdPersonCharacter,新建两个变量,这两个变量类型设为Actor_1和Actor_2两个蓝图类的引用,Actor_1和Actor_2是两个添加Static Mesh组件的蓝图类
UE4蓝图基础分类(12)蓝图投射
Actor_1和Actor_2通过一个全局的ThirdPersonCharacter来通信,实例化Actor_1和Actor_2
UE4蓝图基础分类(12)蓝图投射
在ThirdPersonCharacter蓝图类中设置变量Var1和Var2为公开变量
UE4蓝图基础分类(12)蓝图投射
在世界大纲中选择ThirdPersonCharacter的实例,找到变量Var1和Var2
UE4蓝图基础分类(12)蓝图投射
给Var1和Var2赋值
UE4蓝图基础分类(12)蓝图投射
蓝图间通信
配置好全局蓝图类后,就可以开始通信了,打开Actor_2类图类,在事件图表中点击右键搜索GetPlayer
UE4蓝图基础分类(12)蓝图投射
选择GetPlayerCharacter节点,该节点是个全局节点,在任何蓝图类中都可以调用,通过它我们可以获得Default Pawn Class,也就是ThirdPersonCharacter蓝图类
UE4蓝图基础分类(12)蓝图投射
获取到GetPlayerCharacter节点后,我们会发现它返回的类型是Character类型,和我们的ThirdPersonCharacter类型不符,这时候需要进行类型转换。点击右键,搜索Cast,在下拉框中选择Cast To ThirdPersonCharacter节点,这个节点可以将我们的类型转换为ThirdPersonCharacter
UE4蓝图基础分类(12)蓝图投射
转换完成后,我们获取ThirdPersonCharacter蓝图类中的变量Var2即可,这样我们在Actor_1中就获得了Actor_2的引用实例
UE4蓝图基础分类(12)蓝图投射
添加键盘事件,并让Actor_2旋转
UE4蓝图基础分类(12)蓝图投射
测试结果输出,按下键盘事件,Actor_2正在旋转

UE4蓝图基础分类(12)蓝图投射