Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/305.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# 统一性:使用刚体2d';s拖动以减慢飞行角色的速度_C#_Unity3d - Fatal编程技术网

C# 统一性:使用刚体2d';s拖动以减慢飞行角色的速度

C# 统一性:使用刚体2d';s拖动以减慢飞行角色的速度,c#,unity3d,C#,Unity3d,我有一个角色通过rb.AddForce(方向*冲孔强度\值*冲孔强度\总数)发射到空中 我希望这个角色在空中飞得越高,速度就越慢,创造一个“软限制”,这样角色就不会飞得太高。我发现这可以通过根据角色的高度改变刚体的阻力来实现,但我错了: public float height_slowdown = 1; void Update() { heigth = transform.position.y; rb.drag = height * height_slowdown;

我有一个角色通过rb.AddForce(方向*冲孔强度\值*冲孔强度\总数)发射到空中

我希望这个角色在空中飞得越高,速度就越慢,创造一个“软限制”,这样角色就不会飞得太高。我发现这可以通过根据角色的高度改变刚体的阻力来实现,但我错了:

 public float height_slowdown = 1;
 void Update()
 {
     heigth = transform.position.y;
     rb.drag = height * height_slowdown;
 }
使用此选项,角色发射到空中,然后突然减速,就像有一堵看不见的墙一样(意味着X值不再改变)。然后他慢慢地倒在地上

如果有帮助的话,这个角色从X:0y:0开始


我该如何让角色的身高越高,就越慢?

我不是统一物理方面的专家,但向下的力对你没有帮助?默认情况下,发射的射弹只会受到重力的影响,拖动重力会对整个场景产生很大的变化,而且,这是一种糟糕的做法,所以我认为这不适用于我的情况。你玩过弥撒吗?我玩过<代码>rb.mass=1+(高度*高度\减速)使用此选项,角色的质量似乎始终为0.0001,因此其发射高度极高。我还试着把它放到
if(rb.mass>=1)
中,这样它就不会低于1,但这也不起作用。我不是统一物理方面的专家,但向下的力对你没有帮助吗?默认情况下,发射的射弹只会受到重力的影响,拖动重力会对整个场景产生很大的变化,而且,还有,这是不好的做法,所以我认为这不适用于我的情况。你玩过弥撒吗?我玩过<代码>rb.mass=1+(高度*高度\减速)使用此选项,角色的质量似乎始终为0.0001,因此其发射高度极高。我还尝试将其放入
if(rb.mass>=1)
中,这样它就不会低于1,但也不起作用。