在虚幻引擎5中构建你的首款游戏 - 06 - 游戏模式&相机&运动&按键
前言介绍:
原版地址: << [功能亮点]在虚幻引擎5中构建你的首款游戏(官方字幕)_哔哩哔哩_bilibili >>
<< https://www.bilibili.com/video/BV1M34y1x7tc >>
官网地址: << Your First Game In Unreal Engine 5 | Tutorial (epicgames.com) >>
<< https://dev.epicgames.com/community/learning/tutorials/e2V/your-first-game-in-unreal-engine-5 >>
所处时间段:
[00:27:19]
~[00:30:42]
;[00:30:42]
~[00:32:33]
;
[00:32:33]
~[00:35:19]
;[00:35:19]
~[00:37:08]
主要内容: 游戏模式&相机&运动&按键
1.游戏模式
ue5
游戏运行时会需要一些必备的文件,如果工程里没有,将采用默认值.如下自动创建的游戏对象.多了12个游戏资产(Actor
).
- 现在,来设置其中3个,玩家角色,游戏模式和控制器.先新建一个文件夹储存文件
Framework
.然后创建蓝图,类别如下图.分别命名为:BP_Bot
,BP_GameMode
,BP_PlayerController
.
- 然后双击打开游戏模式,设置内容.如果你打开后显示的纯数据蓝图,则可以上方的打开完整蓝图编辑.
- 然后在细节面板,替换自己创建的类.控制器和角色.记得编译和保存.
- 在工程设置中,修改所有关卡的默认游戏模式.(这个设置页面和视频教程里的不太一样,不过没关系).
- 设置好后,运行游戏就能看到项目里有生成了.
2.玩家出生点
- 在快捷创建中,选择玩家出生点.
- 下图中蓝色箭头代表角色的初始朝向.按快捷键
END
(与HOME
相反的那个键),可以将所选模型快速贴近正下方的模型.
- 最后介绍个小功能,运行时会自动隐藏胶囊线框,可以取消隐藏.在角色蓝图
BP_Bot
中设置.记得要选中胶囊体组件.
3.相机
- 在角色蓝图中添加组件.中文版搜索
弹簧臂组件
,英文版搜索SpringArm
.不互通.
- 然后为弹簧臂添加摄像机组件,可以添加后拖拽到下级,也可以添加前选中,自动设为下级.中文版搜索
摄像机组件
,英文版搜索Camera
.不互通.
- 然后设置弹簧臂的长度和角度.还有取消碰撞检测.
- 摄像机的视场也可以设置一下.营造等视角的情况.
- 最后效果如下图.
4.运动
接下就开始接触蓝图代码了.第一次用图形化的方式写程序,有种用中文写代码的感觉.很奇妙.
我本来是很抗拒的,因为以前了解到图形化编程是学前教育专业的课程,是用来教小孩子的.所以我就不是很想用.现在用了之后,感觉还不错.
把纵向的程序逻辑改成横向的布局,而且都是调用api,能用中文搜索多少很喜欢.
- 双击打开控制器蓝图,在事件图表窗口能看到2个默认事件,一个是开始时被调用,一个是每帧被调用.这就好像是
unity
的脚本,初始化默认也是有2个函数,一个开始时调用,一个每帧被调用.然后就可以来个最经典的Hello World
了.
- 白色三角的连接其实就是程序的执行顺序,非白色圆圈的连接则是代表输入输出.在左边代表输入,在右边代表输出.这样应该就有了编程的思路了,其实就是把一行行改成了一块块,层层调用.大同小异.
- 使胶囊体一直朝着x轴方向移动.获取对象
get controlled pawn
,添加移动add movement input
.
- 使胶囊体一直跟随光标(鼠标)移动.1)获取光标结果;2)从结果中获得位置向量;3)与当前位置结合,计算前进向量;4)添加移动.5)最后设置显示光标.
5.键盘输入.
- 设置键盘输入,在设置里设置输入接口,添加新的接口,命名支持中文.然后点击下方的图标再按下对应按键即可.或者下拉选择.
- 然后就可以在蓝图中获取到这个按键的回调事件了.中文版时输入
input action events
会得不到结果.另外,出了自定义按键接口,也可以直接用按键事件.
- 最后蓝图程序如下;注意到常用语句
if
被翻译成了分支
.输入if
就能找到,即使它的英文名称是branch
.注意到,我还使用了中文名称变量.这真的是太棒了.
6.总结
- 下一篇讲角色模型的导入.