Unity实现2D平面游戏角色跳跃 | 您所在的位置:网站首页 › unity平面检测 › Unity实现2D平面游戏角色跳跃 |
一.可能出现的问题 1.怎么让角色跳起来 2.如何判断角色是否跳跃 3.如何判断角色是否可以跳跃 二.解决方案 1.可以通过给予一份力,使角色对象跳跃 2.可以用碰撞检测来判断角色是否可以跳跃,是否已经跳跃。 3.代码如下: private bool jumpis = false; //用来判断角色是否可以跳跃 public Rigidbody2D rig; //需通过自身刚体进行跳跃 public float jumpseep; //跳跃的高度 private void Update() { if(Input.GetKeyDown(KeyCode.Space) && jumpis == true) //按下空格键并且判断是否可以跳跃 { rig.velocity = new Vector2(0, jumpseep); //通过给予角色组件刚体一份力,使角色跳起 } } //通过刚体碰撞检测判断地面标签名称,来确定角色是否可以跳跃 private void OnCollisionStay2D(Collision2D collision) { if(collision.transform.tag=="dimian") { jumpis = true; //jumpis为true便可以跳跃 } } private void OnCollisionExit2D(Collision2D collision) { if (collision.transform.tag == "dimian") { jumpis = false; } }4.要创建名为“dimian”的tag值,来确认对象是否为地面 创建好之后记得将地面tag值更改为“dimian”。 5.为角色对象添加2D刚体与2D碰撞体后,添加脚本,并将自身刚体拖入框中输入跳跃力度即可。 现在启动程序,按下空格键看看吧! 如有不懂的地方可以评论区留言。若有不足,望请大佬指教。 |
CopyRight 2018-2019 实验室设备网 版权所有 |