我已經問過類似的問題,但現在我遇到了一個問題,需要管理和實現一個簡單的2D(自上而下)賽車遊戲的「逼真」轉向。汽車轉向算法?
我該如何做一個「現實」的汽車轉向? (我使用C#,但歡迎另一種語言;)) 使用Sin和Cos? 如果是,如何? 在此先感謝!
我已經問過類似的問題,但現在我遇到了一個問題,需要管理和實現一個簡單的2D(自上而下)賽車遊戲的「逼真」轉向。汽車轉向算法?
我該如何做一個「現實」的汽車轉向? (我使用C#,但歡迎另一種語言;)) 使用Sin和Cos? 如果是,如何? 在此先感謝!
我在我的午休時間,所以我不能做巨大正義「最佳」答案,但僞代碼看起來是這樣的:
y_change = sin(rotation) * speed;
x_change = cos(rotation) * speed;
car.x += x_change;
car.y += y_change;
你會在每幀執行該代碼;旋轉將由您的轉向輸入控制,速度將由您的加速度輸入控制。
您可能會想要使用其他人已經創建的物理引擎。我聽說過XNA Physics API的好消息。
我會想象你將不得不使用正弦和餘弦,但是這是一個非常大的冰山的只是冰山一角......
我不認爲他需要一個完整的物理引擎來進行鳥瞰2D遊戲。 – 2010-10-25 17:22:06
你可能是對的。我想這取決於他希望他的轉向有多現實。我很想知道如何使用動量,轉向,阻力,魚尾或其他任何因素的複雜轉向算法...... – 2010-10-25 17:31:50
關於物理引擎,謝謝,但對於我的需要,我認爲一個基本的算法是足夠的! – stighy 2010-10-25 19:43:18
算法是:
記錄某人的其他驅動器(使用開發人員版遊戲)
(可選)怎麼分開錄製成片段的各種通常的情況。
在遊戲中重放錄音。 (使用合適的片段並可能在它們之間插入軌跡)。
您也可以嘗試模糊邏輯和簡單的轉向單元模型。
型號是:
x = integrate horiz_velocity by t
horiz_velocity = intergate steering_angle by t
and steering_angle = fuzzy_steering_function(...)
什麼是「自上而下」的意思是,一個鳥瞰,還是垂直滾動? – Dialecticus 2010-10-25 18:23:22
自上而下意味着:是的,鳥瞰圖。 – stighy 2010-10-25 19:55:58