ブレンディング
概要
ブレンディング・プロパティパネルでは、現在のレイヤーのカラーとアルファチャンネルを使ったブレンディングを制御します。アニメートされたフェード効果に関しても設定できます。
プロパティ
カラーモード = 以下の5つのカラーブレンディングモードから選択することができます。通常、加算、乗算、スクリーン、差の絶対値です。これらは前のモードと次のモードボタンで切り替えたり、右クリックして表示されるコンテキストメニューからモードを選択することもできます。
- 通常 - スタンダードなブレンドモードで、一番上にあるレイヤーのピクセルが表示されます。ピクセルがない場合はその下のレイヤーのものが使われます。
- 加算 - シンプルに、あるレイヤーのピクセル値を他のレイヤーの値と合計します。値が256以上(RGBの場合)になると、白色として表示されます。
- 乗算 - 乗算ブレンドモードでは一番上にあるレイヤーにある各ピクセルのRGB値について、下にあるレイヤーの対応するピクセルのRGB値を乗算します。単純に掛け算するだけではその値は最大65025になり最大値として許される255を超えてしまうため、乗算結果は255で割られます。結果として暗い絵になります。
- スクリーン - スクリーンブレンドモードでは、2つのレイヤーにあるピクセル値の補数をとり、乗算したあとで、再び補数をとります。Multiplyと反対の手法の1つです。結果として明るい絵になります。
- 差の絶対値 - 差の絶対値は、下のレイヤーの値からトップレイヤーの値を引き算するか、あるいは正の計算結果になるよう値を丸めます。ブラックとブレンドすると全カラーへの適用値が0であるため(ブラックのRGB値は0/0/0です)何も変化はおきません。ホワイトとブレンドすると画像の色は反転します。
色を反転 = レイヤーの色を反転します。
アルファモード = アルファチャンネルをどのように適用するかをコントロールします。いくつかのモード、アルファを無視、通常のアルファ、乗算済みアルファ、乗算済みマスクから選択できます。前のモードと次のモードボタンで切り替えたり、右クリックして表示されるコンテキストメニューからモードを選択することもできます。アルファを反転ボックスをチェックすることでアルファチャンネルを反転することができます。適用されるアルファモードによって別々の結果が生み出されます。以下の説明は、通常ブレンディングモードを前提としています。
- アルファを無視 - イメージは完全に不透明として処理されます。設定されているアルファチャンネル(がもしあれば)は無視されます。結果としてアルファチャンネルは白い長方形として扱われます。
- 通常のアルファ - 前景カラーと背景カラーが混合されます。これはそれぞれ独立したカラーチャネルとアルファチャネルを持つ画像に適しています。
- 乗算済みアルファ - 前景カラーにアルファチャネルが乗算され、背景カラーとミックスされていると想定します。
アルファを反転 = レイヤーのAlphaチャンネルを反転します。
不透明度とフェード - 現在のレイヤーの不透明度とフェードエフェクトをコントロールします。
レイヤー不透明度数値BOX - 現在のレイヤーの不透明をコントロールします。ドラッグする事で不透明度を変えるか、右クリックしてコンテキストメニューから値を初期化する事ができます。
フェードインの長さ/フェードアウトの長さ = フェードイン/フェードアウト効果を得るためにレイヤーの不透明度をアニメートする事ができます。不透明度は常に0%から現在の値まで、またはその逆にアニメートされます。左右のスライダーはそれぞれフェードインとフェードアウトの効果の長さを(フレーム数で)コントロールします。左のスライダーの30の値は、レイヤーの不透明度が0%から現在の値まで30フレームでアニメートされる事を意味します。アニメーションはシーケンスの最初か、設定してあるならばイン点から始まります。右のスライダーの30の値は、レイヤーの不透明度が現在の値から0%まで30フレームでアニメートされる事を意味します。アニメーションはシーケンスの最後か設定してあるならばアウト点の30フレーム手前から始まります。
例:アルファモードの比較
アルファを無視 - イメージは完全に不透明として処理されます。設定されているアルファチャンネル(がもしあれば)は無視されます。結果としてアルファチャンネルは白い長方形として扱われます。 通常のアルファ- フォアグラウンドのカラーは以下の数式でバックグラウンドカラーとミックスされます。
foreground * alpha + background * ( 1 - alpha )
例えば、70%不透明な赤のフォアグラウンド(R:1.0, G:0.0, B:0.0, A:0.7)と、緑のバックグラウンド(R:0.0, G:1.0, B:0.0)とは合成されて(R:0.7, G:0.3, B:0.0)のカラーになります。
このブレンドモードはカラーチャンネルとアルファチャンネルとを別々に持つイメージに向いています。これらのイメージは、透明度を含む部分(アンチエリアスされたエッジなど)が正しくブレンドされないような問題にとらわれることなくカラー調整されます。
乗算済みアルファ - さきほどのブレンド式の第一項foreground * alphaはバックグラウンドカラーに依存しないため、あらかじめ処理しておくことが可能です。これは事前処理と呼ばれ、イメージカラーはアルファチャンネルで事前に計算されます。このようなイメージは、以下のような変更した数式でバックグラウンドカラーとミックスされます。
foreground + background * (1 - alpha )
フォアグラウンドカラーはあらかじめアルファで処理済なため、オリジナルの前処理されていないイメージデータに対して適用したときの「通常のアルファ」の計算処理と同じ結果が得られます。
先ほどの例に戻って説明すると、フォアグラウンドカラー(R:1.0, G:0.0, B:0.0, A:0.7)は事前処理により(R:0.7, G:0.0, B:0.0, A:0.7)となり、バックグラウンドカラー(R:0.0, G:1.0, B:0.0)との合成結果はやはり(R:0.7, G:0.3, B:0.0)になります。
事前処理を行っていないイメージを、カラー(0.0, 0.0, 0.0)であるブラックのバックグラウンドと合成すると、通常のアルファで与えられる数式
foreground * alpha + 0 * (1 - alpha )
は
foreground * alpha
と等価です。すなわち、事前処理していないイメージをブラックの上に合成したものが、事前処理済みイメージです。逆算処理(すでに処理済みのイメージから処理前のイメージを取り出す操作)は、Remove Black Matteコマンドを使ったイメージエディットパッケージとして完成されます。
(ここで使われている用語である、通常のアルファと乗算済みアルファは、イメージカラーが前処理されているのであって、イメージアルファが処理されているものではない点に混乱しないよう注意してください)