当前课程知识点:虚幻引擎(UE4)技术基础 > 第十章 蓝图应用 > 10.3 Input输入与玩家快捷键交互 > 10.3 Input输入与玩家快捷键交互
大家好
欢迎来到虚幻引擎技术基础课堂
我是主讲教师
黄颖翠
现在我们将针对
虚幻引擎技术基础课程中
蓝图应用章节的
Input输入与玩家快捷键交互功能
进行讲解
好了我们来整理下
这节课的目标效果
今天我们要做的是
调整游戏的一些效果
主要是对主角进行控制
其一是可以通过
我们按下键盘左边的Shift键
对人物进行加速前进的效果
第二个按下鼠标右键
可以切换人物摄像头的二倍镜效果
其三就是通过两次击打物体
产生爆炸效果
这里是我们今天的三个任务
现在我们来分析下
第一个任务如何实现
首先我们要知道人物行走的原理
这左边的图是人物Moving
对象中的细节
里面有一个Max Walk Speed
这个是最大行走速度
我们可以理解一下加速
就是有一个物理引擎
施加了一个力给他
推着他走
他是从0起步
渐渐加速的过程
而这里是他加速后
最大的值
如果我们把它这里加大
那他加速的最大值就变大
速度就变大了
我们可以看到右边图片
就是这样布局蓝图的
当按下键后
设置速度为2200
当抬起键后
设置速度为600
第二个任务
二倍镜效果
这里是通过改变摄像机的视角实现的
默认显示器效果看到的是
90度的左边图片的效果
那么45度的视角
是右边这样的效果
45度视角其实看到的东西是有限的
但是用过45度看到的东西
我们依然放大到这个显示器看到的大小
这就看上去东西变近了
第三个任务
实现两次击打后爆炸效果
我们看下这个蓝图的实现原理
我们这里定义了一个变量IsPrimed
当第一被打到设置为真
当它再次被攻击
则出现特效
我们做一个分支
我们需要决策一下
决策这个变量
如果这个值为真
则说明它被打过
那么他需要做两件事
一个是播放一个声音
然后还要做一个事情
生成发射器
这个发射器是用来生成一个粒子爆炸效果
最后我们再自我销毁
第二次被攻击
就是走这个流程
而第一次被攻击
这个isprimed
应该是假
我们给它设置为真
然后走回等待一段时间后恢复颜色
好
现在我们进行操作部分
上次我们做到哪里了呢
就是这个圆柱体会来回移动
我们子弹
攻击这个圆柱体
它会变色
过0.5秒它会恢复原来的颜色
好了
我们现在看下
如何做第一个功能加速跑的效果
首先
我们找到FirstPersonCharacter
点击进去
我们可以看到这里是
这个主角的动作的一些相关信息
例如这里有一个跳的逻辑
我们点击鼠标右键
和这里的红块联系起来
当鼠标按下或者释放的时候
做对应的动作
我们的二倍镜和这块功能类似
我们可以模仿它来做一个
那我们应该怎么做呢
首先
我们在设置里面
这个项目设置
点击进去
里面左边有一个引擎
输入
这里有一个操作映射
我们看到有一个Jump跳
Fire射击
还有一个和VR头盔相关的东西
这里目前不需要用到
我们在蓝图中也可以看到Fire
在这里
和生成子弹有关系
我们做的内容和Jump类似
我们可以模仿Jump的结构来做一个
我们可以看到jump里面是按空格键
下面是其他的手柄输入
我们先不考虑
我们点击这个+号
新建一个
输入Sprint加速的意思
然后设置为左shift键
这样我们按下左shift键
就可以触发该事件
然后在加一个Zoom
鼠标右键
做二倍镜
那么这样就把这两个关联起来了
好了我们现在
就可以在蓝图中
去搜素它们
我们现在就可以在蓝图中
搜索到我们创建的这两个词了
我们来试一下
搜索sprint
搜索Zoom
好已经有了
我们先做加速效果
我们先知道下这个人物走路的原理
我们看到这个人物的行走里面
有一个最大行走速度
这是这个控制速度的
现在我们把这个移动的对象拖进来
然后查找max walk speed
设置最大速度
连接sprint.
当我们按下后
设置速度大一点
2200这个值
拷贝份设置
当我松手后
设置成600的速度
就这么简单
我们现在来试一下是否有用
我们先走一下
然后再跑一下
再走一下
再跑一下
好了这个效果达到了
我们给他加上注释
方便后期理解查看
写上Sprint
现在我们来改变视角
这是摄像机决定的
所以我们找到摄像机
摄像机在我们身上
是这个Camera对象
我们拖入这个摄像机对象
查找设置的Field of view
当键按下后设置为45度
拷贝一份
抬起后
设置为90
好
我们现在来测试下效果
我们可能觉得这里变化太硬了
想它慢慢转变角度
我们可以加一个时间轴
Add time line
添加时间轴
我们来编辑下它
点击f创建一个浮点型的轨迹
设置长度为0.3秒
通过0.3秒内
把90度设置成45度
0这里我们右键添加关键帧
时间设置为0
值为90
因为90在很高的位置
我们点击缩放
以适合垂直方向尺寸按钮
看到这里有一个小黄点
就是关键帧
我们现在在0.3秒
这里创建一个关键帧
它的时间我们设置为0.3秒
值为45
这个数的变量名字就是时间轴_0
编译一下
我们找到事件图标
切过来
我们可以看到时间轴里面
有一个我们刚加的词
我们可以把这个的输出连接到设置中
这个动画的效果就是在0.3秒钟
渐渐使值从90度变成45的值
我们再把抬起时的线修改一下
连接到时间轴的Reverse反转这里
这样输出的值就是45到90的递增的值
我们调整下这个蓝图
试一下
我们可以在内容浏览器中找到子弹
它细节里面有一个初始速度和最大速度
把它们都从原来的3000设置成6000
这样打击效果会比较好
试一下看看效果
子弹是不是变快了速度
我们现在打击这个目标
最终应该是把它干掉对吧
干掉的效果一般有一个特效
我们改一下这个圆柱的蓝图
我们先把上次的tick事件做一个备注封装
来回移动
我们可以定义一个变量IsPrimed
布尔类型
当第一次被打到设置为true
当它再次被攻击
则出现特效
我们调整下蓝图结构
方便添加逻辑
这里是设置颜色
这里是延迟后恢复颜色
我们在设置材质后面
做一个分支branch
我们需要做一个决策
决策这个变量
如果这个值为真
则说明它被打过一次设置成了真
为真时
那么它需要做两件事
一个是播放一个声音
play sound at location
在位置处生成音效
我们随便选择一个声音
例如
floating_UI_Close-001
然后还要做一个事情
生成发射器
spawn emitter at location
在某一个位置上生成发生器
发射器发射粒子效果
爆炸之后呢
我们再自我销毁Destroy actor
这里设置还没有完成
我们还需要设置位置
就是要撞击到的位置赋值给它
位置肯定在圆柱身上
我们调整下位置
赋值一下撞击位置
是不是还少了如何纪录被挨打过呢
就是这里设置为true
我们来整理下思路
这里是变红
然后判定
如果IsPrimed为假
则设置它为真
表示已经被打了一次
然后走回等待一段时间后恢复颜色
如果判定为真
则已经进过设置为真了
那么就播放爆炸音效
和爆炸特效
摧毁物体
这样逻辑就完成了
我们编译一下
运行试试有没有效果
是有效果了
但是是不是很奇怪
声音和特效都不太合适对吧
那我们没有资源怎么办
我们可以在工程中新增
添加功能或内容包
选择内容包
选初学者内容包
点击添加到项目中
这里面有很多很不错的资源可以使用
好
添加完毕了
我们去修改一下我们之前选择的资源
替换一下
我们把音效换成Explosion01爆炸音效
把发射器例子也换成explosion 爆炸特效
这样我们再看一下效果
是不是真实了很多
所以这种常用资源
我们完全可以通过新手包找到并使用上来
本小节的操作讲解已经完成
留给大家一个课后练习
请大家课后自己操作一下
实现一个物体会来回移动的物体
这个物体被攻击后
第一次变色
第二次移动速度下降
第三次爆炸并播放音效和特效
好
本节课内容就讲解完毕
感谢大家聆听
再见
-1.1 虚幻4引擎简介
--1.1 小节习题
-1.2 虚幻4引擎的安装及环境部署
--1.2 小节习题
-1.3 创建项目及试玩
--1.3 小节习题
-第一章 章节测试
-2.1 虚幻4编辑界面介绍01
--2.1 小节习题
-2.2 虚幻4编辑界面介绍02
--2.2 小节习题
-2.3 视口导航及基本操作
--2.3 小节习题
-2.4 导入资源、项目迁移和管理
--2.4 小节习题
-第二章 章节测试
-3.1 地形工具
--3.1 地形工具
--3.1 小节习题
-3.2 新建地形
--3.2 新建地形
--3.2 小节习题
-3.3 塑造地形
--3.3 塑造地形
--3.3 小节习题
-3.4 使用植被工具
--3.4 小节习题
-第三章 章节测试
-4.1 初识材质
--4.1 初识材质
--4.1 小节习题
-4.2 编辑基于物理材质
--4.2 小节习题
-4.3 使用贴图纹理创建材质
--4.3 小节习题
-第四章 章节测试
-5.1 大气照明和定向照明
--5.1 小节习题
-5.2 添加点光源
--5.2 小节习题
-5.3 添加聚光源
--5.3 小节习题
-5.4 光源质量和反射
--5.4 小节习题
-第五章 章节测试
-6.1 几何体及纹理贴导入
--6.1 小节习题
-6.2 素材整理和项目准备
--6.2 小节习题
-6.3 搭建流程
--6.3 搭建流程
--6.3 小节习题
-第六章 章节测试
-7.1 动画资源与编辑器
--7.1 小节习题
-7.2 混合空间
--7.2 混合空间
--7.2 小节习题
-7.3 动画窗口及编辑动画
--7.3 小节习题
-7.4 创建自定义角色
--7.4 小节习题
-第七章 章节测试
-8.1 创建粒子系统
--8.1 小节习题
-8.2 虚幻粒子基础功能介绍01
--8.2 小节习题
-8.3 虚幻粒子基础功能介绍02
--8.3 小节习题
-8.4 粒子特效的综合运用
--8.4 小节习题
-第八章 章节测试
-9.1 初识蓝图
--9.1 初识蓝图
--9.1 小节习题
-9.2 蓝图类型
--9.2 蓝图类型
--9.2 小节习题
-9.3 蓝图通信
--9.3 蓝图通信
--9.3 小节习题
-9.4 创建蓝图
--9.4 创建蓝图
--9.4 小节习题
-第九章 章节测试
-10.1 击中事件
--10.1 小节习题
-10.2 实现物体来回移动
--10.2 小节习题
-10.3 Input输入与玩家快捷键交互
--10.3 小节习题
-10.4 用户界面和HUD
--10.4 小节习题
-10.5 创建游戏约束
--10.5 小节习题
-10.6 游戏结束与重玩功能
--10.6 小节习题
-第十章 章节测试
-11.1 行为决策的AI
--11.1 小节习题
-11.2 AI监听玩家行为
--11.2 小节习题
-11.3 AI与玩家的攻击伤害
--11.3 小节习题
-11.4 AI生成点与随机巡逻
--11.4 小节习题
-11.5 优化游戏体验
--11.5 小节习题
-11.6 渲染及代码优化
--11.6 小节习题
-第十一章 章节测试
-12.1 音频基础
--12.1 小节习题
-12.2 音频混成器
--12.2 小节习题
-12.3 声音特效
--12.3 小节习题
-第十二章 章节测试