バージョン 10 の最新情報
このページには、HD レンダーパイプライン (High Definition Render Pipeline、HDRP) のバージョン 10 における新しい機能、改善、そして解決済みの問題の概要が含まれています。
機能
以下は、Unity が HDRP の 10.0 バージョンに追加した、機能のリストです。各項目には機能の要約と、関連ドキュメントへのリンクが含まれています。
PlayStation 5 プラットフォームへの追加サポート
HDRP の本バージョンには、PlayStation 5 プラットフォームへのサポートが含まれています。詳細は、コンソール用のビルド を参照してください。
Game Core Xbox Series プラットフォームと Game Core Xbox One への追加サポート
HDRP の本バージョンには、Game Core Xbox Series プラットフォームと Game Core Xbox One へのサポートが含まれています。詳細は、コンソール用のビルド を参照してください
IES プロファイルおよびライトクッキー
HDRP は現在、光源からの光の分布を説明する、北米照明学会 (IES) のファイルフォーマットをサポートしています。HDRP は Point、Spot (Cone, Pyramid, Box)、そして矩形 Area ライト に対する IES プロファイルをサポートします。また IES プロファイルを クッキー と混ぜたり、プロファイルとクッキーを混合したものを ライトマップベイキング に使うこともできます。
露出
ヒストグラム露出
HDRP の露出実装は、破棄する高および低パーセンタイル値を選択できる、画像のヒストグラムを計算できるようになりました。シャドウまたはハイライトで範囲外の値を破棄することで、より安定した露出を計算することができます。
この機能に関する詳細は、Exposure を参照してください。
新しい計測モード
全画面を自動露出アルゴリズムの入力と考えない方が良い場合が多いため、HDRP の露出実装に、測光マスクが含まれました。これにはテクスチャベースマスクおよびプロシージャルモードが含まれます。
この機能に関する詳細は、Exposure を参照してください。
デバッグモード
HDRP にシーンに正しい露出を設定するのに役立つ、新しいデバッグモードが含まれました。
デバッグモードに関する詳細は、Exposure および レンダーパイプラインのデバッグ を参照してください。
スケーラビリティ設定
HDRP の本バージョンには、フォグおよびサブサーフェス散乱のスケーラビリティ設定が含まれています。これらの設定では、パフォーマンスとボリュメトリックライティングの品質のさらなる制御が可能になります。
スクリーンスペースグローバルイルミネーション
HDRP の本バージョンには、スクリーンスペースグローバルイルミネーション (SSGI) が含まれています。これは環境が生成する間接ディフューズライティングにアクセスする、アルゴリズムです。レイマーチングを使って結果を演算するという点で、スクリーンスペースリフレクション と同じように機能します。
詳細は、スクリーンスペースグローバルイルミネーション を参照してください。
カスタムパス AOV エクスポート
この機能を使うと、HDRP の Arbitrary Output Variables (AOV) API の拡張を使って、カスタムパス投入ポイントから任意データをエクスポートできます。ユースケース例としては、カスタムパスでレンダリングされた “Object IDs” のエクスポートが挙げられます。機能に関する情報およびスクリプト例は、AOV ドキュメント を参照してください。
デバッグモード
ライトデバッグビュー
シーン内のライティングをデバッグするために、HDRP には現在、ライトの様々なコンポーネントを複数のパーツに分離する、様々なライティングデバッグビューモードが含まれています。これらのデバッグモードは AOV API でも利用可能で、レコーダーがエクスポートできます。新しいライティングデバッグモードは以下の通りです。
- ディフューズ
- スペキュラ―
- 直接ディフューズ
- 直接スペキュラ―
- 間接ディフューズ
- リフレクション
- 屈折
ライトレイヤーデバッグモード
HDRP には現在、各ゲームオブジェクトに割り当てられたライトレイヤーを表示できる、または特定の Light のライトレイヤーと一致するゲームオブジェクトをハイライトできる、新しい ライトレイヤー デバッグモードが含まれています。
詳細は、HDRP デバッグウィンドウ のライティングパネルセクションを参照してください。
Volume デバッグモード
Render Pipeline デバッグウィンドウに新しい Volume パネルが登場し、特定のカメラに影響する Volume コンポーネントを可視化するために使えるようになりました。最終補間値に付与する各 Volume に対して、このパネルでは各プロパティー値とオーバーライドされるかどうかを表示します。また Volume のウェイトとブレンド距離を用いて、Volume の影響パーセンテージも計算します。詳細は、HDRP デバッグウィンドウ 内の Volume パネルセクションを参照してください。
クアッドオーバードローおよび頂点密度
LOD が必要なシーン内のゲームオブジェクトを見つけるために、HDRP には遠くのメッシュ、またはディテール過多のメッシュを検索するための、新たな 2 つのフルスクリーンレンダリングデバッグモードが含まれています。
- Quad Overdraw: 複数のフラグメントシェーダーを実行中の GPU クアッドをハイライトします。これは主に、小さなまたは薄い三角形が原因で生じます (Metal および PS4 ではサポートされません)。
- Vertex Density: 複数の頂点シェーダーを実行中のピクセルを表示します (Metal ではサポートされません)。
Alpha to Mask
HDRP の本バージョンには、すべての HDRP および Shader Graph シェーダーに Alpha to Mask (または Alpha to Coverage) のサポートが追加されました。
詳細は、Alpha Clipping の Alpha to Mask プロパティーを参照してください。
ボックス型スポットライト用の範囲減衰
HDRP の本バージョンでは、ボックス型スポットライトに範囲減衰チェックボックスが加わり、Light が範囲全体を均一に照らせるようになりました。
詳細は、Light コンポーネントドキュメント を参照してください。
エミッシブマップ向けの視差オクルージョンマッピング
HDRP の本バージョンには、視差オクルージョンマッピングを持つエミッシブマップへのサポートが追加されました。
透明マテリアルのスクリーンスペースリフレクション
HDRP のスクリーンスペースリフレクション (SSR) ソリューションは、透明マテリアルをサポートするようになりました。これは窓や水のような、透明面に便利です。
ファブリック、ヘア、目のマテリアル例
HDRP にはファブリックおよびヘアマテリアルの例を含む、新しいサンプルが含まれています。これらのマテリアルを参照として使い、アプリケーション用のファブリックおよびヘアマテリアルをより迅速に開発できます。HDRP はまた、目の Shader Graph が含まれており、現実的な目のマテリアルの作成に利用できます。また新たな HDRP 専用の Shader Graph ノードもあり、目の Shader Graph をより簡単にカスタマイズできます。
デカールの改善 - Decal Bias、Decal Layer、Decal 角度フェード
HDRP の本バージョンには、どのデカールがレイヤーごとにどのマテリアルに影響するかを特定できる、Decal Layers が導入されました。Decal Layers に関する詳細は、デカールドキュメント を参照してください。さらに本バージョンでは、Decal Layers が有効になっているときに、デカールの角度に基づいたフェードをサポートします。最後に本バージョンでは、HDRP がデカールのメッシュに適用してビューベクトル沿いのその他のメッシュと重複するのを防ぐ、新しいワールド空間バイアス (メートル単位) が導入されました。
Input System パッケージサポート
HDRP の本バージョンには、Input System パッケージ が導入されました。本バージョン以前は、Input System パッケージを有効にしてビルトイン入力システムを無効にすると、HDRP が供給するデバッグメニューとカメラコントロールスクリプトは作用しませんでした。現在は、Input System パッケージを独占的に有効にしたときに、デバッグメニューとカメラコントロールスクリプトの両方とも機能します。
HDRI フローマップ
HDRI スカイ オーバーライドに新しいプロパティーが加わり、フローマップをスカイキューブマップに適用できるようになりました。
詳細は、HDRI スカイドキュメント を参照してください。
Graphics Compositor
Graphics Compositor は 3D コンテンツのレイヤー、静的画像、そして動画間のリアルタイム合成操作を実現します。
ツールは以下の 3 つの合成技法をサポートします。
- Shader Graph がガイドするグラフベースの合成。
- カメラスタッキング合成。複数のカメラが同じレンダーターゲットにレンダリングし、その結果がグラフベースの合成に使われます。
- 3D 合成。合成レイヤーを 3D シーンに挿入して、3D ゲームオブジェクト上の合成レイヤー間でリフレクションや屈折といったエフェクトを作成します。
概してこのツールを使うと、外部の合成ツールに頼ることなく、Unity 内で画像と動画をリアルタイムの 3D コンテンツと組み合わせ、最終フレームを構成できます。
機能に関する情報は、HDRP コンポジタードキュメント を参照してください。
パストレーシング
パストレースされた DOF
HDRP の本バージョンには、高品質の焦点ぼけのあるパストレースされた画像を制作する、新たな DOF (被写界深度) モードが導入されました。ポストプロセスされた被写界深度と比べ、このモードは透明な複数レイヤーと正常に機能し、パストレースされた画像に典型的なノイズ (これはサンプル数を増やすか外付けノイズ除去ツールを利用することで軽減できます) 以外には、アーティファクトを生みません。
この機能に関する詳細は、被写界深度 を参照してください。
累積モーションブラーとパストレーサー統合 API
HDRP には現在 Recording API が含まれており、高品質の累積モーションブラーやコンバージドパストレース画像といったエフェクトのレンダリングに使うことができます。これらの技法は複数の中間サブフレームからの情報を組み合わせて、最終 "統合" フレームを作成します。新しい API は、スクリプトが適切に統合された最終フレームを抽出できるようにし、さらにプロセスを進めるかまたはディスクに保存できるようにします。
この機能に関する詳細およびスクリプト例は、マルチフレームレンダリングと累積ドキュメント を参照してください。
パストレースされたサブサーフェススキャタリング
パストレーシングは現在、酔歩アプローチを使ってランダムサブサーフェス散乱 (SSS) をサポートします。利用するには、パストレーシングを有効にして HDRP マテリアルと同じ方法で SSS を設定します。
HDRP の SSS に関する情報は、サブサーフェススキャタリング を参照してください。
パストレースされたフォグ
現在パストレーシングは、フォグ吸収をサポートしています。この機能を使うには SSS と同様に、パストレーシングを有効にして、HDRP の標準フォグと同様にフォグを設定します。
HDRP のフォグに関する情報は、フォグ を参照してください。
パストレーシングにおけるシェーダーグラフのサポート
パストレーシングは現在、Lit および Unlit Shader Graph ノードをサポートします。
グラフにはスクリーンスペース微分 (ddx, ddy) に依存するノードを含んではいけません。現在のピクセルと近隣ピクセル間の差異を計算するノードは、レイトレーシングを使う際に正しく計算しません。
改善点
以下は HDRP バージョン 10 における Unity の改善点のリストです。各項目には改善点の要約と、関連する場合はドキュメントのリンクが含まれています。
動的解像度スケール
HDRP の本バージョンでは、Dynamic Resolution Scaling に複数の改善点を導入しています。
- 露出およびピクセルからピクセルへの品質が、ソフトウェアとハードウェアモード間で一致します。
- ハードウェアモードのときに画面に表示される黒いエッジの原因となるアーティファクトのレンダリングがなくなりました。
- ソフトウェアモードで Lanczos フィルターを使うときに表示される、アーティファクトのレンダリングがなくなりました。
- ハードウェアモードが Contrast Adaptive Sharpening フィルターを使って結果が過度にピクセル化して見えるを防ぎます。これは FidelityFX (CAS) AMD� を使います。FidelityFX および Contrast Adaptive Sharpening に関する情報は、AMD FidelityFX を参照してください。
シーンビューカメラのプロパティー
アンチエイリアスモードや Stop NaNs といった HDRP 専用のシーンビューカメラのプロパティーは、プリファレンスウィンドウではなく シーンビューカメラ 設定メニューに移動しました。
HDRP のシーンビューカメラのプロパティーに関する情報は、シーンビューカメラ を参照してください。
シャドウキャッシングシステム
HDRP の本バージョンでは、シャドウアトラスとシャドウキャッシング管理が改善されました。現在は各カスケードシャドウを個別に更新できます。キャッシュされたシャドウ (OnEnable を使うもの) は、メインビューから独立して見えるものすべてをレンダリングします。本バージョンにはまた、キャッシュされたシャドウをより精密に制御できる、より多くの API が導入されています。詳細は、シャドウ を参照してください。
ボリュメトリックフォグコントロールモード
HDRP のバージョン 10.2 では、ボリュメトリックフォグコントロールモードのコンセプトが導入され、シーン内のボリュメトリックフォグの設定に役立ちます。コントロールモードは以下の通りです。
- Balance: パフォーマンス指向のアプローチを使って、ボリュメトリックフォグの品質を定義します。
- Manual: エフェクトを直接制御する、プロパティーの内部にアクセスできます。このモードは本更新前の動作と同じです。
カスタムポストプロセス: 新投入ポイント
HDRP の本バージョンには、カスタムポストプロセスエフェクトに新しい投入ポイント (Injection Point) が導入されました。temporal anti-aliasing パスの前に、カスタムポストプロセスエフェクトを投入できるようになりました。
コンピュートシェーダーがマルチコンパイルを使用
高度で近代的なレンダラーである HDRP には、多くのコンピュートシェーダーパスが含まれています。今まではコンピュートシェーダーのいくつかの変形を定義するために、HDRP は各変形に対して手動で新しいカーネルを宣言しなければなりませんでした。本バージョンからは、HDRP 内の各コンピュートシェーダーは Unity のマルチコンパイル API を使うため、メンテナンスがより簡単になりますが、それ以上に重要なのは、コンピレーション時間を向上させるために、不要なシェーダーを HDRP が除去できるという点です。
スクリーンスペースリフレクション
HDRP は新しく実装した 'PBR Accumulation' を供給することで、スクリーンスペースリフレクションを改善しました。
平面リフレクションプローブフィルタリング
平面リフレクションプローブフィルタリングは、平面リフレクションとサーフェススムースネスの結果を組み合わせるプロセスです。本バージョン以前は、平面リフレクションプローブフィルタリングの実装は、必ずしも素晴らしい品質の結果を生んでいませんでした。HDRP の本バージョンには、新たな実装が含まれ、より物理ベースに近く、画像品質が劇的に改善されました。
リフレクションプローブの偽距離ベースのラフネス
Reflection Probe がオブジェクトからの距離で表面のぼやけ感を偽って増加させることができるようになりました。このオプションはデフォルトで無効になっており、Reflection Probe で有効にする必要があります。
スクリーンスペースリフレクション
スクリーンスペースリフレクション エフェクトは常に Before Refraction transparent pass の後に生成されるカラーピラミッドを使います。このため、カラーバッファは BeforeRefraction Rendering Pass を使う透明ゲームオブジェクトのみを含めます。
ディストーション
Distortion (ディストーション) エフェクトは、デフォルトで無効になっている Rough Distortion をサポートするようになりました。Rough Distortion は、エフェクトがカラーピラミッドを生成せずに画面のコピーを使うため、リソースを節約できます。
プラットフォームの安定性
以前、HDRP は DirectX12、Vulkan、Metal、Linux に関する安定性の問題がありました。本バージョンにはこれらのプラットフォームにおける安定性を改善しました。
ライトループ最適化
パフォーマンスの見地から、HDRP にとって最もリソース負荷のかかる操作は、GPU に送る前のライトの処理です。シーンに大量のライトを含む高性能なプロジェクトにとって、これは特に問題となります。HDRP の本バージョンでは、ライトループのリソース負荷を最大 80% 軽減する最適化を導入し、ほとんどのケースにおいて CPU パフォーマンスが劇的に改善しました。
デカールの改善
HDRP は Deferred Lit Mode でデカールが有効なときに、フル深度プレパスを強要しなくなりました。Receive Decals プロパティーが有効になっているマテリアルのみが、プレパスでレンダリングします。デカールシェーダーコードが改善され、現在より少数のシェーダー変形を生成し、デカールがどのマテリアル属性に影響するかを制御する、より優れた UI が含まれています。最後に、デカールマスタースタック は現在、マテリアルでフラグコントロールを展開します。
コンスタントバッファ設定の最適化
パフォーマンスの見地から、シェーダーデータを GPU に準備および送信するには、リソース負荷がかかります。HDRP は様々なシェーダーが複数ではなく単一の呼び出しで均一になるよう、新しい C# コンスタントバッファ API を使うようになりました。
Temporal anti-aliasing
HDRP の以前の temporal anti-aliasing (TAA) ソリューションは、典型的な TAA アーティファクトの問題がありました。移動中に画像がぼやけたり、アーティファクトのゴースティングが頻繁に見受けられました。新実装はこれら両方の問題が劇的に改善し、よりカスタマイズが可能になりました。
AxF マッピングモード
AxF シェーダー ですべてのテクスチャに対してテクスチャマッピングモードを制御できるようになりました。平面、三平面、またはその他の UV セットから選択することができます。
この改善に関する詳細は、AxF シェーダー を参照してください。
コンタクトシャドウの改善
コンタクトシャドウ により多くのオプションが利用できるようになりました。バイアスを設定して、自己交差問題を回避すると同時に、新しい厚みプロパティーを使って、コンタクトシャドウによるギャップを埋めることができます。
Light コンポーネントのユーザー体験
Light コンポーネント に可視性が加わり、物理ライト単位 を使ってライトの強度を設定できるようになりました。
露出
露出カーブマッピング
本バージョン以前は、自動露出に最小および最大限度を設定するためには、固定値を使わなければならず、このため露出値の変動が大きすぎました。現在はこれらの制限にカーブを使い、より安定した露出を作成できます。
カスタム平均グレーポイント
自動露出システムは、シーンの平均輝度を計算し、これを平均グレー値にマップします。このグレー値には決まった標準がなく、カメラの製造業者によって異なります。最大限のカスタマイズを提供するために、HDRP は業界の最も一般的な平均グレー値から、グレー値を選択できるようにしました。
カスタムパス API
本バージョンより、メインカメラのレンダリング内で、別の視点 (例えば無効になっているカメラなど) からゲームオブジェクトをレンダリングできるようになりました。また新しい API は、Depth、Normal および Tangent を RTHandle にレンダリングするためのビルトインサポートが含まれています。
またこのカメラオーバーライドを使い、一人称アプリケーションの腕など、異なる有効視野のゲームオブジェクトもレンダリングできます。
レイトレーシング
透明へのフォールバック
本バージョン以前、透明ゲームオブジェクトが 再帰的レンダリング に設定されており、シーン内で再帰的レンダリングを使わない場合は、ゲームオブジェクトは消えてしまいました。さらに、ゲームオブジェクトが屈折していなければ、不透明に表示されていました。HDRP は今回フォールバックを起用し、再帰的レンダリングと屈折の有無にかかわらず、透明ゲームオブジェクトの外観が一貫するようになりました。
シャドウ品質
レイトレーシングによるシャドウ のノイズ除去が、より品質の高いシャドウを制作するようになりました。
色付きシャドウ
HDRP はレイトレーシングによる色付きのシャドウを、透明および透過ゲームオブジェクトにサポートするようになりました。
詳細は、レイトレーシングによるシャドウ を参照してください。
透明マテリアルのレイトレーシングによるリフレクション
HDRP のレイトレーシングによるリフレクション (RTR) ソリューションは、透明マテリアルをサポートするようになりました。これは窓や水のような、透明面に便利です。
仮想現実 (VR)
レイトレーシングが VR をサポートするようになりました。ただし、レイトレーシングはリソース負荷がかかり、VR はそれを助長するため、パフォーマンスは大変遅くなります。
レンダーグラフ
HDRP は内部で Render Graph システムを使うようになりました。これは利用できる機能には影響せず、全体的なメモリー使用量を劇的に改善します。新しい HDRP テンプレートでは、GPU メモリー使用量が 25% 減少します。 詳細は、RenderGraph を参照してください。
メタリックリマッピング
HDRP は Lit マテリアルおよびデカールでマスクマップを使う際に、範囲マッピングをメタリック値に使うようになりました。
解決済み問題
HDRP のバージョン 10 で解決された問題に関する情報は、changelog を参照してください。