当前位置: 首页 > article >正文

5.UE5横板2D游戏,摄像机移动和停止移动,

目录

1.角色移动状态的调整

2.摄像机平滑移动

3.创建敌人

4.设置AI随机移动

5.设置移动动画


1.角色移动状态的调整

2.摄像机平滑移动

创建摄像机Actor,设置摄像机的透视模式,弹簧臂关闭碰撞测试


 

在控制器开始事件时,让摄像机跟随玩家,SetFollowCamera

只有生成角色的时候,才设置摄像机,否则就每隔0.2秒生成一次

生成摄像机,并将摄像机添加到视图

随后每嗝0.08秒重新设置一下摄像机的位置,使用时间轴加插值的方式,让摄像机过度的稍微平滑一点。

在地图边缘时,停止摄像机位置移动在地图边缘时,创建瓦片蓝图的Actor,并在瓦片蓝图中添加边界的碰撞箱,当角色走进碰撞箱时,停止摄像机的位置(获取定时器句柄,以句柄暂停定时器

创建暂停和启用摄像机跟随的方法

创建瓦片地图

碰撞箱重叠的时候,获取本地玩家控制器,然后调用关闭摄像机跟随,碰撞箱不重叠时,启用摄像机跟随。

3.创建敌人

创建敌人的动画序列

创建敌人的蓝图Character

设置蓝图Character中默认的sprite

设置蓝图Character的胶囊体大小

4.设置AI随机移动

首先在场景中添加寻路体积NavMeshBoundsVolume,并将所有可以寻路到的区域包裹在内,设置RecastNavMesh-Default的代理最大斜面,以及代理最大步高。

调整导航体积的大小,包裹场景

随后在构建中构建所有关卡

创建AI控制器蓝图

设置EnemyPaperCharacter的AI控制器,自动控制AI为已生成和已放置,并设置AI控制器为我们刚才创建的AI控制器蓝图

创建行为树和黑板

新建任务,并重载事件接受执行AI的事件,并创建随机移动的逻辑

5.设置移动动画

在EnemyCharacter中设置变量来判断是否移动,复制模式选为通知,

创建结构体,EnemyAnimInfo,并分别存储idle和moving两个动画序列

在EnemyCharacter中创建EnemyAnimInfo变量,编译蓝图后,在猪敌人蓝图和蜗牛敌人蓝图中赋值

当判断移动的变量发生改变时,通知函数内更改敌人播放的动画序列。

创建SetMoveState设置敌人的移动状态,在服务器上运行

在行为树的任务中,移动时调用AI的SetMoveState函数将运动状态设置为isMoving

,在移动成功或失败时,将AI的MoveState改为isNotMoving

最后设置以下AI的移动速度,让其看起来更真实.


http://www.kler.cn/a/455733.html

相关文章:

  • 基于springboot校园招聘系统源码和论文
  • 解密MQTT协议:从QOS到消息传递的全方位解析
  • 在Windows上读写Linux磁盘镜像的一种方法
  • 深入解析MVCC中Undo Log版本底层存储读取逻辑
  • arcface
  • 低代码开发平台排名2024
  • Linux下学【MySQL】表中插入和查询的进阶操作(配实操图和SQL语句通俗易懂)
  • NCR+可变电荷块——文献hub1
  • Ftrans数据摆渡系统 搭建安全便捷跨网文件传输通道
  • 如何循序渐进的学习人工智能
  • 国际版JAVA同城跑腿源码快递代取帮买帮送同城服务源码支持Android+IOS+H5
  • 使用sam进行零样本、零学习的分割实践
  • static 和const的作用面试常问
  • 生成excel文件(有备注和表头的情况)
  • java高频面试之SE-04
  • Linux | Ubuntu零基础安装 nvm 管理nodejs
  • 嵌入式学习-QT-Day02
  • 智能家居常用的无线通信协议及其特点
  • HarmonyOS NEXT 实战之元服务:静态案例效果--航空出行
  • Windows系统上配置eNSP环境的详细步骤
  • vue 前端 用iframe实现单点登录两个不同域名Vue项目相互跳转并且传递Token
  • 如何使用缓存技术提升Python爬虫效率
  • 鸿蒙Next状态管理V2 - @Once初始化用法总结
  • 设计模式之享元模式:看19路棋盘如何做到一子千面
  • 【视觉惯性SLAM:六、图优化库(1):g2o的使用指南】
  • 自动化办公-合并多个excel