スプライトの着色

Color 値を使用してスプライトに着色する方法を説明します。

完全なサンプル コード

このトピックのコードは、ここで説明する手法を実際に示したものです。このトピックの完全なサンプル コードをダウンロードできます。ダウンロード内容には、完全なソース コードと、このサンプルに必要な追加のサポート ファイルが含まれます。

着色したスプライトの描画

着色したスプライトを描画するには

  1. スプライトの描画」の手順を実行します。
  2. Update メソッドで、スプライトの着色方法を指定します。

    たとえば、コントローラーのスティックの値によって、スプライトに適用する赤、緑、青、アルファの各値を決定します。

    protected Color tint;
    protected override void Update(GameTime gameTime)
    {
        ...
        GamePadState input = GamePad.GetState(PlayerIndex.One);
        tint = new Color(GetColor(input.ThumbSticks.Left.X),
            GetColor(input.ThumbSticks.Left.Y),
            GetColor(input.ThumbSticks.Right.X),
            GetColor(input.ThumbSticks.Right.Y));
    
        base.Update(gameTime);
    }
    
  3. Draw メソッドで、Update で作成されたカラー値を SpriteBatch.Draw に渡します。

    protected override void Draw(GameTime gameTime)
    {
        GraphicsDevice.Clear(Color.CornflowerBlue);
    
        spriteBatch.Begin();
        spriteBatch.Draw(SpriteTexture, position, tint);
        spriteBatch.End();
    
        base.Draw(gameTime);
    }
    
  4. すべてのスプライトが描画されたら、SpriteBatch オブジェクトの End を呼び出します。

表示: