感应门:字面意思,角色靠近时,门自动打开关闭;
1.创建蓝图类:
点击蓝图,点击创建空白蓝图类,选择Actor,选择创建的位置并更改名字
默认是创建在BluePrints蓝图文件夹下,这是我建的(不要diss我中英文夹杂,右键可以重命名)
2.创建类内模型
双击创建好的蓝图类,点击左上角的添加组件,找到common下的 " 静态网格体组件,命名为Door_frame(门框)
点击Door_frame,在左侧静态网格体搜索doorFrame选择门框
同样方法,创建静态网格体 door (门)
再在同级目录下创建 盒体触发器(当人进入盒体范围时触发开关门)
点击添加组件,在搜索组件中输入box,选择box collision创建盒体触发器
通过平移将门框,门,盒体触发器弄成下图的样式 平移:https://blog.csdn.net/alzzw/article/details/104570101
3.处理蓝图,事件图表
点击box盒体触发器,在右侧找到这两个事件,并添加(点击加号即可)
会出现这两个东西,开始和结束,分别控制当角色进入盒体触发器区域后进行的操作,这里既开门和关门
按住door门,将其拖入事件图表中,会生成如图的引用,这个door相当于一个句柄,用于控制门的操作
在事件图表空白处点击右键搜索 ”设置相对旋转(door)" 用于控制门的旋转 (如果不将door拖拽进来,也会自动生成)
创建时间轴,用于门打开关闭的时间,不然就是瞬间开关,很突然
右键搜索 ” 时间轴“ 或者 ”time line“ 选择最后一个 ” 添加时间轴“
双击时间轴,点击箭头所示,添加时间曲线
在曲线上右键,选择添加关键帧到***,并将此帧的时间和值设置为0,时间就是字面意思,值在这里为门打开时旋转的角度
在曲线中右键再添加一帧,并设置为2.0与85.0,注意一定要按回车,然后分别点击图中的两个缩放,不然看不着
再在第一帧右键选择自动,完成后如图:
在上方切换回事件图表,会发现多出来一个新建轨迹,这就是刚刚咱们建的时间轨迹
右键选择分隔结构体引脚变成后图样式
并按如图所示连接
连接讲解:
左侧两个组件重叠是盒体触发器的控制开关门,时间轴的play:时间轴正向流动,Reverse时间轴反向流动,update是逐帧刷新时间,新建轨迹连接门的Z轴,因为门开关是在Z轴上旋转0~85度
记得编译保存:
将编译保存好的蓝图类按住左键拖拽到场景中
效果:在盒体触发器范围内才触发开关
添加第三人称角色:https://blog.csdn.net/alzzw/article/details/104570429
感兴趣的可以自己尝试做一下感应双开门,类似于现实生活中的;
如果有问题,或者有需要,在下面评论,我写一篇感应双开门的博客