Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.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# unity2d:角色在不同的手机上以不同的速度移动…(Deltatime?)_C#_Unity3d - Fatal编程技术网

C# unity2d:角色在不同的手机上以不同的速度移动…(Deltatime?)

C# unity2d:角色在不同的手机上以不同的速度移动…(Deltatime?),c#,unity3d,C#,Unity3d,所以我有一个小程序,我的播放器来回弹跳。他向左移动的样子如下: if((runright==false)和&(birdyDead==false)) { 浮动电流位置=0; currentposition=transform.position.x; Vector3位置=this.transform.position; 位置x=当前位置-移动速度; this.transform.position=位置; lookleft=true; } 不过,我注意到,根据我调试游戏的手机,玩家的移动速度会有所不

所以我有一个小程序,我的播放器来回弹跳。他向左移动的样子如下:

if((runright==false)和&(birdyDead==false))
{
浮动电流位置=0;
currentposition=transform.position.x;
Vector3位置=this.transform.position;
位置x=当前位置-移动速度;
this.transform.position=位置;
lookleft=true;
}
不过,我注意到,根据我调试游戏的手机,玩家的移动速度会有所不同。在某些极端情况下,他只是太快了。就像无法控制的快。。。 我读到也许我需要用时间乘以一些值。deltatime对帧速率有影响,所以无论我用什么手机,我的播放器总是保持相同的速度。 我猜我的跳转函数也需要这样做,对吧

if(((Input.GetMouseButtonDown(0))&&&&(didjump==false)&&(birdyDead==false)))
{
GetComponent().AddForce(新矢量2(0,jumpPower),ForceMode2D.Pulse);
didjump=true;
动画挫折(“跳跃”,真实);
}

你能帮助我,告诉我怎么做,让我的球员仍然以我想要的速度移动,但三角洲时间也在游戏中吗?谢谢:)

您只需乘以
movespeed*Time.deltaTime
,即可使用每秒距离的速度而不是每帧距离来更新位置。

您只需乘以
movespeed*Time.deltaTime
,为了使用每秒距离的速度而不是每帧距离来更新位置。

好的,我这样做了,我的播放器现在移动得很慢。我现在应该提高变速箱的速度吗?完全正确。:)通过将速度值增加1000左右,一切似乎都正常。我会用我的手机和所有东西再查一查。现在我认为你做得很好,非常感谢!:)很高兴能帮上忙。如果答案解决了您的问题,请不要忘记将其标记为已接受。:)在至少10分钟过去之前,您无法接受答案。一切都很好!这比我想象的容易多了!非常感谢!好的,我做到了,我的球员现在移动得很慢。我现在应该提高变速箱的速度吗?完全正确。:)通过将速度值增加1000左右,一切似乎都正常。我会用我的手机和所有东西再查一查。现在我认为你做得很好,非常感谢!:)很高兴能帮上忙。如果答案解决了您的问题,请不要忘记将其标记为已接受。:)在至少10分钟过去之前,您无法接受答案。一切都很好!这比我想象的容易多了!非常感谢!