URPのポストプロセッシング設定【Unity 6 / URP 17.x 完全版】
Unity の Universal Render Pipeline(URP 17.x) では、ポストプロセッシング(Post-processing)は Volume システムに統合されています。旧 Post-Processing Stack v2 は使用せず、URPの Volume 経由で設定します。
本記事は 2025年10月時点の実機UIに基づき、Add Override の最新項目、Renderer Feature との関係、運用のコツをまとめます。
- 1. この記事のゴール
- 2. 事前チェック(初回は必ず確認)
- 3. Volume の作成と基本手順
- 4. Add Override → Post-processing に表示される項目(実機UI準拠)
- 5. 代表的なエフェクトの使い方とコツ
- 5.1. Bloom(発光)
- 5.2. Color Adjustments(露出/彩度/コントラスト)
- 5.3. Shadows, Midtones, Highlights(階調別補正)
- 5.4. Lift, Gamma, Gain(階調補正)
- 5.5. Tonemapping
- 5.6. Vignette(周辺減光)
- 5.7. Depth Of Field(被写界深度)
- 5.8. Chromatic Aberration(色収差)
- 5.9. Lens Distortion(レンズ歪み)
- 5.10. Film Grain(粒状感)
- 5.11. Panini Projection / Screen Space Lens Flare
- 5.12. Channel Mixer / Color Curves / Color Lookup / Split Toning / White Balance / Lift, Gamma, Gain
- 6. Ambient Occlusion(SSAO)の正しい有効化
- 7. Auto Exposure(露出自動制御)
- 8. よくあるハマりどころ(トラブルシューティング)
- 9. パフォーマンス最適化(特にモバイル)
- 10. 実装例:スクリプトで Volume と Color Adjustments を追加
- 11. まとめ
- 12. チェックリスト(公開前最終確認)
この記事のゴール
- Global / Local Volume を正しく作成できる
- Add Override → Post-processing で目的のエフェクトを追加・調整できる
- Ambient Occlusion(SSAO) を Renderer Feature と連携して有効化できる
- モバイル/低スペック を見据えたパフォーマンス運用ができる
事前チェック(初回は必ず確認)
- URPプロジェクトであること (Unity 6 のテンプレは既定で設定済み)
Edit → Project Settings → Graphics に URP Asset が割当済み - カメラの Post Processing を有効化
Camera コンポーネント → Rendering セクション → Post Processing を ON。 OFF の場合、Volume の効果は適用されません。 - URP Renderer の状態 (Unity 6 のテンプレは既定で設定済み)
Project で使用中の URP Renderer Asset(例:Forward Renderer) を把握。 ※ SSAO など一部は Renderer 側の有効化が前提(後述)。
Volume の作成と基本手順
- ヒエラルキーで右クリック → Volume → Global Volume(または Local Volume)。
- Inspector の Volume で Profile を新規作成(New)。
- Profile のリストから [Add Override] → [Post-processing] を開く。
- 追加したいエフェクトを選び、パラメータを調整。
Local Volume を使う場合は Box/Sphere などのコライダーで範囲を定義し、Is Global を OFF。Priority(優先度) の数値が高い Volume が同一箇所では上書きされます。
Add Override → Post-processing に表示される項目(実機UI準拠)
- Bloom
- Channel Mixer
- Chromatic Aberration
- Color Adjustments
- Color Curves
- Color Lookup
- Depth Of Field
- Film Grain
- Lens Distortion
- Lift, Gamma, Gain
- Motion Blur
- Panini Projection
- Screen Space Lens Flare
- Shadows, Midtones, Highlights
- Split Toning
- Tonemapping
- Vignette
- White Balance
Ambient Occlusion(SSAO) は、Renderer Asset に Screen Space Ambient Occlusion を追加すると、この一覧に現れます(追加していないと非表示)。
代表的なエフェクトの使い方とコツ
Bloom(発光)
Add Override → Post-processing → Bloom
- Threshold:発光開始輝度(低いほど広く光る)
- Intensity:発光の強さ(上げ過ぎ注意)
- Scatter/Clamp:にじみ方の制御Tips:UI までボケる場合は UI の描画順(Overlay/Camera)やレイヤー分離を検討。
Color Adjustments(露出/彩度/コントラスト)
- Exposure / Contrast / Saturation / Hue Shift を中心に調整。
- HDR 運用時は Tonemapping と併用してバランスを取る。
Shadows, Midtones, Highlights(階調別補正)
- 階調ごとに色味・明るさを調整。肌色保持や夕景の演出に有効。
- Start/End で各領域の範囲も微調整。やり過ぎると破綻しやすい。
Lift, Gamma, Gain(階調補正)
- Lift(暗部)/ Gamma(中間)/ Gain(明部) を段階的に補正。
- 小さな値で少しずつ追い込むのがコツ。
Tonemapping
Add Override → Post-processing → Tonemapping
- Neutral / ACES 等から選択。
- HDR シーンのダイナミックレンジの“落としどころ”を決める要。
Vignette(周辺減光)
Add Override → Post-processing → Vignette
- Intensity / Smoothness / Rounded を調整。
- 視線誘導に有効。強過ぎは重たい印象に。
Depth Of Field(被写界深度)
Add Override → Post-processing → Depth Of Field
- Focus Distance(ピント距離)、Aperture(絞り)、Focal Length。
- モバイル負荷が高め。静的シーンや演出用に限定すると安全。
Chromatic Aberration(色収差)
- 端部のわずかな色ズレでレンズ感を演出。
- 値は小さめ(目安 0.05 以下)に留める。
Lens Distortion(レンズ歪み)
- 樽型/糸巻きなどの歪み表現。HUDやUIが歪むならレイヤー分離。
Film Grain(粒状感)
- Intensity/Response で粒の強さと露出反応を調整。
- シネマティックな質感付与に。
Panini Projection / Screen Space Lens Flare
- 広角補正/レンズフレア。コストと見た目のトレードオフを実測で確認。
Channel Mixer / Color Curves / Color Lookup / Split Toning / White Balance / Lift, Gamma, Gain
- トーン決めの仕上げ。LUT(Color Lookup)は統一感の早道。
Ambient Occlusion(SSAO)の正しい有効化
URP では Renderer Feature を追加してから Volume で調整します。
手順
- Project で URP Renderer Asset を開く
- Add Renderer Feature → Screen Space Ambient Occlusion を追加
- シーンの Volume にて Add Override → Post-processing → Ambient Occlusion を追加
- Intensity / Radius を設定
注意
- Renderer Feature 未追加だと Volume 側の AO は効きません。
- 屋内で強すぎると黒ずみやノイズが目立つため控えめに。
- モバイルでは距離・サンプル数を抑えて負荷を削減。
Auto Exposure(露出自動制御)
URP 標準に HDRP 相当の Auto Exposure はありません。
代替として Color Adjustments の Exposure をスクリプトで補間制御します。
// 明るさに応じて Exposure を補間する例
colorAdjustments.exposure.Override(Mathf.Lerp(minExposure, maxExposure, normalizedLight));
よくあるハマりどころ(トラブルシューティング)
症状 | 原因 | 対処 |
---|---|---|
効果が反映されない | カメラの Post Processing が OFF | Camera → Rendering → Post Processing を ON |
Volume が競合する | Priority の高い方が上書き | 優先度・範囲を整理 |
AO が効かない | SSAO Renderer Feature 未追加 | Renderer Asset に SSAO を追加 |
画が白っぽい/眠い | Exposure / Tonemapping の過補正 | Tonemapping と Exposure を再調整 |
モバイルで重い | DoF / SSAO / Lens Flare の多用 | 品質プリセットで ON/OFF 切替 |
パフォーマンス最適化(特にモバイル)
- まずは Color Adjustments / LUT / Film Grain など軽量系から採用。
- DoF / SSAO は距離・品質を抑え、画面規模に応じて段階導入。
- 端末別の 品質プリセット(Low/Medium/High)で Volume Profile を差し替え。
- RenderDoc / Frame Debugger / Profiler でボトルネックを実測確認。
実装例:スクリプトで Volume と Color Adjustments を追加
using UnityEngine;
using UnityEngine.Rendering;
using UnityEngine.Rendering.Universal;
public class CreateColorAdjustVolume : MonoBehaviour
{
void Start()
{
var go = new GameObject("Auto Volume");
var volume = go.AddComponent<Volume>();
volume.isGlobal = true;
var profile = ScriptableObject.CreateInstance<VolumeProfile>();
volume.profile = profile;
if (!profile.TryGet(out ColorAdjustments ca))
ca = profile.Add<ColorAdjustments>(true);
ca.active = true;
ca.saturation.Override(15f);
ca.contrast.Override(10f);
ca.exposure.Override(0.5f);
}
}
実運用では「既存 Profile の編集」「品質別 Profile の差し替え」が管理しやすいです。
まとめ
- URP では Volume 経由でポストプロセスを管理し、必要に応じて Renderer Feature と組み合わせる。
- あなたの環境の Add Override には Bloom / Lens Distortion / Motion Blur / Tonemapping / Vignette も表示される。
- Ambient Occlusion は Renderer Feature 追加後に Override が利用可能。
- モバイルでは軽量効果を中心に、品質プリセットで切替管理。
チェックリスト(公開前最終確認)
- Camera → Rendering → Post Processing が ON
- Global/Local Volume が存在し、Profile 割当済み
- Add Override → Post-processing で目的の効果を追加
- AO を使う場合は Renderer Asset に SSAO を追加済み
- 主要端末で fps/発熱 を実測確認済み
ディスカッション
コメント一覧
まだ、コメントがありません