2d 蓝图_UE4中2D游戏用蓝图实现 OneWay Platform 功能

最近在折腾2D游戏,但是UE4没有OneWay Platform功能(也或许是有我这菜鸟没发现= =),2D游戏没有这个功能乐趣可就失去一大半了,无论如何,自己蓝图写一个吧那就~

简述:主要是利用Collision检测人物是否在物体上,如果在,按住一个按钮,再跳起来,就会下去。

教程开始:

新建一个Spirit,用Spirit新建一个蓝图,之后放两个Box,上面的用来检测人物碰撞,下面的用来挡住人物掉落。

上方Up Box创建一个Begin Overlap事件,之后连接Branch判定是否Overlap生效,判定可以用== Get Player Character来判定,如下图;

第二个Branch用来判定人物是否在平台上方,如果在,那就直接将Down Box的Collision Channel设定为Block,这样人物就可以站在上面,否则在短时间Delay(时间一定要短,不然可能会卡住,或者上不去下不来)之后再Block,否则可能人物会上不去,被脑袋卡住。

离开平台用Up Box的End Overlap事件来检测;

首先第一个Branch,也是利用== Get

Play Character来判断,如果Branch为真,进到下一个Branch;

第二个Branch主要检测是否人物在平台上方(不这样检测的话,重新跳上平台可能会出错,比如跳不上去),如果不在,就直接前进到Collision Channel设为Ignore,如果在那么进入到第三个判定;

第三个判定主要是增加一个下平台按钮,比如按住【手柄肩键】+【跳键】下落,大概就是这个意思,这里用了Is Input Key Down来判定,如果按住按键,同时离开Box事件判定成功那就ok了。

最后的效果就是这样的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值