学习了虚幻一段时间,是看的谌嘉诚的视频入的门,里面做过挺多的功能,但是在之后总是会忘记,所以这次又重新温习了一遍虚幻官方的蓝图,对蓝图通信这方面又做了一个巩固。蓝图通信在虚幻中很重要,主要有以下四种方式:

一、直接通信

直接通信的方式是最常用的也是最好理解的。比如两个蓝图类中,一个蓝图想要调用另外一个蓝图中的参数或者函数,就可以使用这种方法。

举个例子:当玩家按F的时候,灯就没了。

这里会用到初学者包中的灯蓝图,将这个蓝图拖入到场景中,打开这个蓝图,你会发现他里面的组件有一个static mesh 一个是point light。我们做开关灯其实就是对pointlight进行操作,那么我们在控制第三人称角色的时候,要如何改变这个灯蓝图中的属性呢?首先应该创建一个控制的灯的引用,对这个灯的引用进行操作。

在做完上面的操作后,回到关卡界面点击人物蓝图,记得要把我们的实例赋值给这里的引用!

二、cast类型转换

类型转换的原理是这样的:大多数情况是使用在人物身上有一个collision,然后当控制的人物触发了时,通过cast节点来改变碰到的actor中的某一变量。

三、事件分发器event dispatchers

事件分发器是使用:有一个需要发送事件的actor需要配置一个事件分发器。其他的所有的actor都可以对这个事件分发器进行监听(绑定事件到这个事件分发器器上)。当这些actor听到调用这件分发器的命令的时候,就会进行工作。

将这个事件分发器的流程比喻一下就是:  我们现在有个叫(老师)的蓝图,在这个蓝图下面有个事件分发器homework。有三个学生A、B、C,他们都在监听老师这个homework事件分发器,他们三个人听到命令的反应不一样,A是写作业B是抄作业C是撕作业。于是某一天下午,老师call了一下这个事件分发器(下发了作业),ABC三个人都听到了,然后就会开始干他们对应的事情。

就比如上图所示,我们将一个叫抄作业的自定义事件绑定给我们的homework事件分发器,当事件分发器进行执行的时候(call)就会自动执行抄作业事件的活动了!

四、接口

接口可以给多的actor进行使用,所有使用这个定义的接口的actor都可以使用这个接口中的方法。

比如我们写一个当玩家走到门面前的时候门自动开启的蓝图时,便可以通过当玩家碰到某个actor的时候,就会触发一个蓝图接口的通信,告知碰撞到的actor,现在你可以使用这个接口的方法了,如果它是有用这个蓝图的方法的话,就会使用这个方法。比如上图所示当玩家触碰到门的时候就会发送一个接口通信告诉门,门接收到这个消息的时候,就会查看自己时候有对应的使用这个接口的地方,哎有!于是就出发开门的方法。

第一次写博客,如果有不对的地方,麻烦指正谢谢。

https://docs.unrealengine.com/4.27/zh-CN/ProgrammingAndScripting/ActorCommunication/

本文就是对官网文档中蓝图通信部分的个人总结。

虚幻引擎中蓝图间的几种通信方式相关推荐

  1. 虚幻引擎中的反射(译)

    原文链接:https://www.unrealengine.com/en-US/blog/unreal-property-system-reflection?sessionInvalidated=tr ...

  2. 虚幻4 python_技术前瞻:虚幻引擎中的 Python

    原标题:技术前瞻:虚幻引擎中的 Python 在Autodesk University上,我们简单展示了最新的研究,它将解决CAD数据导入虚幻引擎这一复杂问题.这是Datasmith研发过程中的重大突 ...

  3. 元宇宙开发:你在虚幻引擎中的第一个虚拟现实游戏

    了解如何开发零编程背景的Oculus Quest游戏 你会学到什么 为Oculus Quest构建应用程序 设计和开发虚拟现实游戏 在虚幻引擎中工作 使用材料和纹理 优化内容,实现移动和虚拟现实游戏的 ...

  4. UE4(虚幻4)中蓝图的使用

    这篇文章是我看哔哩哔哩上学习的笔记,学习的地址如下: https://www.bilibili.com/video/BV164411Y732?t=168&p=15 因本人才疏学浅,如有错误之处 ...

  5. 《从C语言过渡到C++和虚幻引擎中的C++编程》教程①

    本系列文字教程的受众对象是刚刚经历完大一上的C语言期末考试的.仅具有一定C语言基础的新生. 如果您是上述对象,在看完本系列教程之后,您将收获C++编程入门和虚幻引擎中的C++编程入门知识以及一些游戏开 ...

  6. 教你学会虚幻引擎中的光线追踪功能使用,此教程必看

    在本教程中将展示虚幻引擎中的光线追踪功能.为了比较光线追踪引入的变化,我从头开始构建了一个独特的环境,其中包括各种材料和模块化资产.光线追踪是一个很棒的工具,可以让你更好地控制场景的视觉方面. 启用光 ...

  7. UE4学习-在虚幻编辑器中打开VS的三种方式

    文章目录 方式一 方式二 方式三 在虚幻编辑器中打开VS的三种方式 方式一 在文件浏览器这里,选择C++类,然后在文件夹内,找到一个和截图中类似的图标,双击,即打开vs,并在vs中打开这个类的代码. ...

  8. 在虚幻引擎中使用Python批处理3:批量修改属性

    Unreal Python API 文档: - https://docs.unrealengine.com/4.26/en-US/PythonAPI/ 在上一篇文章在虚幻引擎中使用Python批处理2 ...

  9. 进程间的7种通信方式(含例程代码)

    下面的实验由我和我的同学完成的,这是操作系统课程的一个小实验,可以帮助理解进程间的通信. 进程间的通信 1.匿名管道 2.命名管道 3.消息队列 4.共享内存 5.信号 6.信号量 7.socket ...

  10. 进程间的7种通信方式全解析及代码示例

    目录 1.匿名管道 2.命名管道 3.消息队列 4.共享内存 5.信号 6.信号量 7.socket 进程间的7种通信方式如下: 管道pipe:管道是一种半双工的通信方式,数据只能单向流动,而且只能在 ...

最新文章

  1. ORB-SLAM / ORB-SLAM2原理解读+代码解析(汇总了资料,方便大家学习)
  2. 学习如何写PHP MVC框架(1) -- 路由
  3. [渝粤教育] 中国地质大学 婚姻与家庭法 复习题
  4. 简单存取款机的实现---控制输入变量的规则
  5. Linux下environ环境变量操作函数
  6. 使用 Direct Initial Load 初始化 GoldenGate 同步数据
  7. 镜像的使用(6-13)
  8. [转发]黑苹果修改DSDT彻底解决关机不断电和睡眠问题
  9. 翻译: 4.2. 从零开始实现多层感知器MLP pytorch
  10. vnc远程控制软件7款,7款非常好用的vnc远程控制软件
  11. 【实验】基于朴素贝叶斯的新闻分类
  12. 我认识的文华财经指标期货高手一年时间从2万到30万的实际经历
  13. Android项目“error: Apostrophe not preceded by \ (”报错解决方法
  14. 构建 Web 应用之 Service Worker 初探
  15. Java 并发编程(一) 学习教程
  16. 使用canvas对图片进行裁切
  17. Vista中运行软件的兼容性测试(转)
  18. Field restTemplate in com.jack.springcloud.controller.DeptController_Consumer required a bean of typ
  19. vht160什么意思_华硕AX89X与AX200终于有160MHz了,WIFI6与WIFI5的速度对比测试-路由器交流...
  20. 美国500名iOS用户受害?黑客组织发动恶意广告

热门文章

  1. 机器学习kaggle案例:沃尔玛招聘 - 商店销售预测
  2. [AC自动机]luoguP3966
  3. vs2017错误:当前页面的脚本发生错误
  4. 什么是数据缩减,无损4:1缩减有多难?
  5. 星号密码查看器原理完全揭秘
  6. 微信怎么收银行卡的消息服务器,微信零钱提现,这样操作,可以免去手续费
  7. 游戏测试基础:缺陷等级
  8. 千兆宽带网接入电脑电脑却只有百兆
  9. 图片格式与设计那点事儿
  10. 线性地址转换物理地址