XNA-如何使图像在x秒后消失



很抱歉打扰大家,我找不到任何关于XNA的好教程,所以我只是来这里寻求帮助,那么如何让它在处理之前等待呢?

    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);
    }

您可以使用运行时间,以便在应用程序打开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();
}

您可以根据期望得到的结果使用不同的方法。如果希望具有平滑的淡出效果,可以使用"颜色"参数来实现透明度: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类,它可以帮助你轻松地导航你的时间跨度。

相关内容

  • 没有找到相关文章