UE4学习笔记5----鼠标点击控制移动

在继承“Player Controller”的蓝图类中作如下设置:

1BSP减法与构建光照创建地图

创建好基本地图之后,将几何体调整为需要减去的形状,再摆放到需要减去形状的位置,然后再细节面板中将“Brush Type”设置为“Subtractive”即可

如果出现减去了不需要减的地方,可以将该物体复制一遍,然后被减去的地方就可以恢复。

下一步点击“构建”,以此来构建光照,为了节省空间与时间,一般静态物体(不需要移动与变换的物体)采用静态光照,采用静态贴图的方式将需要是阴影的贴为阴影。

2)获取鼠标位置与玩家位置

添加一个新函数“Move To Location”并编辑如下

3simple move to Location—使角色移动、VectorLength—得出三维向量与原点的距离

两个位置相减,得出的三维向量输入到“VectorLength”中输出该点与原点的距离,再判断距离是否大于120,如果是则调用“simple move to Location”使“Self”(角色)移动到该处

4)设置允许鼠标点击动作

进入“编辑”->“项目设置”->“引擎”->“输入”,添加一个“Action Mappings”设置为“鼠标左键”如图:

5Gate—开关控制、Get Hit Result Under Cursor By Channel鼠标点击检测

在“事件图表”中检查鼠标点击、调用函数,作如下连接

在添加“Get Hit Result Under Cursor By Channel”节点时需要取消勾选“情景关联”

Get Hit Result Under Cursor By Channel节点的信息如下:

(6)设置玩家控制器

创建一个“Game Mode”类型的蓝图类“GM_ArtOfBP”,点击组件面板中的“自身”,然后在右侧细节面板中设置“Classes”的“Player Controller”为“PC_PointChar”、“Default Pawn Class”为“MyCharacter”具体如下:

7)激活需要的游戏模式

采取如下设置:

(8)添加NavMesh

从“模式”中拖拽一个“Nav Mesh bounds volume”到场景中使之覆盖整个地面

,然后再点击“构建”。

9)设置鼠标定位器,Set Actor Hidden In Game—隐藏物体

在“内容浏览器”->“Starter Content”->“Architecture”文件夹下拖拽一个“SM_AssetPlatform”(想UFO的物体)到场景中,到细节面板中设置为“可移动”,将“Lighting”下的“Cast Shadow”取消勾选

并将其“Collision”下的“Collision Presets”设置为“NoCollision”(禁止该物体的碰撞检测)

接下来需要使UFO跟随鼠标移动,便于让玩家确定鼠标当前位置,在“关卡蓝图”中设置作如下连接(参考(2)获取鼠标点击位置与(3)使角色移动步骤):

获取鼠标位置和玩家位置

玩家位置与鼠标位置相减,到“VectorLength”得出长度小于120时,用“Set Actor Hidden In Game”来隐藏UFO。

否则就显示UFO并将其位置移动到鼠标位置。

猜你喜欢

转载自blog.csdn.net/sky130054/article/details/81562872