KeyboardState keyState;
        KeyboardState prevkeyState;     //1イント前のキーの状態の履歴
        int IsGridVisible = 0;
        protected override void Update(GameTime gameTime)
        {
            keyState = Keyboard.GetState();
            // ゲームの終了条件をチェックします。
            if (GamePad.GetState(PlayerIndex.One).Buttons.Back == ButtonState.Pressed)
                this.Exit();

            // TODO: ここにゲームのアップデート ロジックを追加します。
            if (keyState.IsKeyDown(Keys.G) && prevkeyState.IsKeyUp(Keys.G)) IsGridVisible = ++IsGridVisible %3;
            prevkeyState = keyState;

            base.Update(gameTime);
        }

        /// <summary>
        /// ゲームが自身を描画するためのメソッドです。
        /// </summary>
        /// <param name="gameTime">ゲームの瞬間的なタイミング情報</param>
        protected override void Draw(GameTime gameTime)
        {
            GraphicsDevice.Clear(Color.CornflowerBlue);

            // TODO: ここに描画コードを追加します。
            spriteBatch.Begin(SpriteSortMode.Deferred, null, SamplerState.LinearWrap, null, null);
            spriteBatch.Draw(texture_checker, new Rectangle(50, 50, 512, 512), new Rectangle(0, 0, 512, 512), Color.White);
            spriteBatch.End();
            spriteBatch.Begin();
            spriteBatch.Draw(texture_cat, new Rectangle(50,50,texture_cat.Width,texture_cat.Height), Color.White);
            spriteBatch.End();
            spriteBatch.Begin(SpriteSortMode.BackToFront,BlendState.AlphaBlend, SamplerState.LinearWrap, null, null);
            switch (IsGridVisible)
            {
                case 0:
                    break;
                case 1:
                    spriteBatch.Draw(texture_grid16, new Rectangle(50, 50, 512, 512), new Rectangle(0, 0, 512, 512), Color.White);
                    break;
                case 2:
                    spriteBatch.Draw(texture_grid32, new Rectangle(50, 50, 512, 512), new Rectangle(0, 0, 512, 512), Color.White);
                    break;
                default:
                    break;
            }
            spriteBatch.End();
            base.Draw(gameTime);
        }
    }
最終更新:2012年07月31日 22:13