Appearance
第03回 色と半透明の操作
前回: 第02回 パーティクル / 次回: 第04回 火花・ヒット
注意
この授業には提出課題があります
提出方法は 授業内で説明します
前回の振り返り
パーティクルに動きをつけました
- 第02回では
Particle Systemを使って パーティクルの発生、寿命、速度、サイズ、色変化の調整を試し 簡単なパーティクルを作成しました - パーティクル発生のワンショットとループの違いを整理し エフェクトの用途に合わせた発生方法を選ぶことができるようになりました
- 今回はパーティクルのビジュアルを操作して より実践的なエフェクトの作成を目指します
今回の授業の目的
用途に合わせた基本的な描画設定を理解する
- 透明度とブレンドモードの設定によって 様々なエフェクトの表現が可能になることを理解します
- 火、煙、花火のような典型的なエフェクトを通して 用途に合った設定の選び方を学びます
- 表現したい用途に合わせて 適切な設定を選んで調整できるようになることを目標にします
今回の授業内容
ブレンディングモードと標準マテリアル
- 半透明とブレンド方法の使い分け
- 色と明るさ
Rendererと描画設定- 煙と火花の作り分け
- Unity の標準マテリアルの利用方法
- 授業内課題
エフェクトの印象を決める要素
動きと色と質感
- パーティクルエフェクトは 色や画像を乗せたポリゴンを動かす仕組みです
- 動きの印象を決めるのは 発生量、速度、サイズの変化などの動きの要素です
- 一方で、色や半透明の設定は 質感や見た目の印象を大きく左右します
- 今回の授業では色と半透明の設定を中心に学びます
半透明とブレンドモード
背景への重なり方を決める

- 煙や霧、炎のような実体のない現象をエフェクトで表現するためには 背景を透かして表示する必要があります
- パーティクルを描画する際に 半透明 の設定を 使えば、これらの表現が可能になります
- 半透明の設定には ブレンドモード という 描画方法の選択肢があります
- 用途に合わせた使い分けで、パーティクルを 濁らせたり光らせたりといった表現が可能です
アルファとは
透明度を表す数値


- アルファ(α, A)は 0 から 1 の値で 透明度を表します 0 は完全に透明、1 は完全に不透明です
- 値を下げるほど薄く見え 背景が透けて見えるようになります
- 映像表現の世界ではアルファ値を透明度として RGBとセットのRGBAとして扱うのが一般的です
半透明と加算半透明
基本的な二つのブレンドモード
アルファブレンド
- 背景に馴染ませるように描画します 煙、砂埃、霧のような濁る表現に向いています
加算ブレンド
- 背景に色を足して明るく見せます 炎、火花のような発光表現に向いています
加算半透明は便利ですが
明るすぎるのも問題

右が加算半透明の例 白くなりすぎているのがわかる
- Additive は手軽に発光を表現できますが 光りかたの調節が難しい場合があります
- 発生量が多すぎたり、色が明るすぎたりすると 値が大きくなりすぎて背景の形が見えず 白飛びしやすくなります
- 色と発生量を抑えて調整する必要がありますが エフェクトの同時発生数はゲームの内容に よるため限界もあります
事前乗算アルファとは
アルファと色が掛け合わされた状態

- アルファは画像の透明度を表す数値ですが RGBと乗算されるためにアルファが低いと 色が暗くなります
- このため、表示のエッジ付近に暗い縁取りが できたり、意図した色が出ない場合があります
- 乗算済みアルファは、あらかじめ色が アルファと掛け合わされている状態を指します ビビッドな色を出すのに便利です
Particle System とマテリアル
自由にマテリアルを設定できます
Rendererにはパーティクル描画に用いる マテリアルを自由に設定することができます- URP では
Universal Render Pipeline/Particles/Unlitのように パーティクル用のシェーダーがデフォルトで複数用意されています - 自作のシェーダーを用意して適用すれば エフェクトの表現力を大きく広げることができま*
Unity の標準マテリアルを設定する
標準でも機能は十分

- URP であれば標準で
Universal Render Pipeline/Particles/LitUniversal Render Pipeline/Particles/Unlitなどのパーティクル用のシェーダーが 用意されています - 色やテクスチャー、ブレンドモードなどの設定に 対応しており、基本的なエフェクトの表現は 十分可能です
標準マテリアルの利用方法
おすすめの設定手順
- まずは用途に合った
Shaderを選ぶ 光の向きを考慮するならLit、常に同じ明るさでいいならUnlitなど Surface Typeを選ぶ 不透明ならOpaque、透明ならTransparent- ブレンドモード(ここでは
Color Mode)を選ぶ 半透明ならMultiply加算ならAdditiveなど - テクスチャー、色、アルファ値を調整
- ※ Color Mode には他にも様々な選択肢があります ぜひ試してみてください
パーティクルエフェクトの調整手順
動きと見た目を同時に扱う
- 先に発生量や速度、サイズで大雑把な動きの印象を固めます
- 次に色と Alpha の変化を調整して色味をまとめます
- ある程度の形が見えたら その後はパーティクル挙動と色味を反復的に調整します
- エフェクトの調整は動きだけでも色味だけでも完結しません 時間を使って、納得いくまで調整してみましょう
実習 1
煙と火花のエフェクトを作る
煙は半透明で、火花は加算半透明で 作成してみてください
なれると 簡単
煙と火花を作り分ける
ブレンドモードと色味だけでも別のエフェクトに
- 同じ
Particle Systemを 2 つ用意します - 一方は
Alpha Blendを使って煙にします - もう一方は
Additiveを使って火花にします
- 違いを確認できたら 個別に色味や発生量を調整してみてください
- ワンショットとループを組み合わせて 複合的なエフェクトにしてみるのもおすすめです
ワンショットエフェクトのゲーム内実装
StopAction での自動破棄設定

- Particle System のワンショットエフェクトは 発生後に自動で破棄されるように設定できます
Stop ActionをDestroyに設定すれば エフェクトの寿命が尽きたときに自動でオブジェクトが破棄されます- つまり、後片付けのコードは必要ありません 接触時のエフェクトなど、短時間で完結する エフェクトの実装に便利です 活用してみてください
今回のまとめ
色と半透明を用途に合わせて選択する
- 半透明を使うと煙や火花のような実体のない現象を表現できます
- ブレンドモードの使い分けで半透明の計算方法を選択できます Alpha Blend は実体感のある表現に向いています Additive は発光感のある表現に向いています
- 標準のパーティクル用マテリアルを使えば 色やテクスチャー、ブレンドモードを簡単に調整できます