零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)

目录

按键开门

设置按键映射

蓝图中使用按键

快速复制(Ctrl+W)

测试按键

长按开门

整理蓝图

原理

创建bool变量

选择语句

总结:

下一篇


  • 在上一篇文章中,讲述了如何用蓝图制作一个简单的门和玩家进行交互

  • 那么这篇文章将让你对蓝图有更多的理解,同时也会弄一些小东西出来

  • 主要是制作多种开门方式,以及将开门多种开门方式合并,并且在创建中快速调整开门方式

  • 在很多RPG,FPS游戏中都有开门的环节,

  • 开门方式大致有3种,第一个我们已经实现了,那么来看看后面两个如何实现

  • 本章主要讲述了开门的另外两种方法,以及怎样在场景中快速调整参数

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第1张图片

 

按键开门

设置按键映射

1.后面两个都需要按键,所以我们要先设置按键

找到编辑里面的项目设置

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第2张图片

找到列表菜单里面的输入,打开后可以顺便展开

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第3张图片零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第4张图片

我们就在这里设置按键

(可是为什么会有两个类型的按键,上面一行提示已经告诉你了,可能不太懂,其实Action类型按键就只有两个状态,0和1,激活和未激活,比如空格跳跃就是这个类型的按键,因为只有跳和不跳两个状态,不需要其他东西;

而Axis是有输出值的,比如位移和转向,是持续的,特别是转向,是用鼠标的沿XY轴位移的值来映射的,而且根据鼠标DPI和加速度不同后面也可以调整,现在不需要知道这么多,我们先不研究这个)

点击Action Mappings旁边的+号添加一个按键输入,按键自己看着办,名字要记住后面要用

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第5张图片零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第6张图片

蓝图中使用按键

在内容浏览器中,打开上次的创建的门蓝图

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第7张图片零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第8张图片零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第9张图片

上面三张图是上次做的自动门,我想在原来的基础上增加开门的方式,所以我们先把线断开,增加新内容后再处理

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第10张图片

右键空白处,先把刚才我们新建的按键弄进来

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第11张图片

快速复制(Ctrl+W)

选中上面的开门的逻辑的部分,Ctrl W 复制下来,并连接(Passed和Reledsed,当你按下和松开的时候就会发出一次信号)

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第12张图片

 

将上次进入体积事件和退出体积事件放到合适位置,搜索三个节点,Enable Input、Disable Input和Getplayercontroller,按图连接,这样做是为了保证玩家进入可控范围后,Actor能响应玩家按键输入,退出可控范围后禁止响应输入

测试按键

回到场景中,运行游戏测试一下快捷键是Alt+P

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第13张图片

按下E,门能开了吧,但是只能开门,很简单,在Ebutten后面增加一个FlipFlop节点,按图连接就可以了,这个节点的作用就像乒乓球一样,交替触发,默认先触发A,也是一个很常用的节点(时间轴(timeline有很多输入节点,很简单,看名字都知道,自己试一下就知道了,比如我这里用的两个Play和Reverse,前者为正向播放,后者为逆向播放)

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第14张图片零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第15张图片

到这里基本上已经实现了按键秒开门的蓝图,其实我们就增加了两个节点,就改变了开门的方式,中间开门的逻辑没有任何变动,后面我们将使用模块化的方式来制作简单而又实用的东西。

长按开门

如何实现按键按下几秒后门才打开?

原理就是当按键按下的时候开始计时,达到一定时长就触发开门事件

我们同样用TimeLine来制作,首先我们把开门逻辑再次复制一份,为了调试后面的开门方式现在先把刚才的Ebutten先断开,再复制一个到新的开门逻辑边上,把timeLine复制一个到中间,其他不变,如图连接。(注意是Finished连接Play)

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第16张图片

测试一下,靠近门,按住E,2秒(自己设置的Timeline值)后开门,如果中途松开e键,不会开门,但是,现在是不能关门的,这个最后来修改,先进行下一步(如果还是开门了,那么请检查一下节点是否连对)

整理蓝图

到现在我们已经有了3种单独的开门方式了,当你的场景中需要用到这三种门的时候,创建3个蓝图很麻烦对吧,使用的时候也很麻烦,那么下面我们就在一个蓝图中存放三种,不对,是四种门,按照场景中的需求进行快速调整

 

滑轮可以缩,你可以看到,这么多东西,其实很多都是重复的,前面我们进行的都是快速实现功能,第二阶段我们进行重构,把这些分两类,一类是开门方式,一类是实现开门

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第17张图片零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第18张图片

原理

这个时候我们需要3个布尔类型的变量做一个简单的逻辑门,我做的可能有问题,但是原理就是通过bool值来控制使用哪种方式触发事件

创建bool变量

在左下角,点击加号,名字可以自己取,但是可读性一定要好,并且点击每一个名字后面闭着的小眼睛,这样做是为了方便我们在场景中可以直接更改而不需要回到蓝图中

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第19张图片零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第20张图片

选择语句

按住键盘上的B,鼠标左键单击空白处可以获得一个选择分支,如图创建五个

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第21张图片

将刚才创建的几个布尔变量连接到分支节点左下角的红点上,一定要一一对应哦

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第22张图片       零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第23张图片

如图连接线,有点多,注意一下最下面的是连的Finish可以了,完成这一步,已经可以在场景中控制门的开启方式了

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第24张图片

点击物体,在右下方的细节面板中,你可以设置你刚才创建好的三个变量值,记住由于三个变量之间没有任何联系,你只能手动的去调整三个变量,此时必须要保证只有一个变量是打上勾的(真),否则就会出现一些错误,至于这三个变量之间的联系,可以理解为单选和多选的问题,后面会单独出一篇由程序员创建好蓝图,关卡设计师直接使用的文章,这里就不啰嗦了。

零基础Unreal Engine 4(UE4)图文笔记之多种开门方式的实现与合并(六)_第25张图片

总结:

本章主要讲述了开门的另外两种方法,以及怎样在场景中快速调整参数

下一篇

讲拓展讲解一下关于设置门旋转使用到的SetRelativeRotation节点相关节点属性SetActor、SetWorld节点三者之间的的区别,以及何时使用的问题

 

 

 

 

 

 

 

你可能感兴趣的:(虚幻4基础篇)