[Unity][2D]跳跃卡在平台边缘、跳跃后下降缓慢、每次跳跃高度不一致问题

本文主要探讨了在Unity 2D环境中,角色跳跃时遇到的三个常见问题:角色卡在平台边缘、跳跃后下降速度缓慢以及每次跳跃高度不一致。解决方案包括调整物理材质的Pitch参数、更改重力设置以加快下降速度,以及将跳跃速度更新放入FixedUpdate函数中确保稳定性。通过这些调整,可以显著改善2D角色的跳跃行为。

 

使用Unity 2D自带的Rigidbody2D、BoxCollider2D组件,进行的横板2D的问题。

 


角色跳跃卡在平台边缘

 

改变角色的2D物理摩擦材质,的Pitch为0。

并且把角色的BOXCOLLIDER2D改为 其他形状的2D碰撞体。

 


跳跃后下降缓慢

 

使用这种方式进行跳跃。

...
FixUpdate()
{
...
            rig.velocity = Vector2.up * 20;//跳跃
...
}
...

 

改变UNITY编辑器的重力

编辑器菜单栏-Edit- Project Setting - Physics  2D

Inspector视图下Physics2DSettings的Gravity的Y的值从-9.81改为负值较大的值,一个一个进行试验。

 

 


每次跳跃高度不一致

 

下面这个代码是可以正常保证每次跳跃高度一致

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class TestJump : MonoBehaviour {

    private Rigidbody2D rb;
    public float speed;
    public float jumpForce;
    private float moveInput;

    [SerializeField]
    private bool isGrounded;
    publ
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值