拉伸雪碧

时间:2015-04-08 02:15:00

标签: sprite monogame

第一篇文章,第一年的程序员请轻松一点。

以单一的形式绘制精灵时,是否有人知道如何让它延伸到全屏?

例如我出现了我的开始屏幕,但它没有伸展到全屏(因为我打开时窗口最大化)。我有#34; spriteBatch.Draw(startScreen,Vector2.Zero,null,Color.White);"

null表示矩形属性。 anybdoy知道一个单词来替换null以便拉伸它吗?

这是我对纹理的加载内容:

startScreen = Content.Load<Texture2D>("Images/startGameSplash");

然后我在Draw方法中调用它:

protected override void Draw(GameTime gameTime)
        {
            GraphicsDevice.Clear(Color.CornflowerBlue);

            switch (gameState)
            { 
                case GameState.StartScreen:
                    //draw the start screen
                    spriteBatch.Begin();
                    spriteBatch.Draw(startScreen, Vector2.Zero, null, Color.White);
                    //Drawing each rocket with another foreach
                    spriteBatch.End();
                    break;

                case GameState.Running:
                    spriteBatch.Begin();
                    tank.Draw(spriteBatch);

                    foreach (BaseRocket shot in rocket) {
                        shot.Draw(spriteBatch);
                    }
                    spriteBatch.End();
                    break;

                case GameState.EndScreen:
                    spriteBatch.Begin();
                    spriteBatch.Draw(endScreen, Vector2.Zero, null, Color.White);
                    spriteBatch.End();
                    break;

                default:
                    break;

            }
            base.Draw(gameTime);

        }
    }
}

谢谢,

1 个答案:

答案 0 :(得分:2)

SpriteBatch类MonoGame的source code /文档中,有一个Draw函数接受size作为第二个参数:

public void Draw (Texture2D texture, Rectangle rectangle, Color color)

将屏幕尺寸矩形指定给参数,您的精灵应填满屏幕。