2022-10-01

「关键词」感应 TriggerBox 自动门 碰撞 Collision 关卡蓝图 blueprint 事件

Prerequisite

  1. 添加碰撞-阻挡角色
    编辑门模型 - 添加盒体简化碰撞 - 阻挡
  2. 添加感应装置 - 盒体触发器

「练习」自动开关门互动实现

  • 核心知识点:
    1. “关卡蓝图”
      • 编辑场景中的互动逻辑的“场所”
    2. 事件(开关门的时机)

1. ThirdPerson 关卡地图 + 添加门

  • 编辑门,添加碰撞
    • props文件夹中双击 SM_Door 进入编辑界面,“Collision” → “添加盒体简化碰撞”
    • 作用:使门真的是门,角色不会穿门而过,碰到门会被阻挡通行。

2. 添加感应盒子触发器

  • 添加方法:直接拖拽 “模式-基本-盒体触发器”
  • 作用:在感应范围内触发自动门开门,离开区域则自动关门。

3. 修改门 mobility 属性

  • “静态” 改为 “可移动”

4. 编辑关卡蓝图,添加感应事件

  • 选中 感应盒子,在关卡蓝图界面,添加开 / 关门事件
  • 操作:右击 -> “为Trigger Box xxx 添加事件” -> “Collision” -> “添加 On Actor Begin / End Overlap”

5. 加入操作实体,创建旋转动作

  • 感应之后,开关的对象是门,动效的实体是门,
    • 具体:右击 -> “创建一个到 SM_Door 的引用”
  • 给 target 门创建 setActorRotation 动作
    • 具体:3D中,Z轴进行变动 85
  • 「小试牛刀」连接开门事件与设置好的旋转动作,体验开门效果。

6. 添加时间轴,增加 开 / 关 动作真实度

  • 右击 -> 搜索 "添加时间轴"
  • 双击时间轴窗体,打开设置界面,“添加浮点型轨迹”(函数的图标)
    • 添加关键帧,例如 2s内开门,0s时添加一个,数值为0,2s时添加一个,数值为85,
      • 要点:上方的length,默认为 5.00,需要改为你设置的开门时间,例如 2.00
        • 原因:关门时是使用这个时间轴的 reverse
    • 右击添加的关键帧,选中 “Auto 自动切线”
      • 作用:曲线过渡更平滑,使开关门动作更加流畅。

你可能感兴趣的:(2022-10-01)