2015-03-02 57 views
0

我有一個球,我想將它移動在X軸上,所以,在FixedUpdate方法我加了力:添加恆力在Unity2D

rigidbody2D.AddForce(Vector2.right * speed); 

球的,因爲這段代碼的速度增加我寫了。我想讓這支力量保持不變,所以球的速度不會增加。我怎樣才能做到這一點?非常感謝!

回答

1

施加一定的力將加速對象,因爲這是多麼真實的物理工作:

Force = mass * acceleration 

在你的情況下,所產生的加速度是:

Acceleration = Force/mass 

如果你想設置的對象速度要恆定,你應該修改剛體速度:

http://docs.unity3d.com/ScriptReference/Rigidbody2D-velocity.html

類似這樣的:

rigidbody2D.velocity = new Vector2(speed, 0); 
+0

非常感謝。如果我想要不影響我的重力,我應該寫rigidbody2D.velocity.y而不是0? – Eduard 2015-03-02 10:08:22

+1

是的。很高興能幫到您 – Leo 2015-03-02 10:12:49

+0

非常感謝! – Eduard 2015-03-02 10:24:50