【After Effects】テキストやシェイプをアニメのためのアルファマスク作成の基礎【描画モード・トラックマット・シェイプマスク】

オブジェクトをアルファ切り抜きしたりマスクで隠したりするための設定メモ。

##レイヤー描画モードでアルファ切り抜き

**描画モードによるアルファ切り抜きでは、下層にある全てのレイヤーに対して、不透明度や明度を利用してアルファ切り抜きをする。**

描画モードでアルファ切り抜きをするには不透明度や明度を利用して「ステンシル」「シルエット」といった方法によって型抜きマスクを作成する。

ステンシルとは、エアブラシでテキストロゴをペイントするような型抜きする手法のことで、値を持つピクセルのみを残して処理するため、マスクとなるレイヤーのサイズを超える範囲も非表示となる。一方シルエットとは、ステンシルの逆で値を持つピクセルのみに対して処理をするため、マスクとなるレイヤーのサイズの範囲外には影響しない。

<img width="250" alt="スクリーンショット 2020-02-12 15.16.13.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278293/0adc2e31-cde0-05d3-72f5-d7613963be29.png">

実例を見てみる。二つのテキストレイヤーとグレーのシェイプレイヤーを用意し、シェイプレイヤーの描画モードを変更した結果を図示していく。

<img width="274" alt="スクリーンショット 2020-02-12 15.41.28.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278293/6910be1b-031b-dcf0-6611-82174e59e967.png">

<img width="367" alt="スクリーンショット 2020-02-12 15.40.33.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278293/759e39a9-9283-73c9-0f18-4c3177822d9b.png">

###ステンシルアルファ（不透明度で型抜き）

描画するレイヤーのピクセルの不透明度に応じて、下のレイヤー全てに対してアルファ切り抜きをする描画モード。

<img width="344" alt="スクリーンショット 2020-02-12 15.42.05.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278293/4441451f-ad65-d997-97c0-f4bfc51ddfb4.png">

###ステンシルルミナンスキー（明度で型抜き）

描画するレイヤーのピクセルの明度に応じて、下のレイヤー全てに対してアルファ切り抜きをする描画モード。

<img width="326" alt="スクリーンショット 2020-02-12 15.42.12.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278293/668be66e-0b8c-5e6b-cc1d-d34d4d493288.png">

###シルエットアルファ（不透明度でマスク）

<img width="334" alt="スクリーンショット 2020-02-12 15.42.21.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278293/1ad42a38-2ee0-0343-331e-8e83b62af9dc.png">

###シルエットルミナンスキー（明度でマスク）

<img width="315" alt="スクリーンショット 2020-02-12 15.42.56.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278293/064c5a9c-2ee4-0924-c6c3-c3835be57190.png">

##トラックマットでアルファ切り抜き

**トラックマットによるアルファ切り抜きでは、一つ上のレイヤーのみに対して、不透明度や明度を利用してアルファ切り抜きをする。**

一つ上のレイヤーのピクセルの持つカラー値を利用して、下のレイヤーをアルファ切り抜いて表示・非表示させする、いわゆるPhotoshopのクリッピングマスクと同様の機能。マスクによるアルファ切り抜きと違い、対象のオブジェクトのトランスフォームと切り離して管理できるのでアニメーションのイメージがしやすいのが長所。画像レイヤー、テキストレイヤー、パスを使用したシェイプレイヤーなど、カラー値を持つレイヤーであればマスクとして使用できる。

<img width="430" alt="スクリーンショット 2020-02-12 14.29.26.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278293/595a62a8-d628-3aac-5e65-661e64d886f1.png">

###アルファマット

上のレイヤーのピクセルの不透明度に応じて、下のレイヤーをアルファ切り抜きをする機能。

###アルファ反転マット

アルファマットの切り抜き領域を反転させたもの。

###ルミナンスキーマット

上のレイヤーのピクセルの明度に応じて、下のレイヤーをアルファ切り抜きをする機能。

###ルミナンスキー反転マット

ルミナンスキーマットの切り抜き領域を反転させたもの。

##マスクでアルファ切り抜き

**マスクによるアルファ切り抜きでは、自身のレイヤーのみに対して、シェイプ形状によって表示・非表示を制御する。**

レイヤーに新規マスクを追加することで、そのマスクのシェイプによって表示範囲を制御できる。トラックマットのようにカラー値による不透明度はできないが、少ない手順でアルファ切り抜きを実現できる。とはいえ、マスクシェイプの境界をぼかすことができるので不透明度が扱えないというわけではない。

<img width="485" alt="スクリーンショット 2020-02-12 14.55.31.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278293/7078c4fd-7ec7-9d9c-1cd9-03d0d34db067.png">

ただし、マスクのシェイプは四隅のアンカーポイントによって編集するので、普通のトランスフォームのようには制御できない。マスクをアニメーションさせる必要があるので、単純な動きで済む場合のみ採用すること。

<img width="376" alt="スクリーンショット 2020-02-12 14.59.13.png" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/278293/f7b08948-d03f-549c-9400-627c253c59d8.png">