イメージエフェクト
投稿日:2016年12月13日 | 最終更新日:2025年10月29日
画面全体に特殊なエフェクトをかけます。
サンプル
リファレンス
| Command | 説明 | Arg1 | Arg2 | Arg3 | Arg4 | Arg5 | Arg6 | WaitType |
|---|---|---|---|---|---|---|---|---|
| ImageEffect | 指定したカメラに イメージエフェクトをかける |
カメラ名 | イメージエフェクト名 下記一覧から選択 |
キーフレームアニメーション名 | フェード秒 空欄の場合0 |
ウェイトタイプ | ||
| ImageEffectOff | 指定したカメラの イメージエフェクトを解除する |
カメラ名 | イメージエフェクト名 下記一覧から選択 または「All」で全イメージエフェクトを即座に停止させる |
キーフレームアニメーション名 | フェード秒 空欄の場合、0 |
ウェイトタイプ |
カメラの違い
イメージエフェクトはカメラにかけるものになります。
たとえば、UtageのデフォルトではSpriteCameraで背景やキャラクターなどの描画、UICameraでUIの描画を行っています。
この場合、Arg1に指定するカメラにどちらを指定するかで効果が変わります。
SpriteCameraにイメージエフェクトをかけた場合
UIにはイメージエフェクトがかかりません

UICameraにイメージエフェクトをかけた場合
UIも含めてイメージエフェクトがかかります。

ただし、UIにかけた効果はセーブロード画面などでも継続します。
そういった状況をさけるのであれば、「メッセージウィンドウ用のUIカメラと、通常のUIカメラを分ける」などとしてみてください。
イメージエフェクト一覧
宴ではイメージエフェクト以下のイメージエフェクトを使うことができます。
GrayScale
グレースケール
Arg6にフェード値を設定可能

Sepia
セピア
Arg6にフェード値を設定可能

NegaPosi
ネガポジ反転

Blur
ブラー

MotionBlur
モーションブラー

Bloom
ブルーム

Mosaic
モザイク

FishEye
魚眼カメラ

Twirl
トウェル

Vortex
ボルテクス

イメージエフェクトのアニメーション
イメージエフェクト再生時に、アニメーションをさせることができます。
上記の「イメージエフェクト一覧」におけるFishEye、Twirl、Vortexのスクリーンショットはアニメーションを設定した例になります。
イメージエフェクトのアニメーションのサンプル
イメージエフェクトにアニメーションをつけるには、Animationシートにあらかじめアニメーションデータを設定する必要があります。
実際のサンプルはこのようになります。
これは、プログラム内部のコンポーネントプロパティに対するアニメーションを利用しています。
(そのため構造が異なるURPとは互換性がありません)
詳細は指定した名前のコンポーネントに対するアニメーションも参照してください。
ブラーのフェードをアニメーションで行う
ブラーはArg6にフェード時間を設定してもフェードができません。というのも、ブラーのフェードの強度を一律に0~1で操作できないからです。
ブラーをフェードさせるときはアニメーション機能を使って、ブラーコンポーネントのプロパティを操作するようにしてください。
宴3.9.4から、ブラーのプロパティのうちint型だった「downsample」や「blurIterations」をfloatに変えたため、キーフレームアニメーションで操作可能になっています。
サンプル
URP対応
UnityプロジェクトをURPにしている場合は、URP対応パッケージを適用しないとイメージエフェクトコマンドが動作しなくなります。
また、URP版はArg6でキーフレームが適用できないなど、制限がありますので注意してください。
URP版限定。宴組み込み以外のポストエフェクトを使用する(β)
URP版でのみ、上記の宴に組み込まれているポストエフェクトクトを使用可能になりました。
やり方としては、次の通りです。
SpriteCamera以下のVolumes>ImageEffectVolumeにあるVolumeProfileに「Add Override」でポストエフェクトを追加

追加したVolumeComponentの名前のスペースを除いてImageEffectコマンドのArg2で指定すれば、ほかのImageEffectコマンドと同様に使えるようなると思います。
例 「Color Adjustments」 -> 「ColorAdjustments」
まだβ版
ポストエフェクトを簡易的には使用できるようにはなったのですが
現在のところ、アクティブがオンになるエフェクトは一度に1つという設計にしてしまっているため、複数エフェクトを同時に使えないという問題もあります。
あらかじめ複数のエフェクトを設定しておいた VolumeProfileを用途に合わせて複数作成しておいてそれぞれに パラメーター調整もあらかじめしておき 、有効にする VolumeProfileを切り替える・・・という方針のほうが柔軟に実装できそうな気がします。
今のところどういう用途や需要があるのかを含めて落としどころを模索中です。
