大数跨境

小怿学习日记(二)丨UE项目搭建和HMI控件调用

小怿学习日记(二)丨UE项目搭建和HMI控件调用 怿星科技
2024-08-06
2

项目搭建学习笔记

小怿学习日记

继上篇材质学习笔记《新手必看的UE材质原理讲解》,了解材质的基本制作思路之后,咱们就可以制作出简单的场景了。在拥有场景的基础上,如何让场景与玩家达成交互的效果呢?这时候我们需要搭建起来项目的基本框架,并设置一些基础的输入项,才能让项目真正运行起来。


01

搭建项目


1.1 认识项目的构成

Game_mode:是项目运行的基础。 

PlayerController:控制pawn实现功能。 

Main_Pawn:是项目中承载相机运动,点击事件等信息控制的桥梁。

图1.1.1 创建蓝图


1.2 搭建项目的基本框架

Game_mode:打开Game_Mode 后,在玩家控制器类上选择我们创建的PlayerController,在默认pawn类上选择我们创建的Main_Pawn。


图1.2.1 设置game mode蓝图


并在世界场景设置里找到游戏模式重载,选择我们创建的Game_mode。


图1.2.2 设置世界场景设置


PlayerController:打开PlayerController 后,将鼠标接口里的显示鼠标光标和启用点击事件都勾选上。


图1.2.2 设置player controller蓝图


1.3 制作项目的摄像机

Main_Pawn:打开Main_Pawn,我们在搜索栏上分别创建弹簧臂组件(SpringArm)和摄像机组件。将摄像机组件放置在弹簧臂组件的子层。


图1.3.1 添加弹簧臂组件


图1.3.2 添加电影摄像机组件


图1.3.3 组件之间的父子层级关系


调整弹簧臂组件和摄像机组件的一些基本参数。设置摄像机的基本参数,例如调整相机的画布比例,相机的焦距等等。在项目中所有的画布比例都需要保持一致。例如该项目的画布为2560*1600,那么此处的相机画布比例就设置为25.6:16。


图1.3.4 弹簧臂的参数设置


图1.3.5 摄像机的参数设置


将Main_Pawn放入场景中,Main_Pawn所在的坐标就是视觉的中心点,根据场景调整Main_Pawn的坐标以及弹簧臂组件的长度。同时将场景中的Main_Pawn 设置为“玩家0”,以获得第一人称视角。


图1.3.6 摄像机的参数设置


1.4 运行项目

点击上方“运行”右侧的小三角展开页面,选择“新建编辑器窗口(编辑器中运行)”,这样就可以单独弹出一个独立窗口运行项目。


图1.4.1 新建编辑器窗口(编辑器中运行)


图1.4.2 独立窗口运行


02

设置数据输入


2.1 设置相机旋转

打开Main_pown,进入“事件图表”中。鼠标右键单击空白处调出命令搜索,在鼠标个事件下分别有鼠标X和鼠标Y,将他们调用出来。


图2.1.1 调用鼠标X和鼠标Y的输入命令


从鼠标X右侧的五边形输出端拉出输出端的线,松开鼠标会自动调出命令搜素,输入添加控制器,我们选择添加控制器Yaw输入。此时要注意勾选右上角的情境关联。鼠标X对应Yaw,鼠标Y对应Pitch。


图2.1.2 调用控制器旋转命令


同样从鼠标X的Axis Value 拉出输出端的线,输入float,找到浮点*浮点,输入倍率0.7之后,输出到添加控制器Yaw输入的Val输入端中。鼠标Y也是如此,但倍率需要调整为-0.7,否则上下方向的旋转会与鼠标移动的方向相反。


图2.1.3 调用浮点*浮点命令


图2.1.4 鼠标旋转控制命令展示



相机旋转效果展示:


2.2 设置相机缩放

调出鼠标滚轮上滚和鼠标滚轮下滚,通过这两个输入事件来控制相机的缩放。

将弹簧臂组件(SpringArm)从左侧直接拖入到空白处,会自动生成一个小的目标控件。从右侧拉出输出端的线,输入target arm调出获取TargetArm Length设置TargetArm Length


图2.2.1 调用弹簧臂长度相关命令


将鼠标滚轮上滚直接输出到设置TargetArm Length(SET)的输入端。


图2.2.2 输出鼠标滚轮上滚命令


获取TargetArm Length输出调用浮点-浮点,然后继续输出调用限制(浮点),将浮点限制在300-500的范围内,最后将至输出到设置TargetArm Length(SET)的目标臂长度输入端。


图2.2.3 目标臂长度的运算输出


再重复一遍刚刚的操作,将浮点-浮点节点更改为浮点+浮点,便完成了相机缩放的设置。


图2.2.4 相机缩放的蓝图设置


相机前后缩放效果展示:


2.3 创建UI

创建UI控件:右键点击内容浏览器,在“用户界面”里面选择到“控件蓝图”。控件蓝图便是悬浮在界面之上的UI控件。


图2.2.1 创建控件蓝图


打开控件蓝图,在界面右上方将画布改为自定义,并手动输出数值2560,1600 。再从左边的通用里面将按钮拖出放置到界面中。UI界面后续篇章会单独详解,本篇不对UI界面(UMG)做过多介绍。


图2.2.2 调整画布大小


图2.2.3 添加按钮控件


调用UI控件:先打开关卡蓝图,从事件开始运行的输出端调出创建控件的节点,找到我们做好的UI 用户界面,选择到class的←,或者直接输入名字,将其加载到控件中。


图2.2.4 打开关卡蓝图


图2.2.5 创建控件


直接右键控件的Return Value,选择提升为变量。此时会出现 SET 节点,此时左侧的变量页面新增了一个变量,我们将变量名称NewVar_0改为UMG。再从SET 的五边形输出端调出添加到视口,将SET 的圆形输出端输出给添加到视口的目标输入端。

图2.2.6 UI控件的调用


这时UI也完成了到页面的调用,此时再运行项目就可以看到UI界面的按钮也出现在画面中,并且是可以点击的状态。UI的内容就留到下篇再详细讲解啦!


完整效果展示:


往期回顾


新手必看的UE材质原理讲解

万兆车载以太网,PMA测试这样做!

S2S自动化测试解决方案

实车测试必须注意的3个方面



【声明】内容源于网络
0
0
怿星科技
让智能汽车研发更高效!
内容 428
粉丝 0
怿星科技 让智能汽车研发更高效!
总阅读993
粉丝0
内容428