使用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

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

被折叠的 条评论
为什么被折叠?



