Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/unity3d/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在简单的仪表板/滑动机械C单元2D中编码_C#_Unity3d - Fatal编程技术网

C# 在简单的仪表板/滑动机械C单元2D中编码

C# 在简单的仪表板/滑动机械C单元2D中编码,c#,unity3d,C#,Unity3d,我正在尝试实现一个类似于Megaman或最近的Hollow Knight的简单破折号,用户输入一个按钮,按钮被向前推,无法取消 我有一些简单的工作现在,但它只是传送球员,我正在寻找一个流体运动前进。我尝试了youtube教程和多个在线搜索,但似乎找不到任何有效的方法 这是到目前为止我的代码 if (Input.GetKeyDown (KeyCode.G) && isSliding == false) { slideCount += Time.deltaTi

我正在尝试实现一个类似于Megaman或最近的Hollow Knight的简单破折号,用户输入一个按钮,按钮被向前推,无法取消

我有一些简单的工作现在,但它只是传送球员,我正在寻找一个流体运动前进。我尝试了youtube教程和多个在线搜索,但似乎找不到任何有效的方法

这是到目前为止我的代码

if (Input.GetKeyDown (KeyCode.G) && isSliding == false) {
            slideCount += Time.deltaTime;
            isSliding = true;
            if (slideCount < maxSlideCount) {
                rb2d.AddRelativeForce (Vector2.right * 100f);
            } 
    else
                slideCount = 0;
                isSliding = false;
            }

你的角色的刚体会有巨大的重量、摩擦力或阻尼力吗?如果你正在建造一个新的建筑,这是很常见的。你可能会看到这一点,因为它是被迫正确的,并立即停止,因为反作用力是巨大的,所以它看起来像隐形传态。AddRelativeForce调用看起来正确。

角色站在什么位置?如果你把它改成上方向向量,你看到角色离开地面了吗?这就是他们目前所站的位置如果我把GetKeyDown改成GetKey,它会按照我想要的方式工作,但它会持续产生力量,当它碰到maxSlideCount时不会停止,但是我想让它像一个一键=完整的破折号,而不仅仅是一个恒定的力,你需要指定ForceMode.pulse作为力的第二个参数,那么类似这样的东西呢?如果slideCount