C# 移动平台促进运动员跳跃

C# 移动平台促进运动员跳跃,c#,unity3d,game-development,C#,Unity3d,Game Development,我正在做一个统一的游戏,玩家是立方体,每次碰撞时它都会跳跃 void OnCollisionEnter(Collision collision) // When collides with something { if(collision.contacts.Length > 0) { ContactPoint contact = collision.contacts[0]; if(Vector3.Do

我正在做一个统一的游戏,玩家是立方体,每次碰撞时它都会跳跃

void OnCollisionEnter(Collision collision) // When collides with something
    {
        if(collision.contacts.Length > 0)
        {
            ContactPoint contact = collision.contacts[0];

            if(Vector3.Dot(contact.normal, Vector3.up) > 0.5) // If collision is from below
            {
                myRB.AddForce(new Vector3(0, jumpForce, 0)); // Auto jumping
            }
        }


    }

我制作了一个平台,可以通过动画上下移动,但当我的玩家跳到平台上时,力会得到提升,并且会比应该的更高。这有什么解决办法吗?提前谢谢。

比应该的高吗?“应该”是多少?在增加力之前,尝试将myRB的y速度设置为零。物理也是这样works@LincolnC我想像不动一样跳platform@jkd谢谢,但不幸的是,这没有帮助你设置了多大的跳跃力?考虑到ForceMode,我很惊讶这能起作用