# G2_SetBlendAlpha

## 構文

      #include <nitro/gx/g2.h>

      void G2_SetBlendAlpha(
          int plane1 /* GXBlendPlaneMask */,
          int plane2 /* GXBlendPlaneMask */,
          int ev1,
          int ev2
      );

## 引数

plane1 | ブレンドの第1対象面を選択（`GXBlendPlaneMask`型の値の論理和をとったもの）
plane2 | ブレンドの第2対象面を選択（`GXBlendPlaneMask`型の値の論理和をとったもの）
ev1 | 第1対象面に対するαブレンディング係数(0 <= ev1 <= 31)
ev2 | 第2対象面に対するαブレンディング係数(0 <= ev2 <= 31)

## 返り値

なし。

## 説明

ev1、ev2 の値が16以上の場合、実際に設定されるαブレンディング係数は16となります。
第1対象面の直後が第2対象面の場合にαブレンディングを行います。第1対象面にバックドロップ面を指定できません。 第1対象面でOBJが指定されていなくても半透明ＯＢＪ、ビットマップＯＢＪ、３Ｄ面についてはαブレンディングが行われます。

`GX_BLEND_PLANEMASK_NONE` | どの面も指定しません。
`GX_BLEND_PLANEMASK_BG0` | BG0を指定します。
`GX_BLEND_PLANEMASK_BG1` | BG1を指定します。
`GX_BLEND_PLANEMASK_BG2` | BG2を指定します。
`GX_BLEND_PLANEMASK_BG3` | BG3を指定します。
`GX_BLEND_PLANEMASK_OBJ` | OBJを指定します。
`GX_BLEND_PLANEMASK_BD` | バックドロップ面を指定します。

以下に`GXBlendPlaneMask`型の型定義を示しておきます。

    typedef enum
    {
        GX_BLEND_PLANEMASK_NONE = 0x0000,
        GX_BLEND_PLANEMASK_BG0 = 0x0001,
        GX_BLEND_PLANEMASK_BG1 = 0x0002,
        GX_BLEND_PLANEMASK_BG2 = 0x0004,
        GX_BLEND_PLANEMASK_BG3 = 0x0008,
        GX_BLEND_PLANEMASK_OBJ = 0x0010,
        GX_BLEND_PLANEMASK_BD = 0x0020
    }
    GXBlendPlaneMask;

## 参照

G2_BlendNone, G2_SetBlendBrightness, G2_SetBlendBrightnessExt, G2_ChangeBlendAlpha, G2_ChangeBlendBrightness

## 履歴

Ver. 2008/10/30 αブレンディング係数に関する説明追記

Ver. 2006/04/21 説明の追加

Ver. 2004/01/19