我使用C#在WPF中創建了一個簡單的車輛和彈丸模擬遊戲。我需要有一個恆定的幀速率(即我需要知道在每個幀中以一定的速度移動一個物體需要多少時間)。通過這種方式,我可以訂閱一個事件,根據遊戲的物理位置計算並更新位置到CompositionTarget.Rendering事件。WPF中持續幀率遊戲
CompositionTarget.Rendering += UpdatePositions;
我GOOGLE了一會兒,沒有找到答案。 WPF seem to be arbitrary中的fps,並使用秒錶來了解一幀和前一幀之間所經過的時間不會乾淨。
我想也創造我自己的幀速率,通過調用UpdatePositions每毫秒的一些量,並希望相應地發生渲染,有一個平滑的動畫。這似乎是重新發明了輪子,我不能想到一種以乾淨和簡單的方式實現這一點的方式。
謝謝!
除了最基本的遊戲開發外,不要使用WPF。它真的不打算用於這種用途。如果你想用.NET創建遊戲,你應該看看XNA框架。 – dlev
我認爲這是最基本的遊戲開發,我已經工作了很多,所以我真的需要理清我的幀率問題...... – Nicolas
「使用秒錶來了解幀與幀之間經過的時間以前的一個根本就不會乾淨「 - 怎麼樣? – EboMike