Unreal4蓝图 Map 节点&蓝图 Set 节点0017bate1

Unreal4蓝图 Map 节点&蓝图 Set 节点0017bate1,第1张

使用蓝图 Map 时节点接口的总览。

Map 的节点接口提供为开发者提供以下功能在蓝图中进行使用:将键和相关联的值(键值对)添加到 Map、从 Map 移除物品、清除 Map、查找 Map 中所包含的键和值,以及检查 Map 的长度。 以下指南提供虚幻引擎 4(UE4)中组成蓝图集的诸多节点的额外信息。

Add 节点将把一个键和一个值(键值对)添加到 Map,进而增加 Map 的长度。将键值对添加到 Map 时,节点将检查添加的键是否等于 Map 中现有的键。 如果新键等于 Map 中已有的键,那么与键关联的现有值将被新值所覆盖。此节点完成其运算后, 键将保证与其相应的值所关联,直到 Map 之后出现变化。

Clear 节点从一个给定 Map 移除所有键值对,移除 Map 的所有内容。其后,Map 的长度将被重设为零。

Find 节点已提供一个键,在 Map 中搜素项目。如 Map 包含此项目则返回 true,如果找到项目随后返回一个值。

Keys 节点输出一个给定 Map 中所有键的阵列。

Remove 节点将从 Map 移除一个键值对,从而减少 Map 的长度。从 Map 移除键值对时,节点将检查键是否在 Map 中。 如键未在 Map 中,键值对将不会被移除。

Values 节点输出一个给定 Map 中所有值的阵列。

Set 的节点接口提供为开发者提供以下功能在蓝图中进行使用:将项目添加到 Set、从 Set 移除项目、 清除 Set、查找 Set 中所包含的键和值,以及检查 Set 的长度。 以下指南提供虚幻引擎 4(UE4)中组成蓝图集的诸多节点的额外信息。

蓝图通信理解

蓝图通信的四种方法(1,4类似,2,3类似)

1、 直接蓝图通信

直接通过查询到actor 直接调用方法

2、 事件分配器

类似绑定事件触发器,定义好事件分发器后,其他所有的注册该事件分发器的蓝图都会在该触发器出发后调用各自定义好的事件(类似我写了博客后,所有订阅过我的人接收到消息,有的给我点赞,有的人看一遍,有的人阴阳怪气我)

3、 蓝图接口

往蓝图定义好的消息事件里添加接口函数,类设置中加载接口,只要在触发蓝图中触发该事件,目标蓝图就会触发并传值(类似目标蓝图暴露接口,触发蓝图调用该接口触发事件并传值)

4、 蓝图投射

通过查询actor查到多种类,或者提前不知道蓝图的类型,通过CastTo 蓝图类获取对象蓝图的方法(类似强转换)

获取到的是父蓝图,执行子蓝图的特有功能

模仿flyto方法

UE4的蓝图就跟C++等编程语言在概念上是非常类似的。在蓝图中你可以定义变量、函数、宏等等,高级点的,它还可以被继承。这还不算,我们还可以定义蓝图接口,规范子类的行为。基本上C++中可以做的,蓝图也可以做到,而且是所见即所得,拖拖拽拽,即时编译,立即生效。一般的做法是,程序员在C++中做好功能模块,关卡设计师,用蓝图创建游戏的逻辑,关卡师不需要会编程、可以自己创建逻辑,至少在逻辑这一层不需要程序员来配合。这样的效率会高很多,而且也没有类似Lua这样的脚本语言参与,设计师的门槛要低很多了。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11606396.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-17
下一篇2023-05-17

发表评论

登录后才能评论

评论列表(0条)

    保存