Unity│パンチスルーでアルファアニメーションを作る方法

パンチスルー(Alpha Cutout)は、Unityの標準シェーダーで実現できるアルファ表現です。Alpha Cutoffの値を変えるだけで、グラデーションに沿ってテクスチャが現れたり消えたりするアニメーションが作れます。

目次

パンチスルーとは

アルファ値が一定のしきい値(Cutoff)を超えた部分だけを表示し、それ以下は完全に透明にする表現方法です。半透明の処理がないため描画負荷が軽く、エフェクトやUIの演出に向いています。

必要な素材

素材説明
ベース画像表示したいカラー画像
マスク画像白黒のグラデーション画像(アニメーションの方向を決める)

マスク画像の白い部分から順に表示され、黒い部分は最後まで非表示になります。

作成手順

1. ベース画像を用意

表示したい画像を準備します。

2. マスク用の白黒画像を用意

アニメーションさせたい方向に合わせてグラデーションを作成します。例えば円形に広がる演出なら、中心が白で外側が黒の円形グラデーションを使います。

3. マスクをアルファチャンネルに設定

Photoshopなどで、マスク画像をベース画像のアルファチャンネルとして保存します。

  • Photoshopの場合:チャンネルパネルでアルファチャンネルを作成し、マスク画像をペースト
  • 保存形式:PNGまたはTGA(アルファチャンネル対応形式)

4. Unityでマテリアルを設定

  1. Projectウィンドウで右クリック → Create → Material
  2. ShaderをUnlit/Transparent Cutoutに変更
  3. 作成したテクスチャをアサイン

5. オブジェクトに適用してアニメーション

  1. 板ポリ(Quad)を作成し、マテリアルを適用
  2. Alpha Cutoffスライダーを動かすと、アルファ値に応じて表示範囲が変化
  3. AnimationウィンドウでAlpha Cutoffにキーフレームを打てばアニメーションになる

Alpha Cutoffの仕組み

Cutoff値表示される部分
0すべて表示
0.5アルファ値0.5以上の部分のみ表示
1ほぼ非表示

マスク画像のグラデーションに沿って、徐々に表示・非表示が切り替わります。

活用例

  • ローディング演出(円形に広がる表示)
  • キャラクター登場エフェクト
  • UIのトランジション
  • ディゾルブ(溶けるような消え方)演出

まとめ

  • パンチスルーはUnlit/Transparent Cutoutシェーダーで実現できる
  • 白黒のマスク画像をアルファチャンネルに設定する
  • Alpha Cutoffの値をアニメーションさせるだけで演出が作れる
  • 半透明処理がないため描画負荷が軽い

参考:http://nakamura001.hatenablog.com/entry/20130208/1360346901

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次