2013-05-10 68 views
0

抱歉打擾大家,我在XNA上找不到任何好的教程,所以我只是來這裏尋求幫助,所以如何在處置之前等待?XNA - 如何讓圖像在x秒後消失?

protected override void Draw(GameTime gameTime) 
    { 
     GraphicsDevice.Clear(Color.Black); 
     // TODO: Add your drawing code here 
     mBatch.Begin(); 
     mBatch.Draw(mTheQuantumBros2, new Rectangle(300, 150, mTheQuantumBros2.Width, mTheQuantumBros2.Height), Color.White); 
     //How to make it wait for 3 seconds before disposing? 
     mBatch.Dispose(); 
     mBatch.End(); 
     base.Draw(gameTime); 
    } 

回答

0

您可以使用經過的時間,因此應用程序已經開了X秒後就會消失,

if (gameTime.TotalGameTime.TotalSeconds <= 3) 
{ 
    mBatch.Begin(); 
    mBatch.Draw(mTheQuantumBros2, 
     new Rectangle(300, 150, mTheQuantumBros2.Width, mTheQuantumBros2.Height), 
     Color.White); 
    //How to make it wait for 3 seconds before disposing? 
    mBatch.End(); 
} 
0

您可以使用基於你期望得到什麼不同的做法。 如果你想擁有光滑淡出效果,你可以使用顏色參數來實現透明度: mBatch.Draw(mTheQuantumBros2, new Rectangle(300, 150, mTheQuantumBros2.Width, mTheQuantumBros2.Height), new Color(new Vector4(1.0f, 1.0f, 1.0f, 1.0f - (currentTime/totalTime))));
currentTime的握着你的當前時間,TOTALTIME是時候,你想要的形象完全消失。

如果您需要多次執行此類動畫,我建議您創建一個Timer類,它可以幫助您輕鬆導航時間跨度。