2012-01-06 68 views
0

正如標題所說..我聽不太懂這行代碼

playerVelocity.x = playerVelocity.x *deceleration +acceleration.x *sensitivity; 

我不明白這裏發生了什麼。或者如何可能。我怎樣才能獲得速度,並通過速度減速來乘以它,然後再次添加它。這對我來說毫無意義。

我讀它的方式是..我有playerVelocity,並乘以事實上放慢它,然後我再次添加它。

唉,對不起,我在這一段簡單的代碼,這似乎是每個人除了我很輕鬆很沮喪..

會有人心中澄清這對我?

+2

這是完全合法的C-無論什麼語法。在方案背景下是否有意義取決於方案的背景。 (它似乎試圖根據穩定的減速度加上可能由用戶控制器提供的一些加速度來調整速度)。 – 2012-01-06 19:40:50

回答

3

考慮到velocity = velocity*deceleration;,以規則的間隔施加,只需提供一個恆定的減速度。然後以相同的規則間隔加入到acceleration*sensitivity中,只是將一些可變加速度應用於否則減速的物體。

網絡將是一個緩慢減速的對象,除非用戶輸入「向前」提示。

+0

謝謝你打破了。 – 2012-01-06 19:56:42

3

deceleration是一些描述在沒有加速度情況下速度減慢的係數。 sensitivity是描述acceleration如何影響velocity的係數。所以這條線正在做的是根據這些係數更新速度。可能它發生在某種類型的定時循環中,以便在程序中的這些步驟中適當地改變速度。如果沒有最後的一半,這純粹是:

velocity = velocity * deceleration; 

如果deceleration小於1,這種關係意味着速度,最終將頭朝着0添加什麼,我認爲,用戶的輸入加速度,你得到你的代碼:

velocity = velocity * deceleration + acceleration * sensitivity; 
+0

非常感謝。現在幫助並且有意義。我用Hot Lick的答案來理解它,現在看着你的它是完全合理的。 – 2012-01-06 20:06:55