如何在XNA中移动一个对象,使其不晃动?

问题描述:

我想知道如何移动一个不会在XNA中晃动的对象? 我的代码只是在每个更新调用中将Y位置减1。但这看起来非常丑陋,因为它会晃动,如何解决这个问题?如何在XNA中移动一个对象,使其不晃动?

Vector2 Speed = new Vector2(0,100); // Pixels x Second 
Vector2 Position = ScreenCenter; 

public void Update(GameTime gametime) 
{ 
    float Seconds = (float) gametime.Elapsed.TotalSeconds; 

    Position += Speed * Seconds; 
} 
+0

这让对象向一个方向移动,但它看起来不像一个持续的移动,因为它会占用一些时间并产生抖动。 – marteksmartek

+1

我想你是在windows中测试,设置IsFixedTimeStep = false和graphics.SynchronizeWithVerticalRetrace = false。 – Blau

+0

完美,这是我需要:) – marteksmartek